第9章面向对象系统建模UML和RUP

合集下载

第9章面向对象系统建模UML和RUP

第9章面向对象系统建模UML和RUP

9.2 UML
9.2.2图
UML的模型主要是通过一系列相关的图来表达,在UML中 共定义了9种图,它们分别从不同的侧面来描述系统。 UML中的图可分为静态图和动态图两大类。静态图包括用 例图、类图、对象图、组件图和配置图,动态图包括序列图、 状态图、协作图和活动图。 用例图(Use case diagram) 用例图描述系统的功能,由系统、用例和角色(Actor)三 种元素组成。用例是系统对外提供功能的描述,是角色和系统 在一次交互过程中执行的相关事务的序列。角色是与系统、子 系统或类交互的外部人员、进程或事物。用例之间存在扩展、 使用和组合三种关系。角色之间可以用通用化关系将某些角色 的共同行为抽象为通用行为。用例图是用例视图的重要组成部 分。
9.1 面向对象的软件开发
9.1.2 系统模型
模型是抓住现实系统的重要方面(主要方面)而忽略次要 方面的一种抽象,是对现实系统的一种简化,是理解、分析、 开发或改造现实系统的一种常用手段。
现实系统
模型和现实系 统之间的关系
抽象 系统的模型
确认
软件开发人员在开发一个复杂系统之前,应先建立系统模 型。 建模可以使设计者从全局上把握系统及其内部的联系。软 件系统模型提供一个系统的蓝图。
9.2 UML
②面向对象 UML吸取了面向对象技术领域中其他流派的长处。UML符 号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的、 多余的和极少使用的符号,也添加了一些新符号。 ③可视化、表示能力强 系统的逻辑模型或实现模型都能用UML模型清晰的表示, 可用于复杂软件系统的建模。 ④独立于过程 UML是系统建模语言,独立于开发过程。 ⑤易掌握、使用 UML概念明确,建模表示法简洁明了,图形结构清晰。
过程 工具

软件工程面向对象方法RUP课件

软件工程面向对象方法RUP课件

用例
分析
设计
测试
实现
以架构为中心
用例模型视角下的架构 分析模型视角下的架构
设计模型视角下的架构
实现模型视角下的架构 部署模型视角下的架构 系统架构描述
以架构为中心(II)
• 步骤
• 在一般性地了解系统用例之后,勾画出与特定用例和平台无关的系统架 构 • 关注一些关键用例
• 关键用例:利于降低最大风险的,对用户来说最重要的,利于实现所有重要功能 而不遗留重大问题的用例
• 实现工作流
• 规划迭代中所要求的系统集成,实现设计过程中发现的设计类和子系统
• 测试工作流
• 测试每一个构造来验证实现的结构。
RUP和UML
• UML作为一种可视化建模语言,给出了表达对象、对象间关系的 基本术语,给出了多种模型表达工具
• RUP利用这些术语,定义了需求获取层、系统分析层、设计层、 实现层,并给出了实现各层模型之间映射的基本活动
Group, OMG)推
RUP的特点
• 用例驱动
• 以用例为基础,驱动需求获取和分析建模,并进一步引发设计、实现和 测试活动
• 以架构为中心
• 开发的任何阶段都要相关模型视角下有关体系结构的描述
• 迭代增量式开发
• 通过开发活动的迭代,不断产生相应的增量。
用例驱动
• 用例是分析、设计、实现和测试的基本输入
RUP和UML(II)
• 需求获取层的基本术语有:用例、参与者、用例和参与者之间的 关联、用例之间的包含和扩展、参与者之间的泛化。
• 系统分析层的基本术语有:分析类、用例细化、分析包、分析包 关系的依赖、分析类之间的关联
RUP和UML(III)
• 系统设计层的基本术语有:设计子系统、设计类、用例细化、接 口、子系统之间的依赖、设计类之间的关联。

RUP开发过程与UML建模

RUP开发过程与UML建模

•分析问题域,建立坚实的架构
•细化架构并选择组件•捕获80Βιβλιοθήκη 的功能需求用例•精化风险评估
•建立可执行的软件原型
•定义非功能需求
2020年•9制月1定3日过3时程5分 迭代计划和迭代的评价标准
12
细化阶段的重点:
细化阶段主要关注需求、分析和设计工作流。每个工作流关注
如下各项。
•需求——精化系统范围和需求 •分析——确定构造什么 •设计——创建稳定的架构 •实现——构造架构基线 •测试——测试架构基线
▪ Rational公司的RUP发展而来的一套软件工程方法, 是目前最有效的软件开发过程模型。
▪ 基于构件的 ▪ 用UML制定软件系统所有蓝图 ▪ 突出特点:用例驱动、架构优先、迭代和增量过程 ▪ 四个阶段:初始、细化、构造、移交 ▪ 强调开发过程
▪ 五个核心工作流:需求捕获、分析、设计、实现、 测试
2020年9月13日3时5分
4
1 软件开发的几个指导原则及模型的概念
▪ 1、软件开发的三个指导原则:
• 分阶段进行(定义、开发、运行维护) • 大开发任务划分成独立的小块任务(模块化)高内
聚(模块内各元素彼此紧密结合)低耦合(模块间互 联程度低) • 从抽象到具体逐步深入解决问题(逐步求精)
▪ 2、模型的概念:
• 是人们对现实世界理解的表达(一般对应一些图表)
2020年9月13日3时5分
5
2 统一软件开发过程RUP
2.1 统一过程概述 2.2 统一过程的四个工作阶段 2.3 统一过程的五个核心工作流 2.4 统一软件开发过程的生命周期 2.5 RUP开发过程的特点
2020年9月13日3时5分
6
2.1 统一过程概述

面向对象设计与UML建模方法

面向对象设计与UML建模方法

面向对象设计与UML建模方法在软件开发中,面向对象设计是一种常用的设计思想。

它将系统中的一切都视为对象,通过对象之间的交互来完成系统功能。

与此同时,UML建模方法也是一种常用的系统设计工具。

它能够帮助开发人员更加清晰地将系统设计表示出来,并完成系统的构建。

本文将详细介绍面向对象设计与UML建模方法。

面向对象设计的基本概念面向对象设计是一种基于“对象”的设计思想,它将系统中的一切都视为对象,并且通过对象之间的交互来完成系统的功能。

一个对象包含了属性和方法。

属性是对象的状态,而方法是对象能够做的事情。

在面向对象设计中,对象之间通过消息进行交互。

消息是一种可以触发某个对象执行某项任务的信号。

对象之间的交互通过消息传递来进行。

在面向对象设计过程中,我们需要确定系统中包含哪些对象,以及它们之间的关系。

这个过程叫做对象建模。

对象建模的目的是将系统中的对象与它们的关系表达出来,以方便系统设计和实现。

UML建模方法的基本概念UML (Unified Modeling Language) 是一种常用的面向对象建模语言。

它是由OMG (Object Management Group) 开发出来的,用于描述系统的建模过程。

UML建模方法的基本概念包括以下几点:类和对象:类是一种描述对象的集合。

一个类可以包含属性和方法。

对象是类的一个实例。

通过创建对象可以完成类中描述的任务。

关系:类之间的关系包括继承、聚合和关联等。

继承是指一个类可以从另一个类继承属性和方法。

聚合是表示一个类是由另一个类组成的一部分。

关联是表示不同的类之间的关系。

行为:一个类的行为表示了一个对象在完成任务时所需执行的步骤。

行为可以包括状态转移和事件触发等。

UML建模方法的基本步骤UML建模方法能够帮助开发人员更好地进行系统设计和构建。

下面介绍UML建模方法的基本步骤:确定项目的范围和目标:首先确定所需要设计的系统的范围和目标。

然后基于这些目标开始设计系统。

OO方法RUP与UML建模

OO方法RUP与UML建模
Scalability, Throughput)
• Implementation View (Programmers:Software
management)
• Deployment View (System engineering:
System Topology, Delivery, installation, communication)
Object Oriented Analysis
• 用面向对象方法剖析效果域,树立基于 对象、音讯的业务模型,构成对客观世 界和业务自身的正确看法。
• 生成业务对象的动、静态模型和笼统类。
Object Oriented Design
• 针对OOA给出的效果域模型,用面向对 象方法设计出软件基础架构〔概要设计〕 和完整的类结构〔详细设计〕,以完成 业务功用。
登登登登
事情流
Basic Flow: This use case start when a Student wishes to register for course offerings, or to change his/her existing course schedule.
• 角色的集合,可以是人或外部系统。 • 定义了〝系统边界〞。
Actor
Use Case - 用例
• The specification of a sequence of actions, including variants, that a system (or other entity) can perform, interacting with actors of the system.
Use Case依赖关系
• Generalization – A generalization from use case A to use case B indicates that A is a specialization of B.

RUP和面向对象方法论

RUP和面向对象方法论

1.2.6 RUP和面向对象方法论RUP(Rational Unified Process)是Rational公司推出的软件过程模型,它是软件业界迄今为止商品化最成功的软件过程模型。

RUP的近千页文档可以从Rational公司的网站()下载,RUP 2000中文版也已经发布。

RUP的主要特征是:✧采用迭代的、增量式的开发过程,如图1-3所示。

✧采用UML语言描述软件开发过程。

✧有一系列功能强大的软件工具支撑(Rational公司的软件产品)。

UML是三位面向对象大师Jacobson、Booch、Rumbaugh创作的面向对象建模语言,1997年UML被国际对象管理组织(OMG)采纳为国际标准。

UML是独立于过程的,可以应用于任何开发过程模型。

由于UML和RUP都是Rational公司的研究成果,两者有天然的联系。

RUP的文档里面充满了UML模型,需求建模、分析与设计、实现、测试等阶段的角色的主要工作都是用UML来描述的。

与RUP配套的软件工具相当完备,例如面向对象分析设计工具Rose,配置管理工具ClearCase,变更控制工具ClearQuest,需求管理工具ReQuisitePro,文档生成工具SoDA,测试工具Purify,还有TeamTest/TestStudio工具等。

2003年,IBM斥资10亿美元收购了Rational公司。

现在国内软件开发人员学习UML、使用盗版Rose的劲头很足,相关书籍和网站也越来越多,造成了一派红火的景象。

但是完整采用RUP的国内企业则非常少。

图1-3 RUP模型RUP及其配套软件工具是重量级的软件研发管理解决方案,它面向的是高端用户,对用户的财力、开发和管理能力要求都很高:✧首先,用户得有钱买Rational的软件工具,否则光有RUP方法论如同纸上谈兵。

Rational的软件工具都是非常昂贵的,例如配置管理工具几乎是每个项目成员都要使用的,但ClearCase的每个License大约5000美元,这个费用相当于中国普通程序员一年的工资收入!显然,大部分国内企业没有钱购买Rational公司的软件工具。

2020智慧树,知到《面向对象与UML》章节测试【完整答案】

2020智慧树,知到《面向对象与UML》章节测试【完整答案】智慧树知到《面向对象与UML》(山东联盟)章节测试答案绪论1、UML是面向对象的软件建模语言,可应用到软件开发全过程。

A:对B:错正确答案:对2、面向对象是当今主流的软件开发思想。

( )A:对B:错正确答案:对3、下列哪些工具可以用来进行UML建模?( )A: Rational RoseB: Enterprise Architect (EA)C: Microsoft Office VisioD:StarUML正确答案:Rational Rose, Enterprise Architect (EA), Microsoft Office Visio,StarUML4、本课程的主讲教师是烟台大学计算机与控制工程学院的哪位老师?( )A: 螃蟹B: 郭艳燕C: 机器猫D: 哈利波特正确答案:郭艳燕5、我们要从本课程中学到哪些知识?( )A:面向对象的基础知识B:UML软件建模C:面向对象的设计原则D:面向对象编程语言正确答案:面向对象的基础知识,UML软件建模,面向对象的设计原则第一章1、以下对软件建模描述正确的是( )A:要正确建模,模型必须准确反映软件系统的真实情况。

B:每个模型可以有多种表达方式,从不同角度来刻画系统。

C:模型是对现实世界的简化,但不能掩盖重要的细节。

D:描述同一个系统的多个模型只能相对孤立,不能完全孤立,完全孤立的模型是不完整的E:越庞大复杂的系统,建模的重要性越大。

正确答案:要正确建模,模型必须准确反映软件系统的真实情况。

,每个模型可以有多种表达方式,从不同角度来刻画系统。

,模型是对现实世界的简化,但不能掩盖重要的细节。

,描述同一个系统的多个模型只能相对孤立,不能完全孤立,完全孤立的模型是不完整的,越庞大复杂的系统,建模的重要性越大。

2、模型的实质是什么?( )A:便于交流B:对现实的简化C:可视化D:对现实的复杂化正确答案:对现实的简化3、对软件模型而言,下面说法错误的是( )A:是人员交流的媒介B:是软件的中间形态C:是软件升级和维护的依据D:是软件的标准文档正确答案:是软件的标准文档4、以下关于模型的说法错误的是( )A:模型是对现实的简化。

面向对象软件工程标准建模语言UML



包:包是一种分组机制,表示一个类
Package 图集合。

关联:用于表示类的对象之间的关系。
其特殊形式有组成关联和聚集关联。
标准建模语言UML (类图)
类图中的图符:

聚集关联:用于表示类的对象之间的
关系是整体与部分的关系。

组成关联:用于表示类的对象之间的
关系:整体拥有各部分,部分与整体共存,如
面向对象软件工程
面向对象概念
• 类和实例 类是某些对象的共同特性的表示,它描述
了这些对象内部是如何构造的。相同类的对象 在它们的操作和它们的信息结构两个方面都有 相同的定义。
在面向对象系统中,每个对象都属于一个 类。属于某个特定类的对象称为该类的实例。 因此,常常把对象和实例当作同义词。实例是 从某类创建的一个对象。
标准建模语言UML (对象图)
作者
名字:String 年龄:Integer
0..1
Uses
类图
计算机
1..*
名字:String 内存:Ineger
小王:作者
名字 = “王小影” 年龄 = 32
小王的工作PC: 计算机
名字 = “Dell486” 内存 = 64
对象图
小王的工作PC: 计算机
名字 = “Compaq X” 内存 = 32
• 系统的使用实例:从系统外部的操作者的角度描述系 统的功能。
• 系统的逻辑结构:描述系统内部的静态结构和动态行 为,即从内部描述如何设计实现系统功能。
• 系统的构成:描述系统由哪些程序构件所组成。 • 系统的并发性:描述系统的并发性,强调并发系统中
存在的各种通信和同步问题。 • 系统的配置:描述系统的软件和各种硬件设备之间的

rup和面向对象方法的关系

rup和面向对象方法的关系嘿,咱今儿就来唠唠 RUP 和面向对象方法这俩家伙的关系。

你说 RUP 啊,那就像是一个超级有计划的导演,把软件开发这场大戏安排得妥妥当当。

它把整个过程分成了一个个阶段,每个阶段都有自己的任务和目标,就好像电影拍摄的不同场景,一步一步有条不紊地推进。

那面向对象方法呢,就像是演员们的表演技巧。

它让我们用一种更贴近现实的方式去理解和构建软件。

把软件里的各种元素当成一个个有个性、有行为的对象,就好像演员在塑造角色一样。

你想想看呀,要是没有 RUP 这个导演来指挥,面向对象方法这个表演技巧不就有点乱套啦?可能演员们都不知道自己该在什么时候上场,该演啥戏码。

反过来,要是只有 RUP 没有面向对象方法,那这戏不就干巴巴的,没啥看头了嘛!RUP 中的各种阶段和活动,为面向对象方法提供了一个施展的舞台。

比如说在需求分析阶段,我们可以用面向对象的思想去找出那些关键的对象和它们的关系。

在设计阶段,更是能充分发挥面向对象的优势,把系统设计得清晰明了。

面向对象方法也让 RUP 变得更加生动有趣呀!它让整个开发过程充满了创意和灵活性。

就好比拍电影,有了好的表演技巧,才能让电影更加精彩动人。

RUP 和面向对象方法结合起来,那可真是如虎添翼啊!它们相互配合,让软件开发变得高效又有趣。

就像一场精彩的演出,导演和演员都发挥出了自己的最佳水平。

咱再打个比方,RUP 是一辆汽车的框架,而面向对象方法就是那让汽车跑得飞快的引擎。

没有框架,引擎没地方放;没有引擎,框架也就是个空架子。

只有它们俩紧密结合,这辆“软件开发之车”才能跑得又稳又快。

你说这RUP 和面向对象方法的关系是不是特别紧密,特别重要啊?它们就像是软件开发世界里的黄金搭档,缺了谁都不行。

所以啊,我们在进行软件开发的时候,一定要把它们好好地结合起来,让它们发挥出最大的威力。

这样,我们才能开发出高质量、高效率的软件,就像拍出一部人人称赞的好电影一样!你说是不是这个理儿呢?。

UML 第9章 RUP

的可信性。 ④任何已开发的原型的深度和广度。 ⑤实际开销与计划开销。 初始阶段的焦点是需求和分析工作流。
36
(2)细化阶段
细化阶段的目标:分析问题领域、建立体系结构基础、 编制项目计划、淘汰项目中最高风险的元素;
由细化阶段决定是否将项目提交给构建和交付阶段; 细化阶段确保结构、需求、计划是足够的稳定,风险
第9章 Rational统一过程
1
本章内容
什么是Rational统一过程 Rational统一过程的演进历史 Rational统一过程的结构 Rational统一过程的配置和实现
2
什么是Rational统一过程(RUP)
Rational :Rational统一过程是由Rational公 司开发并维护的,可以将RUP看成一款软件产 品,并和一系列软件开发工具紧密集成;
束,以便可以得出最终产品的验收标准。 ② 计划和准备商业理由。评估风险管理、人员配备、项
目计划以及成本、进度、收益折衷的备选方案。 ③ 明确区分系统的关键用例和主要的功能场景; ④ 展现或演示至少一种符合主要场景要求的候选软件体
系结构; ⑤ 对整个项目做出最初的项目成本和日程估计; ⑥ 估计潜在的风险; ⑦ 准备项目的环境;
工作流:描述产生有价值的有意义的结果的活动序 列;(何时)
16
角色:定义了个人或由若干个人组成小组的 行为和责任;
角色定义了一个人应该如何完成工作,即角 色的职责;所分派给角色的责任既包括一系 列的活动,还包括成为一系列产物的拥有者;
① 架构师 ② 系统分析员 ③ 测试设计师
17
角色所执行的行为用活动来表示,每个角色与 一组相关的活动联系,定义了他们执行的工作;
Change Management) 8. 项目管理(Project Management) 9. 环境(Environment)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

9.2 UML
组件图(Component diagram) 组件图用来反映代码的物理结构。组件可以是源代码、 二进制文件或可执行文件,包含逻辑类的实现信息。实现视 图由组件图够成。
9.2 UML
配置图(Deployment diagram) 配置图用来显示系统中软件和硬件的物理架构。图中通 常显示实际的计算机和设备及它们之间的关系。配置图用来 构成配置视图,描述系统的实际物理结构。
(2) UML的主要内容 UML的定义包括UML语义和UML表示法两个部分。 UML语义 描述基于UML的精确元模型(meta-model)定 义。元模型为UML的所有元素在语法和语义上提供了简单、一 致、通用的定义性说明,使开发者能在语义上取得一致,消除了 因人而异的表达方法所造成的影响。此外UML还支持对元模型 的扩展定义。 UML支持各种类型的语义。如布尔、表达式、列表、阶、 名字、坐标、字符串和时间等,还允许用户自定义类型。 UML表示法 定义UML符号的表示法,为开发者或开发 工具使用这些图形符号和文本语法为系统建模提供了标准.。这 些图形符号和文字所表达的是应用级的模型,在语义上它是UML 元模型的实例。
主要的域 视图 静态视图 结构 用例视图 图 类图 用例图 主要概念 类,关联,泛化,依赖关系,实现,接口 用例,参与者,关联,扩展,包含,泛化
实现视图
配置视图 状态机视图
构件图
配置图
构件,接口,依Байду номын сангаас关系,实现
节点,构件,依赖关系,位置
状态视图 状态,事件,转换,动作
动态
活动视图
交互视图
活动图
顺序图 协作图 类图
状态,活动,完成转换,分叉,结合
交互,对象,消息,激活 协作,交互,协作角色,消息 包,子系统,模型
模型管理 模型管理视图
9.2 UML
9.2.4 模型元素(Model elements)
可以在图中使用的概念统称为模型元素。模型元素用语 义、元素的正式定义或确定的语句的准确含义来定义。模型 元素在图中用相应的符号表示,即视图元素。一个模型元素 可以用在多个不同的图中,但总是用相同的含义和符号表示, 并且出现的方式应符合一定的规则。 除了类、对象、消息等概念外,模型元素之间的连接关 系如关联、依赖、通用化也是模型元素。另外,模型元素也 包括消息、动作和版型等。 9.2.5 通用机制(general mechanism) 通用机制用于为图附加一些无法用基本的模型元素表示 的信息,如注释(note)、修饰(adornment)和规格说明 (specification)等。另外,为了适应用户的需求,它还提供 了扩展机制。
9.2 UML
9.2.2图
UML的模型主要是通过一系列相关的图来表达,在UML中 共定义了9种图,它们分别从不同的侧面来描述系统。 UML中的图可分为静态图和动态图两大类。静态图包括用 例图、类图、对象图、组件图和配置图,动态图包括序列图、 状态图、协作图和活动图。 用例图(Use case diagram) 用例图描述系统的功能,由系统、用例和角色(Actor)三 种元素组成。用例是系统对外提供功能的描述,是角色和系统 在一次交互过程中执行的相关事务的序列。角色是与系统、子 系统或类交互的外部人员、进程或事物。用例之间存在扩展、 使用和组合三种关系。角色之间可以用通用化关系将某些角色 的共同行为抽象为通用行为。用例图是用例视图的重要组成部 分。
9.2 UML
(3) UML的主要构成 UML 是一种标准化的图形建模语言,它是面向对象分析 与设计的一种标准表示。 UML主要由以下几部分构成 : 视图(views) 图(Diagrams) 模型元素(Model elements) 通用机制(general mechanism) (4) UML的特点 ①统一标准 UML统一了Booch、OMT和OOSE等方法中的基本概念, 已成为OMG的正式标准,提供了标准的面向对象的模型元素 的定义和表示。
9.2 UML
9.2.3视图
一个系统应从不同的角度进行描述 ,从一个角度观察到的 系统称为一个视图( view)。视图由多个图( Diagrams )构 成,它不是一个图表(Graph),而是在某一个抽象层上,对系 统的抽象表示。 如果要为系统建立一个完整的模型图,需定义一定数量 的视图,每个视图表示系统的一个特殊的方面。另外,视图 还把建模语言和系统开发时选择的方法或过程连接起来。
强调数据抽象、易 扩充性和代码复用 面向对象 等软件工程原则, 支持数据抽象、封 程序设计 装和继承等面向对 象的概念。 大型、复杂 软件系统的 生成
9.1 面向对象的软件开发
对象 对象
函数 和过程
对象
数据
对象
(a)结构化程序
(b)面向对象程序
面向对象=对象+类+继承+通信 面向对象的软件开发方法涉及以下阶段: 面向对象的分析(OOA —Object Oriented Analysis) 面向对象的设计(OOD —Object Oriented Design)
9.1 面向对象的软件开发
9.1.2 系统模型
模型是抓住现实系统的重要方面(主要方面)而忽略次要 方面的一种抽象,是对现实系统的一种简化,是理解、分析、 开发或改造现实系统的一种常用手段。
现实系统
模型和现实系 统之间的关系
抽象 系统的模型
确认
软件开发人员在开发一个复杂系统之前,应先建立系统模 型。 建模可以使设计者从全局上把握系统及其内部的联系。软 件系统模型提供一个系统的蓝图。
Design View 描
系统的外部特性、 述系统设计特征, 系统功能等。 包括结构模型视 图和行为模型视 图,前者描述系 统的静态结构(类 设计视图 实现视图 图、对象图),后 Use case 者描述系统的动 视图 态行为(交互图、 配置视图 状态图、活动图)。 过程视图
Use case View描述
9.面向对象 系统建模 UML和RUP
9. 面向对象系统建模UML和RUP
UML(Unified Modeling Language)是一种优秀 的建模语言,它使用面向对象的概念来分析、描述软 件系统并构造系统模型;而RUP(Rational Unified Process)是应用UML的软件开发过程。
9.2 UML
状态图(Statechart diagram) 状态图主要用来描述对象、子系统、系统的生命周期。通 过状态图可以了解一个对象可能具有的所有状态、导致对象状 态改变的事件、以及状态转移引发的动作。状态是对象操作的 前一次活动的结果,通常由对象的属性值来决定。事件指的是 发生的且引起某些动作执行的事情。状态的变化称做转移,与 转移相连的动作指明状态转移时应做的事情。状态图是对类描 述的事物的补充说明,用在设计视图中描述类的行为。
分析、抽取
领域问题
概念模型
提取
分析、设计
系统需求
解决方案
9.1 面向对象的软件开发
软件系统进行建模的目的: 1.理解应用领域中的知识,捕获用户的需求。 2.与用户沟通。 3.进行系统设计。 4.使实现细节和需求分开。 5.设计出有用的实际产品. 6.通过模型可以建立系统的文档。 7.利于我们理解复杂系统。 表示法 表示法、过程和工具是成功 建模的三要素,三者缺一不可。
过程 工具
9.2 UML
UML是一种定义良好、易于表达、功能较强、通用的建模语 言,适用于系统开发过程中从需求规约描述到系统完成后测试的 不同阶段。 UML作为一种可视化的建模语言,提供了丰富的基于面向对 象概念的模型元素及其图形表示元素。
9.2.1UML概述
(1) UML的形成 90年代中,面向对象方法已经成为软件分析和设计方法的 主流。 1994年10月James Rumbaugh和Grady Booch共同合作把他们 的 OMT 和 Booch 方 法 统 一 起 来 , 到 1995 年 成 为 “ 统 一 方 法 ” (Unified Method)版本0.8。随后,Ivar Jacobson加入,并采用 他的用例(User case)思想,到1996年,成为“统一建模语言”版本 0.9。
9.2 UML
协作图(Collaboration diagram) 协作图主要描述协作对象之间的交互和链接。协作图和 序列图同样反映对象间的动态协作,也可以表达消息序列, 但重点描述交换消息的对象之间的关系,强调的是空间关系 而非时间顺序。
9.2 UML
活动图(Activity diagram) 活动图显示动作及其结果,着重描述操作实现中所完成 的工作以及用例实例或对象中的活动。活动图中反映了一个 连续的活动流,常用于描述一个操作执行过程中所完成的工 作。
9.2 UML
②面向对象 UML吸取了面向对象技术领域中其他流派的长处。UML符 号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的、 多余的和极少使用的符号,也添加了一些新符号。 ③可视化、表示能力强 系统的逻辑模型或实现模型都能用UML模型清晰的表示, 可用于复杂软件系统的建模。 ④独立于过程 UML是系统建模语言,独立于开发过程。 ⑤易掌握、使用 UML概念明确,建模表示法简洁明了,图形结构清晰。
电梯的状态图
9.2 UML
序列图(Sequence diagram) 面向对象系统中对象之间的交互表现为消息的发送和接 收。序列图反映若干个对象之间的动态协作关系,即随着时 间的流逝,消息是如何在对象之间发送和接收的。序列图表 现为二维的形式,其中的纵坐标轴显示时间,横坐标轴显示 对象。序列图中重点反映对象之间发送消息的先后次序,常 用在设计视图中。
9.2 UML
用例图
9.2 UML
类图(Class diagram) 类图用来表示系统中的类以及类与类之间的关系,描述 系统的静态结构,用于逻辑视图中。类是对象的抽象描述。 所谓对象就是可以控制和操作的实体,类是具有共同结构、 行为、关系、语义的一组对象的抽象。 类的行为和结构特征分别通过操作和属性表示。类与类 之间有多种关系。如关联、依赖、通用化、聚合等。关系提 供了对象之间的通信方式。关联关系用于描述类与类之间的 连接,通常是双向的。通用化又称继承,是通用元素和具体 元素之间的一种分类关系,具体元素完全拥有通用元素的信 息,并且还可以附加其他信息。聚合关系具有较强的耦合性, 描述整体与部分的关系。依赖关系描述两个模型元素之间语 义上的连接关系,其中一个元素是独立的,另一个元素依赖 于独立的模型元素,独立元素的变化将影响到依赖元素。
相关文档
最新文档