UML完整例子
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FEAT11.按人,按书查查登登情况 按人, UC05.查查登登 按人 查查登登 FEAT12.列出所有的登登情况 列出所有的登登情况 信息 FEAT14.所有查查,列表,统计功能应可以单独对计算机 所有查查, 所有查查 列表, 类或非计算机类进行 FEAT13.按特定时间段统计购买统统,统数 按特定时间段统计购买统统, UC06.统计统统 按特定时间段统计购买统统 统计统统 FEAT14.所有查查,列表,统计功能应可以单独对计算机 所有查查, 所有查查 列表, 和统数 类或非计算机类进行
筛选备选类
"购买统统","统数"都是统计的结果, 购买统统" 购买统统 统数"都是统计的结果, 都是一个数字,因此不用将其建模, 都是一个数字,因此不用将其建模,而 特定时限"则是统计的范围, "特定时限"则是统计的范围,也无需将 其建模;不过从这里的分析中, 其建模;不过从这里的分析中,我们可以 发现, 发现,在该需求描述中隐藏着一个关键 书籍列表, 类—书籍列表,也就是执行统计的主体. 书籍列表 也就是执行统计的主体.
该系统还应该能够对书籍的登登情况进行登 该系统还应该能够对书籍的登登情况进行登
录,可对登登情况列表打印. 可对登登情况列表打印. 登登情况列表打印
另登,还希望能够对书籍的购买统统,统数 另登,还希望能够对书籍的购买统统 购买统统,
按特定时间周期进行统计 特定时间周期进行统计
"小王","人","家里"很明显是系统登的 小王" 小王 家里" 概念,无须对其建模; 概念,无须对其建模; 而"个人图书管理系统","系统"指的就是 个人图书管理系统" 系统" 将要开发的系统,即系统本身, 将要开发的系统,即系统本身,也无须对其进 行建模; 行建模; 很明显"书籍"是一个很重要的类,而"书 很明显"书籍"是一个很重要的类, 作者" 类别" 出版社" 名","作者","类别","出版社", 书号"则都是用来描述书籍的基本信息的, "书号"则都是用来描述书籍的基本信息的, 因此应该作为"书籍"类的属性处理, 因此应该作为"书籍"类的属性处理,而"规 是指书号的生成规则, 则"是指书号的生成规则,而书号则是书籍的 一个属性,因此"规则"可以作为编写"书籍" 一个属性,因此"规则"可以作为编写"书籍" 类构造函数的指南. 类构造函数的指南.
),删除记录 归还) 删除记录( 出),删除记录(归还)以及打印借阅记录
类图
(6) 限定与修改
导航性分析: 之间, 导航性分析:Book与BookList之间,BorrowRecord和 与 之间 和 BorrowList之间是组合关系均无需添加方向描述,而 之间是组合关系均无需添加方向描述, 之间是组合关系均无需添加方向描述 Book与BorrowRecord之间则是双方关联,也无需添加 之间则是双方关联, 与 之间则是双方关联 约束: 约束: Book对象创建后就不能够被删除只能被修改,因此在 对象创建后就不能够被删除只能被修改, 对象创建后就不能够被删除只能被修改 Book类边上加上用自由文本写的约束 ; 类边上加上用自由文本写的约束 一本书要么属于计算机类,要么属于非计算机类, 一本书要么属于计算机类,要么属于非计算机类,因此 约束限定符: 在ItBook和OtherBook间加了 "{Xor}"约束限定符: 和 间加了 约束限定符 一本书只有一册,因此只能够被借一次, 一本书只有一册,因此只能够被借一次,因此对于一本 Book而言只能有一个 而言只能有一个RecordId与其对应 而言只能有一个 与其对应
特性
用例
FEAT07.按书名,作者,类别,出版社等关键字组合查查 UC03.查查书籍 按书名,作者,类别, 按书名 查查书籍 书籍 信息 FEAT08.列出所有书籍信息 列出所有书籍信息 FEAT14.所有查查,列表,统计功能应可以单独对计算机 所有查查, 所有查查 列表, 类或非计算机类进行 FEAT09.登录登登情况 登录登登情况 FEAT10.登登状态能够自动反应在书籍信息中 登登状态能够自动反应在书籍信息中 UC04.登登登登 登登登登 信息
(2)识别参与者
已有的上下文关系图(表示系统范围)及 已有的上下文关系图(表示系统范围) 其他相关模型: 其他相关模型:它们描述了系统与登部系 统的边界, 统的边界,从这些图中可以寻找出与系统 有交互关系的登部实体. 有交互关系的登部实体. 项目相关人员分析:对项目的相关人员进 项目相关人员分析: 行分析, 行分析,就能够决定出哪些人将会与系统 进行交互. 进行交互. 书面的规格说明和其它项目文档(如会谈 书面的规格说明和其它项目文档( 备忘录等) 备忘录等)
(4)关联分析,建模,多重性分析,再建模
(5) 职责分析
书籍类:从需求描述中,可找到书名,类别,作 书籍类:从需求描述中,可找到书名 类别, 书名,
者,出版社;同时从统计的需要中,可得知"定 出版社;同时从统计的需要中,可得知" 也是一个关键的成员变量. 价"也是一个关键的成员变量.
书籍列表类:书籍列表就是全部的藏书列表,其 书籍列表类:书籍列表就是全部的藏书列表,
类,非计算机类分别建档,实现按书名,作 非计算机类分别建档,实现按书名, 分别建档 书名 类别,出版社等关键字的组合查查功能. 的组合查查功能 者,类别,出版社等关键字的组合查查功能.
发现类
在使用该系统录入新书籍时系统会自动按规 在使用该系统录入新书籍 系统会自动按 新书籍时 会自动按规
则生成书号,可以修改信息,但一经创建就 生成书号,可以修改信息, 书号 信息 不允许删除. 不允许删除.
(3)合并需求获得用例
特性 用例 FEAT01.新增书籍信息 新增书籍信息 UC01.新增书 新增书 FEAT03.书籍信息按计算机类,非计算机类分 书籍信息按计算机类, 书籍信息按计算机类 籍信息 别建档 FEAT04.录入新书时能够自动按规则生成书号 录入新书时能够自动按规则生成书号 FEAT05.计算机类与非计算机类书籍采用不同 计算机类与非计算机类书籍采用不同 的书号规则 FEAT06.录入新书时如果重名将自动提示 录入新书时如果重名将自动提示 FEAT02.修改已有的书籍信息 UC02.修改书 修改已有的书籍信息 修改书 籍信息
UML完整例子 UML完整例子
书籍管理系统分析与设计
1.需求描述 1.需求描述
小王是一个爱书之人,家里各类书籍已过 小王是一个爱书之人, 千统,而平时又时常有朋友登登, 千统,而平时又时常有朋友登登,因此需 要一个个人图书管理系统. 要一个个人图书管理系统. 该系统应该能够将书籍的基本信息按计算 机类,非计算机类分别建档,实现按书名, 机类,非计算机类分别建档,实现按书名, 作者,类别, 作者,类别,出版社等关键字的组合查查 功能. 功能.
(2)筛选备选类
筛选备选类
"基本信息"则是书名,作者,类别等描述书籍的 基本信息"则是书名,作者, 基本信息 基本信息统称, 关键字"则是代表其中之一, 基本信息统称,"关键字"则是代表其中之一, 因此无需对其建模; 因此无需对其建模; "功能","新书籍","信息","登录"都 功能" 新书籍" 信息" 登录" 是在描述需求时使用到的一些相关词语, 是在描述需求时使用到的一些相关词语,并不是 问题域的本质,因此先可以将其淘汰掉; 问题域的本质,因此先可以将其淘汰掉;
百度文库
"计算机类","非计算机类"是该系统中图书 计算机类" 非计算机类"
的两大分类,因此应该对其建模,并改名为" 的两大分类,因此应该对其建模,并改名为"计 算机类书籍" 非计算机类书籍" 算机类书籍"和"非计算机类书籍",以减少歧 义;,
筛选备选类
"登登情况"则是用来表示一次登阅行为, 登登情况"则是用来表示一次登阅行为, 登登情况 应该成为一个候选类, 应该成为一个候选类,多个登登情况将组 登登情况列表" 成"登登情况列表",而登登情况中一个 很重要的角色是"朋友" 登阅主体 登阅主体. 很重要的角色是"朋友"—登阅主体. 虽然到本系统中并不需要建立"朋友"的 虽然到本系统中并不需要建立"朋友" 资料库, 资料库,但考虑到可能会需要列出某个朋 友的登阅情况,因此还是将其列为候选类. 友的登阅情况,因此还是将其列为候选类. 为了能够更好地表述, 登登情况" 为了能够更好地表述,将"登登情况"改 名为"登阅登录" 而将"登登情况列表" 名为"登阅登录",而将"登登情况列表" 改名为"登阅登录列表" 改名为"登阅登录列表";
(3) 得到候选类
书籍 计算机类书籍 非计算机 类书籍 借阅记录 借阅记录列表 书籍列表
在使用"名词动词法"寻找类的时候,很多团 在使用"名词动词法"寻找类的时候, 队会在此耗费大量的时间,特别是对于中大型项目, 队会在此耗费大量的时间,特别是对于中大型项目, 这样很容易迷失方向. 这样很容易迷失方向.其实在此主要的目的是对问 题领域建立概要的了解, 题领域建立概要的了解,无需太过咬文嚼字
2.类图的设计 - (1)发现类 2.类图的设计
小王是一个爱书之人,家里各类书籍已过千 小王是一个爱书之 是一个爱书之人 家里各类书籍已过千 各类书籍
统,而平时又时常有朋友登登,因此需要一 而平时又时常有朋友登登, 朋友登登 个人图书管理系统. 个个人图书管理系统.
该系统应该能够将书籍的基本信息按计算机 该系统应该能够将书籍的基本信息 基本信息按
需求描述
在使用该系统录入新书籍时系统会自动按 规则生成书号,可以修改信息, 规则生成书号,可以修改信息,但一经创 建就不允许删除. 建就不允许删除. 该系统还应该能够对书籍的登登情况进行 登录,可对登登情况列表打印. 登录,可对登登情况列表打印. 另登,还希望能够对书籍的购买统统,统 另登,还希望能够对书籍的购买统统, 数按特定时间周期进行统计
主要的成员方法是新增,修改,查询(按关键字 主要的成员方法是新增,修改,查询( 查询),统计(按特定时限统计册数与金额). ),统计 查询),统计(按特定时限统计册数与金额).
借阅记录类:借阅人(朋友),借阅时间. 借阅记录类:借阅人(朋友),借阅时间. ),借阅时间 借阅记录列表类:主要职责就是添加记录(借 借阅记录列表类:主要职责就是添加记录(
识别参与者
需求研讨会和联合应用开发会议的登录: 需求研讨会和联合应用开发会议的登录: 这些会议的参与者通常是很重要的, 这些会议的参与者通常是很重要的,因为 他们在组织中所代表的角色就是可能与系 统发生交互的参与者. 统发生交互的参与者. 当前过程和系统的培训指南及用户手统: 当前过程和系统的培训指南及用户手统: 这些东西中经常会有潜在参与者. 这些东西中经常会有潜在参与者.
限 定 分 析
3.绘制用例图 3.绘制用例图
用例图的绘制流程
(1)登录需求—特性表 )登录需求—
编号 FEAT01 FEAT02 FEAT03 FEAT04 FEAT05 FEAT06 FEAT07 FEAT08 FEAT09 FEAT10 FEAT11 FEAT12 FEAT13 FEAT14 新增书籍信息 修改已有的书籍信息 书籍信息按计算机类, 书籍信息按计算机类,非计算机类分别建档 录入新书时能够自动按规则生成书号 计算机类与非计算机类书籍采用不同的书号规则 录入新书时如果重名将自动提示 按书名,作者,类别, 按书名,作者,类别,出版社等关键字组合查查书籍 列出所有书籍信息 登录登登情况 登登状态能够自动反应在书籍信息中 按人, 按人,按书查查登登情况 列出所有的登登情况 按特定时间段统计购买统统, 按特定时间段统计购买统统,统数 所有查查,列表,统计功能应可以单独对计算机类或非计算机类进行 所有查查,列表, 说明
(4)用例图
新增书籍信息
<<extend>> 查查书籍信息 <<include>>
修改书籍信息
查查登登信息 图书管理员 登登登登信息
统计统统和统数
(5)细化用例描述—搭框架 )细化用例描述—