uml建模期末考试总结
uml建模期末考试总结(精选5篇)
uml建模期末考试总结 第1篇
UML建模的要点总结
预备知识:
一、UML的特性与发展现状
UML是一种Language(语言)
UML是一种Modeling(建模)Language UML是Unified(统一)Modeling Language
1、已进入全面应用阶段的事实标准
2、应用领域正在逐渐扩展,包括嵌入式系统建模、业务建模、流程建模等多个领域
3、成为“产生式编程”的重要支持技术:MDA、可执行UML等
二、建模的目的与原则
1、帮助我们按照实际情况或按我们需要的样式对系统进行可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系统构造的模板;对我们所做出的决策进行文档化。
2、仅当需要模型时,才构建它。
3、选择要创建什么模型对如何动手解决问题和如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度级别上表示;最好的模型是与现实相联系的;单个模型是不充分的。对每个重要的系统最好用一组几乎独立的模型去处理。
三、谁应该建模
1、业务建模:以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与
2、需求模型:以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与
3、设计模型:高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。详细设计模型则以资深开发人员为主,架构师提供指导。
4、实现模型:以资深开发人员(设计人员)为主,架构师提供总体指导。
5、数据库模型:以数据库开发人员为主,架构师提供指导,资深开发人员(设计人员)予以配合。
正式开始
UML组成,三部分(构造块、规则、公共机制),关系如下图所示:
一、构造块
1、构造块是对模型中最具有代表性的成分的抽象
建模元素:UML中的名词,它是模型基本物理元素。
行为元素:UML中的动词,它是模型中的动态部分,是一种跨越时间、空间的行为。
分组元素:UML中的容器,用来组织模型,使模型更加的结构化。
注释元素:UML中的解释部分,和代码中的注释语句一样,是用来描述模型的。
1.1、建模元素
类(class)和对象(object)
接口(interface)
主动类(active class)
用例(use case)
协作(collaboration)
构件(component)
节点(node)
类(class)和对象(object)
类是对一组具有相同属性、相同操作、相同关系和相同语义的对象的抽象
UML中类是用一个矩形表示的,它包含三个区域,最上面是类名、中间是类的属性、最下面是类的方法
对象则是类的一个实例(object is a Instance of Class)
接口(interface)
接口是描述某个类或构件的一个服务操作集
主动类(active class)
主动类实际上是一种特殊的类。引用它的原因,实际上是在开发中需要有一些类能够起到 启动控制活动的作用
主动类是指其对象至少拥有一个进 程或线程,能够启动控制活动的类
用例(use case)
用例是著名的大师Ivar Jacobson首先提出的,现已经成为了面向对象软件开发中一个需求分析的最常用工具
用例实例是在系统中执行的一系列动作,这些动作将生成特定执行者可见的价值结果。一个 用例定义一组用例实例。
协作(collaboration)
协作定义了一个交互,它是由一组共同工作以提供某协作行为的角色和其他元素构 成的一个群体。
对于某个用例的实现就可 以表示为一个协作
构件(component)
在实际的软件系统中,有许多要比“类”更大的实体,例如一个COM组件、一个DLL文件、一个JavaBeans、一个执行文件等等。为了更好地对在UML模型中对它们进行表示,就引入了构件(也译为组件)
构件是系统设计的一个模块化部分,它隐藏了内部的实现,对外提供了一组外部接口。在系统中满足相同接口的组件可以自由地替换
节点(node)
为了能够有效地对部署的结构进行建模,UML引入了节点这一概念,它可以用来描述实际的PC机、打印机、服务器等软件运行的基础硬件
节点是运行时存在的物理元素,它表示了一种可计算的资源,通常至少有存储空间和处理能力
1.2、行为元素
交互(interaction): 是在特定语境中,共同完成某个任务的一组对象之间交换的信息集合
交互的表示法很简单,就是一条有向直线,并在上面标有操作名
状态机(state machine):是一个对象或交互在生命周期内响应事件所经历的状态序列
在UML模型中将状态画为一个圆 角矩形,并在矩形内写出状态名称及其子状态
1.3、分组元素
对于一个中大型的软件系统而言,通常会包含大量的类,因此也就会存在大量的结构事物、行为事物,为了能够更加有效地对其进行整合,生成或简或繁、或宏观或微观的模型,就需要对其进行分组。在UML中,提供了“包(Package)”来完成这一目标
1.4、注释元素
结构事物是模型的主要构造块,行为事物则是补充了模型中的动态部分,分组事物而是用来更好地组织模型,似乎已经很完整了。而注释事物则是用来锦上添花的,它是用来在UML模型上添加适当的解释部分
2、关系
UML模型的关系比较多,下图
2.1 关联关系
关联(Association)表示两个类之间存在某种语义上的联系。关联关系提供了通信的路径,它是所有关系中最通用、语义最弱的。
在UML中,使用一条实线来表示关联关系
在关联关系中,有两种比较特殊的关系:聚合和组合
聚合关系:聚合(Aggregation)是一种特殊形式的关联。聚合表示类之间的关系是整体与部分的关系
如果发现“部分”类的存在,是完全依赖于“整体”类的,那么就应该使用“组合”关系来描述
组合是聚合的变种,加入了一些重要的语义。也就是说,在一个组合关系中一个对象一次就只是一个组合的一部分,“整体”负责“部分”的创建和破坏,当“整体”被破坏时,“部分”也随之消失
聚合就像汽车和车胎,汽车坏了胎还可以用。组合就像公司和下属部门,公司倒闭了部门也就不存在了!
2.2 泛化、实现与依赖
泛化关系描述了一般事物与该事物中的特殊种类之间的关系,也就是父类与子类之间的关系。
实现关系是用来规定接口和实现接口的类或组件之间的关系。接口是操作的集合,这些操作用于规定类或组件的服务。
有两个元素X、Y,如果修改元素X的定义可能会引起对另一个元素Y的定义的修改,则称元素Y依赖(Dependency)于元素X。
二、规则
命名:也就是为事物、关系和图起名字。和任何语言一样,名字都是一个标识符
范围:与类的作用域相似.可见性:Public,Protected,Private,Package
三、UML公共机制
1、规格描述
在图形表示法的每个部分后面都有一个规格描述(也称为详述),它用来对构造块的语法和语义进行文字叙述。这种构思,也就使可视化视图和文字视图的分离 :
2、UML修饰与通用划分
在为了更好的表示这些细节,UML中还提供了一些修饰符号,例如不同可视性的符号、用斜体字表示抽象类
UML通用划分:
1)类与对象的划分:类是一种抽象,对象是一个具体的实例
2)接口与实现的分离:接口是一种声明、是一个契约,也是服务的入口;实现则是负责实施接口提供的契约
3、UML扩展机制
这部分不容易描述,待改
构造型:在实际的建模过程中,可能会需要定义一些特定于某个领域或某个系统的构造块
标记值则是用来为事物添加新特性的。标记值的表示方法是用形如“{标记信息}”的字符串
约束是用来增加新的语义或改变已存在规则的一种机制(自由文本和OCL两种表示法)。约束的表示法和标记值法类似,都是使用花括号括起来的串来表示,不过它是不能够放在元素中的,而是放在相关的元素附近。
4、UML视图和图
图名
功能
备注
类图
描述类、类的特性以及类之间的关系
对象图
描述一个时间点上系统中各个对象的一个快照
复合结构图
描述类的运行时刻的分解
构件图
描述构件的结构与连接
部署图
描述在各个节点上的部署
包图
描述编译时的层次结构
用例图
描述用户与系统如何交互
活动图
描述过程行为与并行行为
状态机图
描述事件如何改变对象生命周期
顺序图
描述对象之间的交互,重点在强调顺序
通信图
描述对象之间的交互,重点在于连接
定时图
描述对象之间的交互,重点在于定时
交互概观图
是一种顺序图与活动图的混合附:开发过程与图的对应关系
本文来自CSDN
博
客,转
载
请
标http://blog.csdn.net/Mac_cm/archive/2009/07/27/4384704.aspx
UML 1原有 UML 1非正式图
UML 2.0新增
UML 1原有
UML 1原有
UML中非正式图 UML 1原有 UML 1原有 UML 1原有 UML 1原有 UML 1中的协作图 UML 2.0 新增 UML 2.0新增 明
出
处
:
uml建模期末考试总结 第2篇
一.UML基础知识 1.什么是UML? UML是统一建模语言(UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。2.什么是正向工程,什么是逆向工程?
正向过程:将模型转化为代码 逆向工程:将代码转化为模型
3.给出UML中关联关系,实现关系,泛化关系、扩展关系和依赖关系的定义和表示法。
关联关系:一种结构化关系,用于表示一类对象与另一类对象之间有联系。通常将一个类的对象作为另一个类的属性。
实现关系:描述一个元素实现另一个元素。
泛化关系:也称为继承关系,意味着一个元素是另一个元素的特例
扩展关系:是一种依赖关系,指定一个用例可以增强另一个用例的功能,是把新的行为插入到已有用例中的方法。
依赖关系:描述一个元素对另一个元素的依附。聚合关系:描述元素之间部分与整体的关系。
二.用例图
1.请解释何为用例图?(--)
从用户角度来描述系统功能,描述系统的参与者与系统用例之间的关系。2.请解释主要参与者和次要参与者? 主要参与者:使用系统较频繁,业务量较大的用户。
次要参与者:用来给用例提供某些服务,使用系统的次要功能。
区分不应该以参与者在使用系统时的权限为一句,以使用系统时的业务量为依据。3.请解释在用例图中“包含”和“扩展”关系的含义。
包含关系:一个用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。
扩展关系:一种依赖关系,指定了一个用例可以增强另一个用例的功能,是把新的行为插入到已有用例中的方法。
4.请给出用例图中的4个基本组成元素。
用例:用户期望系统具备的功能,定义系统的一个功能模块,不显示内部结构。参与者:系统服务的对象。
系统:为用户执行某类功能的一个或多个软件构件。关系(关联关系):用例和参与者之间的关联或通信,通信是双向的。5.参与者表示什么,参与者怎么表示?
参与者是系统外的一个实体,它代表了与系统交互的用户、设备或另一个系统。参与者是系统服务的对象,通过向系统输入信息或者系统为参与者提供信息来进行交互,以实现系统功能。
用人形符号和参与者的名称表示。
三.类图
1.什么是类,解释类的组成部分?
类是对资源的定义,它所包含的信息主要用来描述某种类型实体的特征以及对该类型实体的使用方法。
名称:类的名字,最好能够反映类所代表的问题域中的概念。
属性:描述类在软件系统中代表的事物(即对象)所具备的特性,该类所有对象共有。操作:描述处理数据的具体方法,相当于一个服务的实现,可以看做是类的接口。2.How do we represent private, public and protected in class diagrams? +表示public;—表示private;#表示protected 3.请解释类图中“aggregation”和“composition”的含义。
聚合关系(aggregation):表明一个类实际上拥有但可能共享另一个类的对象,特殊的关联关系,表明整体与部分的关系,且部分可以离开整体而单独存在。实线+空心菱形表示
组合关系(composition):特殊的关联关系,特殊的聚合关系,要求普通的聚合关系中代表整体的对象负责代表部分对象的生命周期,部分不能离开整体而单独存在。实线+实心菱形
4.如何在类图中表示参数化类的概念?
根据占位符或者参数来定义类,而不用说明属性、方法返回值和方法参数的实际类型。5.请解释关联类的概念。
关联类就是与一个关联关系相连的类,对应一个实际的关联,用关联类表示该关联的附加信息,描述的是关系。6.请列出类图需求分析的基本步骤:
识别类。
识别出类的主要属性。 描绘出类之间的关系。 对各类进行分析、抽象、整理。
7.类与类之间的主要关系有哪些?请解释这些关系的含义。
泛化关系:一种继承关系,表示一般与特殊的关系,指定子类如何特化父类的特征行为。依赖关系:描述模型元素之间语义上的关系,其中一个元素的改变可能会影响或提供消息给另一个元素。
实现关系:用于规格说明与其实现之间的关系,指定两个实体之间的一个合同,一个实体定义一个合同,另一个实体履行该合同。
关联关系:定义了对象之间的关系准则,类实际上以属性的形式包含对其他类的一个或多个对象的引用。
四.顺序图
1.请解释顺序图的含义?(--)
代表了一个相互作用、在以时间为次序的对象之间的通信集合,演示某个用例最终产生的所有路径
2.请解释顺序图中的同步消息和异步消息,如何在顺序图中表示?
同步消息:在发送消息的对象进行另一个活动之前需要等待返回的回应消息。消息被平行地置于对象的生命线之间。
异步消息:发送消息的对象不用等待回应的返回消息,即可开始另一个活动。3.在顺序图中如何表示对象的终止?
发送destroys消息到被删除对象,在被销毁对象的生命线最下端放置一个x字符。4.请解释顺序图中生命线,激活框的含义。
对象在垂直方向向下拖出的长虚线称为生命线,是一个时间线,表现了对象存在的时段。激活框在对象的生命线上,包含一个矩形,表示对象处于激活状态,处于激活状态的对象正在执行某个任务。激活期的垂直长度粗略地表示信息交互持续时间。5.请解释顺序图中交互片段的含义?解释说明loop, alt, opt的具体含义。
一个交互片段可以包含多个区域,每个区域拥有一个监护条件和一个复合语句。Loop:循环,重复执行多次
Alt:行为选择,多个域表示多个条件,一次只能有一个操作域执行。Opt:简化的alt,仅有if无else 6.UML的交互图中有哪4种图?请解释说明。
顺序图:代表了一个相互作用,在以时间为次序的对象之间的通信集合。通信图:显示了某组对象为了一个系统事件而与另一组对象进行写作的交互图。定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序 交互概述图:是交互图和活动图的混合物 7.根据描述,绘制出顺序图。8.什么是通信图?
显示某组对象为了一个系统时间而与另一组对象进行协作的交互图,强调对象在交互行为中的承担的角色。9.通信图和顺序图的区别?
语义上等价,通信图的角色和顺序图的对象是一一对应的,通信图上的各对象上的协作关系和顺序图上的消息传递是一一对应的。从不同的观点反应系统的交互模型。顺序图强调交互的时间顺序,通信图强调交互的情况和交互的对象的整体组织和上下文关系。
顺序图按时间顺序布图,通信图按空间组织布图。五.活动图
1.什么是活动图?活动图的目的?
活动图本质上就是流程图,显示链接在一起的高级动作,代表系统中发生的操作流程。用于描述系统的工作流程和并发行为,用于展现参与行为的类所进行的各种活动的顺序关系。
2.如何在活动图里面表示动作状态?
使用平滑的圆角矩形表示,动作状态所表示的动作写在矩形内部。3.如何在活动图中表示分叉,汇合?
分叉和汇合的标记符都是黑粗横线。
分叉用于将一个控制流分为两个或多个并发运行的分支。
汇合代表两个或多个并发流同步发生,它将两个或者多个控制流合并到一起形成一个单向控制流。
4.请解释活动图中发送信号、接收信号和时间信号的含义?请画出其表示法。
发送信号:从输入信息创建一个信号实例,然后发送到目标对象。接收信号:等待满足特定条件的某个事件发生。时间信号:表示随着时间的流逝而自动发出的信号。
5.活动图中泳道的含义。
将活动图划分为若干组,每一组指定给负责这组活动的业务组织,即对象。六.状态机图
1.什么是状态机图?(状态机图的目的?)
着重于对一个模型元素的可能的状态及其转移建立模型。用于描述类的一个对象在其生存期间的行为。
2.简要说明状态机图中的主要标记符号:状态、转移、决策点。
状态:指对象某个时刻存在的方式
转移:显示从一个状态到另一个状态的控制流。决策点:通过判断分组转移到各自的方向 3.如何在状态图中表示初态和终态?
七.构件图
1.请解释何为构件图。
描述软件的各种组件和它们之间的依赖关系,通过功能或位置组织在一起。
2.请解释需求接口和供给接口的含义。在UML中如何表示?
需求接口:一个类向某个接口请求服务 供给接口:一个类实现某个接口 3.如何在构件图里面表示一个构件?
左侧附有两个大小矩形的大矩形框,组件的名称位于组件图标的中央。
八.部署图
1.请解释何为部署图,部署图的目的?
用于描述系统硬件的物理拓扑结构以及在此结构上运行的软件。
2.什么是节点?在UML中如何表示节点?请说明处理器和设备之间的区别。
节点代表一个运行时计算机系统中的硬件资源,它一般都拥有内存,而且具有处理能力。节点的标记是一个立方体。
处理器是具有处理能力的节点,即能够执行组件。
设备是指不具有计算能力的节点,它们一般都是通过其接口为外部提供服务的。3.Process payments仅运行在PC客户端,它通过TCP/IP协议链接到一个服务器。服务器通过RS232端口通过一个调制解调器和远程的银行服务器系统通讯,请根据描述绘制部署图。
九.包图 1.包图的定义
包以及类所建立的图形就是包图,使用包图可以将相关元素归入一个系统。2.包图的符号 3.包图的可见性
+对所有的包都是可见的-只能对该包的子包是可视化的 # 对外包是不可视的 十.统一软件开发过程
1.什么是软件开发过程,请列举出常见的软件开发过程。
指应用与软件开发和维护当中的阶段、方法、技术、实践和相关产物的集合。Rational Unified Process(RUP)OPEN Process Object-Oriented Software Process(OOSP)Extreme Programming(XP)Catalysis
2.请给出RUP的四个阶段
初始阶段:为软件系统建立商业模型并确定系统的边界。
筹划阶段:分析问题域,建立合理的架构基础,指定项目规划,并消除项目中风险较高的因素。
构造阶段:管理资源,控制运作,优化成本,进度和质量。转换阶段:将软件产品交付给用户。
3.RUP的特点
用例驱动、以架构为中心、采用迭代和增量模型 十一. UML扩展
1.UML中有哪几种扩展机制?
2.请问标记值(Tagged value)的含义并举例说明。
3.请解释UML图中约束(Constraint)的含义,如何在图中标记约束?请举例说明。
4.在UML图中,那种语言经常用来表示约束条件?
uml建模期末考试总结 第3篇
1 设计目标
通识考试平台, 实现考试工作的网络化、无纸化和自动化。采用B/S模式设计, 主要用于网络在线考试, 可以满足3千到4千的学生在线考试的需求, 而且对服务器的配置不高, 客户端不需要设置。我可以通过强大的后台设置完成, 用户可以根据自己的需要完成考试, 基本能满足我院所有通识考试的需求。
2 UML语言
统一建模语言是一种系统开发的建模语言。该建模语言是一种定义良好、易于表达、功能强大且广泛应用。面向对象概念被融入了, 支持面向对象的分析与设计, 并且还还支持从需求分析到软件开发的整个过程。UML实质上是一个标准的图形表示法, 仅仅是一组符号而已。UML模型图形丰富、有完整的面向对象系统表现能力, 许多软件公司用作软件系统建模。UML包括视图、图和模型元素3种。[2]
2.1 视图
UML是用模型来描述系统的结构、静态特征、动态特征, 它从不同的视角为系统的架构建模形成系统的不同视图。主要有用例视图、静态视图、交互视图、实现视图、状态机视图、活动视图、物理视图和模型管理。
2.2 图
UML中提供了很多模型描述图, 作为一种可视化的UML建模语言, 它是将模型进行图形化表示。规范严格定义了各种模型元素, 包括符号, 并且有这些模型和符号的抽象语法和语义。图包括用例图、类图、顺序图、状态图、活动图、构件图和部署图。[3]
2.3 模型元素
图中使用的基本概念被称为模型元素。模型元素在图中有相应的元素符号。一般把模型元素划分为面向对象的事物的描述和对事物关系的描述。利用相关元素符号可以把模型元素直观地表示出来。运用统一建模语言 (UML) 设计院考试系统可以支持支持从需求分析, 面向对象的分析与设计以及到软件开发的全过程。
3 运用UML设计通识考试系统
3.1 系统功能描述
为了满足通识考试的需要, 首先要考虑网络数据的传输、题库的设计、评分功能的设计等。因此, 我们利用软件工程的思想, 用数据库、管理信息系统等方面的知识和技术, 构件了一个基于J2EE架构、B/S结构和MVC设计模式的考试系统。通过对系统框架结构、运行机制、技术选择等方面的分析, 在系统设计与实现部分结合统一建模语言 (UML) 来完成系统的设计和实现等核心功能。
本测试平台在充分利用最新的软件开发技术, 为了在服务器出现异常的情况下, 能尽可能保护考试数据, 并且保证考试能顺利进行, 本老师系统考虑了系统稳定性、可靠性、容错能力, 学生的考试数据能定时的上传考试服务器, 所以收工修改考试数据基本不可能。大部分的数据处理都是在服务器端, 客户端只要安装浏览器即可, 减少了客户端的成本, 从而最大可能地减少因考核系统的升级而必须进行的硬件投资。主要功能:
系统管理:对系统模块的进行设置、对用户进行授权、对系统参数进行设置, 对用户、等基础数据进行设置, 以及对在线人员的管理。系统管理主要包括:模块管理、系统设置、在线用户管理、角色管理、用户管理。
考试设计:考试设计主要包括:知识点管理、题型管理、题库管理、考试类别管理、试卷管理
考试管理:对考试、练习进行安排, 对考试、练习进行授权、对成绩进行管理。考试管理主要包括:考试安排、练习安排、成绩管理。
3.2 系统设计创新
1) 可靠的考试引擎技术, 良好的系统稳定性;
2) 灵活的组卷功能;
3) 丰富的题型支持, 全面满足通识考试需求;
4) 提供了批量录入功能:在后台提供了EXCEL批量导入、图片格式已附件上传;数学公式也可以已附件录入;
5) 所有三类考试题型全部由系统自动评分:考试结束后, 根据考试成绩发布, 用户可随时, 或者定时显示成绩。考生也可以查看自己的试卷、检测错题得原因、漏题等;
6) 考场监控功能:在考生考试时, 监考员可以查看考生班级、考试状态、答题状态等功能;
7) 良好的统计分析功能:管理员可以对考试人员分布、考试状况、考试分类等数据, 进行数据表、图等全方位的统计;
8) 防舞弊功能:采用随机取题技术、试题随机乱序技术防止考生在考试过程中舞弊, 提高考试的权威性和公正性, 能有效的避免考试舞弊情况的发生。[4]
3.3 数据库设计
本系统采用SQL数据库, 该系统的物理数据模型如下图:
根据系统的需求, 结合软件工程的思想, 引入具有多重优越性的B/S结构, 将先进的J2EE开发平台和MVC设计模式应用系统开发[5]:1) 基于J2EE平台, 使用Jsp+Struts2.0+Hibernate构建系统。2) 数据库采用SQL Server 2005。3) 应用服务器采用tomcat 6.0。
考试系统应用越来越广泛, 在高等学校的不断发展中, 以应用为核心, 以实用、易用、好用为主线作为出发点, 充分考虑用户实际需要、投资能力和使用习惯, 全面兼顾技术、应用与发展的和谐统一。要求注重实效, 能更好的满足用户的现实需要, 本考试平台为后续升级和扩展留了余地, 能大大提升各项技术指标和整体的性能。
摘要:基于统一建模语言UML的通识考试系统是根据我校通识考试的实际需求, 采用面向对象的方法, 运用统一建模语言 (UML) 建模设计。该文综合利用软件工程的思想, 用数据库、管理信息系统等方面的知识和技术, 构件一个基于Struts和Hibernate的J2EE架构、B/S结构和MVC设计模式的考试系统。
关键词:通识考试,UML建模,J2EE,MVC
参考文献
[1]曹衍龙, 徐慧.JSP网络开发实用工程案例[M].北京:人民邮电出版社, 2008.
[2]吴骅, 王学昌, 韩潼瑜.物理数据库设计[M].北京:清华大学出版社, 2010.
[3]邱加永, 郑经煜, 卞志城.JSP基础与案例开发详解[M].北京:清华大学出版社, 2010.
[4]孙卫琴.Tomcat与Java Web开发技术详解[M].北京:电子工业出版社, 2009.
UML考试复习总结 第4篇
1)分解,对复杂问题进行分解,然后分别解决各个子问题。
2)抽象,指抽取系统中的基本特性而忽略非基本的特性,以便更充分地注意与当前目标有关的方面。
3)模块化,指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,并遵循高内聚低耦合的原则。
4)信息隐藏,即封装,指把模块内的实现细节与外界隔离,用户只需知道模块的功能,而不需了解模块的内部细节。3,视图
1)用例视图。
作用:描述系统的功能需求,找出用例和执行者;描述使用的图:用例图和活动图。2)逻辑视图。
作用:描述如何实现系统内部的功能 ;
描述使用的图:类图和对象图、状态图、顺序图、合作图和活动图。3)构件视图。
作用:描述系统代码构件组织和实现模块,及它们之间的依赖关系 ; 描述使用的图:构件图。4)进程视图。
作用:描述系统的并发性,并处理这些线程间的通信和同步 ;
描述使用的图:状态图、顺序图、合作图、活动图、构件图和配置图。5)配置视图。
作用:描述系统的物理设备配置,如计算机、硬件设备以及它们相互间的连接 ; 描述使用的图:配置图。4,基本概念
1)用例是对一个活动者(actor)使用系统的一项功能时所进行的交互过程的一个文字描述序列,是系统、子系统或类和外部的参与者(actor)交互的动作序列的说明,包括可选的动作序列和会出现异常的动作序列。
2)参与者(actor)是指系统以外的、需要使用系统或系统交互的东西,包括人、设备、外部系统等。
3)用例图(use case diagram)以图解的形式概括了系统中的不同参与者和用例,并显示了哪些参与者能够参与哪些用例。
4)类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。5)类间关系
(1)关联(association)是模型元素间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义的链(link)的描述。一个关联可以有两个或多个关联端(association end),每个关联端连接到一个类。
(2)聚集和组合:聚集是一种特殊形式的关联。聚集表示类之间整体与部分的关系。聚集关系的实力是传递的,反对称的。组合表示的也是类之间的整体与部分之间的关系,但组合关系中的整体与部分具有同样的生存周期。
(3)泛化关系:泛化定义了一般元素和特殊元素之间的分类关系,类和类之间的泛化关系就是类与类之间的继承关系。
(4)依赖关系:假设有两个元素X和Y,如果修改了X元素的定义可能会导致两一个元素Y的定义的修改,则称元素Y依赖于元素X。6)接口类:只有方法没有属性,且所有方法只有声明没有实现的类。7)边界类控制类和实体类的画法
8)对象图表示一组对象及他们之间的联系。对象图是系统的详细状态在某一时刻的快照,常用于表示复杂的类图的一个实例。9)包就像一个“容器”,可用于组织模型中的相关元素。
10)包之间可以存在依赖关系,但这种依赖关系没有传递性。11)对包的命名有两种方式,即简单包名和路径包名。
12)构件是系统中遵从一组接口且提供其实现的物理的、可替换的部分。
13)构件图则显示一组构件以及它们之间的相互关系,包括编译、链接或执行时构件之间的依赖关系。
14)部署图也成为配置图、实施图,可以用来显示系统中计算节点的拓扑结构和通信路径与节点上运行的软构件等。15)交互图,是用来描述对象之间以及对象与参与者之间协作关系以及动态协作关系以及协作过程中行为次序的图形文档。
16)交互图包括顺序图和协作图两种形式。顺序图着重描述对象按时间顺序的消息交换,协作图着重描述系统成分如何协同工作。
17)顺序图也称时序图,是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图是二维模型,在顺序图中水平方向为对象维,沿水平方向排列的是参与交互的对象;顺序图中垂直方向为时间维,沿垂直向下方向按时间递增顺序列出各对象所发出和接受的消息。18)顺序图中的消息
(1)调用消息:调用消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息接收者放弃或返回控制。
(2)异步消息:异步消息的发送者通过消息把信号传递该消息的接收者,然后继续自己的活动,不等待接收者返回消息或控制。
(3)返回消息:返回消息表示从过程调用返回。
(4)阻止消息和超时消息:阻止消息是指消息发送者发出消息给接收者,如果接收者无法立即接收消息,则发送者放弃这个消息。超时消息是指消息发送者发出消息给接收者并按指定时间等待。如果接收者无法在指定时间内接收消息,则发送者放弃这个消息。19)协作图是用于描述系统的行为是如何由系统的成分协作实现的图,协作图中包括的建模元素有对象、消息、链等。
20)状态图(statechart diagram)主要用于描述一个对象在其生存期间的动态行为,表现一个对象所经历的状态序列,引起状态转移的事件(event),以及因状态转移而伴随的动作(action)。21)活动(activity)表示的是某流程中任务的执行,它可以表示算法过程中语句的执行。22)状态图可以表现一个对象在生存期的行为、所经历的状态序列、引起状态转移的事件以及因状态转移引起的动作。活动图用来表示完成一个操作所需要的活动,或者是一个用例实例的活动。实际也是一种流程图,描述活动的序列,即系统由一个活动到另一个活动的控制流。
UML建模优缺点 第5篇
UML语言使系统建模过程标准化,统一化,规范化。
UML在整个软件开发过程中采用相同的概念和表示方法,在不同的开发阶段,不必转换概念和表示方法,避免了传统软件开发方法的两个鸿沟。
UML采用图形化的表现形式。产生的模型易于理解,易于开发人员与用户之间的沟通,从而能够及时得到用户的反馈信息。
用UML进行系统建模所得到的建模制品不仅仅包括各种模型框图,还有大量丰富的文档,这些文档给系统后期的维护工作带来了便捷。UML不是一门程序设计语言,但可以使用代码生成工具将UML模型转换为多种程序设计语言代码,或使用反向生成工具将程序源代码转换为UML模型。2.UML的缺点:
任何事物都有正反两个方面,UML这种新兴的建模工具也存在它本身的一些不足,总结如下:
无法从语法上建立状态图与顺序图的关系。
uml建模期末考试总结
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。