首页 > EA > 正文

基于DODAF的系统建模探讨

2009-12-28 08:29:44  来源:CIO时代

摘要:本文给出基于DoDAF的系统建模过程,充分利用UML静态和动态建模机制的特点,使用UML从系统需求说明开始基于体系结构框架的基础上逐层逐步为系统进行建模。
关键词: DODAF

  随着计算机技术的发展和大型、复杂系统软件项目的开发需求,必须采取相应的技术手段支持不同阶段、背景人员的交流。基于体系结构框架的可视化建模是目前被广泛认可的解决大型复杂系统设计中存在的诸多问题的一种有效手段。统一建模语言(UnifiedModelLan—guage,UML)是被对象管理组织OMG(0bjectManage—mentGroup)正式采纳的可视化建模语言的工业标准。至今,UML在学术界和工业界已得到普遍认可,被广泛用来进行复杂系统各种成份的可视化描述、说明,以及构造系统模型和建立各种所需的文档等,然而UML只是一种可视化的建模语言,UML只是一种表示的标准,UML不是过程和方法,但UML允许任何一种过程和方法使用他。美国国防部体系结构框架(Dept.ofDefenseAr—chitecturework,DoDAF)给出了系统设计过程中体系结构模型的描述规则和指南,但他没有给出具体的系统设计方法和建模过程。为此,本文在分析UML对DoDAF模型支持的基础上,结合面向过程中功能分解和面向对象中以问题域中的事物为研究对象的思想,提出一种基于DoDAF的系统建模方法,并结合实例展示了建模过程。
  1UML对DoDAF模型的支持
  1.1DoDAF简述
  美国国防部(DoD)于2004年2月颁布了《DoD体系结构框架》的1.0版本,用于指导国防指挥控制系统和商业运作过程的体系结构描述。DoDAFE提出了体系结构描述的3个视图:运作视图(OperationalView)、系统视图(SystemsView)和技术视图(TechnicalStandardsView),并给出相应的26个描述性产品,分别从不同角度共同描述系统体系结构的构建和发展。对于特定的任务需求,DoDAF模型从不同角度阐述了系统设计中必须遵循的描述规范,包括:产品名称、内容以及产品的开发、分析、比较与集成,力图以统一的系统设计语言,产品名称,数据单元和数据模型,防止系统设计中因不同描述所造成的错误理解和“烟囱式”重复建设,以有利于实现系统间共享信息的一致性,实现基于系统互操作性的复杂系统集成优势。
  1.2UML对DoDAF模型的支持
  UML2.0加强了对结构化建模能力的支持,比如结构化类表现系统的结构更加清晰直观,功能模块化更好,端口语义的引入,提高了组件化的表现能力。结构化类更好地表现模块的相关特征,复合结构图更好地表现模块的结构特征。结构化建模能力的加强更有利于表示系统结构单元分解,包括运作节点分解到运作单元,系统节点分解到系统单元及系统组件,是DoDAF模型OV-2,SV-1和SV-2的有效图形描述。
  在模型的动态方面,UML2.0中的活动图提供了更强的数据流的语义,可以用活动图描述业务流程。带数据流的活动图,以及活动图的分层和多维泳道的采用满足DoDAF模型中OV-5和SV-4对功能分析描述的需要。在时序图方面,应用参考可以使时序图模块化,利用这个机制可以描述顶层的交互概览图,以及建立更加复杂的时序图,支持OV-6c和SV-10c。状态机图中引入入点和出点作为与外部的交互点,状态机提高了状态机的封装能力,为OV-6b和SV-10b提供强有力的模拟验证支持。表1描述UML对DoDAF中部分模型的图形化支持。
  2 基于DoDAF的建模过程
  2.1基本思想
  基于DoDAF的建模过程的基本思想是:将整个系统模型的构建划分为若干阶段进行,每一阶段分别侧重解决不同的建模问题,分别在不同的抽象层次、以不同的粒度对系统模型进行描述,由此保证系统模型可以由粗略到详细逐步推进,从而减小系统模型设计的难度、复杂度以及风险;明确定义每一阶段的实施步骤,使整个系统建模过程更为透明,更容易被理解和实施;为每个阶段设置明确的结束准则,组织对系统模型的阶段性评审,以有利于问题的及早发现和解决,而不仅是在整个设计完成后才一次性进行分析和验证。
  2.2建模过程
  根据系统架构过程,建模过程从主题系统的范围、目的、预计用户和运作环境人手,采用大粒度的系统分解,通过分析不同层次的场景,抽象出实现系统功能的类及对象,建立系统模型。系统模型的创建顺序如下图1所示。整个建模过程大致分为4个阶段:
  (1)创建运作分析模型。通过主题系统使命和相关知识领域信息收集,生成全视图的描述(AV-1)。对主题系统和重要用例的分析,创建高层运作概念模型(OV-1),确定该系统交互的外部系统和组织实体(即参与者或角色),完成场景需求,建立带有简单的对象流(消息)活动模型(OV-5),以及影响活动的运作规则(OV-6a);在不同的活动场景中,识别出运作节点,通过类图获取,建立运作节点连接描述(OV-2);分析OV-1中用例场景的涉众(节点),定义交互消息(OV-3),着重于运作节点通过消息与主题系统交互的时序图(OV-6c)表现用例的外部可见行为,而当这些行为是事件驱动时,用状态图建模(OV-6b)可以对理解该行为特别有用,而事件追踪的模拟仿真需要逻辑数据的支持,从而创建逻辑数据(OV-7);根据运作节点(OV-2)的关系建立组织关系模型(OV-4)。本阶段以OV-1驱动,OV-5为过程,OV-2为核心,OV-6a/b/c提供验证体制,循环往复逐步增加完善运作模型。
  在本阶段的第一次迭代中,首先是利用知识域和关键场景,采用面向过程的方法,进行系统分解,创建顶层概要模型。实践证明,对较为复杂的系统进行功能分解,将系统分解为强内聚、松耦合的功能模块,是降低系统建模复杂度的一个有效方法。需要再分解为自治的子系统,最后分解为层(也可以称为子系统)。注意功能分解必须与面向对象技术紧密结合,以免陷入功能的过分分解和结构化设计的歧途。在后续的迭代建模中,逐步添加细节,遵循自顶向下、逐层细化的设计过程。
  (2)创建需求分析模型。主要创建的模型是系统功能性描述模型(SV-4)和系统功能可追溯性矩阵的运作活动[newpage]  (3)创建功能分析模型。主要创建的模型有系统接口描述(SV-1)、系统规则模型(SV-10a),系统状态转换描述(SV-10b),系统时间跟踪描述(SV-10c),系统信息交换矩阵(SV-6),系统性能参数矩阵(SV-7)和物理数据模型(SV-11)。通过对SV-4分析以及OV-2模型,用含有类、位置和接口的类图描述系统、系统节点和存在于他们内部及其间的接口,产生SV-1,对系统进行逻辑分解并将逻辑功能分配的物理组件上,同时可以对功能进行动态描述,以及由OV-6a/b/c到SV-10a/b/c的映射。本阶段以SV-1的创建为核心,SV-6和SV-11为其提供数据支持,SV-10a/b/c为其提供验证机制。
  第四阶段:创建系统实现模型。进一步完善SV-1,SV-6和SV-11,重点创建系统通信模型(SV-2)和系统矩阵(SV-3)。在实现公共接口逻辑和物理透视图一致建模的基础上,用复合结构图和部署图为物理节点及其相关的通信基础构架建模,产生SV-2;为整个架构模型中的系统和子系统之间的关系建模产生SV-3。在系统实现模型的基础上的,可用进行系统演进描述(SV-8)和系统技术预测(SV-9),以及进一步的技术架构概要(TV-1)和技术标准预测(TV-2)。
  需要说明的是,这4个阶段在实际应用中具有典型的代表性,但却不是每个阶段的模型都要全部创建,应根据系统的规模和表现方面的具体情况而定。在实践中,整个建模过程将呈现多次迭代性,在每次模型构建迭代结束之前,应组织对这一迭代的系统模型进行评审,评审的目的是对系统满足功能和质量需求的潜在可能性做出评价。
  3 基于DoDAF的超市购物系统建模分析
  超市购物系统主要功能是通过有关设备完成顾客与超市的商品交易活动。根据面向过程思想所需要系统实现的业务为确认商品信息和收款交易,到顶层用例模型(OV-1),识别出主题主体系统以及参与的角色和主要的业务场景,如图2所示。通过活动图描述(OV-5),进行运作节点(OV-2)设计,运用动态模型(OV-6)和数据(OV-3)交互,逐步完善运作模型,同时生成(OV-7)。着重讨论OV-5和OV-2的创建。
  首先将用例作为实体,分析其场景及完成的活动。确认商品信息具体活动还包括读取商品信息、计算商品总价和显示商品信息与总价,而活动是有具体的运作节点参与,读取商品信息由电子标签阅读器完成,计算总价由终端处理设备完成,显示商品信息和总价由显示器来完成。付款交易活动应包括确认帐号、购物交易和交易完成,然后根据这些活动可进一步分解,如确认帐号要求顾客提供帐号并检查其有效性,购物交易包括处理交易的商品信息和刷新帐底等,交易完成时应打印发票,同时提示顾客交易完成。整个运作活动可以分层细化,逐步细分,可以用带有分层的活动图表示。如图3所示确认商品信息的活动图。
  经过活动流程的分析,参与交互的运作节点、连通性和信息流逐步明显,通过抽象分析得出功能单元即节点,用带接口类图和复合结构图来表示,各节点能完成独立的计算单元通过接口与其他节点进行信息交互,信息包括信息流和控制流,经过分析得到的运作节点如图4所示。其中信息处理节点作为复合结构还可以进一步分解为信息的计算单元和信息的存储单元,银行系统作为一个外部系统,只提供有关的功能接口即可。
  在OV-2的创建过程中,各节点的信息传递,可以通过时序图进行描述不同的用例场景逐步明确,通过状态机图进行模拟验证,完成信息机制,建立数据模型。每一步都有相应OV模型产生,从而使整个的建模过程成为一个相互验证逐步递增的整体。高质量的运作模型可以为需求分析模型创建提供有效的输入,需求分析模型是运作分析模型到功能分析模型的过渡,至此功能分析模型经过运作分析模型和功能分析模型的映射初步明确形成,然后创建系统的实现模型,包括部署等。注意系统模型的建立是一个循环迭代的过程,随着对信息的获取更加广泛与深入,系统模型的建立逐步演进和完善。
  4结语
  本文给出基于DoDAF的系统建模过程,充分利用UML静态和动态建模机制的特点,使用UML从系统需求说明开始基于体系结构框架的基础上逐层逐步为系统进行建模。采用统一建模语言,基于体系结构框架的系统建模在不同的阶段可分别获得关于系统不同层次、具有不同细节程度的模型,满足不同人员从不同层次了解系统的需要,并有利于系统不同层次模型的重用。实践证明,尤其是对于大型复杂系统,运用简单明了的UML可视化图形基于体系结构框架模型从不同角度将复杂系统表示出来,不仅可以为系统的分析、设计、维护及扩展提供有利的条件,还可提高系统的可重用性和可维护性,具有广泛的应用前景。


第三十四届CIO班招生
北达软EXIN网络空间与IT安全基础认证培训
北达软EXIN DevOps Professional认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。