计算机科学
2006Vo
l.
33N
口.
10
基于敏捷化统一过程需求建模的研究及实践
段隆振
l
王凤斌
2
甘晨科
2
黄水源
l
(南昌大学信息工程学院
南昌
330000)1
(南昌航空工业学院
南昌
330000)2
摘
要敏捷建模
(AM)
是适应需求变化、提高软件开发效率的新型建模思想,而
RUP
是
Rational
公司提出的一个
通用的软件开发过程框架。本文分析了当前
RUP
实践的缺点及敏捷建模实践特点,在此基础上总结了敏捷化统一过
程
(AM-RUP)
,并提出了一种
AM-RUP
的需求建模过程
"总体概要需求获取,按需求优先级进行计划,小增量迭
代式简单需求建模"。以社会保险系统的开发为背景,探索了基于
AM-RUP
的需求建模过程及技术。
关键词
软件工程,
RUP
,敏捷建模,需求建模
The
Research
and
Application
of
AM-RUP
Requirement
Modeling
DUAN
Long-Zheng
1
WANG
Feng-Bin
2
GAN
Sheng-Ke
2
HUANG
Shui-Yuan
1
C
Co
llege
of
Information
Engineering
,
Nanchang
University
,
Nanchang
330000)1
CNanch
出喀
Institute
of
Aerial
Technology
,
Nanchang
330000)2
Abstract Agile modeling is a new modeling
through
which is able to
adapt
to the changes in requirement and improve
the efficience in
the
software developing.
RUP
is a general frame of
the
software developmen
t.
This
paper analyses
the
questions in
the
RUP
practices and
the
features in
AM
practices.
Ba
sed
on
this, the
paper
concludes
AM-RUP
, and
brings forward
the
AM-RUP
Requirement Modeling Process-"Getting general requirements, planning by requirement
priorities
, simple
r
巳
quirernnt
modeling
at
the small increment and iterative mode".
Ba
sed
on
the
development of the so
cial insurance
system
this
paper explores the
AM-RUP
requirement modeling process and technology.
Keywords
So
ftware
engineering,
RUP
, Agile modeling, Requirement modeling
当前,软件开发现状不容乐观,不少系统延迟、超支交付,
甚至无法交付。为了解决软件开发面临的困难,学者们提出
了众多的软件开发过程,其中
Rational
统一开发过程
(RUP)
是其中最具代表性的过程之一,也是被广泛采用的一种软件
开发过程。同时,敏捷建模
(AM)
是当今最具突破性的建模
思想,彻底摆脱了传统建模思想的束缚,但它本身并不是一种
完整的方法论,需要结合到具体的开发过程中,
Rational
统一
开发过程良好的可裁剪性使得二者的结合成为可能。而需求
建模的效率是软件开发过程中其它阶段工作的前提,是提高
软件开发效率和质量的关键。将敏捷建模应用到
Rational
统
一开发过程之中进行软件需求建模是很值得探讨的问题。
由于社会保险系统需求复杂性和易变性,本开发团队选
择了基于敏捷化统一过程的需求建模过程和技术进行系统的
需求获取分析,很好地简化了需求建模工作、提高了需求变更
的速度及软件开发质量。
1
Rational
统一过程敏捷化
敏捷建模是一组软件建模价段的指导性原则,是针对基
于软件系统的有效建模和编写文档的一个理乱而有序的、基
于实践的方法旧,是
Scott
W.
Ambler
在众多敏捷方法学的基
础上发展起来的实践的抽象和总结。敏捷建模思想视软件为
首要目标,支持后续工作为第二目标。它主张轻装前进,创建
简单内容、有目的的建模,通过快速反馈及递增变化达到包容
需求变化的效果。有了这些敏捷建模原则,那要如何应用于
实践呢?以下总结敏捷建模思想在软件项目开发的
4
类核心
实践,并与当前统一过程的实践进行比较分析。
·迭代增量简单建模(1)使用合适的制品:每一种制品各
有优势和劣势,为了达到不同的目的,需要采用不同的制品,
段隆振
教授,硕导,研究方向:软件工程、分布式计算、数据挖掘;王凤斌
讲师,硕士。
•
256
•
以获得"物尽其用"的效果。而当前
RUP
实践主要使用
UM
L,然而
UML
并不能满足所有的使用需求,比如用户界
面需求建模。
(2)
并行创建多个模型和迭代到其它制品:任何
模型都不能满足全部建模的需要,对同一业务用不同模型获
取不同侧面的需求。
(3)
小增量建模:较大的工作量分成能够
随时间一个个发布的几个较小部分,最好是跨几个星期或一
两个月左右的增量。该实践抵制了当前
RUP
实践的预先大
型设计(简称
BDUF)
思想,同时防止了花长时间进行建模及
写文档的弊端。
(4)
用简单的工具创建简单的模型,该实践扩
充了当前
RUP
实践使用的工具和模型。
·团队有效协作:协同建模、公开展示模型、用户积极参
与,以便快速达成共同愿景及建立良好的系统架构。
·验证建模工作:由于敏捷开发主张短交付周期,编写代
码来验证模型是最佳的方法。而当前
RUP
实践习惯预先大
型建模,然后进行大量评审工作及相应的修改模型工作,接着
才进行编码工作。
·敏捷文档实践:丢弃临时模型、有危害时才更新模型、
契约模型规范化。而当前
RUP
实践习惯将各种模型和文档
及时更新以保持完全一致(即有很强的跟踪习惯)。
RUP
是一个以用例驱动、体系架构为核心、迭代递增式
的过程,并广泛应用于各类软件的开发当中。由于
RUP
提供
了极为丰富的内容,当前软件界常视其为复杂的过程,但常常
忽略它的关键特点一一可裁剪性。经过以上
AM
实践同当
前
RUP
实践的分析,发现当前
RUP
实践所存在的主要问题
在敏捷建模实践中均得到解决。因此,将
AM
融入
RUP
实
践中能改善软件开发中超时、超支及低质量的现状。
综上分析,敏捷化统一过程
(AM-RUP)
是一个以用户为
中心、需求驱动、小增量迭代、易变更的有序软件开发过程。
助教,硕士,研究方向:数据库应用技术;甘晨科
助教,硕士;黄水源