土木工程网手机版

当前位置:首页>土木论文>结构论文

基于UML的软件体系结构

 更新时间:  编辑:土木龙

       摘要 本文描述了有助于软件体系结构开发和文档化的一些体系结构视点,为大型软件体系结构的开发提供实际的表示方法和技术。使用UML提供的大量构造工具来描述软件体系结构,介绍了UML对软件体系结构的应用。 

  关键词 软件体系结构;UML;建模 

  中图分类号TP31 文献标识码A 文章编号 1674-6708(2010)33-0230-02 

  0引言 

  软件体系结构(Software Architecture)是近年来软件工程领域中的一个热点研究方法。它的出现为软件复用特别是设计方案的复用带来了新的前景。体系结构并非可运行的软件,确切的说,它是一种表示,这种表示使得软件工程师能够分析设计在满足需求方面的效力,也能够在在改变仍然相对容易的阶段考虑体系结构可能的选择,还能够减少和软件构造相关联的风险。软件体系结构不包括硬件、网络或物理体系结构。软件体系结构不是整个系统的描述,而仅仅是系统内的软件和创建软件所需环境的描述。 

  UML(Unified Modeling Language)统一建模语言,是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。UML作为一种模型语言,它使开发人员专注于建立产品的模型和结构,而不是选用什么程序语言和算法实现。当模型建立之后,模型可以被UML工具转化成指定的程序语言代码。 

  UML的出现及其与体系结构研究结论的结合,为体系结构的应用带来了新的契机。 

  1软件体系结构视点 

  软件体系结构视点是通过把UML图的类型运用到具体的体系结构开发任务而确定的。每一个视点有具体的建模目标和系统相关者。 

  表1所列的视点提供了一组高度概括的软件描述。环境视图提供了对系统边界及系统发生交互的外部实体集合的概述。分析视图提供了一个以建模为中心的实体的抽象集合。 

  表2给出了一个以描述软件设计为目的的视点的集合。构件、构件交互及构件状态视图提供了一个对于逻辑运行结构及其功能,以及它们之间通信的映射。子系统结构依赖视图提供了一个子系统依赖关系和接口的图形表示。分层子系统视图提供了一个所有子系统高度抽象的视图。逻辑数据视图提供了构件共有的数据模型描述。 

  通常,大型软件系统的整体视图时及其重要的。而一些视图会被同时使用。例如,在构件接口的设计中,通常要创建构件视图、设计交互视图和构件状态视图。 

  2实例系统 

  为了阐明大型系统的各方面的概念和视图,选择一银行系统为范例。这个实例说明了一个完整的银行系统。系统中的遗留部分,可以支持传统的结算、存款和贷款业务。这部分包括用户记录存储、交易历史记录和交易管理,也支持银行职员和用户查询。遗留部分还包括和外部银行、其他分支机构、旧式ATM、银行职员及客户电话查询的接口。新添加的部分,可以支持基于Web的用户接口、双向寻呼接口、移动电话浏览器访问接口、增强型ATM和连接分支结构的增强型接口。网络用户和移动电话和浏览器接口不仅支持传统的账目查询,还可以支持股票证�挂历,资金电子过户,支票付款和账目转账。出纳员、账户经理和信贷员接口属于基于企业网的新式接口。 

  2.1系统环境和领域分析 

  在系统环境和领域分析中需要构件最高层次的体系结构所需的几种整体来表示,包括环境视图、概念图和整体分析视图。概念图比较随意也不稳定,没有特定的建模方式。 

  环境视点包括系统和系统有接口的外部实体及系统和这些实体的接口,目的是使用一个视图来描述所有外部实体及它们之间的接口信息。环境视图往往是体系结构组创建的第一个系统视图,包括系统和外部系统之间的接口及系统和人的接口。图1描述了银行系统的环境视图。 

  环境视图中,操作者的名字应该与定义的角色相匹配货相互映射,操作者的角色可以有不同的等级。例如,网络操作者可以进一步细分为ATM网络操作者和局域网设备操作者。 

  整体分析视点提供了一个关于问题领域的一致看法,独立于任何细节之外。该视点提供实体集以及对它们之间的关系、属性和行为的表示方法,可以用来构造分层子系统视图和子系统接口以来试图,主要用来帮助理解系统中的关键实体,用来构建系列化的部件。 

  2.2 事物和数据设计    

  图2逻辑数据模型 

  逻辑数据体系结构描述了实体的结构或形式、数据关系,以及约束。逻辑数据体系结构通常被称作为数据框架或者逻辑数据模型。数据框架采用的带有属性的UML类来表述。 

  逻辑数据视点概括了系统中所有主要数据实体,是一个关注于属性和关系的UML视图。在该视图中只包括由多个构件或者子系统共享的数据实体。图2描述了银行系统的逻辑数据模型。 

  3结论 

  本文以银行系统的分析和设计为例,介绍了如何利用UML的视点建模。使用了用例图描述说明外部系统角色和设计中的系统,使用类图描述了实体集的关键数据视图。 

  设计软件的过程中应通过一系列视图展开,并在单一的结算中直接实现所有的内容。体系结构是系统的映射,它定义了系统的不同组成部分、它们之间的关系和交互、通信机制、以及如何修改系统组件、如何添加新组件等整体规则。好的体系结构强调系统的功能和非功能两个方面。使用UML的过程是以体系结构为中心的,并且在过程的早期就要建立这个体系结构。    

  参考文献 

  [1]Booth G, Rumbaugh J, Jacobson I.The Unified Modeling Language User Guide[M],1999. 

  [2]JosephSchmuller.UML基础案例与应用[M].李虎,王美英,万里威,译.北京:人民邮电出版社,2002,6. 

  [3]Young Joon Yang,Soon Yong Kim,Gui Ja Choi,Eun Sook Cho,Chul JinKi,Soo Dong Kim.A UML-based object-orientedframework development methodology[J].Software Engi neering Conference, 1998. Proceedings.1998 Asia Pacific,1998,12:2-4. 

  [4]马重明,张学旺,范时平.基于UML的软件体系结构开发方法[J].计算机工程与应用,2006,42(4):118-120. 

相关阅读

最近更新