郭旭:具体说到应用,具体什么样的企业,什么样团队,什么样的项目更适合敏捷开发的方法作为开始呢?项目管理者联盟
Sidney Pinney:实施敏捷会给企业带来很多影响,带来很多的变化,一个好的企业应该是乐于接受变化的企业,应该是能够不断的去推进软件给他们带来变化,并且从这种变化中感受到一种兴奋、快乐。把这种兴奋传播到整个企业内部。也就是说,敏捷要求一个企业拥有适应变化的能力,它给企业带来的是拥抱变化的能力。首先从企业本身来讲它愿意接受变化。如果说企业的业务愿意一万年不变,那么给它这样一个灵活的方法也没有意义。项目管理者联盟
郭旭:现在实际情况是企业市场不断竞争,变化需求是非常非常大,企业本身就应该去适应各种变化。但是实际上也不光是敏捷开发方法去可以适应这种变化,还有很多方法可以达到适应变化的目的,到底什么样的企业更加从开始就乐于接受敏捷开发的方法,是大型企业还是什么类型的企业?有没有一定的规律?项目管理者联盟
熊节:我觉得并没有一定之规。比如说划一个坐标,假设这一头是纯粹的传统的开发模型,这一头是极度的敏捷,这个坐标轴上每一个位置都是可能的方法学,每个企业每个团队强调的方法也不一定。我们并没有说这边是传统这边是敏捷,没有这样的区分。我们只是根据企业业务的需求,我们把业务划一条线,业务绝对不会变,比如说举个例子做嘎马刀的系统,它的业务是灵活度在中间,对应的是选择一个方法学。并不是说给它一个敏捷或者不敏捷的帽子。
敏捷对于开发团队开发者的要求项目管理者联盟
郭旭:刚才Martin Fowler先生是开发过程中人是最重要的,相对于传统的开发方法而言敏捷开发对于开发团队的人员有些什么特殊的要求呢?项目管理者联盟
Martin Fowler:目前为止我们还没有证明表明什么样的人都能在敏捷方法里面表现的更好。但是另一点值得注意的是,不管采用什么样的方法,人的水平都会对项目造成至关重要的影响。项目管理者联盟
郭旭:因为传统的开发方法设计和开发是分开的,从架构设计来讲可能需要更高水平的人,对整个结构都要非常了解。对开发人来讲可能需要编程语言了解就可以了,敏捷开发是不是对人的要求是非常全面的呢?blog.mypm.net
Martin Fowler:首先软件的设计和编程这两件事情本来就是非常接近,很难分开的。在传统的方法中一定要划一条线把它分开,说这部分是设计,这部分是编程,造成的结果往往别不是特别好。会出现一些脱离实际的设计和脱离设计构想的编程实现。我们在很多项目中已经亲眼见到这样的实例,当一个架构师脱离编程实践很长时间,往往他做出来的设计是不切实际的,让程序员很难实现。项目管理者联盟
才子英:我了解到许多企业他们非常关心的,他们认为敏捷只是适应于非常小的团队,并且是素质比较高的团队,如果团队人很多,几百人,甚至是跨地域、跨国家这样的团队敏捷还能发挥它的作用吗?项目管理者联盟
莫映:我们讲开发过程的时候才讲敏捷,实际上更大的范畴内,不知道大家有没有看到过实施企业,比如一些企业需要敏捷,为什么?我觉得这两者是相通的。无论是一个小范围团队还是大范围的机构,他们都需要这种手段适应快速的变化,最终给他们带来价值。所以并没有特别严格的限定一个小范围的团队才能使用敏捷。并且并不能仅仅简单的把它看作一个很分明的概念,或者怎么样。我们可以把它分改拆开一系列具体的实践,比如说举一个例子,我现在所在这的个团队是以传统模型为主体的开发团队,产品研发可能更适合一些,但是其中也嵌入了一些敏捷实践。实际上效果会比原先更好一些。项目管理者联盟
Sidney Pinney:敏捷方法确实是从一些小的实践中成长起来的,比如说XP这样的方法,一开始是从6-10个人的团队这样的范围中成长起来的。但是经过很多研究和实践以后,它现在已经不是这样的情况,我们曾经有一个项目拥有超过270人的团队在全球四个国家协作开发,我们同样在这个项目中采用敏捷方法并且效果也是相当的好。所以确实需要有一些指导,因为在大团队中和跨国的项目中采用难度很大。但是有一些合适的指导和规范以后也确实可以在这样的项目中采用敏捷方法。转自项目管理者联盟 项目管理者联盟
|