UML(统一建模语言) 是用元模型描述的,元模型是4层元模型体系结构模式中的一层。此模式的其他层次分别是元-元模型层、模型层和用户对象层。

在原模型层,UML元模型 又被分解为三个子逻辑包:基础包(核心、扩展机制和数据模型)、行为元素包(描述模型动态行为的语言上层结构,支持不同的行为图)、模型管理包(定义了对模型元素进行分组和管理的语义)

UML 通过图形化的表示机制从多个侧面对系统的分析和设计模型进行刻画。它定型了10种视图,并将其分为以下4类:

①、用例图。从外部用户的角度描述系统的功能,并指出功能的执行者。

②、静态图。包括类图(class diagram),对象图(object diagram)和包图(package diagram)

③、行为图。包括交互图(interactive diagram)、状态图(statechart diagram)与活动图(artive diagram)

④、实现图(implementation )。包括构件图(component diagram)与部署图(deployment diagram)

定义一:用例是对一个活动者(actor)使用系统的一项功能时所进行的交互过程的一个文字描述序列。

定义二:用例是系统、子系统或类和外部的参与者(actor)交互的动作序列的说明。

编写用例必须包含以下元素:

一:角色 - 指系统以外的,需要使用系统或与系统交互的东西,包括人、设备、外部系统等。

二:用例间的关系

用例除了与参与者有关联(association)关系外,之间的关系 - 关系(relationship),如泛化(generalization)关系、包含(include)关系、扩展(extend)关系等

交互图(interaction diagram)

用来描述对象之间以及对象与参与者(actor)之间的动态写作关系以及协作过程中行为次序的图形文档。

1、顺序图 (时序图):显示对象直接按交互的图,这些对象是按时间排序的。是一个二维图形,以水平方向为对象维。

2、协作图  :用于描述系统的行为是如何由系统的成分协作实现的图。

类图和对象图

类是具有相似结构、及行为和关系的一组对象的抽象。

一般来说,类之间的关系又关联、聚集(一种特殊形式的关联)、组合(是特殊形式的聚集)、泛化(定义了一半和特殊元素之间的关系)和依赖(假设由两个元素X、Y,如果修改元素X的定义可能会导致对另一个元素Y的修改,则称元素Y依赖于元素X),类图(以直观、抽象形式展示了不同对象之间的关系)

状态图和活动图

1、状态图  UML中的状态图(state chart diagram)主要用于描述一个对象在其生存期间的动态行为。

2、活动图 是对系统的动态行为建模的5个之一,用于描述系统的工作流程和并发行为。可看作状态图的特殊形式。包含几个基本概念:

①、活动 (表示的是某流程中的任务执行,可以表示某算法过程中语句的执行)   ②、泳道(是活动图中的区域划分,根据每个活动的职责对多有活动进行划分,每个用到代表一个责任区)   ③、分支(每个可能的转移是一个分支(branch))   ④、分叉和汇合   ⑤、对象流(可作为活动的输出或输入)  

构件图

构件(componet):是系统中遵从一组接口且提供其实现的无力的、可替换的部门。

构件图(componentdiagram)则显示一组构件以及他们之间的相互关系、包括编译、链接或执行时构件之间的依赖关系

构件就是一个实际文件,包含(1)部署构件  (2)工作产品构件(deploymentcomponet),如dll文件、exe文件 (3)执行构件,也就是系统执行后得到的构件

部署图

部署图也称配置图、实施图,它可以用来显示系统中计算节点的拓扑结构和通信路径与节点上运行的软构件等。

基于UML的软件开发过程

1、初启  (软件发起项目人确定项目的主要目标和范围)

2、细化 (标志项目的正式确立)

1)、初步的需求分析

2)、初步的高层设计

3)、部分的详细设计

4)、部分的原型构造

在细化阶段可能需要使用UML语言机制包括描述用户需求的用例及用例图、表示灵魂与概念模型的类图、表示业务流程处理的活动图、表示系统搞成结构的包图和表示用例内部实现过程的交互图

3、构建 (开发人员通过一系列的迭代完成所有用例的软件实现工作)

    软件迭代计划用遵循:①、用户认为业务价值较大的用例应优先安排。②、开发人员评估后认为开发风险较高的的用例应优先安排。

4、部署

基于UML的需求分析

  • 利用用例及用例图表示需求。

  • 利用包图及表示目标软件系统的总体框架结构。

1、生成用例 (从外部用户的视角看,一个 用例 是执行者(actor)与目标软件系统直之间的一次典型的交互作用;从软件系统内部的视角出发,一个用例代表系统执行的一系列动作,动作执行的结果能够被外部的执行者所察觉)

2、用活动图表示用例

3、生成用例图 (执行者与用例之间的关系有两种:触发执行与信息交换)

4、建立顶层架构 (顶层架构的目的主要是为后续的分析和设计活动建立一种结构和划分,以便开发人员在不同的开发阶段,以及同一开发阶段的不同开发人员,能够聚焦于系统的不同部分)

   1)、UML 包图  (包是UML对类进行分组的一种机制,包之间存在两种依赖关系:依赖和构成)

    2)、顶层架构设计

    目前主要的架构模式:(1)、流程处理模式。(2)、客户/服务模式  (3)、分成模式  (4)、架构中包的数量  (5)、架构中包之间的耦合度  (6)、软件系统的稳定性  (7)软件系统的必然性  (8)、作为软件系统运行环境的物理网络拓扑  (9)、开发团队的技术专长

5、建立概念模型

面向对象的设计方法

一、设计用例实现方法

1、设计用例实现方案 (1)、界面控制  (2)、外部接口  (3)、环境隔离

2、构造交互图 (在UML顺序图中:用例的主动执行者在最左侧,紧邻其右的类是作为用户界面的边界类,再往右是控制类,控制类的右侧应防止辅助类和实体类)

3、根据交互图精化类图

二、设计技术支撑方案

三、设计用户界面 (1、熟悉用户并对用户分类 2、按用户类别分析用户的工作流程与习惯 3、设计命令系统并进行优化  4、设计用户界面的各种细节 5、增加用户界面专用的类与对象)

四、计划设计模型(分精化和设计模型)

系统架构文档化

1、“4+1”视图包括:逻辑视图(logical view)、过程视图(process view)、物理视图(physical view)、开发视图(development view)、场景。

2、逻辑架构:设计的对象模型(使用面对对象的设计方法时)。支持功能性需求,采用抽象、封装或继承的原理,用来识别遍布系统各个部分的通用机制和设计元素。

3、进程架构:捕捉设计的并发和同步特征。考虑一些非功能性的需求,如性能和可用性。在几种层次的抽象上进行描述,每个层次针对不同问题。

4、开发架构:描述了开发环境中软件的静态组织结构。用模块和子系统来表达,显示了“输出”和“输入”关系。

5、物理架构:描述了软件到硬件的映射,反映了分布式特性。主要关注系统非功能性需求,如可用性、可靠性、性能和可伸缩性。

6、场景:架构的描述,及所做的各种决定,可以围绕着这四个视图来组织,然后由一些用例(use cases)或场景(scenarios)来说明,从而形成了第五个视图。

我是小侯,我想和大家一起变厉害

uml具有多种视图_UML建模与架构文档化相关推荐

  1. (软考笔记) —— 系统架构设计师 - UML建模与架构文档化

    文章目录 UML建模与架构文档化 UML 现状与发展 UML起源 UML 体系结构演变 UML 的应用与未来 UML基础 概述 用例和用例图 交互图 类图和对象图 状态和活动图 状态图 活动图 构件图 ...

  2. uml具有多种视图_UML的9种图及4+1视图简介(整理)

    UML中包括九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.组件图.配置图 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...

  3. uml具有多种视图_UML语言中五大视图

    UML语言纵览 视图 UML语言中的视图大致分为如下5种: 1.用例视图.用例视图强调从系统的外部参与者(主要是用户)的角度看到的或需要的系统功能. 2.逻辑视图.逻辑视图从系统的静态结构和动态行为角 ...

  4. 脚本文档_创建完美的架构文档脚本

    脚本文档 描述 (Description) System views allow us to gain access to information about any objects within S ...

  5. [转]OpenContrail 体系架构文档

    OpenContrail 体系架构文档 英文原文:http://opencontrail.org/opencontrail-architecture-documentation/ 翻译者:@KkBLu ...

  6. Spring架构文档:程序员(工程师)的圣经

    圣经 作为一名工程师,尤其是服务端工程师,在Spring架构大行其道的时候,只有熟悉Spring的架构,才能有未来啊! 一.Spring的架构文档 Spring的架构文档 这个有空的时候,多读读!

  7. AIGC席卷智慧办公,金山办公如何架构文档智能识别与理解的通用引擎?

    如今,智慧办公是企业办公领域数字化转型的题中之义.作为国内最早开发的软件办公系统之一,金山办公如何应用深度学习实现复杂场景文档图像识别和技术理解?本文将从复杂场景文档的识别与转化.非文本元素检测与文字 ...

  8. ONF组织的SDN架构文档——概述(一)

    1.适用范围 这个文档描述了SDN架构.文档的目的是为ONF工作组未来的工作做详细指导和说明,同时也可以作为ONF对外交流的一个参考文档.它的姊妹文档(框架文档)描述了ONF想要达到的设计目标.此文档 ...

  9. ONF组织的SDN架构文档——原理与架构构件(二/二)

    4.4应用层 图4.4扩展了图3.3中SDN架构里的SDN application块. SDN原则允许应用在业务和策略允许的前提下指定需要的网络资源和行为.从SDN到应用程序层的接口叫做A-CPI.图 ...

最新文章

  1. iphone-common-codes-ccteam源代码 CCGraphics.m
  2. css揭秘之linear-gradient
  3. 三种工厂模式的分析以及C++实现
  4. Entity Framework如何得到数据库表的名字
  5. 【机器学习基础】对样本不均衡的处理
  6. java消息推送与接收
  7. python web开发基础_python web开发基本概念
  8. python flask的request模块以及在flask编程中遇到的坑
  9. Git和Github代码管理实践
  10. 霍夫森林(Hough Forest)目标检测算法
  11. 【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法
  12. shell自动收集服务器硬件系统信息通过web页面显示
  13. Django下载、安装
  14. 免费开源51单片机个人课程设计--基于stc89c52及红外遥控的测温智能电风扇
  15. Android 关于图片的压缩
  16. [附源码]java毕业设计基于的高校学生考勤管理系统
  17. 大二学科不挂科 速冲方法推荐(数据结构+计组+操作系统+算法+数据库+计网)
  18. 【python】Flask之路由
  19. 学业竞技实业网址窗口
  20. 70道经典Android面试题加答案--重要知识点几乎都涉及到了 .

热门文章

  1. 什么是Hive?它有哪些特点和特性?
  2. SpringMvc+ajax实现文件跨域上传
  3. .NET MVC+ EF+LINQ 多表联查VIEW显示列表
  4. 对ListenSocket 的研究(四)
  5. Centos7更改root密码
  6. SpringMVC + Hibernate-Validator 参数校验
  7. javassist学习笔记
  8. Unsupported major.minor version (jdk版本错误)解决方案
  9. 软件开发流程包含哪些内容
  10. 编译android不再需要jdk1.5