6-UML-案例分析:订单管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
转换条件
活动A
www.renwoxue.net
活动B
表示组件
Start
符号
表示组件
符号
Branch
Merge Fork
End
Activity Transition
condition
Join
从Use Case Diagram的描述开始寻找 找出activity 找出执行activity的实体 找出activity之间的transition 画出整体系统的Activity Diagram 画出每个activity(或use case)细部的Activity Diagram
www.renwoxue.net
共有八个use case:
进入未启动安全监控的门
当门禁系统未启动,学生及管理员可自由的经由这个门进出。 学生及管理员经由这个门进入的方式:
1.
进入安全监控门
2.
3.
在数字键盘上输入进入密码 经由这个门进入 进入以后关上门。
改变进入密码
管理员改变进入密码的方式:
– 系统计算购物车内订购总金额
客户编号: String
客户姓名: String 性别: String 联络电话: String 传真: String
编号: String
realization
类别A implement类别B,类别A描述 类别B之属性行为,以 A B表示
<<interface>> DataInput
InputStream
OrderReader
DataInputStream
InputStream为abstract class, DataInput为interface, OrderReader需使用到DataInput的功能 ,DataInputStream为InputStream的 子类别 且用来implementDataInput界面
<<Include>>
启动警报器
描述系统中的使用用例或对象之作业流程
activity(活动):一个动作、处理、或程序
包含activity、start、end
transition(转换):当条件成立时,从一个活动转换到下一个活动
包含transition(转换)、branch(分支)与merge(合并)、fork(分叉) 与join(会合)
车子
1
驾驶
1
人
人
N
员工
1 雇主 1..N
公司
订单
0..N
产品
www.renwoxue.net
父类别与子类别的继承关系(A-Kind-Of)
客户 订单 日期 客户名称 住址 信用状况()
N
1
付款
号码 价格
发送()
结束() 公司客户 联络人 个人客户 信用卡号
信用状态
信用限制 通知()
描述整体与其组件之关系(A-Part-Of)
客户
产品型录
显示细部说明
购物车
新增订购项目
设定订购数量
计算购物车总金额
还未订购完毕 订购完毕
www.renwoxue.net
作业流程
公司接到订单后,同时进行出货处理与发票处理 出货处理若为紧急出货,则以24小时送货程序处理, 否则以一般送货程序处理 24小时送货或一般送货处理完成后,结束出货作业 发票处理后,接着进行收款作业 出货处理与收款作业皆完成后,进行结束订单处理 储运部负责出货活动,营业部负责接订单、发票、收 款等活动
2. 3.
4.
5.
找出actor 找出use case 描述use case 找出use case间之关系 绘出use case diagram
www.renwoxue.net
actor 系统的所有用户 与系统有互动的外部实体 使用用例的启动者与参与者 use case 一系列事件的组织,启动→回应→完成,可完成某一功 能,但须符合内聚力(cohesion)之原则 由actor找出所参与的每一个use case
www.renwoxue.net
客户上网订购书籍
新增订购项目
继续订购
[继续订购]
修改订购数量
[决定修改数量]
[结束订购进行结账] [决定放弃订购] 删除所有项目
确认采购订单
[决定删除某项目]
订单确认
删除订购项目
取消采购订单
取消确认
[继续订购]
[所有采购项目删除完成]
[结束订购进行结账]
www.renwoxue.net
订单管理系统
任我学IT —— 职训实操平台专家
www.renwoxue.net
www.renwoxue.net
从用户之观点描述系统功能与内部作业
actor(行为者):与系统有互动关系之人事物 use case(使用用例):系统中完成某一工作的一系 列事件
www.renwoxue.net
1.
解除门禁系统
管理员解除门禁系统的程序:
1. 2. 3. 4. 5.
按下控制板上的解除按钮 在数字键盘上输入安全密码做为认证。 启动指示灯熄掉 未启动指示灯打开 打开门锁。
输入进入密码
学生及管理员先按“Enter”键再输入8码的进入密码。门禁系统每按一个按键就发一声 “哔”,并确认输入密码。 管理员先按Enter键再输入8码的安全密码。门禁系统每按一个按键就发一声“哔”,并确 认输入密码。 如果安全监控门打开太久没关上门、或者当启动门禁系统时门没有被关上,警报器会发出 响声。管理员需输入安全密码以解除警报器。
www.renwoxue.net
汇入汇票
<<Extend>>
快速 汇票处理
<<Include>>
汇票追踪
<<Include>>
查验密码 确认使用者 身分
扫描视网膜
查验密码 与扫描视网膜 皆继承确认使用者身份 的功能, 但可以有自己的 验证方式 汇入汇票 的功能需先确认使用者身份,才能汇入确认的账号中 汇票追踪 的功能需先确认使用者身份,才能查核已确认使用者的汇票 汇入汇票 的功能只有在用户具有高优先权时,才会用到快速汇票处理
www.renwoxue.net
输入安全密码
启动警报器
进入未启动 安全监控的门
<<Include>>
学生
进入安全监控门
<<Include>>
输入进入密码
改变进入密码
<<Include>>
输入安全密码 启动门禁系统
管理员
解除门禁系统
www.renwoxue.net
<<Extend>> <<Extend>>
use case: 新增订购项目 actor: 客户 pre-condition: 购物车是空车 或 已有书籍产品 post-condition: 将新的书籍产品置入购物车 scenario: 1.客户上网,透过浏览器浏览书籍产品目录 2.客户针对某一本书有兴趣,可以点选查看详细说明 3.客户如有意购买某一本书,可点选置入购物车中 4.客户设定订购数量(默认值为1) 5.系统自动计算订购金额并显示 计算单项产品金额=单价 * 数量 计算订购总金额= Σ(单项产品金额) 6.每位客户一次可订购多项书籍产品
Βιβλιοθήκη Baidu
<<Include>>
B
Extend
Generalization
A在某些部分状况下会加入B中,而扩充成新功能,表 示成A <<Extend>> B
A继承B的功能,另外也可拥有自己的个别功能,表示 成A B
www.renwoxue.net
下订单
查询订单 取消订单 客户 签收订单
业务部
www.renwoxue.net
www.renwoxue.net
共有六个use case:
查验密码:要求用户输入密码后,查核用户是否为合法使用人员 扫瞄视网膜:确认使用者是否具有高优先权时需利用摄影机将用户
眼睛影像截取后,比对其视网膜影像数据是否为合法使用人员 确认使用者身份:要求使用者比对其身份是否为合法使用人员,正 确时才可进入系统 汇票追踪:使用者欲追踪特定汇票状况时,(1)须先核对使用者身 份是否合法(2)为合法人员者便可进入系统查询其指定汇票状况 汇入汇票:操作员欲将汇票存入帐户系统时(1)须先核对使用者身 份是否合法(2)为合法人员者便可实施汇入一般程序,若该用户具有 高优先权利时,便可实施快速汇票处理 快速汇票处理:可直接快速将指定汇票汇入系统处理,排除其它限 制因素
www.renwoxue.net
新增订购项目
修改订购数量 客户
删除订购项目
<<Include>> 取消采购订单 确认采购订单
www.renwoxue.net
use case: 新增订购项目 actor: 客户 pre-condition: 购物车是空车 或 已有书籍产品 post-condition: 将书籍产品置入购物车 scenario: 1.客户上网,透过浏览器浏览书籍产品目录 2.客户针对某一本书有兴趣,可以点选查看详细说明 3.客户如有意购买某一本书,可点选置入购物车中 4.客户设定订购数量(默认值为1) 5.系统自动计算订购金额并显示 计算单项产品金额=单价 * 数量 计算订购总金额= Σ(单项产品金额) 6.每位客户一次可订购多项书籍产品
www.renwoxue.net
iterative process
构建(或修改) Use Case Diagram、Activity Diagram、SequenceDiagram、及其他 Diagram
构建(或修改) Class Diagram
找出class、attribute、operation 找出class之间的关系
类别间的关系 符号
association Class identity attributes
operations generalization composition
aggregation
dependency realization
类别间的连结关系,类别会透过message passing要求其它 类别提供服务 箭号(navigability):可依箭头方向找到另一端之信息,没 有箭号则代表双向关系
1. 2. 3. 4.
按下控制板上的进入密码改变按钮 在数字键盘上输入安全密码做为认证 在数字键盘上输入新的进入密码 在数字键盘上重新输入新的进入密码做为确认。
www.renwoxue.net
启动门禁系统
管理员启动门禁系统的程序:
1. 2. 3. 4. 5.
按下控制板上的启动按钮 在数字键盘上输入安全密码做为认证。 未启动指示灯熄掉 启动指示灯打开 将门锁上。
composition: 下层组件不能单独存在,当上层整体的物件A被删除或复 制时,则下层组件B也必须被删除或复制,表示成 aggregation: 下层组件可以单独存在
A B
A
发票 1
B
N
发票项目
车子
1
N
轮胎
www.renwoxue.net
dependency
类别A使用到 类别B,因此类别B的改变会影响到类别A,以 A B表示
订单
客户
可由订单查到下订的客户 但无法由客户查询其所有订单
订单
客户
可由订单查到下订的客户 也可由客户查询其所有订单
www.renwoxue.net
可以加上关系名称或各类别所扮演的角色 基数(cardinality)有1:1 ,1:N , N:N三种(N也可以用 * 表示)
关系的 强制性(mandatory) 1与 非必要性(optional) 0
www.renwoxue.net
储运部
营业部
接订单
出货处理 [紧急出货] 24小时送货 [一般出货]
发票处理
一般送货
收款
结束订单
www.renwoxue.net
描述系统中所有的类别以及类别之间的关系
类别: 由identity、attributes、operations组成 类别间的关系: 包括association、generalization、 composition、aggregation、dependency、realization
www.renwoxue.net
新增订购项目
修改订购数量 客户
删除订购项目
<<Include>> 取消采购订单 确认采购订单
www.renwoxue.net
新增订购项目描述 客户点选浏览书籍产品目录 系统显示书籍产品详细说明给客户
购物车 客户
– 客户新增订购项目置入购物车中
– 客户设定订购数量
www.renwoxue.net
表示组件 actor use case
符号
actor与usecase之互动
Include use case间之关系
<<Include>>
Extend
Generalization
<<Extend>>
Include (or Use/Delegation)
A会使用到B的功能,表示成A