1. 开发者害怕暴露能力缺陷
每个团队成员的工作往往是每天汇报的,例如在开会的时候每个人汇报工作。这样团队的每个成员都会知道你每天花了多少时间做了什么事。假如有一个工作你花了比正常流程更多的时间,那么你会感觉到每个人都在质问你为什么。还有,在一块白板前一起讨论设计等问题往往会暴露一个人的能力不足,或者沟通不善。
2. 要求全能型开发者
成为一个成功的敏捷开发者,你需要是一个同时具备码农,架构师,测试工程师和客户的能力。很多公司为此去培训员工,但这个代价是很高的,并且不是很有效。
3. 对沟通的要求太高
由于敏捷开发是在不断的沟通中进行的,所以团队的成员需要非常好的沟通的技能。但往往一个优秀的程序员是不善于社交、沟通的。这就是一个问题。有些团队成员无法有效的传递他们的想法给团队的其他成员。
4. 开发者缺少业务知识
敏捷开发要求开发者可以直接和客户沟通有关程序的功能。但是对于一个大型项目来说,不可能每个开发者都对项目的所有功能了解。可能每个人就做一小块功能。这样的话一旦某个人休假或者离职,那么顶替上的程序员就不具有对这块功能的业务知识,当他去和客户沟通的时候就会显的不专业。
由此可见,敏捷开发不能解决所有问题。它是一个好的方法,但是也有缺点。但是这些缺点也是有办法克服的。特别要注意的是:敏捷是为人服务的,而不是反过来!引入敏捷是为什么,是为了解决什么,想同时做好几件事最终可能导致都做不好。
时间: 2024-12-13 22:54:31