1、课课 堂堂 练练 习习-用例图与用例规约2用户需求简要描述3要求:n按需求简要描述为旅店预订系统创建用例图;n选择一个用例进行场景描述;n为该用例建立用例表;n为该用例创建活动图。4问题用例图15问题用例图26问题用例图371.不恰当的“时间”参与者时间时间:参与者,一种习惯用法,用于激活那:参与者,一种习惯用法,用于激活那些系统定期的、自动执行的用例些系统定期的、自动执行的用例“检查是否可以退定金检查是否可以退定金”的时候,时间仅仅的时候,时间仅仅是一个系统内部的判断条件,而不是参与者是一个系统内部的判断条件,而不是参与者82.无效的参与者泛化 参与者泛化参与者泛化:特殊参与者会继承泛化参与
2、者所有的要素!:特殊参与者会继承泛化参与者所有的要素!参与者的重要性在一识别用例,如果泛化没有带来任何用例,则参与者的重要性在一识别用例,如果泛化没有带来任何用例,则这样的方法没有任何意义这样的方法没有任何意义 在系统中如果两个参与者涉及相同的用例,则合并在系统中如果两个参与者涉及相同的用例,则合并93.错误的用例关系 依赖关系依赖关系:include,extend都是依赖关都是依赖关系系(dependency)的的构造型构造型(stereotype),带箭头的虚线表示带箭头的虚线表示 扩展关系:扩展关系:“extend”关系的方关系的方向,子用例对主用例向,子用例对主用例的扩展的扩展103.
3、错误的用例关系用例的顺序在活用例的顺序在活动图中表现动图中表现113.错误的用例关系124.“其他”用例?“其他其他”、“打印清单打印清单”用例和外围没有任何用例和外围没有任何有意义交互有意义交互,和其他,和其他用例也没有任何关系,用例也没有任何关系,这样的用例有意义吗?这样的用例有意义吗?“其他其他”用例用例又代表又代表什么呢?想说明什么什么呢?想说明什么样的功能需求?样的功能需求?135.参与者和用例间的关系146.用例粒度太小15较为合理的用例图预订房间取消预订酒店前台打印预订清单时间查找房间退还定金计算总费用调整价格管理人员16用例名称:预定房间涉及的参与者:酒店前台描述:酒店前台人员
4、根据旅客的入住请求,预定某个时间指定档次的房间,预定的同时旅客按规定须提交10%定金。前置条件:前台工作人员必须已经登录到这个系统后置条件:预定信息正确的记录到系统中正常事件流:1)前台人员向系统提供需要预定房间的类型、时间和预定天数。2)系统确认有相应档次的空闲房间,并计算出总费用和定金。3)前台人员向系统提供旅客信息(姓名、地址、联系电话、证件号等)。4)系统记录旅客信息。5)前台人员确认已经交纳定金。6)系统记录房间已经预定,工作完成。备选事件流:2a.没有指定类型的空闲房间,可以转到第一步或者取消预定,用例结束5a.顾客没有交纳定金,前台工作人员取消预定,用例结束。较为合理的用例规格说
5、明117n用例名称:取消预订n主要参与者:酒店前台n描述:酒店前台利用该用例来取消顾客的预定,如果在指定时间内,则取消时需要返还顾客定金n前置条件:用户必须已经预订了某个房间n后置条件:系统将取消预定的房间恢复为空闲,并且定金已返还给顾客n正常事件流:1)前台人员提供给系统顾客信息,比如顾客姓名或证件号码;2)系统进行检查并返回该顾客的预订信息,包括顾客姓名、证件号码、联系电话、房间类型、预订时间、预订天数和总费用;3)前台人员确认取消该预定;4)系统取消该房间预订n备选事件流:2a.系统提示没有该顾客的预定信息。4a.当取消预订在六小时之内,系统提示需要退还顾客定金。4a1.系统提示返回金额;4a2.前台人员确认已退还定金;4a3.系统记录定金已退还。较为合理的用例规格说明2