VS2010实践RUP4+1架构模型

  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模型如下包:

UML关系图

主要作用

活动图

业务流程中的操作和参与者之间的工作流

组件图

系统的组件、组件的接口、端口和关系

类图

用于在系统中存储和交换数据的类型及其关系

序列图

对象、组件、系统或参与者之间的交互序列

用例图

系统支持的用户目标和任务

  而且微软提供了VS2010旗舰版的可视化建模功能包,加强UML建模能力和便捷性。

  实现RUP4+1架构案例背景说明

  IDM是一家家电制造商,目前企业已经有ERP系统,外部系统可以通过JDBC访问该系统授权的数据,同时该公司的有电子邮件系统也提供SMTP方式让外部程序调用。该公司计划开发一个电子化采购系统(EPS),基本需求如下:

IDM生产计划在ERP设定后,会自动产生原料请购记录到EPS,EPS自动产生采购要求(Request For Purchase;RFP),并利用短信系统已经电子邮件通知注册的供应商。

  供应商收到通知后必须先到IDM的EPS中在采购要求规定的时间内提供报价单

  IDM的采购人员(Buyer)通过EPS比价策略进行供应商选择产两家供应商并生采购单,同时通过短信和邮件通知该两家供应商。

  供应商收到短信后,若要确认供货,到EPS中确认采购单,EPS通过电子邮件通知该采购负责人(Buyer)

  采购人员在EPS中确认该采购后,EPS回传该订单到IDM的ERP系统中和该两家供应商。

  用例视图

  根据需求初步描述,抽象出该采购系统涉及的角色有IDM的EPR系统,采购人员(Buyer),供应商涉及用例有产生采购需求,确定供应商,报价等。步骤如下:

  1.打开VS2010,新建项目,选择建模项目,并合理命名和解决方案位置,点击确定。

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

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

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

  5.图例说明:在系统中,用例送货位于系统边界外,不作为系统开发范围,其存在为了更好的解释系统的流程的完整行, 参与者不一定是人,ERP和通知系统作为参与者存在,另外比价作为单独用例存在意义不大,细心的读者可能会问 “产生原料请购记录”怎么没有作为系统用例存在?分析下可知,“产生原料请购记录“是ERP功能,EPS承担转化 “请购记录”到“采购请求”功能,因此没有作为EPS用例出现。 更多的关于用例分析请参考《Think in UML大象》

时间: 2024-11-09 02:01:16

VS2010实践RUP4+1架构模型的相关文章

一起谈.NET技术,VS2010实践RUP4+1架构模型

RUP4+1架构方法 RUP4+1架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述.                   图 1. RUP4+1架构图 用例视图(Use Cases View),最初称为场景视图,关注最终用户需求,为整个技术架构的上线文环境.通常用UML用例图和活动图描述. 逻辑视图(Logical view),主要整个系统的抽象结构表述主要关注系统提供最终用户的功能,不涉及具体的编译即输出和部署,通常在UML中

VS201“.NET研究”0实践RUP4+1架构模型

RUP4+1架构方法 RUP4+1上海企业网站设计与制作架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述.                   图 1. RUP4+1架构图 用例视图(Use Cases View),最初称为场景视图,关注最终用户需求,为整个技术架构的上线文环境.通常用UML用例图和活动图描述. 逻辑视图(Logical view),主要整个系统的抽象结构表述主要关注系统提供最终用户的功能,不涉及具体的编译即输出

解码知乎:知乎组织架构模型“大剖析” UGC 网站优化如何借鉴

中介交易 SEO诊断 淘宝客 云主机 技术大厅 本文深度剖析知乎目前的内容架构模型,对于社区应用开发者可将其中的架构思维推广到一般 UGC 网站产品的优化上. 知乎是目前国内用户平均素质最高的网站,其日均访问 IP 在 60 万以上.对于这样一个用户活跃度极高.产出大量优质内容(UGC)网站来说,如何把内容更好地组织呈现并将其中优质部分的价值最大化,非常重要. 基础模块(1 问题-n 回答-n 评论模块) 知乎基础模块中一个问题对应于 n 个回答,一个回答又对应于 n 个评论,因此我们可以把基础

《VoIP技术构架(第2版·修订版)》一1.6 新PSTN网络架构模型

1.6 新PSTN网络架构模型 VoIP技术构架(第2版·修订版) 正如我们前面几节讨论的一样,新的模型将致力于将老的僵化的架构分离出来,从而能允许大量的厂商可以在新架构上为用户开发应用和功能.图1-15表明了思科系统准备怎样推进新模型. 图1-15清楚地显示了3层之间的关系以及3层与在网络中将用到的其他组件的关系.运营商们很欢迎这种方式,因为这意味着他们无需在每层固定选择一个解决方案.他们可以根据需要来选择提供的业务.功能和面市时间. 也许一些运营商可能还在犹豫采用超过一家的设备提供商会增加集

我的架构经验小结(一)-- 常用的架构模型

      经过这几年的积累,在系统架构方面逐渐积累了一些自己的经验,到今天有必要对这些经验作个小结.在我的架构思维中,主要可以归类为三种架构模型:3/N层架构."框架+插件"架构.地域分布式架构. 一.三种架构模型 1.3/N层架构        这是经典的多层架构模型,对于稍微复杂一点或特别复杂的系统,不使用分层架构是很难想象的.下图是经典的3层架构:     如今,凡是个程序员都能侃侃而谈3/N层架构,这确实是解决系统复杂性的一种主流模式,但是,只要采用了3/N层架构是不是就一定

LINQ快速开发设计最佳实践(二) 构建Model模型

一.摘要 第一篇文章我简要介绍了项目的设计框架和LINQ实现思想. 本篇文章将是最实际和具有技巧性的地方, 就是如何创建LINQ TO SQL 的模型对象. 二. 前言1.LINQ与LINQ TO SQL 姜敏同学提醒我要注意LINQ TO SQL和LINQ的不同.的确这两者就类似C#和.NET. 老赵曾写文章特别强调过两者的不同.这里再简单提一下. LINQ是Language-Integrated Query的缩写, 翻译后是"集成语言查询", 我将LINQ看做是一种查询框架, 拥有

Java理论与实践: 修复Java内存模型,第1部分

活跃了将近三年的 JSR 133,近期发布了关于如何修复 Java 内存模型 (Java Memory Model, JMM)的公开建议.原始 JMM 中有几个严重缺陷,这导 致了一些难度高得惊人的概念语义,这些概念原来被认为很简单,如 volatile .final 以及 synchronized.在这一期的 Java 理论与实践 中,Brian Goetz 展示了如何加强 volatile 和 final 的语义,以修复 JMM.这些更改有些已经 集成在 JDK 1.4 中:而另一些将会包含

解析SNS社区产品架构模型

引言: 原本经济危机来了,FACEBOOK估值从150亿美金跌至40亿:国内互联网创投环境也日趋寒冷,而在舆论界,关于SNS的话题似乎热度未减,,当然在精彩文章之中也夹杂着一些隔靴搔痒式的讨论: 最近,时值腾讯QQ空间及手机社区平台高速发展,迭创新高:我也想结合自身的工作实践,简单地聊一些关于SNS的理解: 个人认为,从严格产品意义而言,国外是FACEBOOK,国内是校内网最先实现相对完整地SNS社区产品架构的:而早期的网易社区,腾讯IM平台,早期博客形态的QQ空间,包括现在一些手机社区,都和S

解析SNS社区产品架构模型,互联网营销

引言: 原本经济危机来了,FACEBOOK估值从150亿美金跌至40亿:国内互联网创投环境也日趋寒冷,而在舆论界,关于SNS的话题似乎热度未减,,当然在精彩文章之中也夹杂着一些隔靴搔痒式的讨论:   最近,时值腾讯QQ空间及手机社区平台高速发展,迭创新高:我也想结合自身的工作实践,简单地聊一些关于SNS的理解: 个人认为,从严格产品意义而言,国外是FACEBOOK,国内是校内网最先实现相对完整地SNS社区产品架构的:而早期的网易社区,腾讯IM平台,早期博客形态的QQ空间,包括现在一些手机社区,都