简介UML中的RUP

RUP(Rational Unified Process,统一软件开发过程)是一个面向对象且基于网络的程序开发方法论。它是Rational公司(现在是IBM)开发的软件开发方法。根据Rational的说法RUP好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。 RUP和类似的产品,例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具,把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。

1.1.1 经验

迭代式开发:

在软件开发的早期阶段就想完全、准确的捕获用户的需求几乎是不可能的。实际上,我们经常遇到的问题是需求在整个软件开发工程中经常会改变。迭代式开发允许在每次迭代过程中需求可能有变化,通过不断细化来加深对问题的理解。迭代式开发不仅可以降低项目的风险,而且每个迭代过程以可以执行版本结束,可以鼓舞开发人员。

管理需求:

确定系统的需求是一个连续的过程,开发人员在开发系统之前不可能完全详细的说明一个系统的真正需求。RUP描述了如何提取、组织系统的功能和约束条件并将其文档化,用例和脚本的使用以被证明是捕获功能性需求的有效方法。

基于组件的体系结构:

组件使重用成为可能,系统可以由组件组成。基于独立的、可替换的、模块化组件的体系结构有助于管理复杂性,提高重用率。RUP描述了如何设计一个有弹性的、能适应变化的、易于理解的、有助于重用的软件体系结构。

可视化建模:

RUP往往和UML联系在一起,对软件系统建立可视化模型帮助人们提供管理软件复杂性的能力。RUP告诉我们如何可视化的对软件系统建模,获取有关体系结构于组件的结构和行为信息。

验证软件质量:

在RUP中软件质量评估不再是事后进行或单独小组进行的分离活动,而是内建于过程中的所有活动,这样可以及早发现软件中的缺陷。

控制软件变更:

迭代式开发中如果没有严格的控制和协调,整个软件开发过程很快就陷入混乱之中,RUP描述了如何控制、跟踪、监控、修改以确保成功的迭代开发。RUP通过软件开发过程中的制品,隔离来自其他工作空间的变更,以此为每个开发人员建立安全的工作空间。

时间: 2025-01-31 06:03:50

简介UML中的RUP的相关文章

简介UML中的组件图

组件图描述软件组件及组件之间的关系,显示代码的结构.组件是逻辑架构中定义的概念和功能(类.对象.它们的关系)在物理架构中的实现,典型情况下 组件是开发环境中的实现文件.如图8.1所示. 图8.1 软件组件可以是下面任何一种: 源组件,源组件只在编译时是有意义,典型情况下,它是实现一个或多个类的源代码文件. 二进制组件,典型情况下,二进制组件是对象代码,它是源组件的编译结果 它.应该是一个对象代码文件,一个静态库文件或一个动态库文件,二进制组件只在链接时有意义,如果二进制组件是动态库文件,则在运行

简介UML中的部署图

部署图描述处理器.设备.软件组件在运行时的架构.它是系统拓朴的最终的物理描述,即描述硬件单元和运行在硬件单元上的软件的结构.在这样的架构中,在拓朴图中寻找一个指定节点是可能的,从而了解哪一个组件正在该节点上运行.哪些逻辑元素(类.对象.协作等等)是在本组件中实现的,并且最终可以跟踪到这些元素在系统的初始需求说明(在用例建模中完成的)中的位置. 1.1.1 节点 节点是拥有某些计算资源的物理对象(设备).这些资源包括:带处理器的计算机.一些设备如打印机.读卡机.通信设备等等.在查找或确定实现系统所

简介Linux中cp和mv搭配{,}在shell当中的用法

  这篇文章主要介绍了简介Linux中cp和mv搭配{,}在shell当中的用法,作者举了四个这样的大括号扩展示例,需要的朋友可以参考下 经常会在博客或者论坛看到类似下面的命令 大括号扩展 Brace expansion { } shell 作用 ? 1 cp /etc/httpd/httpd.{,.bakup} 或者是 ? 1 mv resume{z,}.doc 那么,在uinx / linux shell命令中是什么意思?起什么作用呢? { } 并没有什么实际的含义,但是却可以作为Brace

简介Redis中的showlog功能

  这篇文章主要介绍了简介Redis中的showlog功能,作者同时对比了DEL命令的性能,需要的朋友可以参考下 Redis 有一个实用的slowlog功能,正如你可以猜到的,可以让你检查运行缓慢的查询. Slowlog 将会记录运行时间超过Y微秒的最后X条查询. X 和 Y 可以在 redis.conf 或者在运行时通过 CONFIG 命令: 代码如下: CONFIG SET slowlog-log-slower-than 5000 CONFIG SET slowlog-max-len 25

简介JavaScript中用于处理正切的Math.tan()方法

  这篇文章主要介绍了简介JavaScript中用于处理正切的Math.tan()方法,是JS入门学习中的基础知识,需要的朋友可以参考下 这个方法返回一个数字的正切值.tan 方法返回表示的角度的正切值. 语法 ? 1 Math.tan( x ) ; 下面是参数的详细信息: x: 一个数字,表示以角度表示弧度 返回值: 返回一个数字的正切值 例子: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <html> <head&g

uml建模语言-uml中的关系都有什么别名

问题描述 uml中的关系都有什么别名 最近刚学了uml,其中有五个关系:依赖,关联,聚合,泛化,实现.这五个关系是否还有别的名字表达,比如包含,他和上面那个关系是对等的 解决方案 (1).用例图:展示系统外部的各类执行者与系统提供的各种用例之间的关系 (2).类图:展示系统中类的静态结构(类是指具有相同属性和行为的对象,类图用来描述系统中各种类之间的静态结构) (3).对象图:是类图的一种实例化图(对象图是对类图的一种实例化) (4).包图:是一种分组机制.在UML1.1版本中,包图不再看作一种

uml中如何表示java内部类

问题描述 uml中如何表示java内部类 解决方案 见http://www.uml.org.cn/oobject/20111271.asp解决方案二:上面的两个回答非常不错,非常感谢.解决方案三:看这个http://blog.csdn.net/lord_is_layuping/article/details/7247847 有图有真相

uml2-在uml中一个属性可以由类中的其它属性计算出来,这个属性在uml中怎么表示?

问题描述 在uml中一个属性可以由类中的其它属性计算出来,这个属性在uml中怎么表示? 在uml中一个属性可以由类中的其它属性计算出来,这个属性在uml中怎么表示? 解决方案 就是依赖关系http://justsee.iteye.com/blog/808799

UML中的依赖关系

问题描述 我是小白,刚学设计模式,被一些概念性问题困住了UML中的依赖关系说是如果有其中一个类变化,有可能会引起另一个类的变化这个变化我就不明白了,是类的设计(比如增加属性,修改方法)变化呢,还是类的对象变化啊? 解决方案 很久没看资料了.印象中,UML的类的关系有3种:1.继承.实现关系: 这个不用多说了 (UML图中的空心.或实心三角形) (Java代码中的extends.implements)2.组合.聚合关系: 某个对象是另一个对象的一部分. 如果容器对象 对子对象的生命周期负责,那么是