UML系统建模与分析设计 课件全套 刁成嘉 第1-9章 系统建模与分析设计技术的演变- 软件复用与构件接口技术_第1页
UML系统建模与分析设计 课件全套 刁成嘉 第1-9章 系统建模与分析设计技术的演变- 软件复用与构件接口技术_第2页
UML系统建模与分析设计 课件全套 刁成嘉 第1-9章 系统建模与分析设计技术的演变- 软件复用与构件接口技术_第3页
UML系统建模与分析设计 课件全套 刁成嘉 第1-9章 系统建模与分析设计技术的演变- 软件复用与构件接口技术_第4页
UML系统建模与分析设计 课件全套 刁成嘉 第1-9章 系统建模与分析设计技术的演变- 软件复用与构件接口技术_第5页
已阅读5页,还剩377页未读 继续免费阅读

下载本文档

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

文档简介

UML系统建模

与分析设计课件2024/2/28UML系统建模与分析设计1第一章

系统建模与分析设计技术的演变

本章目的:理解软件的基本概念和特点了解软件的发展过程及软件开发过程了解软件开发的方法掌握面向对象技术的基本概念及开发过程了解几种典型的面向对象方法2024/2/28UML系统建模与分析设计21.1软件的概念、特点和分类1.现代软件的概念和特点(1)软件规模大。(2)软件开发规范并趋于标准化。(3)软件开发方法多,有大量的软件工具持。(4)注重软件开发的管理。(5)软件维护相对过去容易得多。2024/2/28UML系统建模与分析设计32.软件的分类(1)按软件的功能划分系统软件。支撑软件。应用软件。(2)按软件的规模划分微型软件。小型软件。中型软件。大型甚至超大型软件。(3)按软件工作方式划分实时处理软件。分时软件。交互式软件。批处理软件。2024/2/28UML系统建模与分析设计4(4)按软件服务对象的范围划分项目软件。 产品软件。(5)按使用的频度划分 一次性使用软件。 使用频度较高的软件。(6)按软件失效的影响程度划分 一般性软件。 关键性软件。2024/2/28UML系统建模与分析设计51.2软件的发展与软件工程软件工程的指导性原则:

变动的软件需求。 稳妥的设计方法。 高效的软件开发支持技术。 有效的过程管理。软件工程具有里程碑意义的进展:

结构化软件开发方法的工具。 计算机辅助软件工程(CASE)。 面向对象语言和方法成为主流的软件开发技术。2024/2/28UML系统建模与分析设计61.3软件开发模型的演变和生存周期1.3.1软件开发过程与模型的演变1.瀑布模型(waterfallmodel)(1)慎重使用瀑布模型的情况:不能充分理解客户需求或客户需求有可能迅速发生化;系统太大太复杂,不能一次做完所有的事;事先拟采用的技术迅速发生变化;提供的资源有限;无法利用各开发阶段的某一中间产品。2024/2/28UML系统建模与分析设计7(2)使用瀑布模型的情况:系统所有的功能、性能要求客户可以一次性准确交付时;必须是首次开发的新系统并且淘汰全部老系统时。2.渐增模型(incrementalmodel)(1)慎重考虑使用渐增模型的情况:不能充分理解客户需求或客户需求有可能迅速发生变化;事先拟采用的技术迅速发生变化;客户突然提出一些新的功能需求;长时期内仅有有限的资源保证(开发人员和资金)。2024/2/28UML系统建模与分析设计8使用渐增模型的情况:需要在尽短的时间内得到系统基本功能的演示或使用;各版本都有中间阶段产品可提供使用;系统可以被自然地分割成渐增的模式;开发人员与资金可以逐步增加。2024/2/28UML系统建模与分析设计93.演化模型(evolutionarymodel) 演化模型也称为原型(prototype)法模型。使用演化模型时应注意:演化模型也是通过系统各个可执行的中间版本以渐增的形式来开发系统的,但是客户需求可以分步逐渐了解,不用在初始时就确定。在模型中,可以预先定义一部分客户需求,然后在每个后继的中间版本中再逐步增加需求,一点点完善。在开发每个中间版本时,开发过程中的活动和任务可以顺序地或部分重叠平行地被加入到这些中间版本中。2024/2/28UML系统建模与分析设计102024/2/28UML系统建模与分析设计114.螺旋模型(spiralmodel)螺旋模型的四类活动:制定计划。风险分析。实施开发。客户评估。2024/2/28UML系统建模与分析设计125.智能模型(intelligentmodel)2024/2/28UML系统建模与分析设计131.3.2软件开发模型的选择要综合考虑以下几个因素:(1)软件规模(2)软件类型系统软件的开发。实时软件的开发。商业应用软件的开发。嵌入式软件的开发。人工智能软件的开发。2024/2/28UML系统建模与分析设计14(3)软件质量要求(4)交付工期(5)客户需求明确度(6)投资(7)可复用性(8)开发者掌握的资源2024/2/28UML系统建模与分析设计151.3.3软件生存周期2024/2/28UML系统建模与分析设计161.软件定义 (1)软件系统的可行性研究 1)经济可行性研究。 2)技术可行性研究。 3)法律可行性研究。 4)方案的选择。 (2)需求分析 1)任务。 软件功能需求: 软件性能需求: 软件系统运行环境: 2)按需求建模。 3)软件需求规格说明(SoftwareRequirementsSpecification,简称SRS)。2024/2/28UML系统建模与分析设计172.软件开发 (1)概要设计 建立系统总体结构和各模块之间的关系; 定义各个功能摸块的接口; 设计全局数据库或数据结构; 规定设计约束; 制定组装测试计划。 (2)详细设计 对概要设计进行细化; 建立文档资料。2024/2/28UML系统建模与分析设计18

(3)实现 选择合适的编程语言; 制定测试案例; 保存文档资料。 (4)组装测试 (5)确认测试3.软件使用、维护和更新换代 (1)软件使用 (2)系统维护 (3)系统更新换代2024/2/28UML系统建模与分析设计191.4软件开发方法简介1.结构化程序设计方法 其控制结构仅由顺序、选择与重复等有限的基本控制结构表示。2.模块化程序设计方法 模块之间的接口应尽可能简明清晰: 单独模块的修改不影响其它模块的功能; 模块化应具有可修改性、易读性和可验证性。3.面向对象程序设计方法2024/2/28UML系统建模与分析设计201.4.1结构化软件开发方法 1.结构化分析的步骤 构造数据流模型。 构建控制流模型。 生成数据字典(DD)。 生成可选方案,建立需求规约。2024/2/28UML系统建模与分析设计212.结构化设计步骤首先研究、分析和审查数据流图。从软件的需求规格说明中弄清数据流加工的过程。然后根据数据流图决定问题的类型。由数据流图推导出系统的初始结构图。优化软件结构。描述模块接口。修改和补充数据词典。制定测试计划。2024/2/28UML系统建模与分析设计221.4.2模块化软件开发方法 (1)模块可分解性。 (2)模块可组装性。 (3)模块可理解性。 (4)模块连续性。 (5)模块保护。2024/2/28UML系统建模与分析设计231.4.3面向数据结构软件开发方法 1.建立JSD的系统进程模型 2.JSD方法的步骤 (1)JSD需求分析步骤 标识系统中的实体与相应动作; 生成实体结构图; 初建系统模型。 (2)JSD系统设计步骤 扩充功能过程。 系统定时。 系统实现。2024/2/28UML系统建模与分析设计24

面向数据结构的开发方法的特点:将分析结果作为设计基础,无明显分界;都必须标识关键实体和动作;信息具有层次性;提供一组将层次化的数据结构映射到程序结构的步骤;数据结构由顺序、选择和重复3种构造成分表示。2024/2/28UML系统建模与分析设计251.4.4面向对象软件开发方法

面向对象方法的意义: (1)一种新的思考方式。 (2)将数据和行为结合成为对象。 (3)核心是封装。 (4)面向对象方法建立的基础是:软件工程概念;计算机科学概念;工程管理;数据库信息模型;传统软件开发方法。2024/2/28UML系统建模与分析设计26

面向对象方法有几十种,综合起来,其基本观点如下:现实客观世界由对象组成。相同的对象归并为类。类可以继承。对象之间通过消息进行联系。面向对象=对象+类+继承+通信2024/2/28UML系统建模与分析设计271.4.5软件开发方法的评价与选择综合考虑以下几方面因素:人员素质。时间进度。掌握资源。可行性。领域知识。从四个方面评价:技术特征。使用特征。管理特征。经济特征。2024/2/28UML系统建模与分析设计281.5面向对象软件开发方法简介

特点: (1)使人们更好地认识客观世界 (2)能很好地适应需求变化 (3)容易实现软件复用 (4)系统易于维护和修改2024/2/28UML系统建模与分析设计291.5.1面向对象的基本概念 封装性、继承性和多态性。 1.对象 客观世界中的实体抽象为问题空间中的对象。 2.对象的抽象——类 把具有相同特征和行为的对象归在一起就形成了类(Class)。2024/2/28UML系统建模与分析设计302024/2/28UML系统建模与分析设计313.信息隐蔽和局部化——封装4.继承与派生2024/2/28UML系统建模与分析设计325.对象之间的联系纽带——消息2024/2/28UML系统建模与分析设计336.多态性 多态性(Polymorphism)是指同一个消息为不同的对象接收时,可产生不同的动作或执行结果。2024/2/28UML系统建模与分析设计341.5.2面向对象系统开发过程2024/2/28UML系统建模与分析设计35

(1)需求分析阶段。 (2)系统分析阶段。 (3)系统设计阶段。 (4)系统实现、测试、使用、维护阶段。2024/2/28UML系统建模与分析设计361.5.3几种典型的面向对象方法简介1.Booch面向对象方法 (1)Booch

方法的基本开发模型 开发模型包括逻辑模型、物理模型、静态模型和动态模型。 (2)Booch方法的一般过程 开发过程分为技术层和管理层开发。 1)系统技术层开发步骤 发现类与对象。 确定类和对象的语义。 标识类和对象间的关系。2024/2/28UML系统建模与分析设计37

2)系统管理层开发步骤 强调团队技术管理。 明确用户关键需求。 建立系统分析模型。 完善设计系统结构。 系统实现。 软件交付。2.Jacobson的面向对象方法 (1)建立面向对象分析模型的过程 1)建造用户需求模型。 2)建造系统分析模型。

2024/2/28UML系统建模与分析设计38

(2)建立面向对象设计模型的过程 1)创建模块作为主要的设计对象。 2)创建一个显示激励如何在模块间传送的交互图。 3)把模块组织成子系统。 4)复审设计工作。3.Coad-Yourdon的面向对象方法论 (1)面向对象分析(OOA)步骤 类及对象层。 结构层。 主题层。 属性层。 服务层。

(2)面向对象设计(OOD)步骤2024/2/28UML系统建模与分析设计394.JamesRumbaugh的面向对象方法 (1)对象模型。 (2)动态模型。 (3)功能模型。2024/2/28UML系统建模与分析设计401.6本章小结2024/2/28UML系统建模与分析设计41第二章统一建模语言UML本章目的:UML系统建模与分析设计

掌握UML特点和基本图标元素的表示符掌握UML软件系统体系结构的五种视图和九种基本图了解UML的用例模型、静态模型、动态模型的简单建模方法了解UML的系统体系结构模型掌握UML与软件开发统一过程2024/2/28UML系统建模与分析设计422.1UML模型系统体系结构UML系统建模与分析设计

2.1.1UML的诞生与发展2024/2/28UML系统建模与分析设计43UML系统建模与分析设计

2024/2/28UML系统建模与分析设计44统一标准面向对象可视化、表达能力强独立于过程

易掌握、易用2.1.2UML的特点2024/2/28UML系统建模与分析设计45UML系统建模与分析设计

2.1.3软件系统体系结构的描述作用:描述系统的功能需求,找出用例和执行者;适用对象:客户、分析者、设计者、开发者和测试者;描述使用的图:用例图和活动图;重要性:系统的中心,它决定了其他视图的开发,用于确认和最终验证系统。

1.用例视图2024/2/28UML系统建模与分析设计462.逻辑视图UML系统建模与分析设计

作用:描述如何实现系统内部的功能

;适用对象:分析者、设计者、开发者

;描述使用的图:类图和对象图、状态图、顺序图、合作图和活动图

;重要性:描述了系统的静态结构和因发送消息而出现的动态协作关系

2024/2/28UML系统建模与分析设计47UML系统建模与分析设计作用:描述系统代码构件组织和实现模块,及它们之间的依赖关系

;适用对象:设计者、开发者

;描述使用的图:构件图

;重要性:描述系统如何划分软件构件,如何进行编程

3.构件视图

2024/2/28UML系统建模与分析设计48UML系统建模与分析设计作用:描述系统的并发性,并处理这些线程间的通信和同步

;适用对象:开发者和系统集成者

;描述使用的图:状态图、顺序图、合作图、活动图、构件图和配置图

;重要性:将系统分割成并发执行的控制线程及处理这些线程的通信和同步

4.进程视图2024/2/28UML系统建模与分析设计49UML系统建模与分析设计作用:描述系统的物理设备配置,如计算机、硬件设备以及它们相互间的连接

;适用对象:开发者、系统集成者和测试者

;描述使用的图:配置图

;重要性:描述硬件设备的连接和哪个程序或对象驻留在哪台计算机上执行

5.配置视图2024/2/28UML系统建模与分析设计50高级语言程序设计2.1.4UML模型元素2024/2/28UML系统建模与分析设计51UML系统建模与分析设计关联:连接(connect)模型元素及链接(link)实例。依赖:表示一个元素以某种方式依赖于另一种元素。泛化:表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化。聚合:表示整体与部分的关系。2024/2/28UML系统建模与分析设计52UML系统建模与分析设计2.2UML系统模型与建模三大类九种图表示用例模型图:由用例图组成。静态模型图:由类图、对象图、包图、构件图和配置图组成。动态模型图:由活动图、顺序图、状态图和合作图组成。2024/2/28UML系统建模与分析设计53高级语言程序设计2.2.1用例模型及组成成分2024/2/28UML系统建模与分析设计54UML系统建模与分析设计2.2.2静态模型与系统体系结构建模1.类图(Classdiagram)2024/2/28UML系统建模与分析设计55UML系统建模与分析设计2.对象图(Objectdiagram)2024/2/28UML系统建模与分析设计56高级语言程序设计3.包图(Packagediagram)

2024/2/28UML系统建模与分析设计57高级语言程序设计4.构件图(Componentdiagram)

2024/2/28UML系统建模与分析设计58高级语言程序设计5.配置图2024/2/28UML系统建模与分析设计59UML系统建模与分析设计2.2.3动态模型与行为控制流建模

1.顺序图顺序图(SequenceDiagram)用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。2024/2/28UML系统建模与分析设计60高级语言程序设计2024/2/28UML系统建模与分析设计61高级语言程序设计2.合作图2024/2/28UML系统建模与分析设计62UML系统建模与分析设计3.状态图

2024/2/28UML系统建模与分析设计63UML系统建模与分析设计4.活动图

2024/2/28UML系统建模与分析设计64高级语言程序设计2024/2/28UML系统建模与分析设计65UML系统建模与分析设计2.3.1子系统组织的系统体系结构2.3UML系统体系结构模型

2024/2/28UML系统建模与分析设计66UML系统建模与分析设计2.3.2系统模型组织的系统体系结构

2024/2/28UML系统建模与分析设计67UML系统建模与分析设计2.3.3系统体系结构模型的描述方式2024/2/28UML系统建模与分析设计68UML系统建模与分析设计2024/2/28UML系统建模与分析设计69UML系统建模与分析设计2.4UML的扩展、调整机制2.4.1模型元素的分类与标记2024/2/28UML系统建模与分析设计70UML系统建模与分析设计2.4.2模型元素的特性规格说明

2024/2/28UML系统建模与分析设计71UML系统建模与分析设计2.4.3模型元素的语义扩展与约束2024/2/28UML系统建模与分析设计72UML系统建模与分析设计2.5UML与软件开发统一过程

2024/2/28UML系统建模与分析设计73UML系统建模与分析设计2.5.1迭代、渐增式的开发过程

2.详细规划阶段(1)用例分类1)将用例的优先级分为三级:2)体系结构方面的风险的风险。3)进度风险(对实现每个用例所需工作量估算的评价)分为三级:(2)确定每次迭代的开发周期(3)将用例分配到各次迭代中1.开始阶段

2024/2/28UML系统建模与分析设计74UML系统建模与分析设计4.移交阶段

3.系统构造阶段渐增式集成测试测试演示保存测试案例2024/2/28UML系统建模与分析设计75UML系统建模与分析设计2.5.2软件开发步骤及核心支持活动

1.需求分析2.系统设计3.实现4.测试5.配置2024/2/28UML系统建模与分析设计76UML系统建模与分析设计6.核心支持工作(1)配置与变化管理(2)项目管理(3)环境设置2024/2/28UML系统建模与分析设计77UML系统建模与分析设计2.5.3UML软件开发过程产生的模型与文档(1)业务模型:建立问题领域的组织结构和业务流程的抽象。描述方式:需求分析规格说明书。(2)领域模型:建立问题领域的需求分析说明。描述方式:需求分析规格说明书。(3)用例模型:表达系统的功能。描述方式:用例图、活动图及需求分析规格说明书。

1.模型2024/2/28UML系统建模与分析设计78UML系统建模与分析设计基本功能分析;实现功能的对象;对象之间的关系;4)分析模型(任选):只有复杂的系统才需要建立独立的分析模型。该模型包括:

描述方式:类图、对象图、包图、顺序图、合作图、状态图和活动图。2024/2/28UML系统建模与分析设计79UML系统建模与分析设计(5)设计模型:系统具体解决方案,由调整和完善分析模型而成。描述方式:类图、对象图、包图、顺序图、合作图、状态图和活动图。(7)实现模型:软件的系统体系结构。描述方式:包图和构件图。(6)进程模型(任选):描述系统并发和同步机制。有多线程的并发系统才建立。描述方式:状态图、顺序图、合作图、活动图、构件图和配置图。2024/2/28UML系统建模与分析设计80UML系统建模与分析设计(8)配置模型:描述系统软件在各个硬件上的配置。描述方式:配置图。(9)测试模型:描述验证系统功能的途径。描述方式:测试案例和测试报告。2024/2/28UML系统建模与分析设计81UML系统建模与分析设计(1)技术文档(2)管理文档2.文档2024/2/28UML系统建模与分析设计82UML系统建模与分析设计2.5.4UML软件开发过程的基本特征

1.用例驱动的系统2024/2/28UML系统建模与分析设计83UML系统建模与分析设计2.以体系结构为中心3.螺旋上升式的开发过程4.以质量控制和风险管理为目标2024/2/28UML系统建模与分析设计84UML系统建模与分析设计2.6本章小结2024/2/28UML系统建模与分析设计85UML系统建模与分析设计了解可行性研究与风险分析的方法掌握可行性分析报告的书写格式

掌握客户需求分析的要点及需求分析规格说明报告的书写格式

掌握通过绘制用例图及其正文描述来完成客户需求分析的方法

掌握UML的用例模型建模方法

本章目的:

第三章需求分析与用例建模

2024/2/28UML系统建模与分析设计86UML系统建模与分析设计1.系统成本费用分析设备购置费用。系统开发费用。系统安装、运行和维护费用。人员培训费用。2.系统效益分析经济效益。社会效益。3.1.1经济可行性研究

3.1可行性研究与风险分析

2024/2/28UML系统建模与分析设计87UML系统建模与分析设计2024/2/28UML系统建模与分析设计88UML系统建模与分析设计1.风险分析

2.资源分析

3.技术分析反映系统动态特性:综合系统的全部因素:突出系统的重要因素:结构简单:3.1.2技术可行性分析3.1.3法律可行性分析3.1.4开发方案可行性分析研究1.提出待选方案

2.评价待选方案3.确定开发方案2024/2/28UML系统建模与分析设计89UML系统建模与分析设计3.1.5可行性分析报告文档格式

2024/2/28UML系统建模与分析设计90UML系统建模与分析设计3.2.1建造需求模型——用例建模3.2客户需求分析与用例建模用例建模的主要目标是:将需求规约变为可视化模型,并得到用户确认;

给出清晰、一致的关于系统做什么的描述,确定系统的功能要求;

提供从功能需求到系统分析、设计、实现各阶段的度量标准;

为最终系统测试提供基准,据此验证系统是否达到功能要求;

为项目目标进度管理和风险管理提供依据。

2024/2/28UML系统建模与分析设计91UML系统建模与分析设计用例建模的步骤:

确定系统的范围和边界;

确定系统的执行者和用例;

对用例进行描述;

定义用例之间的关系;

审核用例模型。

2024/2/28UML系统建模与分析设计92UML系统建模与分析设计3.2.2用例图

2024/2/28UML系统建模与分析设计93UML系统建模与分析设计3.2.3定义系统的边界和范围系统边界包括:整个组织:如一个企业;

一个组织的某个部门:如企业的财务处;

计算机系统的硬件/软件边界:如企业的进、销、存计算机管理系统。

1.定义系统的范围

2.定义系统的边界2024/2/28UML系统建模与分析设计94UML系统建模与分析设计3.2.4确定执行者执行者(actor)是指在系统外部与系统交互的人或其他系统,他以某种方式参与了系统内用例的执行。1.定义执行者时应注意的几个问题(1)执行者之间可以有继承关系2024/2/28UML系统建模与分析设计95UML系统建模与分析设计(2)执行者代表一种角色而不是具体某个人(3)对同一个人担任角色的限制(4)执行者可分成主执行者和副执行者(5)执行者还可细分为主动执行者和被动执行者2.寻找和确定执行者3.2.5确定用例1.用例的特征

。响应性。回执性。完整性。2024/2/28UML系统建模与分析设计96UML系统建模与分析设计

2.寻找和确定用例系统为了维持正常运转需要增加的功能和信息的交互;

这些这些信息从何而来,到哪里去?

实现当前系统(可能是人工系统而不是自动化系统)的关键问题是什么?

3.描述用例用例名:简单名:路径名:

2024/2/28UML系统建模与分析设计97UML系统建模与分析设计用例的文字描述应包括以下内容:用例的目的(功能);该用例在什么情况下被哪个执行者启动执行;用例与执行者之间交互哪些消息来通知对方作出决定;交互的主消息流及因此被使用或修改的实体;用例中可供选择的异常事件流;用例结束标志:给执行者返回一个可识别的值。举例:用例名称:学生选课执行者:学生目的:完成一次学生选课的完整过程。类型:主要的、基本的级别:一级

2024/2/28UML系统建模与分析设计98UML系统建模与分析设计过程描述:(1)学生输入标识码(ID),系统识别标识码的有效性;(2)对学生进行注册识别;(3)流览本学期预开课程;(4)选择学生自己要上的课程并确认;(5)退出系统,系统给出所选课程列表及相应学分合计。异常事件流处理:(1)标识码有效性检查失败,允许学生重新输入(3次机会)。(2)注册识别失败,没有注册(尙未交学费)的学生不能选课。(3)选择课程确认失败,所选几门课程中在上课时间上发生冲突时,系统提示重选。

2024/2/28UML系统建模与分析设计99UML系统建模与分析设计3.2.6用例之间的关联

1.继承关联2.扩展关联

2024/2/28UML系统建模与分析设计100UML系统建模与分析设计3.包含关联4.使用关联

2024/2/28UML系统建模与分析设计101UML系统建模与分析设计2024/2/28UML系统建模与分析设计102UML系统建模与分析设计3.2.7用例图实例2024/2/28UML系统建模与分析设计103UML系统建模与分析设计3.3定义系统的对象和类类-责任-协作者(Class-Responsibility-Collaborator,简称CRC)技术:

2024/2/28UML系统建模与分析设计104UML系统建模与分析设计3.3.1确定对象类(1)发现潜在对象与系统交互的角色。系统的工作环境场所。概念实体、发生的事件或事情。部门和设备。与系统有关的外部实体。(2)标识对象名的原则使用单个名词或名词短语标识对象名;对象名称必须有意义、简洁明了、含义明确、易于理解;尽量使用用户熟悉的行业标准术语。

2024/2/28UML系统建模与分析设计105UML系统建模与分析设计(3)筛选对象根据以下特征来选择和确定最终的对象:关键性。可操作性。信息含量。公共属性。公共操作。关键外部信息。(4)对象分类:有形性。包含性。顺序性。持久性。完整性。2024/2/28UML系统建模与分析设计106UML系统建模与分析设计3.3.2标识对象类的属性(1)发现和确定对象潜在的属性(2)识别和筛选对象属性的原则(3)识别和筛选属性应注意的问题(4)属性的命名原则3.3.3标识对象类的操作(1)寻找潜在的对象类操作(2)筛选、确定操作(3)命名操作名(4)操作的说明(5)操作的分类:2024/2/28UML系统建模与分析设计107UML系统建模与分析设计3.3.4标识对象类之间的关联(协作)(1)建立实例连接(2)消息传递(3)筛选对象间的关联3.3.5复审类的定义复审方法犹如“击鼓传花”。3.3.6定义类的结构和层次(1)一般-特殊结构(2)整体-部分结构(3)子系统

2024/2/28UML系统建模与分析设计108UML系统建模与分析设计

3.4客户需求分析规格说明2024/2/28UML系统建模与分析设计109UML系统建模与分析设计

3.5需求分析中的用例建模步骤3.5.1用例的类型端点用例:

基本用例:

主要用例:

辅助用例:

3.5.2建立用例图建立用例图的步骤:

(1)确定用例(2)描述用例(3)筛选用例(4)绘制用例图(5)层次化用例图2024/2/28UML系统建模与分析设计110UML系统建模与分析设计3.5.3层次化用例图(1)

功能需求用例图(2)生存环境用例图

2024/2/28UML系统建模与分析设计111UML系统建模与分析设计3.6需求分析用例建模案例3.6.1客户需求分析1.业务组织结构(综述)“企业综合信息管理系统”的用户是企业各级管理部门的工作人员、公司经理和系统操作人员。该系统主要提供“财务管理”、“人力资源管理”、“生产调度管理”、“进销存管理”、“设备安全管理”、和“行政事务管理”等方面的服务。2024/2/28UML系统建模与分析设计112UML系统建模与分析设计2.具体功能要求本案例只对其中的“进销存管理子系统”进行详细的需求分析用例建模。(1)销售管理1)制定销售计划2)与客户签订销售合同3)检查合同履约率4)生产调度管理部门组织生产5)库存管理部门对产品进行入库、出库处理6)财务管理部门收取客户货款7)售后服务2024/2/28UML系统建模与分析设计113UML系统建模与分析设计(2)采购管理1)制定原材料(零部件)采购计划2)与客户签订采购合同3)检查合同履约率4)库存管理部门对原材料进行入库验收、存储5)财务管理部门支付货款(3)库存管理1)产品入库管理2)原材料(零部件)入库管理3)原材料(零部件)出库管理4)产品出库管理5)库存管理6)采购管理部门组织采购7)生产调度管理部门安排生产8)财务管理部门对库存物资进行核算2024/2/28UML系统建模与分析设计114UML系统建模与分析设计3.需求补充说明(1)数据保存

采购合同:每个合同执行期可能多达几个月,合同需要长期保留。销售合同:每个合同执行期可能多达几个月,合同需要长期保留。

历年履约合同:履约后的合同需要长期(几十年)保留,以备查使用。

库存货物清单:库存货物量随出、入库有所消长,长期保存。

货物损毁报表:长期保留,以备查使用。

入库单:长期保留,以备查核算使用。

出库单:长期保留,以备查核算使用。

库存货物资产核对表:长期保留,以备查使用。

2024/2/28UML系统建模与分析设计115UML系统建模与分析设计(2)系统的用户客户、仓库管理员、销售人员、采购人员、公司经理、财务管理系统、生产调度管理系统。(3)系统运行用户界面销售合同管理用户界面:采购合同管理用户界面:仓库货物清单管理用户界面:2024/2/28UML系统建模与分析设计116UML系统建模与分析设计(4)系统运行的软件、硬件环境1)系统运行的软件环境2)系统运行的硬件环境3.6.2确定系统范围和系统边界1.进销存管理子系统的业务范围2.进销存管理子系统的系统边界

3.6.3确定执行者

“进销存管理子系统”有5个人执行者和2个系统执行者,即“采购人员”、“销售人员”、“仓库管理员”、“客户”、“公司经理”、“生产调度管理子系统”和“财务管理子系统”。2024/2/28UML系统建模与分析设计117UML系统建模与分析设计3.6.4确定用例(1)“企业综合信息管理系统”中的用例(一层)财务管理;

人力资源管理;

生产调度管理;

进销存管理;

设备安全管理;

行政事务管理。

(2)“进销存管理子系统”中的用例(第二层)销售管理;

采购管理;

库存管理。

(3)“销售管理子系统”中的用例(第三层)制定产品销售计划;签订销售合同;督促客户付款;监督产品发货;检查合同履约;提供售后服务。

2024/2/28UML系统建模与分析设计118UML系统建模与分析设计(4)“采购管理子系统”中的用例(第三层)制定采购计划;签订采购合同;货物入库检验;支付货款;检查合同履约。(5)“库存管理子系统”中的用例(第三层)入库管理;出库管理;库存管理。2024/2/28UML系统建模与分析设计119UML系统建模与分析设计3.6.5分层绘制用例图1.最高层用例图2024/2/28UML系统建模与分析设计120UML系统建模与分析设计2.第2层用例图2024/2/28UML系统建模与分析设计121UML系统建模与分析设计3.第3层用例图2024/2/28UML系统建模与分析设计122UML系统建模与分析设计4.第4层用例图2024/2/28UML系统建模与分析设计123UML系统建模与分析设计2024/2/28UML系统建模与分析设计124UML系统建模与分析设计3.6.6描述用例1.“增加销售合同”用例用例编号:04010101(共有4层用例图结构,每层用2位数字表示,采用8位编号。)用例名:增加销售合同执行者:人执行者:合同管理员、客户、公司经理。系统执行者:“财务管理子系统”和“生产调度管理子系统”。目的:合同管理员将与客户签订的销售合同的详细内容录入管理系统,用于对销售合同进行统计、查询、检查是否履约等,监控正在履约的合同。类型: 端点、主要的、基本的级别:一级

2024/2/28UML系统建模与分析设计125UML系统建模与分析设计过程描述:(1)合同管理员输入标识码(ID),系统识别标识码的有效性;(2)初始化一个新销售合同,设置各种处室标志;(3)输入一个新的具有唯一性的合同编号;(4)将与客户签订的销售合同的详细内容录入管理系统;(5)退出系统。与其它用例的关联:过程描述(1)中包含身份验证用例;(4)中包含编号自动生成用例。异常事件流处理:(1)标识码有效性检查失败:系统检测标识码有效性失败,允许重新输入。(2)编号也可以由合同管理员手动输入,系统自动进行唯一性检查。出现错误,允许重新输入。

2.“修改合同”用例……………2024/2/28UML系统建模与分析设计126UML系统建模与分析设计3.7本章小结2024/2/28UML系统建模与分析设计127UML系统建模与分析设计第四章系统分析与对象类建模

本章目的:掌握系统分析的内容与方法掌握系统分析规格说明书的基本书写格式了解寻找和确定一个系统中对象类的方法掌握UML中对象类属性和操作的定义和描述方法掌握对象类之间的关系及其表示方法掌握利用包(子系统)的层次关系描述系统体系结构掌握类和对象建模方法2024/2/28UML系统建模与分析设计128UML系统建模与分析设计4.1系统分析4.1.1建造对象类静态结构模型的步骤(1)连线建立网络图。(2)连接线命名。(3)确定关联基数。(4)简化模型。(5)编制相应的文档资料。2024/2/28UML系统建模与分析设计129UML系统建模与分析设计4.1.2建造对象类动态结构模型建模的步骤如下:(1)建造对象状态模型。(2)建造对象之间交互行为模型。(3)复审对象类动态结构模型,以验证其准确性和一致性。(4)编制相应的文档资料。2024/2/28UML系统建模与分析设计130UML系统建模与分析设计4.1.3建造系统功能处理模型(1)确认功能需求。(2)建活动流程图。(3)以上内容都要确认是否真正符合用户的需求。(4)编制相应的文档资料。2024/2/28UML系统建模与分析设计131UML系统建模与分析设计4.1.4编制系统分析规格说明的文档2024/2/28UML系统建模与分析设计132UML系统建模与分析设计4.2对象类的概念4.2.1对象类图的图形符号表示类的图形符号表示分为长式和短式两种2024/2/28UML系统建模与分析设计133UML系统建模与分析设计4.2.2对象图是类图的一个实例2024/2/28UML系统建模与分析设计134UML系统建模与分析设计4.2.2对象图是类图的一个实例2024/2/28UML系统建模与分析设计135图4-2线段和交点两个对象之间关系的长式与短式对象图2024/2/28UML系统建模与分析设计136UML系统建模与分析设计4.3描述对象类4.3.1类的属性描述语法格式:可见性属性名[多重性]:类型[=初始值]规则:(1)可见性:描述了该属性在哪些范围内可以使用。+:表示其为公有成员,其它类可以访问(可见);-:表示其为私有成员,不能被其他类访问(不可见),可缺省;#:表示其为保护成员,一般用于继承,只能被本类及派生类使用。(2)属性名:代表属性的一个标识符。(3)多重性:任选项,用多值表达式表示,格式为:低值..高值。

低值、高值为正整数,表示该类的实例对象的属性个数;0..*表示从0个到无限多个;可缺省,表示1..1,只有一个。2024/2/28UML系统建模与分析设计137UML系统建模与分析设计规则(续):(4)类型:可以是系统固有的类型,如整型、实型等,也可以是用户自定义的类型。(5)=初始值:任选项,初值可作为创建该类对象时这个属性的默认值。(6)类属性:用下划线标识的属性名,该类的所有对象之间共享该属性。(7)/:只读,可以与“+”、“-”或“#”同时使用,缺省表示可读可写。

描述属性时,属性名和类型是必须的,其他部分都任选。2024/2/28UML系统建模与分析设计138UML系统建模与分析设计4.3.2类的操作描述格式:可见性操作名([参数表]):返回列表[{特征描述}]规则:(1)参数表:用逗号分隔的形式参数序列;(2)返回列表:回送调用对象消息的类型,格式:返回类型或返回名=类型,……(3)[{特征描述}]:任选项,描述该操作的特征,通常不直接展示在类图中,有:

前置条件:满足该条件(为真)调用本操作;后置条件:执行本操作后该条件为真;某算法指定执行该操作;用特征(操作名、回送型、参数表)来指定该操作。2024/2/28UML系统建模与分析设计139UML系统建模与分析设计4.4类之间的关系4.4.1关联关系1.一般关联

关联是类之间的语义联系,代表类的对象(实例)之间的一组连接(称为链)。(1)常规关联

“0..1”:表示“零或1”;“0..*”或“*”:表示“0”或“多”;“1..*”:表示“1或多”;“5..11”:表示“5至11”;“1,3,8”:是枚举型,表示“1或3或8”。2024/2/28UML系统建模与分析设计1402024/2/28UML系统建模与分析设计141(2)关联类把类之间的关联定义成类,称为关联类。关联类也有属性、操作并与其他的类关联。2024/2/28UML系统建模与分析设计1422024/2/28UML系统建模与分析设计1432.多重关联两个以上的类之间也可以互相关联。2024/2/28UML系统建模与分析设计144UML系统建模与分析设计3.关联的约束(1)ordered:有序的对象。2024/2/28UML系统建模与分析设计1452024/2/28UML系统建模与分析设计146UML系统建模与分析设计4.受限关联5.递归关联2024/2/28UML系统建模与分析设计147UML系统建模与分析设计4.4.2聚集关系1.共享聚集共享聚集的“部分”对象可以是任意“整体”对象的一部分,表示事物的整体/部分关系较弱的情况。2024/2/28UML系统建模与分析设计148UML系统建模与分析设计2.组合聚集3.三种关联的比较2024/2/28UML系统建模与分析设计1494.4.3继承关系2024/2/28UML系统建模与分析设计1504.4.4依赖和细化关系2024/2/28UML系统建模与分析设计151UML系统建模与分析设计4.4.5对象设计模式(pattern)

在面向对象软件开发项目的系统设计中,总有一些只包含少数几个对象的设计模块在设计图中反复出现,这些模块频繁地出现在各种更大更复杂的系统设计中,我们把这种模块称为“设计模式”。1.设计模式的特征简单性:只包含少数几个类;灵巧性:精巧并能解决实际问题;验证性:已经在若干个实际运行的系统中成功地完成测试验证;通用性:在各种系统设计中可以解决同类问题;复用性:可在各种系统的各个层次的系统设计中反复使用。2024/2/28UML系统建模与分析设计1522.对象集合管理器模式2024/2/28UML系统建模与分析设计1533.对象容器模式2024/2/28UML系统建模与分析设计1544.5接口4.5.1接口的定义2024/2/28UML系统建模与分析设计1554.5.2接口的实施2024/2/28UML系统建模与分析设计1564.6系统体系结构的分层次描述4.6.1系统体系结构的基本单元——包(子系统)2024/2/28UML系统建模与分析设计157UML系统建模与分析设计UML中对包预定义的构造型有:<<system>>:系统模型。<<subsystem>>:子系统模型。<<facade>>:仅仅是其他包的某一个视图,如业务模型中有关产品的信息。<<stub>>:另一个包公共内容的服务代理(存根)。<<framework>>:模型的体系结构。基本功能:规定了系统之间的接口,便于各小组独立开展工作;用来表示该小组当前工作的成果,供其他小组参考。2024/2/28UML系统建模与分析设计158UML系统建模与分析设计4.6.2包的嵌套2024/2/28UML系统建模与分析设计159UML系统建模与分析设计4.6.3包之间的依赖和继承关系包之间可以有依赖和继承等关系。依赖:两个包中的对象类之间有依赖,则两个包有依赖;继承:包之间的继承关系描述了系统的接口。2024/2/28UML系统建模与分析设计160UML系统建模与分析设计4.7对象类静态模型建模的步骤寻找确定对象类。根据客户业务和系统实现需要,采用CRC卡方式建立对象类。定义类的接口。为了系统的安全性和类之间的独立性,为一些通用的类建立接口。定义类之间的关系。为满足系统功能要求和优化系统设计,定义类之间的关系。建立对象类图。将确定的类、接口及类之间的关系用图标符号描述,建立对象类图。建立系统包图。对一个复杂的大系统用包(子系统)的形式描述其系统体系结构。客户需求阶段,系统分析阶段,系统设计阶段,建立系统的对象类模型步骤如下:2024/2/28UML系统建模与分析设计161UML系统建模与分析设计4.8对象类静态模型建模案例4.8.1建立对象类[见教材](1)销售合同(2)采购合同(3)销售合同统计报表(4)采购合同统计报表(5)入库单(6)出库单(7)库存单2024/2/28UML系统建模与分析设计162UML系统建模与分析设计4.8.2定义用户接口(1)建立采购合同接口(2)建立销售合同接口(3)查询购进合同接口(4)查询销售合同接口(5)打印催货单接口(6)打印催款单接口(7)接受到货通知单接口(8)打印付款通知单接口(9)接受收款通知单接口(10)打印发货通知单接口(11)合同统计接口2024/2/28UML系统建模与分析设计1634.8.3根据类之间的关系绘制类图1.类之间的关系(1)共享聚集:2024/2/28UML系统建模与分析设计164UML系统建模与分析设计1.类之间的关系(1)共享聚集:(2)组合聚集:(3)依赖关系:(4)继承:(5)关联:2024/2/28UML系统建模与分析设计165UML系统建模与分析设计2.建立对象类图2024/2/28UML系统建模与分析设计166UML系统建模与分析设计4.8.4确定和建立系统包图2024/2/28UML系统建模与分析设计1672024/2/28UML系统建模与分析设计168UML系统建模与分析设计4.9本章小结2024/2/28UML系统建模与分析设计169UML系统建模与分析设计第五章系统设计与对象动态交互模型本章目的:了解UML软件开发的系统设计方法与技术掌握系统设计规格说明报告文档书写格式掌握UML中顺序图的描述方法掌握同步消息和异步消息的定义和描述方法掌握UML中合作图的描述方法掌握利用顺序图与合作图建立动态交互模型的方法步骤2024/2/28UML系统建模与分析设计1705.1系统设计UML系统建模与分析设计5.1.1反复迭代的系统设计方式

5.1.2系统对象设计

(1)对象接口设计 (2)设计算法和数据结构 (3)确认子系统 (4)子系统间的通信规约2024/2/28UML系统建模与分析设计171UML系统建模与分析设计5.1.3系统体系结构设计

1.任务管理设计 (1)主从结构设计。 (2)分布式结构设计。 2.数据管理设计 (1)定义数据类型。 (2)设计数据管理。数据管理设计提供了持久对象的基本结构。 3.用户界面设计5.1.4

系统设计的优化和审查2024/2/28UML系统建模与分析设计172UML系统建模与分析设计5.1.5系统设计规格说明报告2024/2/28UML系统建模与分析设计173UML系统建模与分析设计5.2交互模型建模5.2.1

对象之间的通信消息内容标识的格式为:[序号][警戒条件]*[重复次数][回送值表:=]操作名参数表)使用规则:1.序号:表示消息在对象间交互的时间顺序号。2.[警戒条件]:选择项,为一布尔条件表达式。3.*[重复次数]:选择项,表示消息重复发送的次数。4.回送值表:以“,”区分的名字表列,分别表示完成指定操作后返回的系列值。可缺省。5.操作名:必须是接收该消息的对象类角色中的操作名。6.“()”内的参数表是以“,”号区分的实参表,传送给接收消息的对象中的某个操作。2024/2/28UML系统建模与分析设计174UML系统建模与分析设计5.2.2同步通信与异步通信(1)简单消息:表示控制流。(2)同步消息:它是一种嵌套的控制流。(3)异步消息:它是异步控制流。(4)返回消息:表示控制流从过程调用的返回。2024/2/28UML系统建模与分析设计175UML系统建模与分析设计5.3顺序图建模

顺序图用来描述对象间的交互行为。它注重消息的时间顺序,即对象间消息的发送和接收的顺序。顺序图还揭示了一个特定场景的交互,即系统执行期间发生在某个时间点的对象之间的特定交互,它适合于描述实时系统中的时间特性和时间约束。2024/2/28UML系统建模与分析设计176UML系统建模与分析设计5.3.1

顺序图的组成成分2024/2/28UML系统建模与分析设计177UML系统建模与分析设计(1)对象:顺序图中所包含的每个对象用一个 对象框(短式)表示,对象名需带下划线。(2)生存线:对象框下画的一条垂直虚线,称 为该对象的生存线,表示对象的生存时间。(3)激活期:对象生存线上的一个细长方形 框,表示该对象的激活时间段,即活动期 间。(4)消息:对象之间消息的发送和接收用两个 对象生存线(激活期)之间的消息箭头线。5.3.1

顺序图的组成成分(con.)2024/2/28UML系统建模与分析设计178UML系统建模与分析设计5.3.2

对象之间的同步与异步操作1.对象之间的同步操作同步消息的发送者把进程控制传递给消息的接收者,然后暂停活动,等待消息的接收者放弃或返回控制;同步消息的接收者执行所请求的操作,如果需要的话,可以把控制传递给另一个对象角色,请求做某个操作,并且当该操作完成后把控制返回给原来的同步消息的发送者;同步消息的接收者也可以直接返回或发送信息给原来的消息发送者。2024/2/28UML系统建模与分析设计1792024/2/28UML系统建模与分析设计180UML系统建模与分析设计5.3.2

对象之间的同步与异步操作(con.)2.对象之间的异步操作异步消息的发送者通过发消息把信号传递给消息的接收者,然后继续自己的活动,不等待消息接收者返回信息或控制;异步消息的接收者执行所请求的操作,操作完成后可以向异步消息的发送者返回信息;异步消息的发送者和接收者采用并发工作方式。一条异步消息每次只发一个信号,即只做一件事,可以做的事情有:创建一个新对象;创建一个新线程,此时异步消息连接到一个激活期的顶部;与一个正在运行的线程通信。2024/2/28UML系统建模与分析设计181UML系统建模与分析设计5.3.3顺序图中的分支控制图5-5带条件和分支并发执行的顺序图2024/2/28UML系统建模与分析设计1825.3.4顺序图中的约束标记图5-6中带有时间延迟标记的顺序图UML系统建模与分析设计2024/2/28UML系统建模与分析设计1835.3.5顺序图中的循环处理操作UML系统建模与分析设计2024/2/28UML系统建模与分析设计1845.3.6对象的创建和消亡UML系统建模与分析设计2024/2/28UML系统建模与分析设计1855.4合作图建模

合作图可以用来描述系统对象之间的交互,强调这组对象之间的关系。UML系统建模与分析设计2024/2/28UML系统建模与分析设计1865.4.1合作图的组成成分1.对象2.链接图5-9带有关联角色的合作图UML系统建模与分析设计2024/2/28UML系统建模与分析设计1875.4.2合作图中对象的创建与消亡对象创建:{new};对象消亡:{destroyed};对象创建并消亡:{transient}。

UML系统建模与分析设计2024/2/28UML系统建模与分析设计188UML系统建模与分析设计2024/2/28UML系统建模与分析设计189UML系统建模与分析设计5.4.3嵌套消息与顺序消息的标识1.嵌套消息序号的标识

图5-12采用层次嵌套消息描述的销售合同管理系统中的处理付款单合作图2024/2/28UML系统建模与分析设计1905.4.3嵌套消息与顺序消息的标识(con.)2.顺序消息序号的标识UML系统建模与分析设计图5-13采用顺序消息序号描述的销售合同管理系统中的处理付款单合作图2024/2/28UML系统建模与分析设计191UML系统建模与分析设计5.4.4异步操作中的回调消息1.自调用2.异步操作中的回调图5-14具有回调消息的合作图2024/2/28UML系统建模与分析设计192图5-15具有回调消息的顺序图UML系统建模与分析设计5.4.4异步操作中的回调消息(con.)2024/2/28UML系统建模与分析设计1935.4.5循环发送同一个重复消息UML系统建模与分析设计2024/2/28UML系统建模与分析设计194UML系统建模与分析设计5.5动态交互模型

——控制流建模(1)进程:进程是一个动作流;能够与其他进 程并发执行。(2)线程:线程是进程内部的一个动作流;能 够与其他线程并发执行。(3)主动对象:一个拥有进程或线程的对象。(4)被动对象:必须由其它对象发来的消息进 行触发,才执行动作的对象。(5)主动对象类:主动对象类是主动对象的抽 象。2024/2/28UML系统建模与分析设计1955.6

动态交互模型建模案例

——“销售合同管理”子系统5.6.1子系统的用例模型和对象静态模型UML系统建模与分析设计2024/2/28UML系统建模与分析设计196UML系统建模与分析设计5.6.2顺序图建模步骤1.确定交互和涉及的对象(1)启动系统(2)循环处理付款单(3)核对销售合同(4)核对合同的销售货物清单(5)核对库房货物清单(6)核查预警量(7)打印库存预警清单(8)打印出库单2024/2/28UML系统建模与分析设计197UML系统建模与分析设计5.6.2顺序图建模步骤(con.)2.顺序图中对象排列的原则(1)对象横向排列在顺序图的顶部;(2)最重要的对象在最左边(如对全局进行 初始的对象);(3)交互密切的对象尽可能相邻;(4)交互中创建的对象,应放置在其创建的 时间点上;(5)每个对象有一个下垂的生命线。2024/2/28UML系统建模与分析设计1985.6.2顺序图建模步骤(con.)3.消息传递(1)消息传递的方向:按时间顺序从上到下在对象的生命线之间传递;(2)在消息箭头线上标出消息标签的内容、约束或构造型;(3)发送和接收消息的对象生命线必须处在激活期;(4)交互中对象的创建和销毁必须绘出构造型和标记;(5)区别同步消息和异步消息的图标表示符;(6)标出消息的循环结构及出口条件;(7)顺序图从初始化消息开始,以其返回消息终止。UML系统建模与分析设计2024/2/28UML系统建模与分析设计1995.6.2顺序图建模步骤(con.)图5-18“付款单处理”用例的顺序图(1)UML系统建模与分析设计2024/2/28UML系统建模与分析设计200UML系统建模与分析设计5.6.3合作图建模步骤1.确定交互及涉及的对象2.合作图中对象排列的原则(1)最重要的对象应在图的中央;(2)与其有直接交互的对象放置在邻近;(3)对象初始化;(4)选择初始对象。2024/2/28UML系统建模与分析设计2015.6.3合作图建模步骤(con.)UML系统建模与分析设计图5-20“履约合同检查”用例的合作图2024/2/28UML系统建模与分析设计202UML系统建模与分析设计5.6.3合作图建模步骤(con.)3.链接与消息传递(1)标明对象之间的链接;(2)在链接上标明消息的序号;(3)在消息箭头线上标出消息标签的内容、约束或构造型;(4)区别同步消息和异步消息的图标表示符;(5)合作图从初始对象开始,到其终止对象结束。2024/2/28UML系统建模与分析设计2035.6.3合作图建模步骤(con.)图5-21“履约合同检查”用例的顺序图UML系统建模与分析设计2024/2/28UML系统建模与分析设计2045.7本章小结

UML系统建模与分析设计2024/2/28UML系统建模与分析设计205UML系统建模与分析设计本章目的:●了解对象状态变化和活动变化的描述方式●掌握UML绘制状态图和活动图的方法和步骤●掌握状态模型中并发行为的描述方法●掌握用状态图和活动图建立对象动态行为模型的方法和步骤

第六章系统动态建模——状态模型2024/2/28UML系统建模与分析设计206UML系统建模与分析设计6.1.1对象状态的基本描述图符

6.1状态图的基本组成成分2024/2/28UML系统建模与分析设计207UML系统建模与分析设计6.1.1对象状态的基本描述图符

2024/2/28UML系统建模与分析设计208UML系统建模与分析设计6.1.3一个无人职守电梯升降的状态图2024/2/28UML系统建模与分析设计209UML系统建模与分析设计6.2.1对象的状态属性6.2状态的分类与描述6-4一个设备使用状况的状态图2024/2/28UML系统建模与分析设计210UML系统建模与分析设计6.2.2简单状态与嵌套状态动作:一组可执行的语句,动作具有以下特征:●迁移性:与状态迁移有关;●原子性:这组语句不可中断;●连续性:一组语句必须连续执行,直到完毕。活动:一组可执行的动作,后栋具有以下特征:●有限性:完整的活动有一定的期限;●非原子性:这组动作可因某一事件发生而中断。2024/2/28UML系统建模与分析设计211UML系统建模与分析设计6.2.2简单状态与嵌套状态6-5描述设备(车床)状况的嵌套状态图

2024/2/28UML系统建模与分析设计212UML系统建模与分析设计6.2.3状态的顺序迁移

6.2.4状态的并发迁移与同步2024/2/28UML系统建模与分析设计213UML系统建模与分析设计6.2.4状态的并发迁移与同步6-7采用同步并发迁移图符描述的并发子状态图

2024/2/28UML系统建模与分析设计214UML系统建模与分析设计6.2.5嵌套状态中的历史状态指示器

6-8带有历史指示器的软件安装过程状态图2024/2/28UML系统建模与分析设计215UML系统建模与分析设计6.3.1状态的迁移触发6.3状态迁移的触发与描述

描述状态迁移的形式化语法格式如下:

事件[条件]/动作表达式发送子句说明:

温馨提示

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

评论

0/150

提交评论