软件工程-敏捷开发

敏捷开发

敏捷方法

  • 是一种增量开发方法。快速完成、快速交付
  • 客户参与,以便获得关于需求变化的快速反馈
  • 将设计和实现作为中心活动,其他活动融入其中
  • 尽量减少文档化

敏捷宣言

  • 个体和互动 高于 流程和工具
  • 可工作的软件 高于 详尽的文档
  • 客户合作 高于 合同谈判
  • 响应变化 高于 遵循计划

敏捷方法的原则

  • 客户参与
  • 拥抱变化
  • 增量交付
  • 保持简洁
  • 人而不是过程

敏捷开发技术

  • 敏捷方法的基本思想来源于90年代的极限编程
  • 极限水平:一个系统的多个版本由不同的成员在一天内开发、集成和测试

Scrum敏捷方法

被提出以提供一个组织敏捷项目的框架,在一定程度上提供项目进展状况的外部可见性

scrum术语

  • 冲刺:一种开发迭代,通常2~4周
  • 每日站立会议:例行会议

scrum冲刺周期

软件工程-敏捷开发_第1张图片

Scrum的优点

  • 产品被分解成一组、可理解、利益相关者可以对应的条块
  • 不稳定的需求不会影响进度
  • 整个团队都对所有的一切保持可见
  • 客户按时看到增量的交付,并获得及时反馈
  • 客户和团队建立了 信任,每个人都期望项目成功

思考题:敏捷方法很成功,现实中仍存在的问题有哪些

大公司、复杂系统

  • 非正式的特性与大公司的合同定义不相符
  • 敏捷开发是应用开发而不是软件维护,大公司大部分的软件成本来自软件维护
  • 敏捷方法适用于小的、同处一地的团队,现实中大系统开发团队都是遍布世界各地

维护阶段

  • 缺少产品文档
  • 保持客户参与
  • 开发团队的延续性

你可能感兴趣的:(软件工程,敏捷流程)