UML建模培训教材(Doc格式)
第二章统一建模语言简介1、U ML和软件体系结构(1)UML是UML是用于描绘软件蓝图的标准语言。
●建模的原则:●准确、分层、分治、标准●统一建模语言UML就是满足这四个原则的建模语言。
●UML是用于描绘软件蓝图的标准语言。
●它可用于对软件密集型系统进行●视化●说明●建造●建档。
●UML是用于描绘软件蓝图的标准语言。
●UML是蓝图:●支持视化:●UML包括一组明确定义的标准图符●描述软件产品生产活动中需要交流的各种内容。
●软件开发的所有相关人员,通过图符能了解和表达需要交流的内容。
●支持建模●蓝图是模型的表达●UML是标准语言●支持说明,建造和建档。
●生产软件产品, 需要对此产品进行说明●说明需要标准化●UML是一种语言●意味着UML是以标准化的形式,表达这些说明的建模工具。
●它以标准化的方式,完成对软件的●市场需求的说明●功能的说明●运行原理的说明●内部结构的说明●对外接口的说明●及其实现方式的说明,●UML是一种语言●意味着它是标准化的●因此,用UML表达的软件模型,可以直接和某种设计语言建立映射关系,●通过UML建模工具,可以UML模型转换为对应的程序设计语言源代码框架。
●UML就是通过此种方式,支持软件系统的建造的●UML是一种语言●意味着它是标准化的●因此也能有效的支持软件生产的建档(documentation)●UML有标准的描述手段(格式)来表达和组织这些内容●UML支持软件制成品的建档,包括:●开发活动中产生的用于控制、评测(measuring)、交流的各种中间产物, 如:●需求分析●软件体系结构(architecture)●结构设计●行为设计●源代码/项目计划/测试计划/发行版本等等。
● e.g.:●用例视图来描述需求分析●用逻辑视图来描述结构设计, 等等。
●作为描绘软件蓝图的语言●UML定义了一系列的图符来描述软件密集型的系统●这些图符有严格的语义和清晰的语法。
●这些图符及其背后的语义和语法,组成了一个标准,●使得软件开发的所有相关人员都能用它来对软件系统的各个侧面进行描述。
(2)、UML根据软件体系结构对软件进行建模●分层是软件建模的重要原则●为了表达不同的软件开发相关人员在软件开发周期的不同时期看待软件产品的不同侧重面, 需要对模型进行分层。
●UML根据软件产品的体系结构(architecture)对软件进行分层●软件体系结构由一系列的决定组成,这些决定定义了如下内容:●(1)、软件系统的组织;●(2)、构成软件系统的结构元素的结构及它们之间的接口;●(3)、结构元素的行为及元素之间的协同(collaboration);●(4)、结构元素的不断组合以构成日渐完备的子系统的过程;●(5)、指导软件建造过程的●软件构筑风格(architectural style):●静态和动态元素之间的●接口●协同●构成(composition)。
●软件体系结构不仅仅决定软件的结构和行为,●而且还决定软件的●用途●功能●性能●应变性(resilience)●可重用性●经济和技术方面的限制和折衷●以及美学考虑(aesthetic concern)。
● UML 将软件的体系结构分解为五个不同的侧面(右图) ● 称为视图(view)。
● 分别是: ● 用例视图(Use case view ) ● 设计视图(design view)● 进程视图(process view )● 实现视图(implementation view)● 分布视图(deployment view)● 设计视图和进程视图又可被统一称为逻辑视图(logical view)。
设计视图 实现视图 进程视图 分布视图 用例视图 动态行为 设计词汇、功能描述 系统组装、配置管理 性能、稳定性、吞吐率 系统拓扑、分布、分发、安装●其中每个视图分别关注软件开发的某一侧面●视图由一种或多种模型图(diagram)构成。
●模型图描述了●构成相应视图的基本模型元素(element)●及它们之间的相互关系。
1、用例视图(use case view):●用例视图用来支持软件系统的需求分析,它定义系统的边界,关注的是系统的外部功能的描述。
●它从系统的使用者的角度,描述系统的外部的●动态行为●静态的功能●系统的动态功能由UML以下模型图描述:●交互图(interaction diagram)●状态图(state-chart diagram)●活动图(activity diagram)2、逻辑视图(Logical View):●逻辑视图定义系统的实现逻辑。
●描述为实现用例图描述的功能,在对软件系统进行设计时, 所产生的设计概念,●设计概念又称为软件系统的设计词汇(vocabulary)。
●逻辑视图定义●了设计词汇的逻辑结构●存在于它们之间的语义联系。
●设计词汇包括系统的●类●协同●接口及其关系●对逻辑视图的描述在原则上与软件系统的实现平台无关。
●它相当于电子产品生产中的电原理图。
逻辑视图包含的模型图有:●类图(class diagrams)●对象图(object diagrams)●交互图(interaction diagrams)●状态图(state-chart diagrams)●活动图(state-chart diagrams)。
3、实现视图(implementation view)●当系统的逻辑结构在逻辑视图里被定义之后,需要定义逻辑结构的物理实现。
这包括●设计元素对应的源代码文件●各物理文件之间的●关系●存放路径,等等。
●实现视图就是定义这些内容的地方。
●它当于电子产品的印刷电路板的布线图。
●实现视图描述组成一个软件系统的各个物理部件,这些部件●以各种方式组合起来,●(如:不同的源代码经过编译,构成一个可执行系统;或者不同的软件组件配置成为一个可执行系统;以及不同的网页文件,以特定的目录结构,组成一个网站,等等)●构成了一个可实际运行的系统。
●实现视图包含的模型图有:●部件图(Component diagram)●交互图(Interaction Diagram)●状态图(state-chart diagram)●活动图(activity diagram)。
4、分布视图(Deployment View)●软件产品将运行在计算机硬件系统上●如果软件产品是面向网络的应用系统,●则有可能同时运行在多个计算机上。
●分布视图用来描述软件产品在计算机硬件系统和网络上的●安装●分发(delivery)●分布(distribution)●在分布视图中,系统的●静态特性用●分布图(deployment diagram)描述,●动态特性用●交互图(interaction diagram)●状态图(state-chart diagram)●活动图(activity diagram)描述。
2、UML概述●从软件的体系结构出发,UML把软件模型分成了五个视图●每个视图由不同的模型图构成。
●模型图实际上就是UML的基本成员之一。
●作为UML的完整的概念模型,UML的构成为:UML = UML成员+ UML建模规则(roles of the UML)●UML建模规则●相当于建模语言的语法●UML成员(building blocks of the UML)●它UML的基本组成部分●它和UML建模规则一起组成了UML●UML成员可进一步划分为●UML 基本模型元素(things in UML)●关系(relationship)●模型图(diagram):UML成员= UML 基本模型元素+ 关系+ 模型图●UML基本模型元素:●类似于电子产品电原理图里的集成电路符号,●是模型图上包含的基本符号。
●基本模型元素可分为四类,它们是:●结构模型元素(structural things)●行为模型元素(behavioral things)●分组模型元素(grouping things)●注解元素(annotational things):UML基本模型元素= 结构模型元素+行为模型元素+成组元素+注解元素●关系:基本模型元素之间的语义上的联系,在UML里用关系来描述。
(1)、结构模型元素●结构模型元素●是UML模型里的名词(noun)●是模型的静态组成部分●代表软件系统的●概念的, 或●物理的存在。
●例如:类(class)●最常用的一个结构模型元素●它代表一系列共享同样的●属性(attributes)●操作(operation)●关系、●语义●的对象(object)。
●类的图形表示●类在模型图(类图)上被通常用一个矩形为一个矩形●其上包含类的●名字●属性●操作(下图)Windoworiginsizeopen()close()display()图2.2类● 结构模型元素一共有七种,它们是:● 类● 接口( interface )● 协同● 用例(use case )● 主动类(active class )● 组件(component )● 节点(node )● 在这些结构元素中,最常用的包括:● 类、用例、接口、组件等(下图)用例 接口 组件图2.3 一些常用的结构模型元素 Check Pass Word ISpelling Shell.cpp(2)、行为模型元素●行为模型元素(behavioral things)●UML模型的动态组成部分●它是模型的动词,代表软件系统在空间和时间上的行为。
●行为模型元素包括两类:●交互(interaction)●状态机(state machine)行为模型元素= 交互+ 状态机●交互●它是系统内一系列的对象之间互相交换消息的行为。
●消息代表软件系统内两个对象中一个对象向另一个对象发出的执行某种操作的请求。
●交互描述了一系列的对象为完成某一项任务而联合采取的一系列的行动,其中包括●这些行动在时间上的顺序,以及●为执行这些动作序列,对象之间所发生的语义上的联系。
●所以,消息是描述交互的一个重要手段。
●消息的图形表示:●在模型图上,消息被表示为一个箭头(下图)。
display消息●状态机:●状态机是描述一个对象的动态特性的有效手段●它描述的是对象在其生命周期内,在响应外界的事件的过程中,自身的状态的变化过程。
Waiting状态●状态机包括●对象状态(上图2.5)●事件●由事件引起的状态之间的变迁●以及变迁发生的同时对象所执行的动作(3)、成组模型元素●分治的原则:●在为复杂的软件系统建模的时候,将大的问题分解为多个子问题分别描述和解决。
●UML提供了支持分治原则的语言成份,●成组模型元素(grouping things)●成组模型元素只有一类,即●模型包(package)。
●模型包一个通用的手段●用来组织多种语言成份,其中可包含:●结构模型元素●行为模型元素●成组模型元素自身●都可以置于模型包中。
UML基础教程(很全面的教材)(PDF)
UML
-2-
目录
5.4对消息标签的详细讲解 5.5协作图例子 5.6协作图与顺序图的区别和联系 5.7练习题
6. 状态图
6.1状态图概要 6.2状态图的组成 6.3状态图中的事物及解释 6.4状态的可选活动表 6.5简单的例子:对象的状态图 6.6复杂的例子:网上银行登陆系统 6.7练习
7. 活动图
※ 协作图的一个用途是表示一个类操作的实现
1.5.6 状态图(State Chart Diagram)
※ 状态图是一个类对象所可能经历的所有历程的 模型图。状态图由对象的各个状态和连接这些 状态的转换组成
初始状态
assigned
to
subscription
time out 状态
Available
lock
UML 基础教程
UML
-1-
目录
1. 前言
1.1前言 1.2UML概述 1.3UML事物 1.4UML关系 1.5各UML图及特征 1.6各UML图的关系 1.7UML语法 1.8习题
2. 用例图
2.1用例图概要 2.2用例图中的事物及解释 2.3用例图中的关系及解释 2.4例子 2.5习题
3. 类图
UML
-4-
1. 前言
1.3 UML事物
UML包含4种事物:构件事物 行为事物 分组事物 注释事物 1.3.1 构件事物: UML模型的静态部分,描述概念或物理元素
它包括以下几种:
类:具有相同属性相同操作 相同关系相同语义的对象的描述 接口:描述元素的外部可见行为,即服务集合的定义说明 协作:描述了一组事物间的相互作用的集合 用例:代表一个系统或系统的一部分行为,是一组动作序列的集合 构件:系统中物理存在,可替换的部件 节点:运行时存在的物理元素 另外,参与者、信号应用、文档库、页表等都是上述基本事物的变体
课件—UML系统建模与分析设计1精品文档
2.软件开发
(1)概要设计 建立系统总体结构和各模块之间的关系; 定义各个功能摸块的接口; 设计全局数据库或数据结构; 规定设计约束; 制定组装测试计划。
(2)详细设计 对概要设计进行细化; 建立文档资料。
UML系统建模与分析设计
24
1.4.2 模块化软件开发方法
(1)模块可分解性。 (2)模块可组装性。 (3)模块可理解性。 (4)模块连续性。 (5)模块保护。
2019/10/7
UML系统建模与分析设计
25
1.4.3 面向数据结构软件开发方法
1.建立JSD的系统进程模型 2.JSD方法的步骤
(1)JSD需求分析步骤 标识系统中的实体与相应动作; 生成实体结构图; 初建系统模型。
UML系统建模与分析设计
4
2.软件的分类
(1)按软件的功能划分 系统软件。 支撑软件。 应用软件。
(2)按软件的规模划分 微型软件。 小型软件。 中型软件。 大型甚至超大型软件。
(3)按软件工作方式划分 实时处理软件。 分时软件。 交互式软件。 批处理软件。
2019/10/7
UML系统建模与分析设计
综合考虑以下几方面因素: 人员素质。 时间进度。 掌握资源。 可行性。 领域知识。
从四个方面评价: 技术特征。 使用特征。 管理特征。 经济特征。
2019/10/7
UML系统建模与分析设计
30
1.5 面向对象软件开发方法简介
特点: (1)使人们更好地认识客观世界 (2)能很好地适应需求变化 (3)容易实现软件复用 (4)系统易于维护和修改
UML建模培训解析
典型开发生命周期
瀑布型开发 迭代型开发
实现 设计 分析
测试
需求调查
瀑布型 以线性顺序执行软件开 发的各个阶段
迭代型
对系统进行分割,逐步完善整个系统 利用UML进行的面向对象开发,主要采用迭代型
需求调查
分析 设计 实现 测试
需求调查
分析 设计 实现 测试
需求调查
分析 设计 实现 测试
对象和类
对象的概念
对象具有属性和行为 对象具有状态 对象具有唯一可识别性
类的概念
类是将对象的共性进行抽象化之后 形成 对象是类实例化之后形成
类的例子
共同属性
C语言编程
张三 人民出版社
书名 类型 作者 出版社 借书 还书
共同操作
软件工程
李四 电子出版社
类 类 类 数据结构
插卡 输入口令 指定金额
使用ATM机 系统
管理存款
顾客 顾客
存钱
顾客 取钱
取钱
关联
参与者与用例之间的关联
表示参与者与用例之间存在某种通信 与某个参与者相关联的所有用例,都和另一个参与者相关联
参与者之间的泛化关系
用例之间的泛化关系
借书
会员 还书 VIP资格借书 VIP会员
包含关系(用<<include>>表示) 当可以从两个或两个以上的原始用例中 提取公共行为,或者发现能够使用一个组件 来实现某一个用例的部分功能时,可以使用 包含关系来表示它们。
图书
网上书店系统中检 索数据用例的顺序 图
UML建模培训教材(Doc格式)
第二章统一建模语言简介1、U ML和软件体系结构(1)UML是UML是用于描绘软件蓝图的标准语言。
●建模的原则:●准确、分层、分治、标准●统一建模语言UML就是满足这四个原则的建模语言。
●UML是用于描绘软件蓝图的标准语言。
●它可用于对软件密集型系统进行●视化●说明●建造●建档。
●UML是用于描绘软件蓝图的标准语言。
●UML是蓝图:●支持视化:●UML包括一组明确定义的标准图符●描述软件产品生产活动中需要交流的各种内容。
●软件开发的所有相关人员,通过图符能了解和表达需要交流的内容。
●支持建模●蓝图是模型的表达●UML是标准语言●支持说明,建造和建档。
●生产软件产品, 需要对此产品进行说明●说明需要标准化●UML是一种语言●意味着UML是以标准化的形式,表达这些说明的建模工具。
●它以标准化的方式,完成对软件的●市场需求的说明●功能的说明●运行原理的说明●内部结构的说明●对外接口的说明●及其实现方式的说明,●UML是一种语言●意味着它是标准化的●因此,用UML表达的软件模型,可以直接和某种设计语言建立映射关系,●通过UML建模工具,可以UML模型转换为对应的程序设计语言源代码框架。
●UML就是通过此种方式,支持软件系统的建造的●UML是一种语言●意味着它是标准化的●因此也能有效的支持软件生产的建档(documentation)●UML有标准的描述手段(格式)来表达和组织这些内容●UML支持软件制成品的建档,包括:●开发活动中产生的用于控制、评测(measuring)、交流的各种中间产物, 如:●需求分析●软件体系结构(architecture)●结构设计●行为设计●源代码/项目计划/测试计划/发行版本等等。
● e.g.:●用例视图来描述需求分析●用逻辑视图来描述结构设计, 等等。
●作为描绘软件蓝图的语言●UML定义了一系列的图符来描述软件密集型的系统●这些图符有严格的语义和清晰的语法。
●这些图符及其背后的语义和语法,组成了一个标准,●使得软件开发的所有相关人员都能用它来对软件系统的各个侧面进行描述。
UML_RationalROSE2003培训教材版
课程登记问题描述
• 导师需要随时访问系统,知道有那一门 课程需要任教。他也可以了解他的课有 那些学生
• 每学期开始,学生有一段试听时间,学 生可以改变所选课程内容。在这段时间 学生必须可以访问系统随时更改课程选 项
RATIONAL
Use Cases
RATIONAL
主题:Use Cases
– Use Case图 • 包、actors、use case和关系
– 相互作用图(序列图或协同图) • 对象和消息
RATIONAL
Use Case图形
• Use Case图形描述了一个系统应该执行的什么 或应该有什么外部系统
– 它描述了存在的actors(外部系统)、use case(该 系统应该执行什么)以及它们的关系
进行其它选择
• 建立课程表 学生输入4个主课程号和2个候补课程号。学生 提出课程要求,然后:
1.检查该课程是否满足学生要求 2.如果该课程开放,将学生加入课程名单
• 其它流程 如果主课程无效,则系统将替换另一课程
RATIONAL
课程登记实例时间流程
• 浏览课程表
– 学生对学期所选课程的要求信息,以及学生 所选课程信息,包括:课程名称、课程号、 每周上课次数、上课时间和上课地点等
– 组件图可以代表系统中部分或全部的组件结构
• 组件图形描述了
–包 – 组件 – 依赖关系
RATIONAL
拓扑视图
• 在拓扑视图中的元素可以在拓扑图形中被浏览
– 拓扑视图只能包含一个拓扑图形
• 拓扑视图描述了一个系统在物理设计阶段进程 处理的分配情况
• 进程图描述了
– 节点 – 连接
RATIONAL
公司UML培训课件
公司UML培训课件xx年xx月xx日•UML基础•静态建模•动态建模•物理建模目•UML工具与应用•UML案例分析录01 UML基础UML定义与特点01UML是一种用于描述软件系统的标准化建模语言,它通过统一的符号和工具提供了一种方式,使得软件系统的设计者能够更好地理解和描述系统的结构、行为和组织。
02UML是一种图形化建模语言,它使用简单的图形符号来表示软件系统的结构和组件之间的关系,使得系统模型更容易理解和分析。
03UML具有以下特点:简单易学、表达力强、易于理解、可重用性高、可扩展性等。
UML是一种基于面向对象技术的建模语言,它的起源可以追溯到1990年代初期的面向对象技术热潮。
从1997年开始,UML经历了三个主要版本的发展:UML 1.0、UML 1.1和UML 2.0。
UML已经成为软件开发领域广泛使用的标准建模语言之一。
1994年,Grady Booch、Jim Rumbaugh和Ivar Jacobson联手开发了UML 0.9,奠定了UML的基础。
UML的历史与发展UML的主要组成•UML由类图、对象图、用例图、顺序图、状态图、活动图、组件图和部署图等8种基本图表组成。
•类图是UML中最基本的图表之一,它用于描述系统中类的静态结构。
•对象图是类图的实例化,它描述了系统在某个时间点的状态。
•用例图是UML中使用最广泛的图表之一,它用于描述系统功能和用户需求之间的关系。
•顺序图是UML中最重要的图表之一,它用于描述系统中对象之间的交互关系。
•状态图是用于描述系统中对象的状态转换的图表。
•活动图是用于描述系统中业务流程或操作的图表。
•组件图和部署图则用于描述系统的物理结构和部署情况。
02静态建模类图是UML中最常用的静态建模工具,用于描述系统中类的内部结构以及类与类之间的关系。
详细描述类图通常由类、接口、属性和方法等元素组成,其中类是现实世界中对象的抽象,接口则是类的一种特殊形式,属性描述了类的状态,方法描述了类的行为。
UML基础培训(第一讲)
课程内容总结
软件开发方法和过程回顾
结构化 vs OO RUP vs 瀑布
OOAD和UML UML快速开始->骰子游戏 UML介绍
UML中的重要概念和目标 认识各类UML图形
课后练习
• 在一个银行的开户系统中有哪些领域 模型?它们的交互是怎样的?试用 UML表达这个模型和交互。
图解RUP
图解RUP(二)
RUP的精髓
•
•
迭代的开发软件
使用基于构件的体系结构
•
可视化软件建模
软件开发过程之:瀑布模型
全称为瀑布生命周期模型
核心思想是按工序将问题化简
上一项活动的工作成果是下一项活动的 输入 试图在编码之前定义完所有需求
而且通常于编码之前创建出完整的设计
对于经常变化的项目而言,瀑布模型毫 无价值
OOAD和UML UML快速开始->骰子游戏 UML介绍
UML中的重要概念 认识各类UML图形
软件开发过程之:RUP
RUP全称统一过程(Unified Process)
是一种流行的构造面向对象软件系统的 迭代式的开发过程。 已经被业界广泛采用。
RUP进一步参考: /developerw orks/cn/rational/r-rupbp/
UML是“形”,OOAD是“神”。
本次课程内容
软件开发方法和过程回顾
结构化vs OO RUP vs 瀑布
OOAD和UML UML快速开始->骰子游戏 UML介绍
UML中的重要概念 认识各类UML图形
游戏说明
软件模拟游戏者投掷两个骰子
如果总点数是7,则赢得游戏
(完整word版)UML基础与Rose建模复习资料
UML基础与Rose建模复习资料1-4章一、主要内容1、对象与类的定义对象:是面向对象系统的基本构造块,是一些相关的变量和方法的软件集。
(对象经常用于建立对现实世界中的一些基本构造块)注:客观世界里的任何实体都可以被称为对象。
对象可以是具体的、有形的物,也可以是无形的事物或概念。
对象是问题域或实现域中某些事物的一个抽象。
对象是一个封装数据属性和操作行为的实体。
类:是具有相同属性和操作的一组对象的组合。
也就是说,抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。
2、面向对象的基本特征:1)抽象:抽象忽略了事件中与当前目标无关的非本质特征,强调与当前事物相关的特征,并将事物正确的归类,得出事物的抽象模型,并且为对象的重用提供了保障2)封装:就是把对象的状态和行为绑到一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的内部细节。
3)继承:是指特殊类的对象拥有其一般类的属性和行为。
4)多态性:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
3、UML包含的视图以及这些视图都对应的图UML中主要视图有:静态视图、用例视图、交互视图、状态机视图、活动视图、物理视图、模型管理视图对应的图如下图所示4、UML包含的图以及图的作用在下面的各章节中都分别有总结,这里就不总结5、UML中模型元素的主要关系UML中主要包含4种关系:依赖、关联、泛化、实现依赖:指的是两个事物之间的语义,当其中一个事物(独立的事物)发生变化就会影响另外一个事物(依赖事物)的语义。
关联:是一种事物之间的结构关系,用它来描述一组链,链是对象之间的连接。
泛化:事物之间的一种特殊/一般关系,特殊原子(子元素)的对象,也就是我们在面向对象学中常常提起的继承。
实现:实现关系也是UML元素之间的一种语义关系,它描述了一组操作的规约和一组对操作的具体实现之间的语义关系。
6、对象约束语言的定义对象约束语言(OCL)是一种能够使用工具进行解释的表达UML约束的标准方法。
UML全程建模培训1
方法 方法就是对象所能执行的 操作,也就是类中所定义的服务。 属性。属性就是类中所定义的数 据。 封装。把数据和实现操作的代码 集中起来放在对象的内部。 继承。是子类自动地共享基类中 定义的数据和方法的机制,而不 必重复定义他们。
类A A的操作 A的变量
A实例a1 类A A的实例变量
类B:A的子类 从A继承特性 B的操作 B的变量
面向对象方法学可以表示为:
OO=对象+类+继承+消息
面向对象方法学的优点
与; 系统稳定性好;以对象为中心构造软件系统, 当系统的功能发生变化时,并不会引起软件结 构的整体变化; 可重用性好;通过实例或者继承机制比较方便 地重用对象类来构造软件系统; 较易开发大型软件产品;可以把一个大型软件 产品分解成一系列本质上相互独立的小产品来 处理,降低了开发难度,而且也使得管理变得 容易;
B的实例b1 类B 继承来的A实例变量 B的实例变量
多态性。多态性是指子类对象可 以象父类对象那样使用,同样的消 息既可以发送给父类对象也可以发 送给子类对象。 重载。函数重载和运算符重载。
针对单继承的调整:分解多继承, 针对单继承的调整:分解多继承, 采用整体/ 采用整体/部分结构映射
针对单继承的调整:分解多继承, 针对单继承的调整:分解多继承, 展平为单继承
软件固有的复杂性 计算机体系结构的特点; 软件是一种逻辑产品; 软件的不断变化性; 缺乏约束性;
控制软件复杂度的方法 分解 抽象 模块化 信息屏蔽
面向对象方法学要点 尽可能模拟人的思维习惯,使软件开发与人解 决问题的方法一致;以对象为核心; 面向对象方法学四个要点: 任何事物都是由对象组成; 把所有对象都划分成各种对象类;每个对象类 都定义了一组数据和一组方法; 按照子类和父类的关系把若干个对象类组成一 个层次结构,引入继承机制; 对象之间通信通过消息传递。
UML培训教程v1.5
2013-7-14
1
1.概述
• UML代表Unified Modeling Language(统 一建模语言) • UML是一种对软件系统进行可视化表示、 描述、构造和说明的标准建模语言。 • UML:面向对象的可视化建模语言。
2013-7-14
2
2.面向对象技术的基本概念、 基本原理及相关的UML符号
2013-7-14
7
2.2.1 抽象性(Abstraction)
• 定义:抽象是通过特定的实例或例子抽取 共同性质以后形成概念的过程。它强调主 要性质,忽略次要性质。
Auto Capacity:Integer Speed:Integer
Drive() Stop()
2013-7-14
8
2.2.2 封装性(Encapsulation)
• • • • • • • 2.1核心概念:对象和类 2.2基本原理:抽象和封装 2.3基本原理:继承 2.4基本原理:多态 2.5基本概念:接口、抽象类和构件 2.6UML简介 2.7UML的应用
3
2013-7-14
2.1.1对象(Object)
• 定义:对象是由数据及其操作所构成的封 装体。 • 特性: (1)每一个对象必须有一个名字以区别于其 他对象;(对象的标识Identity) (2)用状态来描述对象的某些特征;(对象 的状态State) (3)有一组操作,每一个操作决定对象的一 种行为;(对象的行为Behavior)
2013-7-14
352.6.3.B 动源自行为图• 1.用况图-组织系统的行为 • 2.顺序图-注重于消息的时间次序 • 3.协作图-注重于收发消息的对象的结构组 织 • 4.状态图-注重于由事件驱动的系统的变化 状态 • 5.活动图-注重于从活动到活动的控制流 • 6.稳健性分析图-注重对象之间的关系
