研究_Ly开发 基于U M L 的“4+1"视图 软件体系结构描述研究 陆远蓉 (广东丁程职业技术学院,广州510520) 摘 要:提出一种基于统一建模语言(UML),用“4+1”的视图模型来描述一个具体系统的体系结 构。这种方法包括逻辑视图、教程视图、开发视图和物理视图四种视图,以及场景。通过对一 个实例系统的描述,表明这是一个有效而且实用的方法,这种方法涵括了不同的干系人(或 者成为“客户”)从不同角度所关心的主要的系统结构。 关键词:UML;4+1视图:软件体系结构 0 引言 软件体系结构代表了软件系统公共的高层次的抽 象.描述整个系统的结构和行为模型.标识了主要的系 统组件、连接件以及组件和连接件如何结合在一起的 约束与配置关系 软件体系结构的设计作为软件开发 中关键活动之一.需要考虑的不仅仅是系统功能方面 的需求.还要考虑系统的物理分布、过程通信和同步等 问题 Kruchten在1995年提出了一个基于UML的“4+ 1”视图模型.从五个不同的视角(逻辑、进程、物理、开发、 场景)来描述软件体系结构 下面以一个计算机虚拟的辅 助实验系统为例,阐述用UML、从“4+1”视图模型来描述 软件系统的体系结构 1 系统概述 本系统是应用于《可编程控制器原理及应用》课程 中的FP辅助实验教学系统.作为可编程控制器(PLC) 的一种仿真应用软件。在课程实验中用到的FP1 C24 主机和FP编程器II的真实连接示意图见图1.本系统 图1 PLC主机与手编程器的连接示意图 是用软件来仿真实际的编程器.给学生提供一个虚拟 实验环境.使用本系统还能够得到使用前两者所不能 得到的时序图和梯形图 更进一步.利用本系统还可以 2 使用“4+1”视图描述的FP辅助实验教学 系统 2.1 Kruchten的“4+1”视图 Kruchten在1995年提出了一个“4+1”的视图模 进行复杂系统的离线仿真 收稿日期:2011—01一10 修稿日期:2011一O1—19 作者简介:陆远蓉(1971一),女,广东人,讲师,项目管理师,设计师,硕士,研究方向为项目管理、多媒体技术应用 现代计算机2011.02 囝 型。这个模型从5个不同的视角包括逻辑视图、进程视 用了流程图的方式描述 图、物理视图、开发视图和场景视图来描述软件体系结 构。每一个视图针对一类人群,关心系统的一个侧面, 结合5个视图描述了软件系统结构的全部内容。“4+1” 在这个视图中.构件是:各子模块的流程、保存功 能的实现、助记符的显示/记录的算法、代码:连接件是: 主界面、在各子模块中的退出功能、各子模块中不同功 视图模型如图2所示。 End—user Programmers Functionality Software management Integrators System engineers Performance Topology Scalabi1ity Communicat ions 图2 Kruchten …的“4+1”视图 2.2逻辑视图(Logical View) 逻辑视图关心的是系统提供给最终用户的服务 在UML中.包图用于描述系统的分层结构.它表明了 系列模型的要素。因为从用户的角度出发.它对系统 进行观察时.只需要看到包装(封装),在这个包装里 面.还可再细分拆成更小的包装 在Fp辅助实验教学系统中.需要模拟出用户的程 序输入界面、运行程序前的输入端设置、程序运行后的 输出端状态、程序运行的时序图与梯形图。用包图可以 把为用户提供的这些功能需求表示出来.如图3所示 图3用“包图”描述的系统整体功能图 在这个视图中,构件是:各子模块的的功能构成、 各子模块的操作方式及界面设置;连接件是:主界面、 在各子模块中的退出功能。 2.3进程视图(Process View) 在FP辅助实验教学系统中的进程视图中.主要使 国 现代计算机2011.02 能的按钮 下面描述了系统中的其中四个模块 “编辑与显示”模块: 选择“编辑与显示”功能 点击包含要输入助记符的按钮 J, 根据不同输入条件及前后助记 符,显示助记符 < 工N l显示梯形图 I图4虚拟实验系统中输入与编辑指令模块的进程 “运行”模块: 图5虚拟实验系统中指令运行模块的进程 “仿真应用”模块(如图6) “帮助”模块(如图7) 2.4物理视图(Physical View) 物理视图主要考虑如何把软件映射到硬件上.根 据图i所示.系统的物理视图如图8所示 在本视图 中,无构件.连接件是数据线 三 / 图6虚拟实验系统中仿真运用模块的进程 关联 ●属 图9用对象网描述的开发视图 系统整体功能: 图7虚拟实验系统中仿真运用模块的进程 图8虚拟实验系统的物理视图 2.5开发视图(Development View) 开发视图主要侧重于软件模块的组织与管理.通过 系统输人输出关系的模型图和子系统图来描述.在这里, 使用了对象图来描述系统的功能模块,如图9所示。 图l0用“用例图”描述的系统整体功能场景 用户输入程序(如图11)。 用户运行所输入的程序(如图l2)。 2.6场景(Scenarios) 场景可以看作是重要系统活动的抽象.帮助设计 者找到体系结构的构件和它们之间的关系。对于FP辅 3 结语 针对基于UML的“4+1”视图体系结构模型.结合 助实验教学系统.用“用例图”和“顺序图”描述其中部 分场景的示例见图10~12 个实际的软件系统.阐述各视图的定义及其基于U ML的描述方法.证明了将该模型用于描述软件体系结 现代计算机2011.02 @ \\\ 三 图ll用“顺序图”描述的用户输入程序场景 参考文献 【1130|宁,郑东霞.基于UML的多视图软件体系结构描述方法 研究.计算机应用研究,2008,25(11):3367—3369 [2】汤小康,王志刚,彭冰沁.基于UML和z的需求分析到软 件体系结构的映射.福建电脑,2008(3):19—27 图12用“顺序图”描述的用户运行程序场景 Research on Describing Software Architecture with‘‘4+1’’ View ModeI Based on UML LU Yuan——rong (Guangdong Polytechnic College,Guangzhou 510520) Abstract:Presents an example of how to use“4+1”view model of software architecture based on UML to describe a speciifc software system.Describes山e software architecture with 4 views of Logical View,Process View,Development View and Physical View,and Scenarios as wel1.The example indicates that this method iS an effective and practieal as it captures the gist of architecture of a system for different stakeholders for customers). Keywords:UML:“4+1”View;Software Architecture ④ 现代计算机2011.02