从《Java 敏捷开发》中获得的启发,为了敏捷开发需要使用最小化的软件开发过程,这个过程只要保证项目有效进行和满足客户需求即可。
书中给出了一个简单范例开发过程:
[b]1. 项目初期[/b]
* 非正式业务需求和问题的讨论
* 项目开始
* 定义问题描述 (如,核心用例)
[b]2. 项目探索阶段[/b]
* 探索业务主要的概念 (建立领域模型)
* 建立基本原形和故事板 (针对用户界面程序)
* 定义项目范围 (定义项目中应该做的事推迟做的事)
* 定义下个阶段的用户故事
* 建立非正式白板上的架构图
[b]3. 计划 [/b]
* 下个版本系统的计划
* 建立公共的业务词汇表
* 制定下个迭代中的迭代计划
* 建立系统规范 (命名规范,代码规范,check in / out 规范,集成规范)
[b]4. 在迭代中进行渐进式的软件构建过程[/b]
* 进行周期大约为两周的迭代开发,在第 0 次迭代中进行环境安装和概念证明
* 每次迭代之前进行迭代计划会议,选择下次迭代中要实现的用户故事
* 基于用户故事对开发者任务进行最佳估算
* 用户对具体需求进行验收测试,开发者对这些需求都进行单元测试
* 开发者在设计和开发时需要用户的积极参与,便于沟通
* 在通过验收测试后,每两周发布一次成品代码
书中给出了一个简单范例开发过程:
[b]1. 项目初期[/b]
* 非正式业务需求和问题的讨论
* 项目开始
* 定义问题描述 (如,核心用例)
[b]2. 项目探索阶段[/b]
* 探索业务主要的概念 (建立领域模型)
* 建立基本原形和故事板 (针对用户界面程序)
* 定义项目范围 (定义项目中应该做的事推迟做的事)
* 定义下个阶段的用户故事
* 建立非正式白板上的架构图
[b]3. 计划 [/b]
* 下个版本系统的计划
* 建立公共的业务词汇表
* 制定下个迭代中的迭代计划
* 建立系统规范 (命名规范,代码规范,check in / out 规范,集成规范)
[b]4. 在迭代中进行渐进式的软件构建过程[/b]
* 进行周期大约为两周的迭代开发,在第 0 次迭代中进行环境安装和概念证明
* 每次迭代之前进行迭代计划会议,选择下次迭代中要实现的用户故事
* 基于用户故事对开发者任务进行最佳估算
* 用户对具体需求进行验收测试,开发者对这些需求都进行单元测试
* 开发者在设计和开发时需要用户的积极参与,便于沟通
* 在通过验收测试后,每两周发布一次成品代码