敏捷开发是一种过程控制论,通俗的说,就是一种做事情的方法。
(1)它适用于软件,因为软件可以改,要是硬件,改起来就没那么方便了。
(2)它适用于客户不知道自己要啥的情况,需要和客户沟通、合作、倾听反馈,持续改进。
(3)它适用于竞争激烈的市场。
(4)它适用于一个地方办公的小团队,这样能使敏捷中主要沟通方式“Face to Face”是可行的。
敏捷开发是一套工具集
比如:
(1)站会:三个问题,简洁有效的小团队沟通方式
(2)看板:直观反映工作进度,反映流程遵守情况,反映流程缺陷。
(3)演示、计划、反思会:适合于小团队的协作和优化反馈方式。
(4)用户故事:站在用户的角度讲需求。
(5)持续集成:随时高质量交付的基础,有利于应对变化剧烈的市场。
敏捷开发是一种企业管理方式
比如:
(1)一线员工可以同时是架构师、Scrum Master、开发工程师、测试工程师,发挥了他的主观能动性,有利于创新和效率。
(2)敏捷不专注于敏捷团队中个人的绩效考核,而更多的侧重于整个团队的绩效,更好的避免KPI驱动模式。
(3)把大项目拆分成小项目去做(每个Sprint都是一个迭代,需要输出一个高质量的版本,相当于完成一个小项目),把bug的生存期控制在一个迭代以内,降低了风险,以减少了后期改bug的工作量。
(4)把数十人的大team分成几个敏捷团队,这几个敏捷团队的Scrum Master/PO再组成一个更高一级的敏捷团队,利用站会、反思、看板等等敏捷元素,可以避免数十邮件也不能解决一个小问题,大家互相踢皮球,沟通不畅的大企业病。
(5)老板可以是最大的PO,他给下面的高管讲idea(User Story),定期检查Demo,把控产品用户体验,负责和外界沟通合作。
最后欢迎大家访问我的个人网站:1024s