敏捷开发(一)—准备
2014-12-31 23:28
127 查看
我们在过程式开发(瀑布模型)中,是以文档为驱动的(比如机房合作),整个过程中需要有大量并且很详细的文档,开发人员才能后续开发,一切以文档为驱动,每个阶段有每个阶段的任务,看似每个阶段都有明确的规定,对效率很好,但是实际上相互之间还会产生偏差,并且不适合需求不明确,以及企业级的项目。而且过程式的开发让开发人员成了流水工,时间一长影响员工的激情,继而影响效率,并且也不利于开发人员创新和个人发展。
每7-10年,整个世界就会经历一次翻天覆地的技术变革。——IBMRational 软件总经理
软件开发方法不断处于发展过程中,就目前来看,敏捷开发已经受到越来越多人的重视,从中小项目开始进入大型开发项目,展现出的优势越来越明显。那何为敏捷开发?
什么是敏捷开发?
敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。
怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发。
仔细分析上面对敏捷开发的解释,我们对其中的关键词来进行分析。
以人为核心
敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心。
必要的文档不可少,注重面对面交流像是每天的站会。
迭代、循序渐进
在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。
目前使用jire创建迭代,划分子任务,可视化任务流程,每天的jenkins持续集成和部署。
开发方法
敏捷开发由几种轻量级的软件开发方法组成,包括极限编程、Scrum、精益开发(LeanDevelopment)、动态系统开发方法、特征驱动开发(Feature Driver Development)、水晶开发(CristalClear)等等。所有这些方法都具有以下共同特征,它们也是敏捷开发的原则.
开发原则
1.迭代式开发。即整个开发过程被分为几个迭代周期,每个迭代周期持续的时间一般较短,通常为1到6周。
2.增量交付。产品是在每个迭代周期结束时被逐步交付使用,每次交付的都是可以被部署、能给用户带来即时效益和价值的产品。
3.开发团队和用户反馈推动产品开发。敏捷开发方法主张用户能够全程参与到整个开发过程中。这使需求变化和用户反馈能被动态管理并及时集成到产品中。
4.持续集成。新的功能或需求变化总是尽可能频繁地被整合到产品中。有些是在每个迭代周期结束的时候集成, 有些则每天都在这么做。
5.开发团队自我管理。人是敏捷开发的核心。敏捷开发总是以人为中心建立开发的过程和机制,而非把过程和机制强加给人。
小结
敏捷开发直接带给开发者的是开发者需要承担更多的责任,需要更全面的技术能力,项目的需求和开发者能力这是良性循环。
每7-10年,整个世界就会经历一次翻天覆地的技术变革。——IBMRational 软件总经理
软件开发方法不断处于发展过程中,就目前来看,敏捷开发已经受到越来越多人的重视,从中小项目开始进入大型开发项目,展现出的优势越来越明显。那何为敏捷开发?
什么是敏捷开发?
敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。
怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发。
仔细分析上面对敏捷开发的解释,我们对其中的关键词来进行分析。
以人为核心
敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心。
必要的文档不可少,注重面对面交流像是每天的站会。
迭代、循序渐进
在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。
目前使用jire创建迭代,划分子任务,可视化任务流程,每天的jenkins持续集成和部署。
开发方法
敏捷开发由几种轻量级的软件开发方法组成,包括极限编程、Scrum、精益开发(LeanDevelopment)、动态系统开发方法、特征驱动开发(Feature Driver Development)、水晶开发(CristalClear)等等。所有这些方法都具有以下共同特征,它们也是敏捷开发的原则.
开发原则
1.迭代式开发。即整个开发过程被分为几个迭代周期,每个迭代周期持续的时间一般较短,通常为1到6周。
2.增量交付。产品是在每个迭代周期结束时被逐步交付使用,每次交付的都是可以被部署、能给用户带来即时效益和价值的产品。
3.开发团队和用户反馈推动产品开发。敏捷开发方法主张用户能够全程参与到整个开发过程中。这使需求变化和用户反馈能被动态管理并及时集成到产品中。
4.持续集成。新的功能或需求变化总是尽可能频繁地被整合到产品中。有些是在每个迭代周期结束的时候集成, 有些则每天都在这么做。
5.开发团队自我管理。人是敏捷开发的核心。敏捷开发总是以人为中心建立开发的过程和机制,而非把过程和机制强加给人。
小结
敏捷开发直接带给开发者的是开发者需要承担更多的责任,需要更全面的技术能力,项目的需求和开发者能力这是良性循环。
相关文章推荐
- 敏捷软件开发之环境准备
- 准备Scrum之旅 之 什么是敏捷开发?——《轻松Scrum之旅》(13)
- 准备Scrum之旅 之 招兵买马,打造敏捷开发团队——《轻松Scrum之旅》(15)
- 下定决心,准备买dopod535,做基于M$ smartphone 2003(ce.net 4.2)的开发了
- 敏捷软件开发主要包括哪些方法
- 敏捷软件开发思考:与客户一起开发的现实问题
- 为编程开发准备一台友好的CVS服务器
- 构建一个敏捷的开发团队的小结
- 极限编程与敏捷开发
- 敏捷开发的面向对象的设计原则
- 敏捷开发的必要条件"高手团队"和"软件特征可漂移,但仍可预计成本的小型项目"
- 软件开发的本质 --《敏捷软件开发:原则、模式与实践》
- [原创] 敏捷软件开发管理实践 (三) ——尽可能并行工作
- 手机软件开发学习准备指南
- [原创] 敏捷软件开发管理实践 (二) ——做最细致的项目跟踪
- 我对各敏捷开发方法的大致理解
- 完成工作流的前期准备,就要正式开发了
- 敏捷开发的原则
- 《敏捷软件开发 原则、模式与实践》的读书笔记
- 论敏捷开发中的注意点