UML Distilled - Development Process
Iterative(迭代) and Waterfall(瀑布) Processes
One of the biggest debates about process is that between waterfall and iterative styles.
The essential difference between the two is how you break up a project into smaller chunks.
If you have a project that you think will take a year, few people are comfortable telling the
team to go away for a year and to come back when done .
Some breakdown is needed so that people can approach the problem and
track progress.
The waterfall style breaks down a project based an activity.
To build Software, you have to do certain activities :
* requirements analysis
* design
* coding
* testing
eg: 1-year project might thus have a structure like below:
2-month analysis phase
4-month design phase
3-month coding phase
3-month testing phase
The iterative style breaks down a project by subsets of functionality.
You might take a year and break it into 3-month iterations .
eg: In the first iteration, you'd take a quarter of the requirements and do the complete software life cycle,
for that quarter : analysis, design, code, and test .
At the end of the first iteration, you'd have a system that does a quarter of the needed functionality .
Then you'd do a second iteration so that at the end of 6 months, you'd have a system that
does half the functionality.
Agile Processes
In the past few years, there's been a lot of interest in agile software processes .
Agile is an umbrella term that covers many processes that share a common set of
values and principles as defined by the Manifesto of Agile Software Development
examples of these processes are Extreme Programming(XP), Scrum, Feature Driven Development (FDD),
Crystal, and DSDM(Dynamic Systems Development Method).
Agile approaches assume that the most important factor in a project's success is the quality of the
people and how well they work together in human terms .
Which process they use and which tools they use are strictly second-order effects.
Agile methods tend to use short, time-boxed iterations, most often of a month
or less(2 weeks).
Agile processes are often characterized as lightweight.
Rational Unified Process(RUP)
The Rational Unified Process (RUP) is independent of the UML, the
two are often talked about together.
All RUP projects should follow four phases:
1 . Inception makes an initial evaluation of a project . Typically in inception,
you decide whether to commit enough funds to do an elaboration phase .
2. Elaboration identifies the primary use cases of the project and builds software
in iterations in order to shake out the architecture of the system . At
the end of elaboration, you should have a good sense of the requirements
and a skeletal working System that acts as the seed of development . In particular,
you should have found and resolved the major risks to the project .
3 . Construction continues the building process, developing enough functionality
to release .
4. Transition includes various late-stage activities that you don't do iteratively.
These may include deployment into the data center, user training, and the
like .
UML Distilled - Development Process的更多相关文章
- 软件开发流程 Software development process
		软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ... 
- Software development process
		一.Development process 1.Business/User Requirement 2.Architecture Proposal,Solution Proposal 3.Functi ... 
- <<Linux kernel development>> Process Management
		The Process On modern operating systems,processes provide two virtualizations:a virtualized processo ... 
- UML和UP简介(转载)
		UML(统一建模语言,Unified Modeling Language)是用于系统的可视化建模语言. UP(统一过程,Unified Process)是通用的软件开发过程. 很多人或书籍过大的夸大 ... 
- 《UML和模式应用》读书笔记(一)
		一.绪论 1. 面向对象分析和设计 1.1 什么是分析和设计 分析(analysis)强调的是对问题和需求的调查研究,而不是解决方案. 设计(design)强调的是满足需求的概念上的解决方案,而不是其 ... 
- UML学习笔记_01_基本概念
		1.什么是UML Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发 ... 
- UML学习笔记—基本概念和初始阶段
		chpater1 1.什么是分析和设计 分析:对问题和需求的调查研究 设计:满足需求的概念上的解决方案 做正确的事(分析)和正确地做事(设计) 2.什么是Object-Oriented-Analysi ... 
- 转:深入浅出UML类图(具体到代码层次)
		深入浅出UML类图 作者:刘伟 ,发布于:2012-11-23,来源:CSDN 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML ... 
- 深入浅出UML类图(一)
		在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML Distilled: A Brief Guide to the Standard O ... 
随机推荐
- pl/sql developer 连接本地ORACLE 11g 64位数据库
			1.登录PL/SQL Developer 这里省略Oracle数据库和PL/SQL Developer的安装步骤,注意在安装PL/SQL Developer软件时,不要安装在Program Files ... 
- java中的getClass()函数
			Java反射学习 所谓反射,可以理解为在运行时期获取对象类型信息的操作.传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代 ... 
- java 中常见异常
			1. Java.lang.NullPointerException 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的 ... 
- 《C++ primer》--第12章
			习题12.7 什么是封装?为什么封装是有用的? 解答: 封装是一种将低层次的元素组合起来形成新的.高层次实体的技术.例如,函数是封装的一种形式:函数所执行的细节行为被封装在函数本身这个更大的实体中:类 ... 
- 解决duilib使用zip换肤卡顿的问题:修改duilib并使用资源文件换肤
			转载请说明原出处,谢谢~~ 今天在做单子是,客户要求做换肤功能,为此我专门写了一个换肤函数,并且把各种皮肤资源压缩为各个zip文件来换肤.但是客户反映程序运行缓慢,我测试后发现的确明显可以看出慢了不少 ... 
- 我喜欢的乐队-Euphoria
			来自日本的后摇乐团,001年冬天由森川裕之.佐藤昭太.木下阳辅三人于东京组建,2003年签约日本独立厂牌123Record,并发行首张EP细碟<Floral Dew>.包括EP.Singl ... 
- C语言相关图书推荐
			C Primer Plus(第5版 中文版) 作 者 [美] 普拉塔(Prata S.) 著:云巅工作室 编 出 版 社 人民邮电出版社 出版时间 2005-02-01 版 次 1 ... 
- kendoui-在线文本编辑器
			文本编辑器用过很多,fckeditor是我之前用的最多的,但是问题也有很多,诸如安全问题,浏览器兼容问题..所以最近也一直在找替代产品,正好在研究kendo,所以就尝试了下kendo提供的edit控件 ... 
- Bias/variance tradeoff
			线性回归中有欠拟合与过拟合,例如下图: 则会形成欠拟合, 则会形成过拟合. 尽管五次多项式会精确的预测训练集中的样本点,但在预测训练集中没有的数据,则不能很好的预测,也就是说有较大的泛化误差,上面的右 ... 
- BITED数学建模七日谈之二:怎样阅读数学模型教材
			今天进入我们数学建模七日谈的第二天:怎样阅读数学建模教材? 大家再学习数学建模这门课程或准备比赛的时候,往往都是从教材开始的,教材的系统性让我们能够很快,很深入地了解前人在数学模型方面已有的研究成果, ... 
