商讯信箱
用户名: @
密  码:   注册|忘记密码
登录
个人用户经销商
您的位置:首页 > 安全频道 > 正文

运用RUP 4+1视图方法进行软件架构设计

作者:佚名  2007-09-01
运用4+1视图方法:针对不同需求进行架构设计

如前文所述,要开发出用户满意的软件并不是件容易的事,软件架构师必须全面把握各种各样的需求、权衡需求之间有可能的矛盾之处,分门别类地将不同需求一一满足。

Philippe Kruchten提出的4+1视图方法为软件架构师"一一征服需求"提供了良好基础,如图3所示。



图3 运用4+1视图方法针对不同需求进行架构设计
  

逻辑视图。逻辑视图关注功能,不仅包括用户可见的功能,还包括为实现用户功能而必须提供的"辅助功能模块";它们可能是逻辑层、功能模块等。

开发视图。开发视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。开发视图和逻辑视图之间可能存在一定的映射关系:比如逻辑层一般会映射到多个程序包等。

处理视图。处理视图关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。处理视图和开发视图的关系:开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行起来之后会表现为对象、线程、进程,处理视图比较关注的正是这些运行时单元的交互问题。

物理视图。物理视图关注"目标程序及其依赖的运行库和系统软件"最终如何安装或部署到物理机器,以及如何部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。物理视图和处理视图的关系:处理视图特别关注目标程序的动态执行情况,而物理视图重视目标程序的静态位置问题;物理视图是综合考虑软件系统和整个IT系统相互影响的架构视图。

 

设备调试系统案例概述

本文的以下部分,将研究一个案例:某型号设备调试系统。

设备调试员通过使用该系统,可以察看设备状态(设备的状态信息由专用的数据采集器实时采集)、发送调试命令。该系统的用例图如图4所示。



图4 设备调试系统的用例图
  

经过研制方和委托方的紧密配合,最终确定的需求可以总括地用表2来表示。



表2 设备调试系统的需求
  

 

逻辑视图:设计满足功能需求的架构

首先根据功能需求进行初步设计,进行大粒度的职责划分。如图5所示。

应用层负责设备状态的显示,并提供模拟控制台供用户发送调试命令。 
应用层使用通讯层和嵌入层进行交互,但应用层不知道通讯的细节。 
通讯层负责在RS232协议之上实现一套专用的"应用协议"。 
当应用层发送来包含调试指令的协议包,由通讯层负责按RS232协议将之传递给嵌入层。 
当嵌入层发送来原始数据,由通讯层将之解释成应用协议包发送给应用层。 
嵌入层负责对调试设备的具体控制,以及高频度地从数据采集器读取设备状态数据。 
设备控制指令的物理规格被封装在嵌入层内部,读取数采器的具体细节也被封装在嵌入层内部。 


 

图5 设备调试系统架构的逻辑视图 

1 2 3 4
【内容导航】
第1页: 第1页 第2页: 第2页
第3页: 第3页 第4页: 第4页
©版权所有。未经许可,不得转载。
[责任编辑:杨京京]
[an error occurred while processing this directive]