惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
O
OpenAI News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
Webroot Blog
Webroot Blog
GbyAI
GbyAI
S
SegmentFault 最新的问题
Cyberwarzone
Cyberwarzone
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
J
Java Code Geeks
Google DeepMind News
Google DeepMind News
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
博客园 - 【当耐特】
S
Secure Thoughts
酷 壳 – CoolShell
酷 壳 – CoolShell
AWS News Blog
AWS News Blog
Engineering at Meta
Engineering at Meta
S
Security Affairs
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
Hugging Face - Blog
Hugging Face - Blog
Google DeepMind News
Google DeepMind News
Spread Privacy
Spread Privacy
T
Threatpost
Forbes - Security
Forbes - Security
C
Cisco Blogs
Scott Helme
Scott Helme
Attack and Defense Labs
Attack and Defense Labs
Simon Willison's Weblog
Simon Willison's Weblog
腾讯CDC
The Last Watchdog
The Last Watchdog
Cloudbric
Cloudbric
Last Week in AI
Last Week in AI
Recorded Future
Recorded Future
小众软件
小众软件
V
Vulnerabilities – Threatpost
美团技术团队
人人都是产品经理
人人都是产品经理
有赞技术团队
有赞技术团队
Apple Machine Learning Research
Apple Machine Learning Research
Hacker News - Newest:
Hacker News - Newest: "LLM"
I
Intezer
月光博客
月光博客
C
Cyber Attacks, Cyber Crime and Cyber Security
博客园 - 司徒正美
C
Cybersecurity and Infrastructure Security Agency CISA
Martin Fowler
Martin Fowler
博客园 - 聂微东

博客园 - 人非生而知知者

帐号实名制及其方式-修订版1.0 以SNS的模式做企业管理应用 苹果CEO史蒂夫·乔布斯(Steve Jobs),2005年,斯坦福大学 赢在中国 - 史玉柱经典语录(转载) 方案销售是一种新的销售模式---售前工程师 Palm 680磨合使用 软件需求分析工程中的几个常见事 palm 680入手使用记录 TOC全景图 TOC Ubuntu9.04 配置Eclipse 中C语言编译环境及GTK+ ubuntu 街机模拟器 学习使用VIM 目标——简单而有效的常识管理 如何在ASP项目中使用Fckeditor2.6.4 业务建模-用例 coffeewoo 出自itpub BB8700 bowser net 系统分析-系统设计-需求分析的区别 揭秘jbpm流程引擎内核设计思想及构架 (转)
用例图之用例与生、见、变、灭
人非生而知知者 · 2009-07-02 · via 博客园 - 人非生而知知者

当前,在产品的功能分析中,遇到难题:虽然让大家统一使用UML规范来建模,设计用例图,但是图中的用例老是感觉不到位,不是多了,就是少了。

为了帮助大家更好的找出系统中的用例,特别引入了一组词“生、见、变、灭”。世界万物都是遵循这一规律:生、见、变、灭。

生:事物的产生,由无到有的过程。
见:事物被看到、被其他观察者查询、查看到。是展示于自然界中的形态。
变:事物的变化,有小到大、由弱变强等变化的过程。
灭:事物的消亡,从有到无。

正好,也在InfoQ中看到《理解REST软件架构》一文,也说到了这一点。

REST与CRUD原则

REST软件架构遵循了CRUD原则,该原则告诉我们对于资源(包括网络资源)只需要四种行为:创建(Create)、获取(Read)、更新(Update)和销毁(DELETE)就可以完成对其操作和处理了。其实世界万物都是遵循这一规律:生、变、见、灭。所以计算机世界也不例外。这个原则是源自于我们对于数据库表的数据操作:insert(生)、select(见)、update(变)和delete(灭),所以有时候CRUD也写作为 RUDI,其中的I就是insert。这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如数学上四则运算是数字的最基本的运算一样。

在编写用例图的过程中要做到以下几点,就能从很大程度上避免丢失用例的情况:

1、找到一个业务实体(事物),验证其是否有“生、见、变、灭”相关用例。
2、对于“生、见、变、灭”的用例,其是否有相关的扩展。如:‘修改信息’的相关扩展可能为‘推荐’、‘审核’等影响其变化的用例。
3、基于各扩展,其是否又产生了新的实体。如:‘审核’发生时,就会出现‘审核信息’这一实体。那么这一实体的细分又产生了‘申请审核(生)’、‘批准审核(变)’、‘撤回审核(灭)’等。

一句话:即要通过实体的整个生命周期来考虑。

这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如数学上四则运算是数字的最基本的运算一样。 --我们正是基于对“CRUD”这一基本操作的重复构造,来完成对用例的完整性检验的。

对于用例图中用例精度(粒度)的思考:
基于对 某一实体的相关用例的扩展而引起的新实体的用例,其可以做细分,也可以概括论之。其把握点在于这“新实体”对“某一实体”的影响有多大,以及怎么样能给读者恰好说清楚。