的学生费用和适用的税,计算出这门课的收费。 8. 注册员通知学生相关费用。 9. 注册员确认学生表示愿意注册该讨论班。 10. 学生表示愿意注册该讨论班。 14. 当学生得到确认信息时用况结束 11. 注册员把学生注册到该讨论班。 12. 注册员把相应的费用加到学生账单中。 13. 注册员向学生提供已经注册成功的确认。
3、用例的事件流描述
用例还可以事件流来描述,用例的事件流是对完成用例行为所需的事件的描述。事件流描述了系统应该作什么,而不是描述系统应该怎样做。 名称:注册讨论班
描述:把现有的有资格的某一学生注册到某个讨论班。 前提条件:学生已在大学注册。
后置条件:如果学生具有注册资格,并且该讨论班仍有空位,则学生注册到该讨论班。 活动的基本过程: 学生 注册员 1.学生想去注册讨论班。 3.注册员确定该学生是否有资格在这所学校注册讨论班。 2.学生向注册员提交其姓名和编号 4.学生从可供选择的讨论班列表中,选出他希望注册的讨论班。 4.学生从可供选择的讨论班列表中,选出他希5. 注册员验证学生是否有资格注册这门课。 望注册的讨论班。 6. 注册员检验讨论班是否适合学生已有的课程安排 7. 注册员根据讨论班目录中公布的费用、适用事件流续表:
候选过程A:学生没有资格注册讨论班。 A3. 注册员确定学生没有资格注册讨论班。 A4. 注册员通知学生,她没有资格注册。 A5. 用况结束。
候选过程B:学生不具备注册这一讨论班所需要的必备条件。
B5. 注册员确定学生没有资格注册该讨论班。
B6. 注册员通知学生,她不具备注册这一讨论班所需要的必备条件 B7.注册员通知学生,她需要具备的条件。 B8. 用况从活动基本过程中的步骤4继续执行。
候选过程C:学生决定不注册讨论班,虽然有讨论班可供其选择。 C4.学生查看讨论班列表,但没有找到他想要注册的项。 C5. 用况结束。
根据事件流描述,活动框图如下所示:
第 33 页 共 42 页
三、静态建模
1、进一步分析系统需求,发现类以及类之间的关系,确定它们的静态结构和动态行为,是面向对像分析的基本任务。
2、系统的静态结构模型主要用类图和对象图描述。
3、静态建模主要分为两步:①定义类②确定类的名字、属性和操作,建立类图。 (1)定义类
1)该系统主要有三种类型的类:
①参与者类(actor class):代表出现在用况中的参与者
②用户界面类(user interface class):组成系统用户界面的屏幕显示、菜单和报表,即UI元素 ③业务类 (business class):描述业务的地点、物品、概念和事件
2)在静态建模中用类模型表示概念模型,而着手进行概念模型的最简单的方法是把领域模型作为设计基础,于是要采用类-职责-协作(CRC)模型并把它直接转换成类图 CRC卡片的布局如下图所示:
该系统CRC模型如下
(2)类图
①识别出系统中的类后,还要识别出类间的关系(关联、聚合、组合、类属、依赖、实现关系,前面已讲过),然后就可以建立类图了。
②在处理复杂问题时,通常使用分类的方法来有效地降低问题的复杂性。在面向对象建模技术中,也可以采用同样的方法将客观世界的实体映射为对象,并归纳成类。类、对象及它们之间的关系是面向对象技术中最基本的元素。类图是面向对象系统最常用的图,类图描述了类集、接口集、
第 34 页 共 42 页
协作及它们之间的关系。 ③类间的关系如下图所示:
④用户界面包中有如下三个类: a.成绩单<
b.注册讨论班<
c.安全登录<
四、动态建模
动态模型描绘了参与每个用例的对象之间的交互。开发动态模型的起点是用例以及在对象构建期间决定的对象。通常使用协作图来描绘满足用例需要的对象间消息通信,针对单个类实例的行为,用状态图描绘该类状态的改变。
状态图:为依赖状态展示不同行为的类开发状态图;协作图:描绘对象间交互的鸟瞰视图 1、状态图
2、协作图
第 35 页 共 42 页
五、组件建模
组件建模的目标, 把系统中在类分布到更大的内聚的组件当中。重构(refactor)传统的对象设计,以便将其作为组件进行部署。为了能够把对象设计组件化,需要执行五个步骤,通常这五个步骤是迭代执行的:1.处理非业务/领域类。2.定义类契约。3.简化继承与聚合的层次结构。4.确定领域组件。5.定义领域组件契约。 组件图
六、部署建模
下图给出了学生选课系统的UML部署图。三维方框代表节点,比如计算机和交换机,结点之间的连接用简单的直线表示,在该图中构造型指出了浏览器和应用服务器的连接使用http协议,而应用服务器与数据服务器之间的连接使用Java的远程方法调用(RMI)协议。
第 36 页 共 42 页
相关推荐: