




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
UML完整例子 书籍管理系统分析与设计 1 1 需求描述 小王是一个爱书之人 家里各类书籍已过千册 而平时又时常有朋友外借 因此需要一个个人图书管理系统 该系统应该能够将书籍的基本信息按计算机类 非计算机类分别建档 实现按书名 作者 类别 出版社等关键字的组合查询功能 2 需求描述 在使用该系统录入新书籍时系统会自动按规则生成书号 可以修改信息 但一经创建就不允许删除 该系统还应该能够对书籍的外借情况进行记录 可对外借情况列表打印 另外 还希望能够对书籍的购买金额 册数按特定时间周期进行统计 3 2 类图的设计 1 发现类 小王是一个爱书之人 家里各类书籍已过千册 而平时又时常有朋友外借 因此需要一个个人图书管理系统 该系统应该能够将书籍的基本信息按计算机类 非计算机类分别建档 实现按书名 作者 类别 出版社等关键字的组合查询功能 4 发现类 在使用该系统录入新书籍时系统会自动按规则生成书号 可以修改信息 但一经创建就不允许删除 该系统还应该能够对书籍的外借情况进行记录 可对外借情况列表打印 另外 还希望能够对书籍的购买金额 册数按特定时间周期进行统计 5 2 筛选备选类 小王 人 家里 很明显是系统外的概念 无须对其建模 而 个人图书管理系统 系统 指的就是将要开发的系统 即系统本身 也无须对其进行建模 很明显 书籍 是一个很重要的类 而 书名 作者 类别 出版社 书号 则都是用来描述书籍的基本信息的 因此应该作为 书籍 类的属性处理 而 规则 是指书号的生成规则 而书号则是书籍的一个属性 因此 规则 可以作为编写 书籍 类构造函数的指南 6 筛选备选类 基本信息 则是书名 作者 类别等描述书籍的基本信息统称 关键字 则是代表其中之一 因此无需对其建模 功能 新书籍 信息 记录 都是在描述需求时使用到的一些相关词语 并不是问题域的本质 因此先可以将其淘汰掉 计算机类 非计算机类 是该系统中图书的两大分类 因此应该对其建模 并改名为 计算机类书籍 和 非计算机类书籍 以减少歧义 7 筛选备选类 外借情况 则是用来表示一次借阅行为 应该成为一个候选类 多个外借情况将组成 外借情况列表 而外借情况中一个很重要的角色是 朋友 借阅主体 虽然到本系统中并不需要建立 朋友 的资料库 但考虑到可能会需要列出某个朋友的借阅情况 因此还是将其列为候选类 为了能够更好地表述 将 外借情况 改名为 借阅记录 而将 外借情况列表 改名为 借阅记录列表 8 筛选备选类 购买金额 册数 都是统计的结果 都是一个数字 因此不用将其建模 而 特定时限 则是统计的范围 也无需将其建模 不过从这里的分析中 我们可以发现 在该需求描述中隐藏着一个关键类 书籍列表 也就是执行统计的主体 9 3 得到候选类 在使用 名词动词法 寻找类的时候 很多团队会在此耗费大量的时间 特别是对于中大型项目 这样很容易迷失方向 其实在此主要的目的是对问题领域建立概要的了解 无需太过咬文嚼字 10 4 关联分析 建模 多重性分析 再建模 11 5 职责分析 书籍类 从需求描述中 可找到书名 类别 作者 出版社 同时从统计的需要中 可得知 定价 也是一个关键的成员变量 书籍列表类 书籍列表就是全部的藏书列表 其主要的成员方法是新增 修改 查询 按关键字查询 统计 按特定时限统计册数与金额 借阅记录类 借阅人 朋友 借阅时间 借阅记录列表类 主要职责就是添加记录 借出 删除记录 归还 以及打印借阅记录 12 类图 13 6 限定与修改 导航性分析 Book与BookList之间 BorrowRecord和BorrowList之间是组合关系均无需添加方向描述 而Book与BorrowRecord之间则是双方关联 也无需添加约束 Book对象创建后就不能够被删除只能被修改 因此在Book类边上加上用自由文本写的约束 一本书要么属于计算机类 要么属于非计算机类 因此在ItBook和OtherBook间加了 Xor 约束限定符 一本书只有一册 因此只能够被借一次 因此对于一本Book而言只能有一个RecordId与其对应 14 限定分析 15 3 绘制用例图 用例图的绘制流程 16 1 记录需求 特性表 17 2 识别参与者 已有的上下文关系图 表示系统范围 及其他相关模型 它们描述了系统与外部系统的边界 从这些图中可以寻找出与系统有交互关系的外部实体 项目相关人员分析 对项目的相关人员进行分析 就能够决定出哪些人将会与系统进行交互 书面的规格说明和其它项目文档 如会谈备忘录等 18 识别参与者 需求研讨会和联合应用开发会议的记录 这些会议的参与者通常是很重要的 因为他们在组织中所代表的角色就是可能与系统发生交互的参与者 当前过程和系统的培训指南及用户手册 这些东西中经常会有潜在参与者 19 3 合并需求获得用例 20 21 4 用例图 22 5 细化用例描述 搭框架 1 用例名称 新增书籍信息 UC01 2 简要说明 录入新购书籍信息 并自动存储建档 3 事件流 3 1基本事件流3 2扩展事件流4 非功能需求5 前置条件 用户进入图书管理系统 6 后置条件 完成新书信息的存储建档 7 扩展点 无8 优先级 最高 满意度5 不满意度5 23 6 细化用例描述 填血肉 3 事件流 3 1基本事件流1 图书管理员向系统发出 新增书籍信息 请求 2 系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类 3 图书管理员做出选择后 显示相应界面 让图书管理员输入信息 并自动根据书号规则生成书号 4 图书管理员输入书籍的相关信息 包括 书名 作者 出版社 ISBN号 开本 页数 定价 是否有CDROM 5 系统确认输入的信息中书名未有重名 6 系统将所输入的信息存储建档 24 细化用例描述 填血肉 3 2扩展事件流5a 如果输入的书名有重名现象 则显示出重名的书籍 并要求图书管理选择修改书名或取消输入 5a1 图书管理员选择取消输入 则结束用例 不做存储建档工作 5a2 图书管理员选择修改书名后 转到5 4 非功能需求 无特殊要求 25 7 编写要点 使用简单的语法 主语明确 语义易于理解 明确写出 谁控制球 也就是在事件流描述中 让读者直观地了解是参与者在控制还是系统在控制 从俯视的角度来编写 指出参与者的动作 以及系统的响应 也就是从第三者观察的角度 显示过程向前推移 也就是第一步都有前进的感 例如 用户按下tab键作为一个事件就是不合适的 26 编写要点 显示参与者的意图而非动作 如果只描述了动作 人们不能够很容易地直接从事件流描述中理解用例 包括 合理的活动集 带数据的请求 系统确认 更改内部 返回结果 用 确认 而非 检查是否 例如 系统确认所输入的信息中书名未有重名 可选择地提及时间限制 采用 用户让系统A与系统B交互 的习惯用语 采用 循环执行步骤x到y 直到条件满足 的习惯用语 27 4 绘制交互图 首先根据自己的喜好和实际的表现需要来选择顺序图或通信图 不过由于它们在语义上是等价的 因此可以绘制出一种 再通过建模工具来自动转换成另一种图 28 1 准备工作 分析模型中的交互图彻重于分析类的职责分配和交互流程 而设计模型中的交互图则彻重于设计类的引入和实际方法的调用与流程控制先确定参与交互的对象 对象之间的关系 通信图 然后确定对象间的消息交互流程 用同步调用 异步消息 返回消息表示 并利用交互片断 顺序图 或迭代标记及监护条件来表示循环和分支结构 29 2 鲁棒分析 Robustness分析不是UML模型的一部分 它是一个强大的草图工具 是介于分析和设计之间的一种有效工具在Robustness分析中 将应用边界类 控制类和实体类从一个用例中抽取三类对象的方法 30 鲁棒分析 从事件流开始 31 鲁棒分析 寻找边界对象 图书管理员向系统发出 新增书籍信息 请求 主窗口 新增书籍信息 按钮系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类 书籍类别列表框 图书管理员做出选择后 显示相应界面 让图书管理员输入信息 并自动根据书号规则生成书号 新书信息录入 窗口及辅助的 提交 按钮 32 鲁棒分析 寻找控制对象和实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商务信息咨询公司合同付款管理办法
- 巷道掘进培训课件
- 2025年春运出行预测分析报告
- 岩石沙和黏土教学课件
- 屋面拆除安全教育培训课件
- 小麦春季管理课件
- 知识产权担保借款协议
- 专业物流公司特种车辆驾驶员合同样本
- 出租车车辆二手交易平台服务合同
- 上海房产交易资金监管合同
- GB/T 45980-2025飞机供电特性数字式测试要求
- 2025年度粉末涂料生产与销售合同范本
- 8 回忆鲁迅先生(课件)语文统编版2024八年级上册
- 三力测试题库2025版考题及答案
- 2025北京京剧院招聘工作人员10人笔试模拟试题及答案解析
- 2025工勤考试收银审核员(高级技师)考试题(含答案)
- 2025年蜀道投资集团有限责任公司招聘笔试备考题库附答案详解(达标题)
- GB/T 27043-2025合格评定能力验证提供者能力的通用要求
- 加工公司实验室设备管理办法
- (2025秋新版)北师大版二年级上册数学全册教案
- 2025年廉价航空行业研究报告及未来发展趋势预测
评论
0/150
提交评论