当前位置:网站首页>谈谈敏捷开发概念和迭代开发方案
谈谈敏捷开发概念和迭代开发方案
2020-11-09 15:25:00 【香飘飘奶搽】
自敏捷开发这一概率进入我们的视野,仅在短短几年内,软件开发领域便进入了高速开发的时代。似乎从业者们都在谈快速,谈迭代,不管是否感受过敏捷开发的益处,先跟风吹起来,只要凑近这一新技术,就像走在了行业的前列。
领域中有部分人采用敏捷开发做项目,其每个迭代都能看到不断完善的产品,相关人员表示非常有成就感,客户的满意度也很高;另一部分开发者则用迭代开发,完全按照客户需求来开发软件,按照优先级排到迭代周期即可。有时就在思考,敏捷开发好像也分迭代周期的,这两者会不会就是一回事?
迭代开发是什么?迭代开发流程:
在迭代开发中,整个工作被划分为一系列袖珍的、固定时间的小项目,这叫系列迭代,即是迭代开发。每一次迭代都包括了定义、需求分析、设计、实现与测试。而敏捷开发是以用户的需求为核心,采用迭代、循序渐进的方式开发软件。
前者是软件的开发周期模型,是一种开发过程;而后者是多种软件开发项目管理方法的集合,这是两者最根本的区别。与迭代开发对应是瀑布模型、螺旋模型,而与敏捷开发对应的是Scrum,XP(极限编程),Crystal(水晶编程),所以二者不可混为一谈,但其中又有一定的联系。
在敏捷开发的定义中已说明,其采用了迭代的方法。那敏捷开发为什么要采用迭代开发?
敏捷开发的核心原则是关注项目中的变化。迭代式开发正适用于需求不明确的项目,如果开发过程中突然变化需求,所带来的影响要比其他模型小。而现在的很多项目中,需求在开发过程中变化的情况很常见,所以迭代式开发就显得更有优势,这正符合敏捷开发的关注变化的特性。
迭代开发不要求把每个阶段都做到完美,明知还有不足之处却不完善,而是追求用最短的时间搭建出主要功能,用最低成本先完成一个“主体半成品”直至提交,然后再通过客户或用户的反馈信息,在这个“主体半成品”上逐步进行完善,这正符合敏捷开发的递增变化。
敏捷开发是总体概念,而迭代式开发是实践敏捷开发概念的一个手段。敏捷开发除迭代式开发外,还包含了其他许多管理与工程技术实践,如演进式架构设计、敏捷建模、重构、自动回归测试(ART)。综上,敏捷开发与迭代开发是整体与局部的关系,前者是家族,而后者是家族成员。
敏捷开发概念发展史
虽然敏捷和迭代不一样,但是它们也是分不开的,二者的有机结合,既能保证产品质量又可保持在项目持续改进过程中的优势。吸取精华,破其糟粕,只有这样,项目才会趋于完美。
所以敏捷和迭代的方式一定是完美的?这还真不一定,但不可否认的是敏捷开发相对于传统开发是有很大优势的。
近些年来,由于一些特定的需求,越来越多的软件团队开始采用敏捷开发模式,但是在开发过程中却对其核心思想理解不足,有些敏捷开发团队甚至没有管理者,仅设一名Scrum Master向产品经理汇报,职责划分也很暧昧。
除了软件公司,在很多常规企业中,敏捷开发已经成为一种无负责人的开发流程。所谓的产品经理与销售、CEO随意加功能、改需求,然后交给开发团队去“敏捷”开发。在开发过程中,需求调研、设计、反馈、代码评审、测试、全不需要。说好听点这叫敏捷开发,说不好听点,这就是技术大杂烩,能做到哪一步算哪一步,完全忽略了敏捷开发的实质。
而实际上,敏捷开发并不是这样的,迭代的核心在于软件的超前规划。如果没有专业规划者的全程指导,造出来的软件系统必不合格 -- 时间超限、预算超支、充斥着各种不科学的奇思妙想、根本不管需求是否合乎逻辑。所以,无论用什么开发思维,不管是哪种开发手段,都要制定合理科学的开发方案,这样才可事半功倍。
更多敏捷开发详情参阅:https://www.learun.cn
版权声明
本文为[香飘飘奶搽]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4455046/blog/4710048
边栏推荐
猜你喜欢
移动安全加固助力 App 实现全面、有效的安全防护
岗位内推 | 微软亚洲研究院智能多媒体组招聘计算机视觉算法实习生
Data consistency of cache
Openyurt in depth interpretation: how to build kubernetes native cloud edge efficient collaborative network?
I heard that you changed your registered residence overnight. How can you help yourself if you work like ping?
A quick start to Shell Scripting
要我说,多线程事务它必须就是个伪命题!
Cad2016 download autocad2016 download installation detailed tutorial CAD Download
How can you be a big data worker with an annual salary of 40W if you don't work hard?
Cad2016 software installation tutorial
随机推荐
C language -- game of Sanzi
It's amazing! Ali senior architect 20 years of experience, collate and share servicemesh actual combat documents, pay rise is bad for this article!
Leetcode algorithm (1)
AutoCAD2020 完整版安装图文教程、注册激活破解方法
在Python中创建文字云或标签云
H5公众号点击内置浏览器的关闭(左上角的叉叉)监听到事件
5分钟GET我使用Github 5 年总结的这些骚操作!
Android byte beat one side, was hanged by the interviewer! Fortunately, we got the offer from three sides
What is website [new four modernizations]?
Spark Learning (2) -- job scheduling and shuffle analysis
Mobile security reinforcement helps app achieve comprehensive and effective security protection
CAD2016下载AutoCAD2016下载安装详细教程CAD下载
AutoCAD 2020 installation package & Installation Tutorial
International top journal radiology published the latest joint results of Huawei cloud, AI assisted detection of cerebral aneurysms
I interviewed a 33 year old Android programmer, who could only program for Baidu, but wanted 25K, which was met by me
CCF BDCI热门赛题:非结构化商业文本信息中隐私信息识别
移动安全加固助力 App 实现全面、有效的安全防护
【亲测有效】Github无法访问或者访问速度的解决方案
arthas无网络环境下离线安装方法
HomeLede 2020.11.08 v5.4.72内核 UPnP+NAS+多拨+网盘+DNS优化+帕斯沃 无缝集成+软件包