如何理解敏捷开发?
1、什么是敏捷开发?
敏捷开发是一种思维,是一种团队而不是个人的思维。 它没有固定的套路方法,它是指导思想。
曾经的瀑布式开发,讲究流水线式的专业化分工;
2、敏捷开发主要解决什么问题?
敏捷开发的目的,是快速精准打造客户所需要的产品。所以,
它主要是解决产品的销售问题(找准用户需求),而不是生产问题;
它主要用来面对需求经常变更的情况.
3、敏捷开发以谁为核心?
很明显,敏捷开发需要以domain expert(产品经理、行业专家、用户代表)为中心;
瀑布式开发模式,domain expert控制的粒度是Project。 他们在项目初期的产品设计阶段,做完工作之后,直到测试完验收,才可以再控制产品;
敏捷开发模式,domain expert控制的粒度是property。因为产品的每个特性是一个迭代,迭代初期和后期,他们就可以检查验收。 所以,控制粒度更精细。
4、对团队的要求?
迭代循环次数多,面对需求变更多,就自然而然要求团队的开发能力好,代码可扩展性强
自动化测试多,迭代要求测试次数多了