透明思考


Transparent Thoughts


借鉴丰田方法对大型软件组织进行敏捷改造(上)

QWS是一款电信交换机产品,其软件部分用C语言开发。经过长期的发展演化,当本文所述的咨询项目开始时,QWS的总体代码量已经超过2000万行,代码库体积超过4GB。本咨询项目所涉及的版本需要新开发的代码量约90万行。

QWS的版本交付团队大致由90名左右开发人员和30名左右测试人员组成。这支交付团队又按特性和模块划分为6个特性团队和2个任务团队,共计8个子项目组。每个项目组分别有一个SVN工作分支,项目组成员将代码提交到分支,项目经理再负责将分支代码合并到主干。

在ThoughtWorks顾问组进入该团队之时,这支多年沿用CMM方法的团队正在自行尝试敏捷方法,刚刚开始第一个为期3周的迭代。但这第一个迭代远非一帆风顺。一方面,由于团队从来没有迭代交付的习惯,开发人员在编码阶段忽视质量,导致提交到SVN的代码有时甚至不能编译,即使编译出软件大包也存在严重功能缺陷,无法进行测试;另一方面,由于团队成员对SVN缺乏了解,多个分支的配置管理遇到了极大的困难。

就在这样一种混乱的状态中,由3名ThoughtWorks咨询师组成的顾问组进驻了这支交付团队,开始对其进行为期4个月的敏捷改造。在项目进展中,我们大量借鉴了源自丰田的精益思想,最终取得了显著的成效。

阅读全文