《第7章图书管理系统动态建模.ppt》由会员分享,可在线阅读,更多相关《第7章图书管理系统动态建模.ppt(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ 字体下载:/ziti/ 第7章 图书管理系统动态建模软件工程与软件工程与RoseRose建模案建模案例教程例教程第7章 图
2、书管理系统动态建模 主编:刘志成2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程本章学习导航本章学习导航2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程本章学习要点本章学习要点l状态图的功能及绘制状态图的功能及绘制l活动图的功能及绘制活动图的功能及绘制l顺序图的功能及绘制顺序图的功能及绘制l协作图的功能及绘制协作图的功能及绘制教学课时:教学课时:8课时课时2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e
3、 建 模 案 例 教 程建 模 案 例 教 程任务1 了解动态模型的基本功能和基本组成了解动态模型的基本功能和基本组成任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务1l所有系统(包括软件系统)均可表示为两个方面:静态结构和动态行为。l为了能够很好地描述软件系统中的动态特性,UML提供了状态图、活动图、顺序图和协作图来描述系统的结构和行为。 l通常情况下,系统中的对象的相互通信是通过相互发送消息来实现的。 l一组
4、对象为了实现一些功能而进行通信称之为交互,可以通过状态图、活动图、顺序图和协作图来描述系统的动态行为。 动态建模概述动态建模概述2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2 了解状态图的基本功能和绘制方法,并绘了解状态图的基本功能和绘制方法,并绘制图书管理系统的状态图制图书管理系统的状态图任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例
5、 教 程任务2 是软件系统进行面向对象分析的一种常用工具,它通过建立对象的生存周生存周期模型期模型(状态)来描述对象随时间变化的动态行为。 状态图概述状态图概述2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2l起点起点代表状态图的一个初始状态,此状态代表状态图的起始位置。 l终点终点代表状态图的最后状态,此状态代表状态图的终止位置。 状态图组成状态图组成- -起点和终点起点和终点 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任
6、务2 状态状态是对象操作的前一次活动的结果,通常情况下,状态由对象的属性值以及指向其它对象的链来决定的。l“SQL Server 2005实例教程”(图书对象)被借出(在借在借状态);l“软件测试实例教程”(图书对象)在图书馆里(在库在库状态);l小王(读者对象)在校(在校在校状态);l小王的借书证(借书证对象)可以用(有效有效状态);l小王的借书证(借书证对象)丢失(挂失挂失状态);l小王(读者对象)已毕业(毕业毕业状态);l小王的借书证(借书证对象)不可以用(无效无效状态)。 状态图组成状态图组成- -状态状态 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s
7、 e 建 模 案 例 教 程建 模 案 例 教 程任务2状态图组成状态图组成- -状态状态 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2状态图组成状态图组成- -事件事件 “事件”指的是发生的且引起某些动作执行的事情事情,即事件表示在某一特定的时间或空间出现的能够引发状态改变的运动变化。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2状态图组成状态图组成- -转换转换 转换表示当一个特定事件发生或者某些条件满足时,一个
8、源状态下的对象完成一定的动作后将发生状态转变转变,转向另一个称之为目标状态的状态。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2绘制图书管理系统图书状态图绘制图书管理系统图书状态图 (1)打开工程book.mdl (2)新建状态图 (3)添加状态 (4)设置状态转移事件 (5)添加活动 (6)调整大小和位置 提示:提示:教师演示状态图的绘制过程2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践 1(1)绘制电子商务系统的
9、商品状态图,并对不同状态间的转换进行描述(参照书中的提示)。(2)阅读如图7-16所示的学生选课系统中的课程状态图,试着对不同状态间的转换进行描述(参照书中的提示) 操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践 1(1)maxstudents表示选修某一门课程的最多人数。(2)students表示选修了某一门课程的人数。(3)after this term表示学期结束操作提示操作提示2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程
10、建 模 案 例 教 程任务3 了解活动图的基本功能和绘制方法,并绘了解活动图的基本功能和绘制方法,并绘制图书管理系统的活动图制图书管理系统的活动图任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3使用活动图主要目的主要目的:l描述一个操作执行过程中(操作实现的实例化)所完成的工作(动作);l描述对象内部的工作;l显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象;l显示用例的实例是如何执行动作以及如何
11、改变对象状态;l说明一次商务活动中的参与者、工作流、组织和对象是如何工作的。活动图概述活动图概述l活动图(Activity Diagram)显示活动动作及其结果,着重描述操作(方法)实现中所完成的工作以及用例实例或对象中的活动。l活动图的主要目的是描述动作(执行的工作和活动)及对象状态改变的结果。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3典型活动图典型活动图机场个机场个人登记人登记活动图活动图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建
12、模 案 例 教 程任务3活动图组成活动图组成- -动作状态和活动状态动作状态和活动状态l动作状态是指执行原子的、不可中断的动作,并在此动作完成后转换到另一个状态。 l活动状态用于表达状态机中的非原子的运行 。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3活动图组成活动图组成- -动作流、分支和合并动作流、分支和合并l动作流动作流是指所有动作状态之间的转换。 l分支分支是软件系统流程中很常见的一种逻辑,它一般用来表示对象所具有的条件行为 。 l合并合并包括两个带条件的入转换和一个出转换(即两个入口和一个出口
13、),用来表示从对应的分支开始的条件行为的结束。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3活动图组成活动图组成- -分叉与汇合分叉与汇合l分叉分叉用于将动作流分为两个或多个并发运行的分支,每一个分叉可以有一个入转换和两个或多个出转换,并且每个转换都可以是独立的控制流;l汇合汇合则用于将不同的分支汇聚一起,当所有分支的控制流都达到汇合点后,控制才能继续往下进行,每个汇合可以有两个或多个输入转换和一个输出转换。2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例
14、 教 程建 模 案 例 教 程任务3活动图组成活动图组成- -泳道泳道l泳道泳道,可以在活动图中区分负责活动的对象,它明确地表示了哪些活动是由哪些对象进行的。2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3活动图组成活动图组成- -对象流、组合活动对象流、组合活动l对象可以在活动图中显示,表示动作状态或者活动状态与对象之间的依赖关系。l包含了若干活动或动作的活动称之为组组合活动合活动 。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例
15、教 程任务3绘制图书管理系统读者活动图绘制图书管理系统读者活动图(1)打开工程book.mdl (2)新建活动图 (3)添加读者活动图的起点和终点 (4)添加动作状态或活动状态 (5)增加分支与合并 (6)增加分叉与汇合 提示:提示:教师演示活动图的绘制过程2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3活动图活动图 VS VS 流程图流程图l流程图着重描述处理过程处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系;而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的
16、是系统的行为系统的行为,而非系统的处理过程;l活动图能够表示并发活动的情形,而流程图不能;l活动图是面向对象的,而流程图是面向过程的。 活动图活动图 VS VS 状态图状态图l状态图描述类的对象所有可能的状态可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图;l 而活动图描述满足用例要求所要进行的活动以及活动间的约束关活动以及活动间的约束关系系,有利于识别并行活动。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模
17、 案 例 教 程课堂实践2(1)通过学习小组讨论和上网查询资料形式完成。(2)可以绘制流程图,再将流程图与活动图进行比较。操作提示操作提示(1)阅读图书管理系统的系统管理员维护读者信息的活动图,试着对系统管理员的维护读者活动进行描述。(2)绘制电子商务系统的系统管理员维护商品信息的活动图。操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 了解顺序图的基本功能和绘制方法,并绘了解顺序图的基本功能和绘制方法,并绘制图书管理系统的顺序图制图书管理系统的顺序图任务目标任务目标l 小组讨论法小组讨论法l
18、 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 描述了对象之间传送消息的时间顺序传送消息的时间顺序,它用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条消息对应了一个类操作中引起转换的触发事件。 顺序图概述顺序图概述2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4对象:对象:顺序图中的对象的符号与对象图中的对象的符号是一样的,都是使用矩形将对象名称包含起
19、来,并且在对象名称下加下划线。 生命线:生命线:生命线是一条垂直的虚线,表示顺序图中的对象在一段时间内的存在。每个对象的底部都带有生命线。 顺序图组成顺序图组成- -对象、生命线对象、生命线2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4消息消息是对象之间某种形式的通信,它可以激发某个操作、唤起信号或导致目标对象的创建或撤消。 激活激活表示该对象被占用以完成某个任务,钝化表示对象处于空闲状态,在等待消息。 顺序图组成顺序图组成- -消息、激活消息、激活2022-7-9软 件 工 程 与软 件 工 程 与 R
20、o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4(1)打开工程book.mdl (2)新建顺序图 (3)选择类,创建对象,并指定对象名 (4)添加对象间传递的消息 绘制绘制“添加图书添加图书”顺序图顺序图提示:提示:教师演示顺序图的绘制过程2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践3(1)通过学习小组讨论和上网查询资料形式完成。(2)在顺序图中通常要用到控制类和边界类。操作提示操作提示(1)阅读如图7-41所示学生选课系统中的管理员维护课程的顺序图,试着描述不同对象间的消息
21、传递顺序。 (2)绘制电子商务系统中用户购物的顺序图。 操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践32022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务5 了解协作图的基本功能和绘制方法,并绘了解协作图的基本功能和绘制方法,并绘制图书管理系统的协作图制图书管理系统的协作图任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软
22、件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务5 协作图(Collaboration Diagram)是顺序图之外的另一种表示交互的方法。主要描述协作对象间的交互和链接,强调的是对象结构相关的信息。顺序图和协作图都描述交互,但是顺序图强调的是时间时间,而协作图强调的是空间空间。 协作图概述协作图概述典典型型协协作作图图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务5对象对象 :协作图中的对象与顺序图中的对象的概念是一样的,图形表示方法也是一样的。 链接链接:一条
23、链接是两个对象间的连接。消息消息:协作图中的消息与顺序图中的消息相同。 协作图组成协作图组成2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务5(1)打开工程book.mdl (2)新建协作图 (3)添加对象 绘制协作图绘制协作图(4)添加消息 (5)添加数据流 (6)完成绘制 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务5l顺序图强调按时间展开的消息的传递,清晰地显示了时间次序;对简单的迭代和分支的可视化要比协作图好,常用于
24、场景显示;可以不要顺序号。l协作图强调交互中实例之间的结构关系以及所传送的消息,清晰地显示了对象间关系;对复杂的迭代和分支的可视化以及对多并发控制流的可视化要比顺序图好,常用于显示过程设计细节;有路径和顺序号。协作图协作图VSVS顺序图顺序图l打开要转换的顺序图或协作图(如:读者预订协作图)l(2)依次选择主菜单栏中的【Browse】【Go To Sequence Diagram】,即可将当前的协作图转换成顺序图 。协作图与顺序图的互换协作图与顺序图的互换2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践4(
25、1)通过学习小组讨论和上网查询资料形式完成。(2)通过比较进一步理解顺序图和协作图的侧重点。操作提示操作提示(1)阅读如图7-47所示的学生选课系统中的维护课程信息的协作图,描述维护课程过程中对象之间消息的传递,并与图7-41进行比较。(2)试着将【课堂实践3】中绘制的顺序图转换成协作图。 (3)绘制电子商务系统中后台订单处理的协作图。操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践42022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课外拓展(1)小组为单位进行讨论,首先可以使用手绘方式。(2)根据绘制的模型图,对系统的动态形为进行描述。操作提示操作提示(1)绘制B-C电子商务系统订单状态图。(2)绘制B-C电子商务系统订单处理活动图。(3)绘制B-C电子商务系统前台用户购物顺序图。(4)绘制B-C电子商务系统后台管理员处理订单的协作图操作要求操作要求