`

VS2010实践RUP4+1架构模型(1)

    博客分类:
  • RUP
阅读更多
RUP4+1架构方法
RUP4+1架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述.

                 
 图 1. RUP4+1架构图
用例视图(Use Cases View),最初称为场景视图,关注最终用户需求,为整个技术架构的上线文环境.通常用UML用例图和活动图描述。
逻辑视图(Logical view),主要是整个系统的抽象结构表述,关注系统提供最终用户的功能,不涉及具体的编译即输出和部署,通常在UML中用类图,交互图,时序图来表述,类似与我们采用OOA的对象模型。
开发视图(Development View), 描述软件在开发环境下的静态组织,从程序实现人员的角度透视系统,也叫做实现视图(implementation view).开发视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件, 在UML中用组件图,包图来表述. 开发视图和逻辑视图之间可能存在一定的映射关系:比如逻辑层一般会映射到多个程序包等。
处理视图(Process view)处理视图关注系统动态运行时,主要是进程以及相关的并发、同步、通信等问题。处理视图和开发视图的关系:开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行起来之后会表现为对象、线程、进程,处理视图比较关注的正是这些运行时单元的交互问题,在UML中通常用活动图表述。
物理视图(Physical view )物理视图通常也叫做部署视图(deployment view),是从系统工程师解读系统,关注软件的物流拓扑结,以及如何部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。物理视图和处理视图的关系:处理视图特别关注目标程序的动态执行情况,而物理视图重视目标程序的静态位置问题;物理视图是综合考虑软件系统和整个IT系统相互影响的架构视图。
RUP4+1架构方法从1995年提出后在业界获得广泛应用,并得以发展完善,在具体应用的时候结合公司环境和项目实际进行适当裁剪。
微软VSTS2010 UML增强
Visual Studio 2010绝对不是单一的一个IDE环境, 将应用程序开发生命周期的方方面面与 Team Foundation Server 集成, VS2010提供了相对完备的UML开发软件设计模型功能。目前VS2010支持新建UML模型如下包:  


系统支持的用户目标和任务而且微软提供了VS2010旗舰版的可视化建模功能包,加强UML建模能力和便捷性。
实现RUP4+1架构
案例背景说明
IDM是一家家电制造商,目前企业已经有ERP系统,外部系统可以通过JDBC访问该系统授权的数据,同时该公司的有电子邮件系统也提供SMTP方式让外部程序调用。该公司计划开发一个电子化采购系统(EPS),基本需求如下:
l IDM生产计划在ERP设定后,会自动产生原料请购记录到EPS,EPS自动产生采购要求(Request For Purchase;RFP),并利用短信系统已经电子邮件通知注册的供应商。
l 供应商收到通知后必须先到IDM的EPS中在采购要求规定的时间内提供报价单
l IDM的采购人员(Buyer)通过EPS比价策略进行供应商选择产两家供应商并生采购单,同时通过短信和邮件通知该两家供应商。
l 供应商收到短信后,若要确认供货,到EPS中确认采购单,EPS通过电子邮件通知该采购负责人(Buyer)
l 采购人员在EPS中确认该采购后,EPS回传该订单到IDM的ERP系统中和该两家供应商。
用例视图
根据需求初步描述,抽象出该采购系统涉及的角色有IDM的EPR系统,采购人员(Buyer),供应商涉及用例有产生采购需求,确定供应商,报价等。步骤如下:
1.打开VS2010,新建项目,选择建模项目,并合理命名和解决方案位置,点击确定。


2.添加新项,选择添加新项目,选择UML用例图并命名,点击确定下一步


3.从工具箱中拖入如图各个用例和角色,并命名


4.按Crtl+S保存,在迭代开发过程中做到这一步和用户进一步沟通,发现IDM公司已经有通知系统平台可以调用发送短信和邮件通知,同时,采购人员分为采购经理和普通职员,采购确认由采购经理完成。用例图进一步调整如下:



5.图例说明:在系统中,用例送货位于系统边界外,不作为系统开发范围,其存在为了更好的解释系统的流程的完整行, 参与者不一定是人,ERP和通知系统作为参与者存在,另外比价作为单独用例存在意义不大,细心的读者可能会问 “产生原料请购记录”怎么没有作为系统用例存在?分析下可知,“产生原料请购记录“是ERP功能,EPS承担转化 “请购记录”到“采购请求”功能,因此没有作为EPS用例出现。 更多的关于用例分析请参考《Think in UML大象》
<待续>
参考:
 Kruchten, Philippe (1995, November). Architectural Blueprints — The “4+1” View Model of Software Architecture. IEEE Software 12 (6), pp. 42-50.
  • 大小: 31.7 KB
分享到:
评论

相关推荐

    VS2010实践RUP4+1架构模型

    RUP4+1架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述.图1.RUP4+1架构图用例视图(UseCasesView),最初称为场景视图,关注最终用户需求,是...

    4+1模型案例[收集].pdf

    标题中提到的“4+1模型案例[收集]”可能是指一系列关于软件架构设计中的“4+1”视图模型的案例。这一概念是由Philippe Kruchten在1995年提出,并发表于IEEE Software。4+1模型是一个用于描述软件架构设计的框架,它...

    RUP过程与UML模型驱动开发应用实例

    **RUP过程与UML模型驱动开发应用实例** 在软件工程领域,Rational Unified Process(RUP)和统一...在《RUP过程与UML模型驱动开发应用实例》中,我们可以深入学习如何在实践中应用这些理论,提升我们的软件开发能力。

    项目实例讨论-RUP&UML实践之路

    4+1视图模型是软件架构设计的一种常用方法,包括逻辑视图、开发视图、进程视图、物理视图和场景视图。这种多角度的视角有助于识别和解决潜在的设计问题,确保软件架构的健壮性和可扩展性。 #### 契约式开发与单元...

    RUP最佳实践

    10. **过程改进**:RUP不仅仅是一个过程模型,它还包括一套持续改进的机制,鼓励团队在实践中学习并不断优化其工作方式。 《RUP最佳实践》这本书详细介绍了这些概念和实践,是软件工程师、项目经理和团队成员提升...

    RUP过程与UML模型驱动应用实践

    《RUP过程与UML模型驱动应用实践》 在软件开发领域,尤其是在证券研发项目中,Rational Unified Process(RUP)与Unified Modeling Language(UML)是两种至关重要的工具和方法论。RUP是一种软件开发过程框架,强调...

    RUP-软件开发团队的最佳实践

    **RUP(Rational Unified Process)**是一种广泛认可的软件开发过程框架,由Rational Software Corporation(现IBM的一...通过深入理解和实践RUP中的各项原则和最佳实践,软件开发团队能够更好地应对复杂的项目挑战。

    项目实例讨论-RUP&UML实践之路(全 )

    《项目实例讨论-RUP&UML实践之路》是关于软件开发过程和建模技术的一份综合资源,主要围绕 Rational Unified Process(RUP)和Unified Modeling Language(UML)展开。RUP 是一种软件开发框架,它提供了一套结构化的...

    IBM公司的RUP模型

    **IBM公司的RUP模型详解** RUP(Rational Unified Process),即IBM的统一软件开发过程,是一种迭代和基于构件的软件开发方法论。RUP由IBM的Rational公司提出,它提供了一种结构化的方法来管理和构建高质量的软件...

    rup.zip_rup

    6. **最佳实践**:RUP提供了大量最佳实践,如持续集成、面向服务架构(SOA)、敏捷方法的融合等,以提升开发效率和软件质量。 **RUP_BestPractics_Chinese.pdf**可能包含了RUP的详细实践指南,涵盖了如何在实际项目...

    RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践

    《RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践》 软件开发是一项复杂的任务,尤其在证券行业,其对系统稳定性和安全性有着极高的要求。本文以“证券统一通道平台项目”为例,探讨了如何在实际项目中...

    RUP过程与UML模型驱动开发在证券研发项目中的应用实践

    ### RUP过程与UML模型驱动开发在证券研发项目中的应用实践 #### 一、引言 随着信息技术的发展,软件工程方法论对于提高软件产品质量、降低开发成本具有重要作用。Rational Unified Process(RUP)是一种面向对象且...

    RUP 模板--RUP 模板

    RUP是一种迭代和增量的软件开发模型,强调了业务需求、系统架构和软件质量的重要性。它的核心思想是通过周期性的迭代开发,逐步完善和交付软件产品。RUP涵盖了需求分析、设计、实现、测试和部署等多个关键阶段,并为...

Global site tag (gtag.js) - Google Analytics