4+1视图模型概况 Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。如下图:
n 逻辑视图(Logic View) 逻辑试图主要是用来描述系统的功能需求,即系统提供给最终用户的服务. 在逻辑视图中,系统分解成一系列的功能抽象、功能分解与功能分析,这些主要来自问题领域(Problem Definition)。 在面向对象技术中,通过抽象、封装、继承,可以用对象模型来代表逻辑视图,可以用类图(Class Diagram)来描述逻辑视图。如下图: 构件(Components):类、类服务、参数化类、类层次 连接件(Connectors):关联、包含聚集、使用、继承、实例化
n 开发视图(Development/Module View) 开发视图主要用来描述软件模块的组织与管理(通过程序库或子系统)。服务于软件编程人员, 方便后续的设计与实现。它通过系统输入输出关系的模型图和子系统图来描述。要考虑软件的内部需求:开发的难易程度、重用的可能性,通用性,局限性等等。开发视图的风格通常是层次结构,层次越低,通用性越好(底层库:Java SDK,图像处理软件包)。如下图: 构件:模块、子系统、层 连接件:参照相关性、模块/过程调用
n 进程视图 进程试图侧重系统的运行特性,关注非功能性的需求(性能,可用性)。服务于系统集成人员,方便后续性能测试。强调并发性、分布性、集成性、鲁棒性(容错)、可扩充性、吞吐量等。定义逻辑视图中的各个类的具体操作是在哪一个线程(Thread)中被执行。 如下图: 构件:进程、简化进程、循环进程 连接件:未指定,消息、远程过程调用(RPC)、双向消息、事件广播
n 物理视图 物理试图主要描述硬件配置。服务于系统工程人员,解决系统的拓扑结构、系统安装、通信等问题。主要考虑如何把软件映射到硬件上,也要考虑系统性能、规模、可靠性等。可以与进程视图一起映射。如下图: 构件:处理器、计算机、其它设备 连接件:通信协议等
n 场景(Scenarios) 场景用于刻画构件之间的相互关系,将四个视图有机地联系起来。可以描述一个特定的视图内的构件关系,也可以描述不同视图间的构件关系。文本、图形表示皆可。
n 小结 逻辑视图、开发视图,都主要是用来描述系统的静态结构。 进程视图、物理视图,主要是用来描述系统的动态结构。 并非每个系统都必须把5个视图都画出来,而是各有侧重。例如MIS系统侧重于逻辑视图、开发视图,而实时控制系统则侧重于进程视图、物理视图
相关推荐
### 运用RUP 4+1视图方法进行软件架构设计 #### 一、引言 在软件开发过程中,架构设计是确保软件系统能够高效、稳定运行的关键环节。随着软件系统的复杂度不断提高,传统的单一视角已经无法满足设计需求。RUP 4+1...
后来,PhilippeKruchten加入Rational,他的4+1视图方法演变为著名的、为许多架构师所熟知的“RUP4+1视图方法”(如下图所示)。概括而言:逻辑视图(LogicalView),设计的对象模型。进程视图(ProcessView),捕捉...
本文将深入探讨两种常见的架构方法:RUP(Rational Unified Process)的4+1视图和TOGAF(The Open Group Architecture Framework)的4A架构,同时也会提及UML(Unified Modeling Language)在架构设计中的应用。...
**RUP(Rational Unified Process)视图与模型:** RUP,即 Rational Unified Process,是一种迭代和增量的软件开发过程框架,由IBM的Rational软件公司开发。它强调了软件开发过程中的四个核心流:业务建模、需求、...
软件架构4+1视图模型是一种软件架构设计方法,由IBM开发的Rational Unified Process(RUP)衍生出来的。该方法将软件架构设计分为四个视图,即用例视图、逻辑视图、开发视图和处理视图,另外还有一个物理视图。每个...
图1.RUP4+1架构图用例视图(UseCasesView),最初称为场景视图,关注最终用户需求,是系统功能的高层抽象,为整个技术架构的上线文环境.通常用UML用例图和活动图描述。逻辑视图(Logicalview),主要是整个系统的抽象...
《架构蓝图——软件架构4+1视图模型》是由Rational公司的Philippe Kruchten提出的,他在IBM收购Rational公司之前领导了RUP(统一过程)开发团队超过16年,积累了丰富的工业界经验,特别是在电信和空中交通控制系统...