不要低估开放的工作空间对于小组的重要性——这就是为什么我们将其作为第一步的原因。下面的一幅照片就是是3Q Solutions开发小组的工作空间。
请注意,两张大桌子(下面没有文件柜)被摆在一起,构成了最适合配对编程的办公桌。
集体主义主人翁精神
我们想要介绍的下一个思想是集体主义主人翁精神(Collective Ownership)。敏捷编程的这种中心思想是让每一个人都对整个系统负责,每一个人都有更改代码的自由。这是一种重要的思维方法,因为它让小组的注意力都集中到了项目上,从而确保有一个共同的目标。与配对编程相关的其它步骤也强调这种思想,但是尽早引入这种思想是非常好的。
简单设计
敏捷开发崇尚简单的渐进设计,而不是剧烈的颠覆式设计。其目标是(首先)只指设计我们所了解的项目的那些部分,仅此而已,然后让该设计随着时间的推移而逐渐改进,这有助于提高灵活性并将变化导致的成本最小化。
我们就从3Q Solutions公司举一个例子,有一个客户要求获得一个规则引擎(rules engine)。小组传统的做法是花上数月时间开发规则引擎,然后可能还是无法把它卖出去。在与客户共同协商的情况下,小组决定设计一个满足规则引擎工作要求的最简单系统,并为每一条规则创建一个瘦垂直系统(a thin vertical system)。这就给予了客户他们真正需要的东西——可证明的规则——并确保投资抵消了投入的时间。这样小组可以在保持灵活性的同时从一开始就不断改进设计。简单设计是一个复杂的领域,研究它的最佳方法是获得外部的帮助。
重要的成功因素
赞同——整个开发小组坚持尝试使用敏捷开发以及开发小组圆环里的做法极其重要。如果不能这样坚持,开始甚至保持这样的做法都是非常困难的。
沟通——这一点怎么强调都不够。保证小组里高层次的沟通和对诸如集体主义主人翁精神这样的概念的理解非常重要。
配对编程——配对编程为很多小组做法提供支持,并将加强小组的沟通和凝聚力。
行政——如果没有行政上的支持,创造开放工作空间将会非常困难。在某些情况下,当行政机构的官僚主义作风盛行的时候,我们只用进行一些改变就行了。
每日例会——这一个每天早上进行的简单会议,供开发人员讨论当日面临的工作和问题。这样的会议应该是站着开的,因为其时间不应该超过几分钟。
文章来源于领测软件测试网 https://www.ltesting.net/