其实最早对于开发模式我是没有什么概念的,一开始我认为就是 用户有啥需求我们就给用户提供什么 体验,但是 慢慢了解到,事实并不是这样,大多数用户都并不知道他们到底要什么, 他们脑海中只是有一个模糊的概念,只能给我们 一个大概的描述,所以剩下的就要靠我们来读懂用户的需求,这里就不得不说敏捷开发了 它的宗旨就是抓住最关键的核心应用,知道用户最想要的关键的一环 在此基础上看看能不能添加更好的。敏捷开发:敏捷开发追求合作与响应变化。迭代就是缩短版本的发布周期,缩短到周、日,完成一个小的功能模块,可以快速测试、并及时展现给客户,以便及时反馈。敏捷开发集成了新型开发模式的共同特点,它重点强调:
1. 以人为本,注重编程中人的自我特长发挥。
2. 强调软件开发的产品是软件,而不是文档。文档是为软件开发服务的,而不是开发的主体。
3. 客户与开发者的关系是协作,不是合约。开发者不是客户业务的“专家”,要适应客户的需求,是要客户合作来阐述实际的需求细节,而不是为了开发软件,把开发人员变成客户业务的专家,这是传统开发模式或行业软件开发企业的最大面临问题。
4. 设计周密是为了最终软件的质量,但不表明设计比实现更重要,要适应客户需求的不断变化,设计也要不断跟进,不断根据环境的变化,修改自己的设计,指导开发的方向是敏捷开发的目标。
敏捷开发避免了传统瀑布方式的弊端,主要是吸收了各种新型开发模式的“动态”特性,关注点从文档到开发者,管理方式也从工厂的流水线到团队的自我放松式的组织。
敏捷就是“快”,快才可以适应目前社会的快节奏;要快就要发挥个人的个性思维多一些,个性思维的增多,虽然通过结队编程、代码共有、团队替补等方式减少个人对软件的影响力,但也会造成软件开发继承性的下降,因此敏捷开发是一个新的思路,但不是软件开发的终极选择。对于长时间、人数众多的大型软件应用的开发,文档的管理与衔接作用还是不可替代的。