携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第19天,点击查看活动详情
敏捷项目管理理念与方法实践
- 软件开发复杂和不可预测
- 敏捷更符合软件开发规律(先做出产品的雏形,根据客户和市场的反馈逐步完善)
- 敏捷方法基于经验主义,不断进行迭代增量开发
传统开发模型——瀑布模型
- 两次瀑布迭代模型(Winston Royce提出)
- 将文档化的东西先试着预先走一遍,看看能否成为最终的产品
敏捷开发与瀑布开发的外在区别
- 瀑布开发:做完所有的需求分析后进行设计、开发、测试,一次性交付
- 敏捷开发是迭代进行,将需求拆分成小颗粒,每个迭代只交付一个
敏捷开发与瀑布开发的内在区别
- 瀑布开发:以计划为驱动(Fix Scope, Flex time(固定范围,弹性时间))
- 敏捷开发:以价值为驱动(Fix time, Flex Scope(固定时间,弹性范围))
- 计划驱动——>价值驱动
敏捷开发宣言
敏捷开发主张的方法论
敏捷开发管理方法——Scrum
- 首先,将需求形成一个产品代办列表
- 在迭代的计划会议中,从产品代办列表选取适当的需求条目,进入到sprint(可以理解为迭代)代办列表
- 进去2-4weeks的迭代开发过程(每日进行Scrum站会(一般不超过15分钟))
- 迭代完成后,提交一个潜在的可交付的产品增量给客户进行评审
敏捷开发管理方法——Kanban(看板)
- 看板源于精益生产实践(丰田生产),可视化管理理念
- 将研发的过程进行管理,记录下用户故事研发过程中的细节和历程
不同场景下敏捷开发实践
敏捷开发实践举例
- 用户故事地图
- 从左到右:讲述用户经历的重要步骤
- 自顶向下:拆分上述每个步骤的细节,常见方式是按照用户活动、用户任务、 用户故事三个层级进行细拆
- 影响地图
- 它是在通过回答以下四个问题的讨论中,完善的一种思维导图。可以简单理解 为是一种四级结构的需求实践
-
Why:为什么做?
-
Who:谁有助于做到?
-
How:他们怎么帮助?
-
What:用什么功能来做?
-
- 它是在通过回答以下四个问题的讨论中,完善的一种思维导图。可以简单理解 为是一种四级结构的需求实践