第4章面向对象系统分析实例_第1页
第4章面向对象系统分析实例_第2页
第4章面向对象系统分析实例_第3页
第4章面向对象系统分析实例_第4页
第4章面向对象系统分析实例_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、天津师范大学管理学院14.3 面向对象的系统分析实例 以酒店管理中系统中的订房系统为例,说明面向对象分析的建模方法和关以酒店管理中系统中的订房系统为例,说明面向对象分析的建模方法和关键步骤键步骤4.34.3. .1 1 类图建模要点类图建模要点类图(class diagram)用来表达系统内部的静态结构(static structure)。(1) 分析师不能自己随意定义类,必须寻找领域术语做为类名称。例如:房间真正住进去,特定房号的房间。房型顾客在订房时,通常是预订某个房型的房间。(2) 领域概念非常多,分析师应用“事务模式”构建类图的原型,然后再进行扩展,完善。(3)仔细考虑属性/操作的可见

2、性(4)类的关联和组合关系天津师范大学管理学院24.3 面向对象的系统分析实例4.34.3. .2 2 运用运用“事务模式事务模式”建立类图建立类图 “事务”一词在不同的领域中有不同的解释,在信息系统与数据库相关的领域中,事务(transaction)是并发控制的基本单位。它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。 在面向对象的分析过程中,系统的静态结构往往以各种事务为中心。找出与事务相关的事务明细(TransactionLineItem)、涉众(Participant)、地点(Place)、物品(Item),就可以快速构建系统的类图原型。天津师范大学管理

3、学院34.3 面向对象的系统分析实例(1 1)事务与人、地、物)事务与人、地、物 事务模式强调以事务(transaction)对象为中心,串起与事务有关的其他对象,如事务明细、涉众、地点、物品。其一般结构如下:系统中“必须记录的事件”都是我们的侯选事务。天津师范大学管理学院44.3 面向对象的系统分析实例运用事务模式,我们可以很快得出酒店订房系统的初始类图:天津师范大学管理学院54.3 面向对象的系统分析实例(2 2)物品与特定物品)物品与特定物品 事务涉及的物品概念可以细分为两种:一种是具体的、特定的物品,另一种是针对同种类特定物品的描述和分类。在事务模式中,将这两个概念称为“特定物品(Sp

4、ecificItem)”和“物品(Item)”,通过寻找特定物品和物品,类图可进一步完善:天津师范大学管理学院64.3 面向对象的系统分析实例通过寻找特定物品和物品,酒店订房系统的类图可进一步完善: 由于目前还无法确定图中“房间-订房明细”以及“房间-订房”这两条关联,因此分析师在此加上“未确定”注释。注释(comment)天津师范大学管理学院74.3 面向对象的系统分析实例“房间-订房明细”以及“房间-订房”这两条关联,可能都不是单纯的一对多关联,有可能是如下的多对多的关联,还需详细讨论。 天津师范大学管理学院84.3 面向对象的系统分析实例(3 3)后续事务)后续事务 事务本身含有时间因素

5、,因此事务之后可能有后续事务(subsquentTransaction),思考一下,订房成功之后,后续会发生哪些必须记录的重要事件?天津师范大学管理学院94.3 面向对象的系统分析实例后续事务入住天津师范大学管理学院104.3 面向对象的系统分析实例可以通过对业务规则的限定,对类图进行简化,对关联进行调整。例如:酒店方经过讨论认为,一次订房可以同时订多个房间,但是只能限定是同一个预定日期。如果这个会员要预订多个日期的话,必须拆成多个订房事务。天津师范大学管理学院114.3 面向对象的系统分析实例 酒店方还规定一次入住事件对应一个房间。假如会员预订了120/201两个房间的话,这次订房就会对应到

6、两个入住事件。在这样的规定下,也就不再需要入住明细了,因此类图修改如下:天津师范大学管理学院124.3 面向对象的系统分析实例(4 4)参与者与涉众)参与者与涉众 涉众是一种身份、角色,在这个角色背后有一个真正的参与者(actor)。“参与者-涉众”之间的关系就像“演员-角色”之间的关系一样。加入了“参与者-涉众”的类图模型如下:天津师范大学管理学院134.3 面向对象的系统分析实例酒店预订系统中酒店预订系统中加入了“参与者-涉众”的类图模型如下:天津师范大学管理学院144.3 面向对象的系统分析实例综和上面的分析,得出酒店订房系统的类图如下:天津师范大学管理学院154.3 面向对象的系统分析

7、实例结合其他UML模型,进一步完善类图。天津师范大学管理学院164.3 面向对象的系统分析实例例如在用例图中完善了“会员登录”用例描述后,可以立即更新类图。用例用例会员登录启动者启动者会员支持者支持者主要流程主要流程会员输入电子邮件和密码。1.系统确认会员身分之后,出现欢迎信息。替代流程替代流程数据不完整:客户端提醒会员填入数据,直到数据完整才传送到服务器端。验证失败:累积5次登录失败,即锁定,并出现请会员主动联系系统管理员的信息。企业规则企业规则BR1:以会员电子邮件做为会员代号。BR2:会员累积5次登录失败,即锁定该会员账号。只要登录成功,则失败次数归零。BR3:一个人只能申请一个会员身份

8、。议题与其他议题与其他1.由于,一个人只能申请一个会员身份,所以将类图中的个人与会员合并为一。天津师范大学管理学院174.3 面向对象的系统分析实例更新类图:天津师范大学管理学院184.3 面向对象的系统分析实例用例用例订房启动者启动者会员支持者支持者酒店经营者主要流程主要流程会员挑选一家酒店。系统显示出这家酒店所有的房型名称、床型、空房数和房价。会员挑选预定的房型、房间数以及预订日期。系统减少可预订的空房数,并且新增一条订房事务。系统显示出事务代号、订金与总价。系统提醒会员需要48小时内支付预订金。1.系统发送订房通知给酒店经营者和会员。完善完善“订房订房”用例描述用例描述天津师范大学管理学

9、院194.3 面向对象的系统分析实例完善完善“订房订房”用例描述用例描述替代流程替代流程SR1:画面上要标记出必须填写的字段,并且在客户端先检验字段,并且提醒用户填写完整数据,直到必填字段完整之后,才会回送到服务器端。企业规则企业规则BR4:订房事务序号的编码规则为“预订yyyyMMdd0001”,每日以流水号0001起始,每日流水号最大到9999。BR5:订金=总价0.1。BR6:会员需在事务成立后,48小时内支付预订金。议题与其他议题与其他编写“系统规则”(System Rule,SR),做为整个订房系统都必须遵守的规则。1.企业规则和系统规则将集中管理,用例描述中仅片面记录规则初次出现的

10、时刻。天津师范大学管理学院204.3 面向对象的系统分析实例更新类图更新类图( (订房订房) )天津师范大学管理学院214.3 面向对象的系统分析实例4.34.3. .3 3 运用序列图(时序图)整合用例图和类图运用序列图(时序图)整合用例图和类图 序列图关联了类图和用例图。表示了系统在与参与者互动执行某个用例期间,系统内部的一组对象的顺序交互情况。类图类图用例图用例图序列图序列图静态结构(系统内在结构)动态行为(系统外在行为)动态行为(系统内在行为)类参与者、用例对象(object)关联包含、扩展消息(message)事务模式用例描述BCE模式领域概念业务流程概念与流程的关联天津师范大学管理

11、学院224.3 面向对象的系统分析实例 分析师可以通过双交叉法同步进行类图和用例图的分析,然后尽快通过序列图来整合、调整三方面的图。进一步完善系统分析模型。天津师范大学管理学院234.3 面向对象的系统分析实例(1 1)序列图的要素)序列图的要素-对象与生命线 生命线(lifeline)对象(object)天津师范大学管理学院244.3 面向对象的系统分析实例序列图整合了用例与类序列图整合了用例与类天津师范大学管理学院254.3 面向对象的系统分析实例(2 2)序列图的要素)序列图的要素消息与执行说明 生命线(lifeline) 消息(message) 执行说明(execution speci

12、fication)天津师范大学管理学院264.3 面向对象的系统分析实例(3 3)序列图绘制)序列图绘制从从BCEBCE模式入手模式入手l实体类保存问题领域中的重要信息,封装数据结构和数据储存有关的变化。l控制类用来控制用例执行期间的复杂运算或者业务逻辑,通常针对一个用例,就会对应生成一个控制类。l边界类边界类用来隔离系统内外,通常负责接收并响应系统内外的信息。天津师范大学管理学院274.3 面向对象的系统分析实例套用套用BCEBCE模式绘制序列图模式绘制序列图 : : : : : : 12345678910111213天津师范大学管理学院284.3 面向对象的系统分析实例BCEBCE模式应用

13、要点模式应用要点l一个用例,可以对应生成一个控制类。l参与者对象只能跟边界对象互动。l实体对象不能发送消息给边界对象和控制对象。l单纯对数据表进行增删改查的话,可以不设置控制对象,让边界对象直接发送消息给实体对象。天津师范大学管理学院294.3 面向对象的系统分析实例(4 4)酒店订房系统)酒店订房系统会员登录序列图绘制举例会员登录序列图绘制举例用例用例会员登录启动者启动者会员支持者支持者主要流程主要流程会员输入电子邮件和密码。1.系统确认会员身分之后,出现欢迎消息。天津师范大学管理学院304.3 面向对象的系统分析实例“会员登录会员登录”的序列图的序列图天津师范大学管理学院314.3 面向对

14、象的系统分析实例“会员登录会员登录”用例的用例的BCEBCE类类天津师范大学管理学院324.3 面向对象的系统分析实例使用使用BCEBCE类图标类图标天津师范大学管理学院334.3 面向对象的系统分析实例使用一般的类图标使用一般的类图标天津师范大学管理学院344.3 面向对象的系统分析实例修改修改“会员登录会员登录”的主要流的主要流程程用例用例会员登录启动者启动者会员支持者支持者主要流程主要流程会员输入电子邮件和密码。系统验证会员身分。1.系统显示欢迎消息。天津师范大学管理学院354.3 面向对象的系统分析实例(5 5)酒店订房系统)酒店订房系统订房序列图绘制举例订房序列图绘制举例用例用例订房

15、启动者启动者会员支持者支持者酒店经营者主要流程主要流程会员挑选一家酒店。系统列出这家酒店所有的房型名称、床型、空房数和房价。会员挑选预订的房型、房间数以及预订日期。系统减少可预订的空房数,并且新增一条订房交易。系统列出交易代号、订金与总价。系统提醒会员需要48小时内支付预订金。1.系统发送订房通知给酒店经营者和会员。天津师范大学管理学院364.3 面向对象的系统分析实例“订房订房”用例有两个参与者用例有两个参与者天津师范大学管理学院374.3 面向对象的系统分析实例“订房订房”用例有两个参与者用例有两个参与者天津师范大学管理学院384.3 面向对象的系统分析实例加上边界对象和实体对象加上边界对

16、象和实体对象天津师范大学管理学院394.3 面向对象的系统分析实例查询房型天津师范大学管理学院404.3 面向对象的系统分析实例挑选并预订房间天津师范大学管理学院414.3 面向对象的系统分析实例删掉酒店经营者参与者天津师范大学管理学院42删去了酒店经营者的用例图删去了酒店经营者的用例图酒店订房系统4.3 面向对象的系统分析实例天津师范大学管理学院43用例用例订房启动者启动者会员支持者支持者主要流程主要流程会员挑选一家酒店。系统列出这家酒店所有的房型名称、床型、空房数和房价。会员挑选预订的房型、房间数以及预订日期。系统显示出订房总价。系统新增一条订房交易。系统减少可预订的空房数。系统发送订房通知给酒店经营者。系统发送订房通知给会员。系统列出交易代号、订金与总价。1.系统提醒会员需要48小时内支付预

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论