瀑布模型等, 有问题:开发到一半,需求变动,项目要推倒重建,之前白做了.
敏捷开发有几种: scrm,xp
原则/特点:
结对编程:2个人同时写一段代码,互相有的监督,
小步快跑:一个迭代需求不变动,
大量使用自动化测试, 单元测试层面较好.
TDD: 测试驱动的开发, 开发的代码使测试代码可以正确运行.
行为驱动开发: 开发框架,cucumber,自然语言的伪代码
强调沟通,弱化文档.高效协作.
每天站会, 一般是早上,昨天做了什么,今天计划做什么,有什么需要协助的.燃尽图…站着开会,短暂有效的沟通,
实现一部分,上线一部分
google模式,单元测试代码与开发代码一起提交的,还有code review.必须可运行可测试.更快容易定位问题.
快速质量的反馈,每次提交相对是正确的.比如提交500行代码没过,就找这500行.
重构,只做明确的需求,不做冗余的设计.2 ~4周开发时间,如果需求有变动,就在原来的基础上重构.