静态结构模型类图
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆系统的对象
名词类别
概念类列表
显而易见的对象 明显无意义的对象
读者 借书卡 图书 借书信息 借书清单
读者身份
不确定类别的对象
借书条件 图书状态 可借数量 可用限额
• 图书状态总是和具体的图书联系在一起,不是一个独立的对象。同理, 借书数量、可用限额是读者属性。
• 可借数量是某个图书品种的特性,每本图书归属于一个图书品种,图书 品种是一个隐含概念
第四阶段:建立系统的静态结构模型 分析系统的行为,建立系统的静态结构模型,并将其用图形和文字说 明表示出来,如绘制类图、对象图、系统与子系统结构图等,编制相 应的说明文档。 第五阶段:建立系统的动态行为模型 分析系统的行为,建立系统的动态行为模型,并将其用图形和文字说 明表示出来,如绘制用例图、交互图、活动图、状态图等,编制相应 的说明文档。
不同类别的概念(续)
规格说明:系统中关于对象的规格信息的描述。 – 如图书品种,每种图书有一个唯一的馆藏号,同时该图书还包含一些描述信
息,如书号、价格、作者、出版社等,多本图书对象共用这些规格说明。这 是一种经过了抽象的概念,应该识别为概念类。 业务规则或政策:系统中经常使用的业务规则或政策的文字描述。 – 业务规则通常会在用例文档之外以其他条款说明。如图书馆系统中,对不同 违规行为指定不同的罚款金额,商店对不同顾客或产品有不同的折扣策略等。 如果这些规则无法并入到其他对象中,则可以作为概念类建立。 – 通常规则可能仅有属性,或者仅有操作,比如折扣策略可能是一个纯粹的计 算类。
借书用例描述
用例描述如下: 1.图书管理员将读者借书卡提供给系统; 2.系统验证读者身份和借书条件; 3.图书管理员将读者所借图书输入系统; 4.系统记录借书信息,并且修改图书的状态和此种书的可借数量; 5.系统修改读者的可用限额; 6.重复3-5,直到图书管理员确认全部图书登记完毕; 7.系统打印借书清单,交易成功完成。
用例名称:预定房间 涉及的参与者:酒店前台 正常事件流: 1) 前台人员向系统提供需要预定房间的类型、时间和预定天数。 2) 系统确认有相应档次的空闲房间,并计算出总费用和定金。 3) 前台人员向系统提供旅客信息(姓名、地址、联系电话、证件号等)。 4) 系统记录旅客信息。 5) 前台人员确认已经交纳定金。 6) 系统记录房间已经预定,工作完成。
对用户需求陈述进行“语法分析”,找出所有的名词或名词短语,对 其标注下划线; 合并同义词; 将最终得到的每一个名词映射为一个类; 动词映射为类的操作,形容词/名词映射为类的属性。
借书用例
百度文库
借书用例描述
用例描述如下: 1.图书管理员将读者借书卡提供给系统; 2.系统验证读者身份和借书条件; 3.图书管理员将读者所借图书输入系统; 4.系统记录借书信息,并且修改图书的状态和此种书的可借数量; 5.系统修改读者的可用限额; 6.重复3-5,直到图书管理员确认全部图书登记完毕; 7.系统打印借书清单,交易成功完成。
• 借书条件是一种规则,可以作为对象吗?
练习
阅读用例描述,找出概念类
用例名:购买商品 参与者:出纳员 描述:顾客带着所要购买的商品来到收款处。出纳员记录下商品信息
并收款。付款完成后,顾客带着所购买的商品和收据离开。
练习
阅读用例描述,找出概念类 用例名:购买商品 参与者:出纳员 描述:顾客带着所要购买的商品来到收款处。出纳员记录下商品信息
面向对象的分析模型
面向对象的分析模型
面向对象分析的过程
第一阶段:业务领域分析 分析应用领域的业务范围、业务规则和业务处理过程,确定系统的责 任、范围和边界,确定系统的需求。 在分析中需要着重对系统与外部的用户和其他系统的交互进行分析, 确定交互的内容、步骤和顺序。 ——用例模型
第二阶段:发现和定义对象和类 识别对象和类,确定它们的内部特征:属性与服务操作。 这是一个从现实世界到概念模型的抽象过程,而抽象是面向对象分析 的基本原则。 第三阶段:识别对象的外部联系 在发现和定义对象和类的过程中,需要同时识别对象与对象、类与类 之间的各种外部联系,如一般与特殊、整体与部分、实例连接(关联)、 消息连接等联系。 对象和类是现实世界中的事物的抽象,它们之间的联系也要从分析现 实世界事物的各种真实的联系中获得。
不同类别的概念
人员:系统需要保存或管理其信息的人员(如录像商店的会员、图书 馆的读者),或在系统中中扮演一定角色的人员(如录像商店的职员、 论文评阅教师)。 组织:在系统中发挥一定作用的组织机构(如录像商店的连锁店,医 疗保险系统中的医院,学校中的系)。 物品:需要由系统管理的各种物品(如录像商店的商品、图书),包 括无形事物(如学校的一门课程、毕设题目)。 设备:在系统中被使用或由系统进行监控的设备、仪器等,系统运行 中的硬件设备(如打印机)除外。 事件:需要由系统长期记忆的事件(如在自动柜员机上的每次取款事 件、每次借书事件)。
面向对象的分析
分析业务领域,找出问题解决方案,发现对象,分析对象的内部构成 和外部关系,建立软件系统的对象模型。 着重分析业务领域和系统责任,建立独立于实现的OOA模型,暂时忽 略与系统实现有关的问题。 主要使用5种图描述完整的系统需求: 用例图 类图 时序图 协作图 状态图
面向对象的分析模型
功能模型:从用户的角度获取功能需求,由用例模型表示 (已在上堂课学习过); 静态结构模型(分析对象模型):描述系统的概念实体,由 类图表示; 动态行为模型:描述对象之间的交互行为,由状态图和顺 序图表示。
并收款。付款完成后,顾客带着所购买的商品和收据离开。
明显无意义的对象:收款处
用例名称:预定房间 涉及的参与者:酒店前台 正常事件流: 1) 前台人员向系统提供需要预定房间的类型、时间和预定天数。 2) 系统确认有相应档次的空闲房间,并计算出总费用和定金。 3) 前台人员向系统提供旅客信息(姓名、地址、联系电话、证件号等)。 4) 系统记录旅客信息。 5) 前台人员确认已经交纳定金。 6) 系统记录房间已经预定,工作完成。
建立静态结构模型
基本的分析过程: Step 1:从用例模型入手,识别概念类; Step 2:描述各个类的属性; Step 3:定义各个类的操作; Step 4:建立类之间的关系; Step 5:绘制类图(class diagram)
识别概念类
如何从用户的需求陈述中找到“概念类”? ——名词驱动的识别方法