UML系统建模知识点概括【期末】【乱序】

UML(统一建模语言)


面向对象分析(OOA)

该模型由五个层次和五个相应的活动组成:

  • 类及对象层。识别类与对象活动,确认继承与组合结构。
  • 结构层。识别结构(分类结构与组装结构)活动,确认继承与组合结构。
  • 主题层。识别主题(子系统)活动,将性质相同的类与对象归纳为同一主题。
  • 属性层。定义属性(包括实例连接)活动,确认对象属性。
  • 服务层。定义服务(包括消息连接)活动,确认操作与关联和对象的状态。
    以上活动无需按照顺序进行

封装是指把对象的属性和操作结合在一起,组成一个独立的对象。

软件生存周期由软件定义软件开发软件使用、维护和更新

面向对象的三大机制:封装继承多态

封装性:所谓封装就是把对象的属性和行为结合成一个独立的单位,使外界不能直接访问或修改这些数据和代码,外界只能通过对象提供的接口函数来改变或获取对象的属性数据,这就实现了消息的隐蔽;
继承性:如果在一个已定义的类上,增加一些特殊属性或操作,可以形成一个新的类,这个类不仅继承了前一个类的全部特征,而且具有新的特性,因此可看作前一个类的特例,是对前一个类的继承。前一个类成为父类,新产生的类叫做子类。通过继承关系可形成一种类层次结构,叫做继承结构;
多态性:在类层次结构的不同类中,可用相同的函数名实现功能不同的函数。多态即程序中同名的不同方法共存的情况,常见的两种多态方式为:①子类对父类方法的覆盖;② 利用重载在同一个类中定义多个同名的不同方法。


UML的特点

  • 统一标准
  • 面向对象
  • 可视化,表达能力强
  • 独立于过程
  • 易掌握,易用

UML 的设计目标

  • 成为一个通用的建模语言,可供所有建模者使用;

  • 能够很好的支持设计工作;

  • 能够准确表达当前软件开发中的热点问题;

  • 尽可能简单的同时能够对应用系统的各个方面建模


视图角度描述

  • 用例视图
    用例图
  • 逻辑视图
    类图,对象图,状态图,顺序图,合作图,活动图
  • 构件视图
    构件图
  • 进程视图
    状态图,顺序图,合作图,活动图,构件图和配置图
  • 配置视图
    配置图

三大模型图

  • 用例模型图
    用例图
  • 静态模型图:
    类图,对象图,包图,构件图,配置图
  • 动态模型图
    活动图,顺序图,状态图,合作图

UML的扩展,调整机制

UML结构:构造块(建模元素、关系、图);公共机制(规格说明、修饰、公共分类、扩展机制);构架(逻辑视图、进程视图、实现视图、布署视图、用例视图)

UML提供了语言的扩展能力,使得UML更加简化。

UML中的扩展机制有三种:构造型标记值约束

构造型:定义新的元素模型,扩展方式是形如《字符串》的形式,放于《》中。

标记值:是特性规格说明,标记名由字符串表示,用=给赋值,一个模型元素可以有多个标记值描述其特征,一组标记放入{}中,标记值一般写于类名后面。

约束:放入{}中的文字串表示。


UML组成

UML由事物关系组成。
事物:结构事物行为事物分组事物注释事物

动作事物包含:交互、状态机
结构事物包含:类、接口、用例、协作、节点、构件、活动类
分组事物包含:包
注释事物包含:注解

关系:依赖关联泛化(继承)聚合


十大模型图

用例图:描述的是外部执行者所理解的系统功能。

类图:是用类和他们之间的关系描述系统的一种图示,展示了系统中类的静态结构类与类之间的相互联系,表示一个系统逻辑结构

对象图:与密切相关的另一个概念是对象,对象是类的实例

包图:UML中的包是一种组合机制,包由关系密切的一组模型元素构成,包还可以由其他包嵌套构成

构件图:构件图又叫组件图,显示代码本身的逻辑结构,他描述系统中存在的软件构件以及他们之间的依赖关系

配置图:配置图描述了系统中硬件和软件的物理配置情况系统体系结构,显示系统运行时刻的结构

顺序图:用来描述对象之间动态的交互关系,着重体现对象件消息传递的时间顺序

合作图:也叫协作图,用于描述相互合作的对象间的交互关系连接关系

状态图:用来描述一个特定对象的所有可能状态以及其引起状态迁移的事件。着重描述对象的状态变化以及触发状态变化的事件。

活动图:由状态图变化而来,描述系统中的各种活动的执行顺序,刻画一个方法中所要进行的各项活动的执行流程


UML2

  • uml2包括了14种图除了上述10种还有组合结构图定时图制品图交互概览图

交互模型

交互模型:是由顺序图合作图组成,描述对象之间的动态交互行为。

交互图:顺序图合作图定时图交互概述图


相关知识点考点

1.UML的软件以用例为中心,以系统体系结构为主线,采用循环,迭代,渐增的方法进行开发。

2.UML的静态模型图由类图,对象图,包图,构件图,配置图组成。

3.UML的动态模型由活动图,顺序图,状态图,合作图组成。

4.UML的最终产物就是最后提交的可执行的软件系统和相应的软件文档资料

5.在UML的需求分析建模中,用例模型图必须与用户反复交流并加以确认。

6.UML的软件统一开发过程,即生命周期按时间顺序可以划分为开始详细规划系统构造移交

7.UML是一种二维结构软件开发过程,软件项目开发过程流包括的核心工作内容是业务建模需求分析设计实现测试

8.用例捕获某些用户可见的需求,实现一个具体的用户目标。

构造型构造型用于对模型元素进行分类,在已有的基本模型元素上定义新的模型元素

标记值标记值是特性规格说明,是UML的扩充,用来描述模型元素的特性。

约束约束扩展了模型元素的语义,它允许增加新的规则或修改现有的规则。约束规定某个条件或命题必须保持为真,否则该模型表示的系统无效。

用例用例是对一组序列动作的描述,系统执行这些动作将对用例的参与者产生可以观察的结果。

用例模型用例模型是表达系统外部事物(执行者)与系统之间交互的可视化工具。

泛化泛化是一般事物(称为父类或超类)和较特殊事物(称为子类或孩子类)之间的关系。泛化不是类的继承,类的继承是泛化的一种。

类是一组具有相同属性和相同操作的对象的集合,是对象的抽象,它抽象地描述了属于该类的全部对象的属性和操作。

封装封装是指把相关数据(属性)和对这些数据的操作结合在一起,组成一个独立的对象。

继承继承是指子类可以自动拥有其父类的全部属性与操作,即一个类可以定义为另一个更一般的类的特殊情况。

多态多态性是指同一个消息被不同的对象接收时,可产生不同的动作或执行结果。

消息消息通常由消息名、接收消息的对象标示名、调用操作名、输入信息、输出信息等组成。
说明UML统一建模语言的意义?

统一建模语言(UML)是一种绘制软件蓝图的标准语言。可以用UML对软件密集型系统的制品进行可视化详述和文档化。UML是一种定义良好、易于表达、功能强大且普遍适用的可视化建模语言。它融入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。UML的作用就是用很多图从静态和动态方面来全面描述我们将要开发的系统。

什么是顺序图,顺序图是由那些部分组成?

顺序图是强调消息时间顺序的交互图。是描述系统中类和类之间的交互,它将这些交互建模成消息交换,也就是说,顺序图描述了类相互协作的完成预期行为的动态过程。顺序图是由:类角色、生命线、激活期和消息组成。

什么是协作图,协作图是由那些部分组成?

协作图作为另一种交互图而言,强调的是参加交互的对象的组织。协作图是由:类角色、关联角色和消息流组成。

简述面向对象的基本思想?

从现实世界客观存在的事物(对象)出发,运用人类的自然思维中常用的原则和方法,系统构造软件使软件开发者以现实世界中的事物为中心思考和认识问题,用人们易于理解的方式表达出来。

什么是软件过程?简述RUP及其特点?

为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
RUP:软件统一开发过程,是一种二维结构的软件开发过程,将软件开发过程分为开始、详细、构造和移交四个阶段。
RUP特点:
(1)用例驱动
(2)以体系结构为中心
(3)以质量控制和风险管理为目标
(4)螺旋上升式的开发过程

活动图与传统的控制流程图有什么区别?

活动图描述的是活动的一个次序,既要支持条件的行为,还要支持并发的行为
区别:程序流程图明确排出了每个活动的先后顺序,支持顺序执行;活动图描述活动所必要的工作顺序,支持并发执行。

简述控制软件复杂性的基本方法?

(1)编码规范
(2)采用模块化设计
(3)增加模块深度,采用接口编程
(4)进行分层设计
(5)简化需求,让软件本身变简化



==这是一条分界线==

需求分析与用例建模


1.在UML的需求分析建模中,对用例模型中的用例进行细化说明应使用活动图

2.可行性研究分析包括经济可行性分析技术可行性分析法律可行性分析

3.UML的客户需求分析模型包括用例模型类图对象图活动图

4.UML客户需求分析产生的用例模型描述了系统的功能要求

5.在UML的需求分析建模中,对用例模型中的用例进行细化说明应使用活动图

6.活动图中的分劈和同步接合图符是用来描述多进程的并发处理行为

7.用例模型中的用例之间的关联有使用关联扩展关联包含关联继承关联

用例建模用于描述一个系统的功能
人形符号表示执行者,方框表示系统,椭圆表示用例。

用例建模的目的

  • 将需求规约变为可视化模型,并得到客户确认。
  • 给出清晰、一致的关于系统做什么的描述,确认系统的功能需求。
  • 提供从功能需求到系统分析、设计、实现各阶段的度量标准。

步骤

  • 确定系统的范围与边界
  • 确定系统的执行者和用例
  • 对用例进行描述
  • 定义用例之间的关系
  • 审核用例模型

系统分析


1.需要进一步确立三个系统模型:对象静态模型对象动态模型系统功能模型

2.UML系统分析阶段产生的包图描述了系统的系统体系层次结构

3.类和对象都由属性,它们的差别是:类描述了属性的类型,而对象的属性必须有具体值

4.在UML的对象类图中,类之间的关系由依赖细化关联聚集继承5种

对象类图

由UML中的类图与对象图组成的可视化模型能有效地描述一个软件系统,它具有强大的模型描述表达能力。

系统设计


系统设计是UML软件开发的最重要的内容之一,是对系统分析结点产生的模型进一步的细化和完善。

1.UNL系统设计的一般步骤包括系统对象设计系统体系结构设计系统设计的优化和审查等。

消息分为四种控制流:简单消息同步消息异步消息返回消息

2.顺序图和合作图主要用于对用例图中控制流的建模,用它们来描述用例图的行为。

3.顺序图描述一组对象之间消息的传递顺序。

4.交互图描述系统中对象见的交互行为。每一个交互都有(发送者)和(接收者),它们可以是整个系统,一个子系统,一个用例,一个对象类或一个操作。

5.状态图中的进程是一个(动作流),能够与其他进程并发执行。

6.在活动图中,(虚箭线)也称为对象流,对象流表示动作状态或活动状态与对象之间的关联。

7.活动图既可以描述对象的动态行为,还可以用来描述(用例)。

设计模式


1.一个设计模式的四要素:名称问题方案效果

设计模式的分类

  • 创建型设计模式
  • 结构型设计模式
  • 行为型设计模式

经典设计模式

1.创建型设计模式:

  • 工厂模式:简单工厂模式工厂方法模式抽象工厂模式
  • 单例模式

2.结构型设计模式:

  • 适配器模式
  • 代理模式

3.行为型设计模式:

  • 命令模式
  • 解释器模式
  • 迭代器模式
  • 观察者模式
  • 状态模式
  • 策略模式
  • 访问者模式

MFC框架设计模式

  • 观察者模式
  • 单例模式
  • 中介者模式

相关题(来源网络)


1.关于 UML 的描述,不正确的是(A)。

A.UML 是一种可视化编程语言

B.UML 适用于各种软件开发方法

C.UML 用于对软件进行可视化描述

D.UML 适用于软件生命周期的各个阶段


2.UML 图不包括(D)。

A.用例图

B.序列图

C.组件图

D.继承图


3.信息系统可行性研究包括很多方面的内容,(B)中经常会用到敏感性分析。

A.技术可行性分析

B.经济可行性分析

C.运行环境可行性分析

D.社会可行性分析


4.执行者与用例之间的关系是(C)。

A.包含关系

B.泛化关系

C.关联关系

D.扩展关系


5.在 UML 的顺序图中,通常由左向右分层排列各个对象,正确的排列方法是(A)。

A.执行者角色、控制类、用户接口、业务层、后台数据库

B.执行者角色、用户接口、控制类、业务层、后台数据库

C.执行者角色、控制类、用户接口、后台数据库、业务层

D.执行者角色、用户接口、业务层、控制类、后台数据库


6.关于面向对象方法的描述,不正确的是(B)。

A.相比于面向过程设计方法,面向对象方法更符合人类思维习惯

B.封装性.继承性.模块性是面向对象的三大特征

C.面向对象设计中,应把握高内聚.低耦合的原则

D.使用面向对象方法构造的系统具有更好的复用性


7.UML的(B)描述了一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态之间的转移。

A.控制图

B.状态图

C.协作图

D.序列图


8.在面向对象的基本概念中,(D)体现对象间的交互,通过它向目标对象发送操作请求。

A.继承

B.多态

C.接口

D.消息


9.RUP是信息系统项目的生命周期模型之一,“确保软件结构、需求、计划足够稳定;确保项目风险已经降低到能够预计完成整个项目的成本和日程的程度。 针对项目的软件结构上的主要风险已经解决或处理完成”是该模型(B)阶段的主要任务。

A.构造

B.细化

C.初始

D.移交

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值