敏捷开发的关键挑战

fmms 12年前
     <div id="OSChina_News_23600" class="NewsContent TextContent NewsType2">     <p>敏捷开发看起来能够解决我们所有的问题,但事实却并不如此。有些公司在尝试敏捷开发后遇到了各种问题。有人对十七个采用敏捷开发的公司进行了调查,<a href="/misc/goto?guid=4958201995879058200">People over processes: Key people challenges in Agile Development</a> 。这篇文章的作者分析了九个最常见的问题。我这里只谈四个。</p>     <p><img alt="敏捷开发的关键挑战" src="https://simg.open-open.com/show/521bf0043af0178425c95636e95712bd.jpg" width="394" height="463" /></p>     <p><br /> <strong>1. 开发者害怕暴露能力缺陷</strong><br /> 每个团队成员的工作往往是每天汇报的,例如在开会的时候每个人汇 报工作。这样团队的每个成员都会知道你每天花了多少时间做了什么事。假如有一个工作你花了比正常流程更多的时间,那么你会感觉到每个人都在质问你为什么。 还有,在一块白板前一起讨论设计等问题往往会暴露一个人的能力不足,或者沟通不善。<br /> <br /> <strong>2. 要求全能型开发者</strong><br /> 成为一个成功的敏捷开发者,你需要是一个同时具备码农,架构师,测试工程师和客户的能力。很多公司为此去培训员工,但这个代价是很高的,并且不是很有效。<br /> <br /> <strong>3. 对沟通的要求太高</strong><br /> 由于敏捷开发是在不断的沟通中进行的,所以团队的成员需要非常好的沟通的技能。但往往一个优秀的程序员是不善于社交、沟通的。这就是一个问题。有些团队成员无法有效的传递他们的想法给团队的其他成员。<br /> <br /> <strong>4. 开发者缺少业务知识</strong><br /> 敏 捷开发要求开发者可以直接和客户沟通有关程序的功能。但是对于一个大型项目来说,不可能每个开发者都对项目的所有功能了解。可能每个人就做一小块功能。这 样的话一旦某个人休假或者离职,那么顶替上的程序员就不具有对这块功能的业务知识,当他去和客户沟通的时候就会显的不专业。<br /> <br /> 由此可见,敏捷开发不能解决所有问题。它是一个好的方法,但是也有缺点。但是这些缺点也是有办法克服的。特别要注意的是:敏捷是为人服务的,而不是反过来!<br /> <br /> <br /> <a href="/misc/goto?guid=4958201996638668657">英文原文</a></p>    </div>