【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
1.0.0 Summary
Tittle:【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
Style:DesignPattern
Series:DesignPattern
Since:2017-11-13
End:....
Total Hours:...
Degree Of Diffculty:2
Degree Of Mastery:2
Practical Level:2
Desired Goal:2
Archieve Goal:....
Gerneral Evaluation:...
Writer:kingdelee
Related Links:
http://www.cnblogs.com/kingdelee/
1.版型 stereotype
Actor(参与者/执行者)

1.1 发现/如何找到参与者

1.2 参与者确定举例




1.2 业务主角(Business Actor)


1.3 业务工人(Business Worker)


1.4 涉众(stakeholder)

1.5 参与者与用户的关系


1.6 参与者与角色的关系

1.7 参与者的核心地位

2. 用例
用例,就是需要实现的一个事情/方法/愿景。

一个完整的用例,包含:参与者、前置条件、场景、后置条件。


2.1 用例特征
2.1.1 用例是相对独立的
用例从功能上,是完备的,提现了系统参与者的愿望。
如:取钱是用例,填写取款单不是用例。因为完整的目的是取钱,而不是去银行填写取款单。

2.1.2 用例的执行结果对参与者来说是有意义的、可观测的。
后台进程对用户来说是不可观测的,他作为系统需求的一个补充约定而不是用户的需求。
如:登录是用例,输入密码不是。

2.1.3 用例必须有一个发起者
不存在没有参与者的用例。
如:ATM取款是用例,ATM吐钞不是。

2.1.4 用例必须是动宾短语形式出现
如:喝水是用例,喝不是用例;
计算、统计、报表、输出、录入 都不是规范的,应为 计算报表、统计报表、输出报表、输入表报...

2.1.5 用例的单元
一个用例就是一个需求单元、分析单元、设计单元、开发单元、测试单元、部署单元,一旦决定了用例,软件开发的其他活动都以这个用例为基础进行,如驱动软件开发活动。

2.2 用例的粒度
用例的粒度划分是以该用例是否完成了参与者某个完整目的为依据。
业务建模阶段:一个用例能够说完整一个事情。
如:取钱,报装电话。
而不是,验证密码,填写报装单....
概念建模阶段(用例分析阶段):一个用例能够说完整一个事件流,或者说 一个用例描述一个完整业务的一个步骤

系统建模阶段:一个用例描述操作中与计算机的一次完整的交互


2.3 用例的获得



2.4 用例练习:


2.5 用例和功能的误区

描述事物的观点



2.6 边界的误区


上图已经足够说明,而下图则会显得层次不明,超越边界

同一需求阶段,保持所有用例的粒度在同一量级
2.7 业务用例(Business Use Case)

业务用例是普通用例的一个版型,用于业务建模。
软件需求的真正来源是系统范围,也就是系统模型。业务模型是系统模型的最重要的输入。
2.8 业务用例实例

3. 分析类
3.1 边界类
【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素的更多相关文章
- 【UML】NO.53.EBook.6.UML.2.001-【Thinking In UML 大象 第二版】- 概述
1.0.0 Summary Tittle:[UML]NO.53.EBook.6.UML.2.001-[Thinking In UML 大象 第二版]- 概述 Style:DesignPattern S ...
- 【Java】-NO.16.EBook.4.Java.1.001-【疯狂Java讲义第3版 李刚】- UML
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.001-[疯狂Java讲义第3版 李刚]- Style:EBook Series:Java Since ...
- 《大象-Think In UML》读书笔记2
什么是UML? UML本身并没有包含软件方法,而仅仅是一种语言,一种建模用的语言,而所有的语言都是基本词汇和语法两部分构成的,UML也不例外.UML中定义了一些建立模型所需要的.表达某种特定含义的基本 ...
- 《大象Think in UML》阅读笔记之二
Think in UML阅读笔记(二) 上一次读到面向对象和面向过程的区别和各自的优势,结合实例分析了面向过程在面对大数据的时候,已经不足以满足人们的需求,所以引入了面向对象,面向对象的方法把世界看做 ...
- 大象——Thinking in UML
目录 大象--Thinking in UML 面向对象 普通民众的面向对象 大师眼中的面向对象 大象--Thinking in UML 大音希声,大象希形, 近来闲暇,随手翻起一些曾经看过的书籍,才发 ...
- 【Java】-NO.16.EBook.4.Java.1.011-【疯狂Java讲义第3版 李刚】- AWT
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.011-[疯狂Java讲义第3版 李刚]- AWT Style:EBook Series:Java ...
- 【Java】-NO.16.EBook.4.Java.1.012-【疯狂Java讲义第3版 李刚】- Swing
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.011-[疯狂Java讲义第3版 李刚]- Swing Style:EBook Series:Jav ...
- 【Java】-NO.16.EBook.4.Java.1.012-【疯狂Java讲义第3版 李刚】- JDBC
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.012-[疯狂Java讲义第3版 李刚]- JDBC Style:EBook Series:Java ...
- 【Java】-NO.17.EBook.4.Java.1.014-【疯狂Java讲义第3版 李刚】- Annotation
1.0.0 Summary Tittle:[Java]-NO.17.EBook.4.Java.1.014-[疯狂Java讲义第3版 李刚]- Annotation Style:EBook Serie ...
随机推荐
- return返回两个三元表达式的和,返回不正确,同样要注意在JavaScript中,也是如此
public string b() { string b = ""; "; } public int c() { public string b() { string b ...
- Pandas基础(十一)时间序列
1. pandas时间序列:时间索引 2. pandas时间序列数据结构 2.1 定期序列 3. 频率和偏移 4. 重采样,转移,加窗口 4.1 重采样及频率转换 4.2 时间移动 4.3 滚动窗口 ...
- sql 视图 字段条件统计
) FModelCode,FProductTypeName,FBrandName,FOrganizationName,KOrganizationID,) FALLCount, end) SaleCou ...
- 【javascript】九宫格抽奖组件设计
一些主要点 1. 转圈的顺序(顺时针或者逆时针): 2. 转圈的速率(从慢到快再到慢): 3. 位置的问题(下一次抽奖的起始位置是上一次抽奖的结束位置): 4. 转圈的圈数或者移动的次数. 基本原理 ...
- C# SMTP 邮件发送之QQ邮箱篇
邮件发送大家都已经非常熟悉了,微软自带的System.Net.Mail也很好用,那为什么还要说呢? QQ邮箱的SMTP以前是非SSL,用未加密的25端口,后来发送都改成SSL了,端口为465或587( ...
- node-sass 安装失败 Failed at the node-sass@4.9.2 postinstall script的解决
控制台运行npm install时报错,报错信息如下: npm ERR! code ELIFECYCLEnpm ERR! errno 1npm ERR! node-sass@4.9.2 postins ...
- npm太慢, 修改npm镜像
今天晚上想要将clone下来的项目进行npm install,但是等了半天都没动 查看源 npm config get registry 或 npm config list https://regis ...
- Qt编写自定义控件8-动画按钮组控件
前言 动画按钮组控件可以用来当做各种漂亮的导航条用,既可以设置成顶部底部+左侧右侧,还自带精美的滑动效果,还可以设置悬停滑动等各种颜色,原创作者雨田哥(QQ:3246214072),驰骋Qt控件界多年 ...
- 如何写Emit代码
写Emit代码也不是想象中的那么复杂,基本过程就是先手工写好C#代码,编译得到Exe或者Dll,然后用ILDASM或反编译工具,得到IL代码,最后就是看着IL代码,用Emit一个个对应发出代码,就行了 ...
- git纯净提交代码(只提交自己改过的文件)
添加远程仓库,这个远程仓库是要进行发起合并请求的仓库,简单来说就是项目的主要代码库,不是自己派生的代码库 git remote add main http://xxx 从远端仓库下载新分支与数据gi ...