论敏捷开发的优缺点

踏入软件开发行列时间不算短了,也使用过很多项目管理软件和方法,但是在使用过程中多多少少都会遇到一些问题吧,同行们或多或少也会有相应的体验。近期试用了一下华为最新推出的项目管理工具-华为软件开发云,接触了敏捷开发,产生一些想法。以下是使用体验,仅供同行们参考。

一、敏捷开发技术的几个特点和优势:

1.个体和交互胜过过程和工具

2.可以工作的软件胜过面面俱到的文档

3.客户合作胜过合同谈判

4.响应变化胜过遵循计划

二、敏捷开发技术的12个原则:

1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。

2.即使到了开发的后期,也欢迎改变需求。

3.经常性地交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好。

4.在整个项目开发期间,业务人员和开发人员必须天天都在一起工作。

5.围绕被激励起来的个人来构建项目。

6.在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。

7.工作的软件是首要的进度度量标准。

8.敏捷过程提倡可持续的开发速度。

9.不断地关注优秀的技能和好的设计会增强敏捷能力。

10.简单使未完成的工作最大化。

11.最好的构架、需求和设计出自于自组织的团队。

12.每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。

三、敏捷开发技术的适用范围

1.项目团队的人数不能太多

2.项目经常发生变更

3.高风险的项目实施

4.开发人员可以参与决策

根据以上三点,大体可以总结出:

优势:

敏捷确实是项目进入实质开发迭代阶段,用户很快可以看到一个基线架构版的产品。敏捷注重市场快速反应能力,也即具体应对能力,客户前期满意度高。

劣势:

但敏捷注重人员的沟通,忽略文档的重要性,若项目人员流动大太,又给维护带来不少难度,特别项目存在新手比较多时,老员工比较累。

需要项目中存在经验较强的人,要不大项目中容易遇到瓶颈问题。

结合华为软件开发云,他们提供了两种项目创建方法:Scrum和Scrum精简,可以结合自己的不同习惯,选择合适自己团队的方法,这点还是不错的。

同时,华为软件开发云,在文档和百科管理上,也增加了自己的特色,有效避免传统敏捷开发的劣势。大家不妨试用一下,后续有什么建议和想法,欢迎一起探讨。

时间: 2024-08-03 15:38:19

论敏捷开发的优缺点的相关文章

敏捷开发与传统开发方式的比较

敏捷开发的起源 在90年代末期,传统软件开发的方式因为其繁杂的过程,以及对文档的过于严格的要求,造成了很大程度上的效率下降,也就是人们所说的"重型化危机".因为这一原因,人们开始反思传统方法的利弊,并对其弊端进行了改进,提出了敏捷方法. 2001年2月,由Martin Fowler,Jim Highsmith等17位软件开发专家起草的敏捷宣言发表,敏捷联盟成立.敏捷开发作为一种新的方法正式诞生.敏捷宣言中所表述的价值观分为四个方面: (1)个体和互动 高于 流程和工具(2)工作的软件

[敏捷开发实践](1) 认识敏捷开发

[敏捷开发实践](1) 认识敏捷开发 1,提要 软件开发是一个系统工程,包括最初的可行性分析.再到设计.开发.测试.维护等整个生命周期.在这个过程中某些阶段的失误或说是变化,都可能增加整个软件项目的风险. 如何在保证效率的基础上还能安计划.保证质量的完成软件项目?于是产生了软件开发的一些方法,这个方法不是指具体有编码阶段的各种设计模式和技巧,而是在整个软件开发策略层面的方法. 传统瀑布模式和新型的敏捷开发就是其中最常用的方法,后面着重讨论敏捷开发的优缺点和敏捷开发的基础知识. 2,常用的开发模式

聊聊敏捷开发

从我个人入行短暂的经历来看,敏捷开发和瀑布开发两种软件开发流程是现在的WEB开发中提到的比较多的.工作中也有大牛们分享对两种开发流程的优缺点的比较分析,但我个人是没有经历过瀑布开发的,没有经历也就谈不上理解.下面就站在一个软件开发工程师的角度,谈谈我个人对敏捷开发的一些理解. 图1 对敏捷开发的理解 如上图所示,软件开发的一般流程可以认为是:需求分析.系统设计.系统研发.系统测试,最后也就是系统上线.敏捷开发之所以敏捷,我认为是对总体的项目进行了分解,项目并非一次完成目的,而是分解成了多期的小目

高效程序员的45个习惯-敏捷开发之道 读书笔记

1. 做事在软件出了bug之后,应该首先根据现象找到问题的根源,而不是去找到当时编写这段代码的人,去痛骂一顿,指责是不能解决bug的.2. 欲速则不达  2.1 不要急于修复一段自己没有看懂的代码,另外,在修正时,要投入时间和精力保证代码的整洁和可阅读性  2.2 代码阅读的时间是远大于编写的时间,所以在编写的时候指的花点功夫让他阅读起来更加简单  2.3 如果在修正他人的bug时,发现难以理解,可以与其沟通商量,了解细节,同时自己也花时间理解一下,如果理解之后,代码比较难以费解,个人认为可以和

从瀑布模型到敏捷开发——认识论决定行为

技术交流会中,让我印象最深的是:大勇学长和丹姐在切磋实际项目中用到的"敏捷开发",后来由向阳学长对比两人的观点发问"敏捷开发和瀑布模型的优缺点?人员要求?流程?"最终由我们敬爱的米老师做高层次的总结. 下面,本人根据学长们的建议,并参阅网上资源对"敏捷开发和瀑布模型做对比分析" 软件开发模型的由来 20实际60年代中期,人们在软件开发过程和维护中所遇到的问题被称作是"软件危机". 1968年,在德国召开的NATO(北大西洋公约

[读书笔记—程序员]《高效程序员的45个习惯:敏捷开发修炼之道》- 苏帕拉马尼亚姆,亨特

虽然不记得阅读本书用了多久,但是整理本书的读书笔记用了两个小时的时间,因为本书的大部分内容对于笔者来说都是新知识,很难进行归纳总结 本书所讲的是程序员应具有的工作态度和在团队中作为开发者和领导者具备的各种"敏捷的"习惯.虽然本书对于程序员的硬实力(本书讲解的编程语言是面向对象类语言,但是讲解的代码非常少)帮助不大,但是对于程序员应该具备的软实力的培养和提高有极大的帮助,是每位程序员都应该反复阅读的书籍. 第一章 敏捷-高效软件开发之道 什么是敏捷开发方法? 2001年2月,17位志愿者

软件工程的传统开发与敏捷开发

     引言 随着计算机的普及,软件工程成为了计算机产业中特别重要的一个产业.自从瀑布式开发模式提出之后,软件工程就走上了规范化的道路.随着软件工程的发展,逐步衍生出各种各样的软件开发模式.其中最受瞩目的就是敏捷开发模式.敏捷开发在短期的发展后,逐步从传统开发模式中脱离出来,逐渐占据了软件开发行业的半壁江山.本文从传统开发与敏捷开发的模式出发,对比敏捷开发与传统开发,浅析现代软件开发模式. 软件的传统开发 软件的传统开发具有悠久的历史,从20世纪60年代末开始提出软件工程这个概念,到如今传统开

汇总敏捷开发流程细节

简单的说,敏捷开发以用户的需求进化为核心,采用迭代.循序渐进的方法进行软件开发.其核心价值观便是:沟通.简单.反馈和谦逊.而在敏捷开发过程中,也注重各方面的细节.如下,本文汇总了敏捷开发过程要注意的细节. 1.快速竞品分析 在动手设计前,第一步需要对市面上的同类竞品进行较为深入的分析,提炼出竞品的产品框架.各模块的设计特点,通过对比分析,总结出各竞品的优缺点,取其精华,取其糟粕,真正做到后来居上. 2.用户行为数据分析 有个竞品分析数据后,还需要结合用户的行为数据进行分析.所以需要通过访谈获取用

让敏捷工具在敏捷开发中发挥高效作用

敏捷软件开发绝不再是一个新名词了,但理解还是时时有偏差.敏捷宣言中的第一条“个体和互动高于流程和工具”,有人就误读为“有了沟通,一切都迎刃而解” ,因此花费大量精力整顿团队合作,却轻视了工具(技术).其实宣言中的意思只是想强调个人和沟通更重要而已. 实际上,既然是软件开发,在所难免得面临工具的选择,而且很多优秀软件实践离开强有力的工具支持都玩不转.在如今的软件开发世界中,工具(这里谈的是软件工具)层出不穷,数不胜数,那么到底该怎么去选择适合的工具呢? 本文将根据我十几年的企业级软件开发经验给出一