UML建模培训教材(Doc格式)
- 格式:doc
- 大小:612.50 KB
- 文档页数:45
第二章统一建模语言简介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培训课件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基础与Rose建模复习资料1-4章一、主要内容1、对象与类的定义对象:是面向对象系统的基本构造块,是一些相关的变量和方法的软件集。
(对象经常用于建立对现实世界中的一些基本构造块)注:客观世界里的任何实体都可以被称为对象。
对象可以是具体的、有形的物,也可以是无形的事物或概念。
对象是问题域或实现域中某些事物的一个抽象。
对象是一个封装数据属性和操作行为的实体。
类:是具有相同属性和操作的一组对象的组合。
也就是说,抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。
2、面向对象的基本特征:1)抽象:抽象忽略了事件中与当前目标无关的非本质特征,强调与当前事物相关的特征,并将事物正确的归类,得出事物的抽象模型,并且为对象的重用提供了保障2)封装:就是把对象的状态和行为绑到一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的内部细节。
3)继承:是指特殊类的对象拥有其一般类的属性和行为。
4)多态性:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
3、UML包含的视图以及这些视图都对应的图UML中主要视图有:静态视图、用例视图、交互视图、状态机视图、活动视图、物理视图、模型管理视图对应的图如下图所示4、UML包含的图以及图的作用在下面的各章节中都分别有总结,这里就不总结5、UML中模型元素的主要关系UML中主要包含4种关系:依赖、关联、泛化、实现依赖:指的是两个事物之间的语义,当其中一个事物(独立的事物)发生变化就会影响另外一个事物(依赖事物)的语义。
关联:是一种事物之间的结构关系,用它来描述一组链,链是对象之间的连接。
泛化:事物之间的一种特殊/一般关系,特殊原子(子元素)的对象,也就是我们在面向对象学中常常提起的继承。
实现:实现关系也是UML元素之间的一种语义关系,它描述了一组操作的规约和一组对操作的具体实现之间的语义关系。
6、对象约束语言的定义对象约束语言(OCL)是一种能够使用工具进行解释的表达UML约束的标准方法。
GDOU-B-11-213《可视化建模与UML》课程教学大纲课程简介课程简介:本课程主要介绍统一建模语言UML,目的是了解面向对象技术的一些基本概念,掌握面向对象的分析和设计方法。
课程的内容主要是介绍了UML的概念和表示法,构架建模和UML扩展机制,软件开发周期(SDLC)和各种SDLC模型以及静态建模和动态建模知识,从而使学生们了解如何从需求分析过渡到软件开发的设计阶段。
课程大纲一、课程的性质与任务:本课程为计算机软件工程类的专业限选课程,主要介绍统一建模语言UML和一些相关的建模知识。
目的使得学生掌握一些软件开发和设计过程中有效的建模知识和方法,同时使得学生掌握在Rose环境下用UML分析和设计,学会使用UML建模工具,为系统和科学的软件开发打下良好的基础。
同时培养学生的分析、设计能力和工程思想。
二、课程的目的与基本要求:1、掌握UML的基本概念、术语;2、理解软件开发周期SDLC和各种SDLC模型;3、掌握UML的表示法;4、理解静态建模和动态建模5、理解构架建模6、掌握绘制各种类型的图,例如用例图,类图,协作图,时序图等等。
三、面向专业:软件工程四、先修课程:软件工程,面向对象程序设计五、本课程与其它课程的联系:先修课程:软件工程,面向对象的程序设计;UML建模语言和软件工程的知识密不可分。
UML建模工具是用来表达软件工程知识的有效方法。
而且UML使用的是面向对象的分析和设计方法,所以应该具备一定的面向对象程序设计的思想,所以UML的先修课程是软件工程和面向对象的程序设计。
六、教学内容安排、要求、学时分配及作业:第一章:UML概述(2学时)1.面向对象建模的概念(C)2.UML的起源和发展(C)3.UML的体系结构(B)4.用户视图(B)第二章:结构视图(2学时)1.识别类的行为(B)2.识别类的属性(B)3.创建类图(A)4.创建对象图(A)第三章:表示系统的行为,实现及环境视图(4学时)1.理解系统的行为视图(B)系统的静态和动态(B);图的类型(B);协作图(B);时序图(B);状态图(B);活动图(B)2.理解系统的实现视图(B)系统实现视图的定义(B);构件(B);构件图(B);3.理解系统的环境视图(B)系统环境视图的定义(B);部署图(B)第四章:面向对象的分析与设计(OOAD)(2学时)1.理解软件开发生命周期(B)SDLC各阶段概述(C);SDLC模型(B);线形模型(B);迭代模型(B);增量模型(C)。
第二章统一建模语言简介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)。
●模型包一个通用的手段●用来组织多种语言成份,其中可包含:●结构模型元素●行为模型元素●成组模型元素自身●都可以置于模型包中。