下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 3 章 统一建模语言 UML 简介本章目录第 3 章 统一建模语言 UML 简介 错 误!未定义书签。3.1 UML 概述 13.1.1 UML 的产生背景 13.1.2 什么是 UML 23.1.3 UML 中的视图 33.2 UML 的构成 43.2.1 UML 的体系结构 43.2.2 UML 的模型元素 53.2.3 UML 的模型结构 53.2.4 UML 的模型图 63.2.5 UML 建模规则 73.2.6 UML 的公用机制 83.3 一个 UML 的例子 83.3.1 用例图 93.3.2 活动图 93.3.3 顺序图 103.3.4 协作图 113.3.5 类图 123
2、.3.6 状态图 123.3.7 组件图 133.3.8 部署图 13建模是为软件开发服务的, 因此, 如果模型所包含的信息足够完备, 就可以以这些信息 为基础,进行软件系统的建造。统一建模语言 UML 是一种总结了以往建模技术的经验并吸 收当今优秀成果的标准建模技术,利用 UML 表达的软件模型,可以直接和某种设计语言建 立映射关系,通过 UML 建造工具,将 UML 模型转换为对应的程序设计语言源代码框架。 本章简要地回顾了 UML 的产生背景与 UML 的视图,重点介绍 UML 的体系结构和建模规 则等内容。3.1 UML 概述UML 是一个通用的可视化建模语言,是用于对软件进行描述、可
3、视化处理、构造和建 立软件系统制品的文档。 其中制品是指软件开发过程中产生的各种产物, 例如模型、 源代码、 测试用例等。 UML 适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域及 各种开发工具。3.1.1 UML 的产生背景早在 20 世纪 70 年代就陆续出现了面向对象的建模方法,在80 年代末到 90 年代中期, 各种建模方法如雨后春笋般出现, 从不到 10种增加到 50 多种。但方法种类的膨胀, 使用户 很难根据自身应用的特点选择合适的建模方法,极大地妨碍了用户的使用和交流。在 UML 之前,已经有一些试图将各种方法中使用的概念进行统一的初期尝试。 1994 年在 Rat
4、ional 软件公司的 Rumbaugh 与 Booch 合作,开始合并 OMT 和 Booch 方法中使用的概念,并于 1995 年提出了一个建议。 随后 Jacobson 也加入了 Rational 公司,开始与 Rumbaugh 和 Booch 一同工作, 他们共同致力于设计统一建模语言。 三位最优秀的面向对象方法学的创始人共同 合作, 吸取了其他面向对象方法的优点, 为这项工作注入了强大的动力, 打破了面向对象软 件开发领域内原有的平衡。 1996 年, OMG(Object Management Group) 发布了向外界征集关 于面向对象建模标准方法的消息。 UML 的三位创始人与
5、来自其他公司的软件工程方法专家 和开发人员一道制定出使 OMG 感兴趣的方法, 并设计出一种能被 软件开发工具提供者 、软 件开发方法学家 和 开发人员 这些最终用户所接受的建模语言。 1997 年 9 月他们向 OMG 提 交了 UML方法。1997年11月,UML被OMG全体成员一致通过,并被采纳为标准。随后 OMG 承担了进一步完善 UML 标准的工作。 2000年推出了 UML 1.4版本, 2003 年推出了 UML 1.5 版本,目前最新的版本是 UML 2.0。随着 UML 被 OMG 采纳为标准,面向对象领域的方法学大战也宣告结束,这些方法的 提出者很多也开始转向 UML 方面
6、的研究。 UML 的出现为面向对象建模语言的历史翻开了 新的一页, 并受到工业界、学术界及用户的广泛支持,它融入了软件工程领域的新思想、新 方法和新技术,成为面向对象技术领域占主导地位的建模语言。UML 代表了面向对象软件开发技术的发展方向,具有巨大的市场前景,也具有重大的经济价值。3.1.2 什么是 UML作为一种语言, UML 定义了一系列的 图形符号 来描述软件系统。这些图形符号有严格 的语义 和清晰的 语法 。这些图形符号及其背后的语义和语法组成了一个标准, 使得软件开发 的所有相关人员都能用它来对软件系统的各个侧面进行描述。模型元素代表面向对象中的 类、对象、 消息和关系等概念, 是
7、构成图的最基本的常用概念。一个模型元素可以用在多个 不同的图中,无论怎样使用,它总是具有相同的含义和相同的符号来表示。UML 可以描述一个系统的 静态结构 和 动态行为 ,从不同但相互联系的角度对系统建立 的模型可用于不同的目的。 UML 将系统描述为一些离散的相互作用的对象,通过静态结构 定义系统中对象的属性和操作及这些对象之间的相互关系。 动态行为定义了对象的时间特性 和对象为完成目标而相互进行通信的机制。 UML 还可将模型分解成包的结构组件,以便于 软件开发组织将大的系统分解成易于处理的块结构,并理解和控制各个包之间的依赖关系, 在复杂的开发环境中管理模型单元。UML 标准并没有定义一
8、种标准的开发过程,但它适用于迭代式的开发过程。它是为支 持大部分现存的面向对象开发过程而设计的。 UML 不是一门程序设计语言,但可以使用代 码生成器工具将 UML 模型转换为多种程序设计语言代码, 或使用反向生成器工具将程序源 代码转换为 UML 。UML 的主要特点可以归纳为以下几点。 统一的标准。 UML 是被 OMG 接受为标准的建模语言, 越来越多的开发人员使用 UML 进行软件开发,越来越多的厂商支持 UML 。 面向对象。 UML 是支持面向对象软件开发的建模语言。 概念明确,建模表示法简洁,图形结构清晰,可视化、表示能力强大,容易掌握和使 用。 独立于过程。 UML 不依赖于特
9、定的软件开发过程。3.1.3 UML中的视图对于复杂系统建模需要从多个不同的方面来描述。UML用视图来表示被建模系统的各个方面,它是在某一个抽象层次上对系统的抽象表示。UML把软件模型划分为 5个视图,每一个视图代表完整系统描述的投影,显示系统的一个特定方面。每一个视图又由一种或多种模型图构成。模型图描述了构成相应视图的基本模型元素及它们之间的相互关系。一个特定视图中的图应该足够简单,便于交流,而且一定要与其他图和视图连贯一致,因而所有视图结合在一起(通过它们各自的图)就描述了系统的完整画面。图3-1显示了 UML的视图。另外,通过视图可以把建模语言和系统开发时选择的方法或过程连接起来。设计词
10、汇、功能播述系统组装、配置管理逻辑(结构)视图_实现视图组件(行为)视图/ )仇閃部署(环境)视图性能、稳定性、呑吐率系统拓扑.分布、安装图3-1 UML的视图1 用例视图用例视图(Use Case View)用来支持软件系统的需求分析,它定义系统的边界, 关注的是系统应该交付的功能,也就是外部参与者所看到的功能。它从系统参与者的角度描述系统的 外部行为和静态的功能组合。用例视图的使用者是客户、开发人员及测试人员。客户对系统 的期望用法(也就是要求的功能)被当作多个用例在用例视图中进行描述,一个用例就是对系统的一个用法的通用描述。用例视图是核心,因为它的内容驱动其他视图的开发。系统的最终目标,
11、也就是系统 将提供的功能是在用例视图中描述的。同时该视图还有其他一些非功能特性的描述,因此, 用例视图将会对所有其他的视图产生影响。另外,通过测试用例视图, 可以检验和最终校验系统。这种测试来自两个方面:一方面是客户,可以询问客户“这是您想要的吗?”;另一个方面就是已完成的系统,可以询问“系统是按照要求的方式运作的吗?”2 逻辑视图逻辑视图(Logical View)定义系统的实现逻辑。它描述了为了实现用例视图中提出的系 统功能,在对软件系统进行设计时所产生的设计概念(设计概念又称为软件系统的设计词汇)。逻辑视图的使用者主要是开发人员和设计人员。它关注系统的内部,既描述系统的静 态结构(类、对象及它们之间的关系 ),也描述系统内部的动态协作关系。这种协作发生在为 了实现既定功能,各对象之间进行消息传递的时刻。另外,逻辑视图也定义像
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 线上互助活动方案
- 红色出行活动方案
- 养殖合同范本及风险防范说明
- 线上建党活动方案
- 小学三年级语文期中考试卷历年汇编
- 食品安全包保干部题库及答案解析
- 期货从业考试攻略及答案解析
- 机械产品使用说明书模板与范例
- 货运从业资格证学习考试及答案解析
- 新疆安全c类考试题库及答案解析
- 2026届上海高考英语短语背诵手册
- 2025至2030中国溶剂回收行业发展趋势分析与未来投资战略咨询研究报告
- 2025重庆市设计院有限公司招聘29人笔试参考题库附带答案详解析集合
- 2024年中级注册安全工程师《金属非金属矿山安全》真题及答案
- 临床用药解读-消化系统常见疾病的诊疗进展及处方审核要点
- 《结直肠癌的治疗进展》课件
- GB/T 45637-2025电动牙刷性能测试方法
- 【中国信通院】eSIM产业热点问题研究报告(2025年)
- 菜鸟驿站合伙合同协议
- 药品市场交接协议书范本
- 法官入额考试试题及答案
评论
0/150
提交评论