武汉软件工程职业学院教案(理论教学首页)
(第1页)
《软件工程与UML》
武汉软件工程职业学院教案(附页)
(第NUMPAGES2页)
装订线章节名称
装订线
单元4系统的动态建模
任务:建模交互过程
授课安排
授课
时数
2
授课时间
第7周第1次课
授课
方法
讲练结合
授课教具
机房,StarUML、ROSE或VISIO
教学目标
知识目标:掌握UML中顺序图。
能力目标:从用例到顺序图。
思政目标:培养反复迭代、逐步完善的工匠精神
教学重点
UML顺序图中对象的识别
教学
难点
UML顺序图中对象职责的确定
【教学环境】
多媒体机房
软件需求:机房,StarUML、ROSE或VISIO
【教学过程】
一、问题导入
(1)如何表示对象间的交互,以什么为单位表示交互过程。
通过顺序图表示交互。
通常以一个独立完整的功能(用例)为单位。
一张顺序图通常只表示一种情况的事件流。
(2)明确学习目标。
熟练地掌握UML中UML中顺序图。
二、授新课
(一)布置任务
根据“书店借书系统”的“借还书”用例文档中的事件路径,依据“系统分析阶段”的类图,建模“借还书”的交互过程;依据“系统设计”阶段的类图,建模“借还书”的交互过程。
(二)知识要点
定义顺序图
软件系统中的任务是通过对象之间的合作来完成的,这种合作称为交互。交互模型可以用来描述软件系统中的类、接口、组件、节点的实例的动态行为。交互模型包括顺序图和协作图。
顺序图用来建模对象间的交互,强调按时间顺序展开的信息的传递。它与活动图的相似之处是可以表示流程,但顺序图能进一步地将活动分配给对象。一个顺序图只显示一个控制流。
ATM机“登录成功”的顺序图
消息的类型
(1)同步消息(Synchronous):表示该消息完成之前,同一个对象不能再发送下一条消息。
(2)返回消息(Return):表示控制流返回到调用的活动对象。
(3)异步消息(Asychronous):表示不必等待来自该消息的响应,同一个对象即可发出下一条消息。
(4)简单消息(Flat):表示不区分同步或异步。
消息的传入和传出
消息传入某个对象,表示该对象是消息的承担者;消息由某个对象传出,表示该对象是消息的发起者、调用者
有4条消息传入“订单”对象,说明“订单”类有以下方法:
订单.结账()
订单.合计总价钱()
订单.付款()
订单.校验信用卡()
在“订单”对象执行“结账”方法的过程中传出了5条消息,说明这个方法体中作了5处方法调用:
订单.结账()
{
…
订单项.计算价钱();
订单项.计算税金();
订单项.寻找最近的供应商();
订单项.计算税金();
…
(订单).合计总价钱();
}
对象的创建和销毁
将create消息发送给对象实例,从而即时创建对象,对象创建之后才具有生命线。
destroys消息用于销毁对象,给需要销毁的对象发送这个消息,同时在该对象的生命线上放一个“×”符号,表示对象的生命终止。
(三)任务实施
1.明确建模的边界(具体用例及用例的哪种事件流)。
2.从左至右布置对象。
3.建模按照时间顺序展开的对象间的交互。
4.反复迭代完成建模。
三、归纳总结
回顾上课前的学习目标,对本节课知识点进行总结:
顺序图的基本概念。
消息的类型。
通常以一个独立完整的功能(用例)为单位。
一张顺序图通常只表示一种情况的事件流。
【课后作业】
完成教材拓展训练1:网上报销系统“报销成功”的顺序图