UML Distilled - Development Process

简介: Iterative(迭代) and Waterfall(瀑布) Processes One of the biggest debates about process is that between waterfall and iterative styles.

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 .

 

 

 

 

 

 

目录
相关文章
|
2月前
|
uml
UML之类图
UML之类图
56 1
|
2月前
|
数据可视化 Java uml
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
70 1
|
9月前
|
uml
IDEA使用插件绘制UML类图+PlantUML语法讲解
IDEA使用插件绘制UML类图+PlantUML语法讲解
507 0
|
1月前
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
74 1
|
2月前
|
设计模式 数据可视化 程序员
软件设计模式:UML类图
软件设计模式:UML类图
|
2月前
|
数据可视化 Java uml
Java的UML类图
Java的UML类图
27 1
|
1月前
|
测试技术 uml
【UML】详解UML类图
【UML】详解UML类图
28 0
|
2月前
|
存储 Java uml
Java-UML类图简介
Java-UML类图简介
31 0
|
11月前
|
uml
UML类图的 绘制标准 及 绘制工具
讲解绘制类图的标准,以及如何使用ProcessOn(在线工具 无需下载)轻松绘制类图
221 0
|
2月前
|
Java uml
【开发规范】UML类图
【1月更文挑战第27天】【开发规范】UML类图