




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件技术概论与基础第3章统一建模语言学习导入统一建模语言(UnifiedModelingLanguage,UML)是为面向对象开发系统的产品进行说明、可视化及编制文档的一种标准语言。UML是面向对象设计的建模工具,独立于任何具体的程序设计语言。UML适用于系统开发过程中从需求分析描述到系统测试的不同阶段。目前,UML的应用领域很多,它既适用于描述软件系统模型,也适用于描述非软件领域的系统思维导图学习目标了解UML的概念了解UML模型了解UML图及应用了解UML关系了解UML与软件工程之间的关系了解UML应用领域重点难点学习重点UML模型UML图UML关系学习难点UML与软件工程的关系相关知识3.1UML概述3.2UML模型3.3UML图3.4UML关系3.5UML与软件工程3.6UML应用领域1.UML简介UML是一种基于面向对象的可视化建模语言。UML是一种功能强大、易于表达的面向对象软件的标准化建模语言,它融入了软件工程领域的新思想、新方法和新技术。它的作用域不仅支持面向对象的分析与设计,也支持从需求分析开始的软件开发的全过程。一3.1UML概述UML的目标是以面向对象图的方式来描述任何类型的系统,其中最常用于建立软件系统模型。UML用于帮助系统开发人员阐明、展示、构建和记录软件系统的产出,是开发面向对象软件和软件开发过程中非常重要的一部分。UML是一种通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。一3.1UML概述2.UML的发展历程UML的演化主要经历了以下3个阶段:(1)第一阶段由GradyBooch、JamesRumbaugh和IvarJacobson这3位面向对象方法计算机科学家共同努力,形成了UML0.9。(2)第二阶段由十几家公司联合组成了UML成员协会,各家公司将各自的意见加入UML中,以完善和促进UML的定义工作,形成了UML1.0和UML1.1,并向OMG申请成为建模语言规范的提案。2003年3月,UML1.5发布。(3)第三阶段是在OMG的控制下对版本不断修订和改进,其中UML1.3是较为重要的修订版。2017年12月,最新规范UML2.5.1发布。一3.1UML概述3.UML的作用1)为软件系统建立可视化模型2)为软件系统建立构件3)为软件系统建立文档一3.1UML概述3.UML的作用1)为软件系统建立可视化模型2)为软件系统建立构件3)为软件系统建立文档UML可以为系统的体系结构及其所有细节建立文档。不同的UML模型图可以作为项目不同阶段的软件开发文档。一3.1UML概述UML系统开发中主要有3种模型:功能模型、对象模型和动态模型。1.功能模型功能模型用于从用户的角度展示系统的功能,包括用例图。2.对象模型对象模型采用对象、属性、操作、关联等概念展示系统的结构和基础,包括类别图、对象图。3.动态模型动态模型用于展现系统的内部行为,包括序列图、活动图、状态图。一3.2UML模型UML包括14种不同的图,分为表示系统静态结构的静态模型和表示系统动态结构的动态模型。静态模型又称结构图,包括类图、对象图、包图、构件图、部署图、制品图、组合结构图。动态模型又称行为图,包括用例图、序列图、通信图、定时图、状态图、活动图、交互概览图。一3.3UML图结构图用于描述系统及其部件在不同抽象和实现级别上的静态结构及它们之间的相互关联。行为图用于描述系统中对象的动态行为,即系统随时间的一系列更改。一3.3UML图1.类图类图用于描述一组类、接口、协作及它们之间的关系,是对系统静态结构进行描述。类图不仅定义系统中的类,表示类之间的联系(如关联、依赖、聚合等),还包括类的内部结构。类图中的每个类由3部分组成,分别是类名、类的属性和操作。在面向对象系统的建模中,最常见的图就是类图。一3.3UML图2.对象图对象图用于描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照,对象图是类图的实例。对象图几乎使用与类图完全相同的标识,它们的不同点在于对象图显示类的多个对象实例,而不是实际的类。一3.3UML图3.包图包图用于描述由模型本身分解而成的组织单元及它们的依赖关系。4.构件图构件图用于描述代码构件的物理结构及各个构件之间的依赖关系。一个构件可能是资源代码构件、二进制构件或可执行构件。构件图用于表示系统的静态设计实现视图,有助于分析和理解构件之间的相互影响程度。一3.3UML图5.部署图部署图用于描述系统中硬件和软件的物理架构。部署图不仅可以显示实际的计算机和设备及它们之间的连接关系,也可以显示连接的类型及构件之间的依赖性。部署图给出了架构的静态部署视图,通常一个节点包含一个或多个部署图。一3.3UML图6.制品图制品图用于描述计算机中一个系统的物理结构。制品图包括文件、数据库和类似的物理比特集合。制品图通常与部署图结合使用,制品图也展现了它们实现的类和构件。7.组合结构图组合结构图用于描述结构化类的内部结构,包括结构化类与系统其余部分的交互点。组合结构图用于画出结构化类的内部内容。一3.3UML图8.用例图用例图用于描述一组用例、参与者及它们之间的关系。用例图给出了系统的静态用例视图。用例图仅从角色使用系统的角度描述系统中的信息,即站在系统外部查看系统,而不能描述系统内部对该功能的具体操作方式。9.序列图序列图又称时序图,是一种交互图。序列图用于反映若干个对象之间的动态协作关系,即随着时间推移,对象之间是如何交互的。序列图强调对象之间的消息发送顺序。一3.3UML图10.通信图通信图又称协作图,是一种交互图,它强调收发消息的对象或角色的结构组织。序列图强调时序,而通信图则强调消息流经的数据结构。11.定时图定时图是一种交互图,它强调消息跨越不同对象或角色的实际时间,而不仅仅关心消息的相对顺序。一3.3UML图12.状态图状态图用于描述对象所有可能的状态及事件发生时状态的转移条件。状态图是对类图的补充。状态图给出了对象的动态视图。13.活动图活动图用于描述满足用例要求所要进行的活动及活动间的约束关系,有利于识别并行活动。一3.3UML图14.交互概览图交互概览图是活动图和顺序图的结合体,适用于描述单个用例中若干个对象的行为,即描述一组对象的整体行为。一3.3UML图UML中有4种关系:关联、依赖、泛化和实现。1.关联关联关系是一种描述一组对象之间连接的结构关系,如聚合关系、组合关系表示两个类的实例之间存在某种语义上的联系。2.依赖依赖关系是两个事物之间的语义关系,表示其中一个事物发生变化会影响另一个事物的语义。一3.4UML关系3.泛化泛化关系是一种一般化和特殊化的关系,用于描述特殊元素的对象可以替换一般元素的对象。4.实现实现关系用来规定接口和实现接口的类或组件之间的关系。一3.4UML关系软件工程是软件开发设计的灵魂,是指导软件开发从需求到完成的总体规划。UML用图的形式展示系统的总体或局部结构。软件工程思想将软件开发按生命周期分成不同阶段,软件开发的各个阶段主要产生的是文档描述;UML同样适用于软件开发的各个阶段,但是主要以图的形式描述。在软件开发过程中,UML和软件工程互相渗透。一3.5UML与软件工程UML与软件工程都依赖于软件生命周期中的阶段划分,每个阶段都有相应的UML图和开发文档,并且会根据需求变化和实施过程而不断改进。UML不但适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发过程中从需求规格描述到系统完成后的测试和维护的不同阶段。一3.5UML与软件工程1.需求分析阶段UML用例图主要用于软件需求分析阶段。该阶段可以使用用例图来获取用户需求,通过用例建模描述系统外部角色和他们对系统的功能要求,能表示出用户与系统的一个交互过程。一3.5UML与软件工程2.系统分析阶段系统分析阶段主要关心问题域中的相关概念,如对象、类及它们的关系等。该阶段只对问题域的类建模,不考虑解决方案的细节。该阶段需要建立系统的静态模型,可以用UML类图来描述需要识别的类及它们之间的相互关系。为了实现用例及类之间的协作,可以用动态模型(行为图)的时序图、协作图、状态图和活动图来描述。一3.5UML与软件工程3.系统设计阶段在系统设计阶段,主要使用类图、包图对类的接口进行设计。4.系统构建阶段系统构建阶段也叫编程阶段或实现阶段,其任务是用面向对象编程语言将设计阶段的类转换成实际的代码。在使用UML建立分析和设计模型时,应尽量避免把模型转换成具体的编程语言,因为过早考虑编码不利于建立简单、正确的模型。一3.5UML与软件工程5.系统测试阶段UML模型也可以作为系统测试阶段的依据,按软件开发过程,需经过单元测试、集成测试、系统测试和验收测试。不同的测试组可以使用不同的UML图作为测试依据。单元测试可以使用类图和类规格说明;集成测试可以使用构件图和协作图;系统测试可以使用用例图来验证系统行为;验收测试由用户进行,以验证系统测试的结果是否满足所确定的需求。一3.5UML与软件工程6.系统交付阶段在UML图中,使用部署图来展示所交付系统中软件和硬件之间的物理关系,使用构件图来描述代码构件的物理结构及各个构件之间的依赖关系。一3.5UML与软件工程UML的目标是以面向对象图的方式来描述任意类型的系统。UML具有很广泛的应用领域,目前已被成功应用于电信、金融、政府、电子、国防、医疗、交通、航空航天、电子商务、制造与工业自动化等领域。UML建模不仅适用于大型的、复杂的、实时的、分布式的、集中式的数据或计算及嵌入式系统等,也适用于软件再生工程、质量管理、过程管理、配置管理的各个方面。UML最常用的是建立软件系统模型,但它同样适用于描述非软件领域的系统。一3.6UML应用领域【案例1】UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化,其中(1)是面向对象系统建模中最常用的图,用于说明系统的静态设计视图;当需要说明系统的静态实现视图时,应该选择(2);当需要说明体系结构的静态实施视图时,应该选择(3)。A.构件图 B.类图 C.对象图 D.部署图一技能训练【分析】UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化,分别是构件图、类图、对象图和部署图。构件图用于描述一组构件及它们之间的关系,说明系统的静态实现视图。类图用于描述一组类、接口、协作及它们之间的关系,是面向对象系统建模中最常用的图,用于说明系统的静态设计视图。对象图用于描述一组对象及它们之间的关系,用对象图说明在类图中所发现的事物实例的数据结构和静态快照。部署图用于描述一组节点及它们之间的关系,说明体系结构的静态实施视图。【答案】(1)B、(2)A、(3)D一技能训练【案例2】下列哪一项是专业的建模语言?()A.UML B.XML C.HTML D.Java一技能训练【分析】UML(统一建模语言)可以完整地描述软件的需求、结构和行为,从而为系统建模。XML(可扩展标记语言)是一种用于标记电子文件使其具有结构性的标记语言,也是WebService平
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB 10769-2025食品安全国家标准婴幼儿谷类辅助食品
- 贵阳人文科技学院《微积分(1)》2023-2024学年第二学期期末试卷
- 河南司法警官职业学院《交通仿真技术与应用》2023-2024学年第二学期期末试卷
- 云南理工职业学院《药品微生物韩》2023-2024学年第二学期期末试卷
- 衢州职业技术学院《工程造价软件应用》2023-2024学年第二学期期末试卷
- 天津天狮学院《画法几何与透视》2023-2024学年第二学期期末试卷
- 苏州工业职业技术学院《药学学科概论》2023-2024学年第二学期期末试卷
- 兰州外语职业学院《医学微生物学C》2023-2024学年第二学期期末试卷
- 借款合同书面质证
- 快递驿站加盟合同(2025年版)
- DB15-T 3967.2-2025 气候可行性论证技术规范 第2部分:太阳能发电工程
- 日租房协议合同
- 2024年湖南省高等学校对口招生考试英语试卷试题真题
- 公司2025年工会工作要点
- 2025年中国煤炭地质总局社会招聘20人笔试参考题库附带答案详解
- 2025内蒙古能源集团智慧运维公司社会招聘(105人)笔试参考题库附带答案详解
- 【9物一模】安徽合肥瑶海区2025年中考物理一模试卷
- 广东省深圳市宝安区10校联考2023-2024学年八年级下学期期中数学试题(含答案)
- 光影中国学习通超星期末考试答案章节答案2024年
- 2024外研社英语七年级(下)词汇表
- 绿色建筑能源管理
评论
0/150
提交评论