- 敏捷开发
- 敏捷开发宣言
- 敏捷开发路线
敏捷开发(Agile development)
敏捷开发是以认为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都将经过验收测试,具备可运行的特征。简而言之,就是把一个大项目分为多个项目联系,但是可独立运行的小项目,并分别完成。在此过程中软件一直处于可使用状态。
瀑布开发模型是以文档为驱动,在瀑布的整个开发过程中,要写当量的文档,把需求文档写出来之后,开发人员多少个我根据文档进行开发的,一切以文档为依据;而敏捷开发它只需要写必要的文档,注重的是人与人之间,面对面交流。
敏捷开发宣言
个体交互 胜过 过程和工具
可以工作的软件 胜过 面面俱到的文档
客户合作 胜过 客户谈判
响应变化 胜过 遵循计划
虽然右项目也有价值,但我们认为左项具有更到的价值
敏捷开发线路
我们公司敏捷开发实践:
迭代开发(Iteration)
看可以工作的软件胜过面面俱到的文档。因此,敏捷开发提倡讲一个完整的软件版本划分为多个迭代,
每个迭代实现不同的特性。重大的、优先级高的、风险高的优先实现。
在项目的早起就将软件的原型开发出来,并基于这个原型在后续的迭代上进行不断的完善。
迭代计划会议(IterationPlanningMetting)
每个迭代启动时,召开迭代计划会议,领取任务,分析任务,评分任务 明确迭代的开发任务
功能列表(Feature List)
功能列表中迭代周期为2星期,交付前测试。当一个功能列表完成后,测试组再进行完整的测试。
当前的状态贴在4个区域中,分别是:需求整理,开发中,测试中,用户体验。
在开发人员开始开发一个Story时,ta需要找来对应的测试人员讲解Story功能,以便测试人员有一致的理解,
同时开始自动化系统测试脚本的开发。
站会(Standup Metting)
每天早上,所有的团队成员围在一起,开一个高效率的会议,通常不超过15分钟,汇报开发进展,以及今天要做内容
结对编程(Pair Programming)
结对编程是指两个开发人员结对编码。
结对编程的好处是:经过两个人讨论后编写的代码比一个人独立完成会更加的完善,
一些大的方向不至于出现偏差 ,一些细节也可以被充分考虑到。
一个有经验的开发人员和一个新手结对编程,可以促进新手的成长,保证软件开发的质量
Sprint Retrospective Meeting)
总结和反思。每个迭代结束以后,项目组成员召开总结会议,总结好的实践和教训,并落实到后续的开发中。