目录

一、RUP概述

二、“4+1”视图模型


一、RUP概述

RUP(Rational Unified Process),统一软件开发过程,统一软件过程是一个面向对象且基于网络的程序开发方法论。

在RUP中采用“4+1”视图模型来描述软件系统的体系结构。“4+1”视图包括逻辑视图、实现视图、进程视图、部署视图和用例视图。

  • 最终用户关心的是系统的功能,因此会侧重于逻辑视图

  • 程序员关心的是系统的配置、装配等问题,因此会侧重于实现(开发)视图

  • 系统集成人员关心的是系统的性能、可伸缩性、吞吐率等问题,因此会侧重于进程(处理)视图

  • 系统工程师关心的是系统的发布、安装、拓扑结构等问题,因此会侧重于部署(物理)视图

  • 分析人员和测试人员关心的是系统的行为,因此会侧重于用例(场景)视图;

二、“4+1”视图模型

“4+1”视图模型从五个不同的视角来描述软件架构,每个视图只关心系统的一个侧面,五个视图结合在一起才能反映软件架构的全部内容。

(1)逻辑视图。

逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。在逻辑视图中,系统分解成一系列的功能抽象,这些抽象主要来自问题领域。这种分解不但可以用来进行功能分析,而且可用作标识在整个系统的各个不同部分的通用机制和设计元素。在OO技术中,通过抽象、封装和继承,可以用对象模型来代表逻辑视图,用类图来描述逻辑视图。逻辑视图中使用的风格为面向对象的风格,在设计中要注意保持一个单一的、内聚的对象模型贯穿整个系统。

(2)开发视图。

开发视图也称为模块视图,在UML中被称为实现视图,它主要侧重于软件模块的组织和管理。开发视图要考虑软件内部的需求,例如,软件开发的容易性、软件复用和软件的通用性,要充分考虑由于具体开发工具的不同而带来的局限性。开发视图通过系统I/O关系的模型图和子系统图来描述。

(3)进程视图。

进程视图侧重于系统的运行特性,主要关注一些非功能性需求,例如,系统的性能和可用性等。进程视图强调并发性、分布性、系统集成性和容错能力,以及逻辑视图中的功能抽象如何适合进程结构等,它也定义了逻辑视图中的各个类的操作具体是在哪一个线程中被执行的。进程视图可以描述成多层抽象,每个级别分别关注不同的方面。

(4)物理视图。

物理视图在UML中被称为部署视图,它主要考虑如何把软件映射到硬件上,它通常要考虑到解决系统拓扑结构、系统安装和通信等问题。当软件运行于不同的物理节点上时,各视图中的构件都直接或间接地对应于系统的不同节点上。因此,从软件到节点的映射要有较高的灵活性,当环境改变时,对系统其他视图的影响最小化。

(5)用例视图。

用例可以看作是那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。场景视图对应UML中的用例视图。在开发软件架构时,它可以帮助架构设计师找到构件及其相互关系。同时,架构设计师也可以用场景来分析一个特定的视图,或描述不同视图的构件之间是如何相互作用的。场景可以用文本表示,也可以用图形表示。下面是题目选项中几种UML图的解释,从中可以了解题目所描述的,是哪一种UML图。

  • 对象图(object diagram)。对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
  • 活动图(activity diagram)。活动图将进程或其他计算结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模和业务流程建模特别重要,并强调对象间的控制流程。
  • 状态图(state diagram)。状态图描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。
  • 类图(class diagram)。类图描述一组类、接口、协作和它们之间的关系。在OO系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。

逻辑视图、实现视图、进程视图、部署视图和用例视图相关推荐

  1. 【软件架构】运用RUP 4+1视图软件架构设计(逻辑视图、实现视图、进程视图、物理视图和用例视图)

    RUP概述 RUP(Rational Unified Process),统一软件开发过程,统一软件过程是一个面向对象且基于网络的程序开发方法论. 在RUP中采用"4+1"视图模型来 ...

  2. 软考初级程序员易错题:在统一建模语言 (UML)中,( )展现了 一组对象以及它们之间的关系, 给出了系统的静态设计视图或静态进程视图,描述了( )中所建立的事物 实例的静态快照。

    在统一建模语言 (UML)中,( )展现了 一组对象以及它们之间的关系, 给出了系统的静态设计视图或静态进程视图,描述了( )中所建立的事物 实例的静态快照. 知识点: 统一建模语言 (UML) 问题 ...

  3. 【UML 建模】UML建模语言入门 -- 用例视图详解 用例视图建模实战

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. 用例视图概述 用例视图表述哪些 ...

  4. [原]UML建模语言进阶 - 用例视图详解 用例视图建模实战

    一. 用例视图概述 用例视图表述哪些事物 :谁是相关用户,用户希望从系统获得的服务,用户需要为系统提供的服务. 用例视图的作用 : 使用户容易理解 其中元素的用途 , 使码农更容易实现这些元素. 软件 ...

  5. mysql数据库视图_MySQL数据库应用总结(九)—MySQL数据库视图的操作

    SQL语法预览: 创建视图:[create [or replace] [algorithm={undefined | merge | temptable}] view 视图名称(属性列) as sel ...

  6. 设计阶段如何画用例视图(Use-Case View)

    一.概述 二.术语解释 1.Extends 用例扩展关系 2.Include 用例包含关系 3.角色(Actor) 三.如何画Use Case 用例视图 1.新建工程 2.新建Use Case Vie ...

  7. 视图插入数据_SAP Fiori的ABAP编程模型-CDS视图创建

    让我们开始为我们的应用程序创建数据模型.通常,最佳做法是创建一个Package并封装将由CDS视图创建的数据模型. 一.创建一个包: 使用SE80事务并创建一个包装,如下所示: 二.使用CDS视图创建 ...

  8. .ne中的控制器循环出来的数据如何显示在视图上_【asp.net core 系列】3 视图以及视图与控制器...

    0.前言 在之前的几篇中,我们大概介绍了如何创建一个http://asp.net core mvc项目以及http请求如何被路由转交给对应的执行单元.这一篇我们将介绍一下控制器与视图直接的关系. 1. ...

  9. 在定时器中返回给视图的值_JavaScript二进制数组(2)TypedArray视图

    ArrayBuffer对象作为内存区域可以存放多种类型的数据.同一段内存,不同数据有不同的解读方式,这种解读方式称为"视图(view)".ArrayBuffer有两种类型的视图,一 ...

最新文章

  1. 【原】时势造英雄 Times makes heros, while heros shape the times!
  2. 我们来谈下高并发和分布式中的幂等处理
  3. canal mysql重置_canal: 首先装完阿里的canal,然后数据库同步,仅供学习参考
  4. weblogic服务器连接池配置细节
  5. 孪生网络Dataset
  6. 【C#】带等待窗体的BackgroundWorker
  7. ip冲突 scan windows_如何检测IP有冲突 - 卡饭网
  8. 牛客小白月赛8: E. 诡异数字(数位DP)
  9. 3、Go语言核心编程(高级篇)
  10. rapidxml解析类
  11. 安装nodejs遇到的坑
  12. android usb 键盘,android4.4 修改USB外接法语键盘
  13. 手撸MIPS32——5、利用Vivado IP设计指令存储器和数据存储器
  14. 梧桐数据宣布获得千万级Pre-A轮融资
  15. 做好软件测试的关键是什么,做好测试计划和测试用例的工作的关键是什么?
  16. docker快速安装可道云
  17. Verilog转电路图
  18. 使用nat123进行内网穿透
  19. Option 82在校园网的应用与实现(转)
  20. 安卓模拟器右边的虚拟键盘消失了,怎样调出来

热门文章

  1. nginx配置反向代理缓存
  2. 地图API总结与比较(GIS)
  3. Linux5.4内核编译
  4. 酷我歌词爬取--《不将就》
  5. 如何去除腾讯课堂漂浮弹幕:XXX正在观看
  6. Java中int、double、char等基础数据类型的取值范围
  7. 南充计算机实验小学,南充小学排名前十名榜单,2021年南充所有的小学实力排名...
  8. css 多行超出省略
  9. qq 请使用常用设备或手机号登录
  10. 北航计算机系导师,北航计算机学院计算机系统结构导师介绍:钱德沛