A. 水晶系列 Crystal(水晶方法)
核心:以人为本,把人作为项目成功最重要因素。
- 水晶家族分多个等级:Crystal Clear(水晶透明)、Crystal Yellow、Orange、Red。
- 根据项目风险、人员规模选用不同等级:项目越大、风险越高,仪式、规则就越多。
- Crystal Clear(水晶透明):适合8人以内小团队,优先人与人沟通,文档尽量少。
- 特点:可裁剪,不同项目采用不同流程;重视人、交互;轻量。
记忆:水晶看项目规模/风险,分级,以人为本。
B. 开放式源码 Open Source 开源开发方法
开源模式,分布式、松散协作,社区驱动。
- 参与者分布各地,没有严格的专职团队;大量志愿者参与。
- 核心规则:早发布、频繁发布;充分利用社区反馈;同行评审。
- 特点:分布式协作;依靠社区;迭代发布;公开代码。
记忆:社区、志愿者、分布式、开源项目。
C. SCRUM
迭代增量敏捷,以Sprint冲刺为核心。
- Product Backlog产品待办列表:全部需求池。
- Sprint Backlog迭代待办:从产品待办挑选本次迭代要做的。
- Sprint(冲刺):固定时间迭代,一般2‑4周,迭代内需求不允许变更。
- 每日站会Daily Scrum:简短例会,三个问题:昨天做了什么、今天做什么、遇到什么障碍。
- Sprint评审会:演示本次迭代可工作产品。
- Sprint回顾会:复盘本次迭代,改进流程。 角色:产品负责人PO、Scrum Master、开发团队。
记忆:冲刺Sprint、3个角色、3个会议、两个Backlog。
D. FDD 功用驱动开发方法 Feature‑Driven Development
功用驱动(也翻译:特性驱动开发)
- 以**Feature(功用/特性)**为核心,小功能特性驱动迭代。
- 五个步骤(教材必背):
- 开发整体模型
- 特征列表构建(分解出大量小feature)
- 按特征规划
- 按特征设计
- 按特征构建
重点:先做整体模型,再拆小特性;适合大型项目;以特性为单位迭代开发。 记忆:FDD,5步,Feature特性,先建模,后按特性设计、构建。
E. ASD 自适应软件开发 Adaptive Software Development
自适应软件开发,强调自适应、迭代、持续学习。 ASD 三个循环:
- 推测(Speculate):不是计划,基于现状推测可能结果
- 协作(Collaborate):团队协作开发
- 学习(Learn):从反馈学习,调整方向
核心理念:项目无法完全预测,需要不断学习调整,拒绝详细的预先计划。 记忆:ASD = 推测‑协作‑学习。
F. XP 极限编程 eXtreme Programming
XP,最经典敏捷,适合需求变化剧烈项目。 核心价值观:沟通、简单、反馈、勇气、尊重。 关键实践:
- 短迭代(1‑2周)
- 结对编程
- 测试驱动开发TDD
- 持续集成
- 简单设计
- 现场客户
- 重构
记忆:XP,结对编程、TDD、现场客户。
G. OpenUP 开放统一过程
OpenUP,基于RUP(统一过程)的敏捷简化版本。
- RUP是重量级;OpenUP是轻量化RUP,保留RUP的4个阶段,裁剪大量文档。 RUP四大阶段:初始阶段、细化阶段、构建阶段、移交阶段。 OpenUP同样这4阶段,但是轻量敏捷,小迭代。
记忆:OpenUP = 敏捷版RUP,保留RUP四大阶段。
注意:本文归作者所有,未经作者允许,不得转载