RUP(Rational Unified Process)笔记整理
RUP,统一软件开发过程是一种面向对象且基于网络的程序开发方法论。
RUP的思路:Implementing BestPractices
·迭代式开发
在软件开发的早期阶段就想完全、准确的捕获用户的需求几乎是不可能的。实际上,我们经常遇到的问题是需求在整个软件开发工程中经常会改变。迭代式开发允许在每次迭代过程中需求可能有变化,通过不断细化来加深对问题的理解。
迭代式开发的优点:降低风险;
得到早期用户反馈;
持续性的测试和集成;
适应变更;
提高复用性。
迭代式开发示意图:
·需求管理
需求管理是一种用于查找、记录、组织和跟踪系统需求变更的系统化方法。包括:提取、组织系统的功能和约束,并将他们写成文档;估计需求的变化并评估它们会产生的影响;跟踪需求的实现。
RUP的开发活动是用例驱动的(Use case-driven)、他强调要在透彻理解提交的系统将如何被使用的基础上建造系统。用力和脚本的表示方法用于编排从需求捕获到测试的过程流,并提供从开发到提交系统的可跟踪的线索。
·使用构件架构
对体系结构进行自下而上的设计、实现和测试;用一种系统化的做法来定义好的体系结构;采用定义明确的接口来使得变更有弹性;采用现成的和通过逆向工程得到的构件;用高级别的用例来驱动;易于直观上的理解。
·可视化建模
RUP往往和UML联系在一起,对软件系统建立可视化模型帮助人们提供管理软件复杂性的能力。RUP告诉我们如何可视化的对软件系统建模,获取有关体系结构于组件的结构和行为信息。保证了设计和实现上的一致性,保证没有歧义的沟通。
·检验质量
在RUP中软件质量评估不再是事后进行或单独小组进行的分离活动,而是内建于过程中的所有活动,这样可以及早发现软件中的缺陷。
方法:为每个关键模块创建测试用例并测试,从而保证所有的需求被正确的实现。不可接受的应用性能和不能接受的可靠性对一个软件系统的影响同等重要。眼见软件的可靠性,例如:内存泄露、性能瓶颈。对每一次迭代进行测试。
·控制变更
迭代式开发中如果没有严格的控制和协调,整个软件开发过程很快就陷入混乱之中,RUP描述了如何控制、跟踪、监控、修改以确保成功的迭代开发。RUP通过在软件开发过程中控制、追踪和监控项目的所有变更,从而启动每次迭代;为每个开发者建立安却的工作空间;对不同工作间的改动提供隔离机制,控制所有的软件制品:模型、代码、文档等。
RUP的基本特征:
·迭代式增量开发
将软件开发分为一系列的迭代过程,在每个迭代过程中逐步增加信息、进行细化;根据具体情况决定迭代的次数、每次迭代延续的时间以及迭代工作流;每次迭代都选择目前风险影响最大的用例进行,以分解和降低风险。
·用例(UseCase-driven)驱动
采用用例来捕获对目标系统的功能需求;采用用例来驱动软件的整个开发过程,保证需求的可跟踪性,确保系统的所有功能均被实现;将用户关心的软件系统的业务功能模型和开发人员关心的目标软件系统的功能实体模型结合起来,提供一种贯穿整个软件生存周期的开发方式,使得软件开发的各个阶段的工作自然、一致的协调起来。
·以软件体系结构为中心
强调在开发过程的早期,识别出与软件体系结构紧密相关的用例,并通过对这些用例的分析、设计、实现和测试,形成体系结构框架;在后续阶段中对已形成的体系结构框架进行不断细化,最终实现整个系统;在开发国政的早期形成良好的软件体系结构,有利于对系统的理解、支持重用和有效的组织软件开发。
RUP(Rational Unified Process)笔记整理的更多相关文章
- RUP(Rational Unified Process)统一软件过程概述
RUP是Rational公司三位杰出的软件工程大师Grady Booch,Ivar Jacobson,James Rumbaugh提出的一个软件工程过程方法.软件开发过程是将一个用户需求转化为软件系统 ...
- RUP(Rational Unified Process)
RUP Rational Unified Process 目前阶段在学习UML,怎么会写RUP呢?学习UML是为了更好的把系统搭建好,RUP也是一样,为系统服务! 软件危机 美国国家总审计局,在198 ...
- [转]比较 Rational Unified Process (RUP) 和 Microsoft Solutions Framework (MSF)
文档选项 将此页作为电子邮件发送 级别: 初级 Sandra Sergi Santos, 软件工程专家, IBM 2007 年 6 月 15 日 本文来自于 Rational Edge:Micro ...
- RUP(Rational Unified Process),统一软件开发过程
RUP(Rational Unified Process),统一软件开发过程 https://baike.baidu.com/item/RUP/8924595?fr=aladdin RUP最重要的它有 ...
- UML——RUP(Rational Unified Process)
一.宏观导图 二.论细节 RUP(Rational Unified Process)统一软件过程,是指要达到一个指定的目标而采取的一些系列有序的步骤,其目的是高效.准时地提交一个满足业务需求的软件产品 ...
- 运维开发笔记整理-django日志配置
运维开发笔记整理-django日志配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Django日志 Django使用python内建的logging模块打印日志,Pytho ...
- 运维开发笔记整理-基于类的视图(CBV)
运维开发笔记整理-基于类的视图(CBV) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.FBV与CBV 1>.什么是FBV FBC(function base views ...
- 最全mysql笔记整理
mysql笔记整理 作者:python技术人 博客:https://www.cnblogs.com/lpdeboke Windows服务 -- 启动MySQL net start mysql -- 创 ...
- python学习笔记整理——字典
python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...
随机推荐
- 在线词典php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- The "Run One Program Only" Phenomenon
As previously discussed,embedded devices normally embody the functionality they implement.In other w ...
- Brew install for mac
安装命令例如以下: curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --st ...
- HTML5 新增通用属性
一:HTML5保留的常用元素 7. 表格相关元素.表格在html里还算重要的了. <table> :用于表格定义. cellpadding: 单元格内容和单元格边框距离 ...
- HTML之学习笔记(五)图片加载
Html图片的处理一般采用<img>标签 语法: 例如<img src="地址" /> 地址: ...
- HTML之学习笔记(三)文本标签
标题标签 html的标题标签从h1~h6共六个级别,权值不断降低,即不断变小,不用使用CSS控制来取代h标签,因为网页搜索引擎通过搜索到你的页面,找到你页面的h标签并为h标签建立索引,如果h标签被替代 ...
- HTTP错误500.22 检测到在集成的托管管道模式下不适用的ASP.NET设置
这里主要把集成模式改成经典模式 解决方案一: 解决方案二: 修改配置文件web.config 将 <configuration> <system.web> <compil ...
- events模块
/** * Created by Administrator on 2016/8/3. */ var http = require("http"); //Node 导入文件系统模块 ...
- Apache与Nginx优缺点比较
本文来源:收集.整理自互联网 1.nginx相对于apache的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache ...
- 用while判断输入的数字是否回文数
/* Name:用while判断输入的数字是否回文数 Copyright: By.不懂网络 Author: Yangbin Date:2014年2月18日 04:29:07 Description:用 ...