3.7.5 《软件工艺宣言》的制定过程
为了使软件工艺峰会不像2002年的软件学徒峰会那样虎头蛇尾,Micah Martin觉得这次应该有一些成果才对。他想要得到一些可以落在纸面上的东西,也就是说,他在这次峰会上的主要目标是编订某种形式的文档。与会者讨论了很多问题,其中包括软件工艺师和软件学徒的含义。他们也讨论了这份决议文是否尚无先例,到底应不应该产生这样一份决议文,若是应该,那这份文件又是针对谁而写,其中需要写哪些内容。大家都把各自的想法画在了白板上面,虽然收集到不少好点子,但白板上面的内容实在太多、太杂,以致无法完成一份定稿。尽管如此,在峰会结束之前,Micah还是请每个人为他们在白板上所写的内容签了名。
Doug Bradbury决定自己行动。他把峰会的成果贴到了Google group上面,并征求反馈。这个举动获益良多。2009年2月,Doug写了一封题为“The New Left Side”的邮件,在这封邮件中,他开始构思软件工艺所要提倡的价值观,以及表述这些价值观时所采用的措辞,这些内容后来经过提炼变成了《软件工艺宣言》。当时业界对《敏捷软件开发宣言》和《软件工艺宣言》展开了诸多争论,这些争论对宣言的发展起了很大作用。整个讨论都是从Doug Bradbury所发的“The New Left Side”邮件以及Scott Pfister所发的“Right Side,Revisited”邮件开始的。
讨论围绕着这样一个问题展开:为什么要制定《软件工艺宣言》?Corey Haines这样回答:“成为坦诚交流的社团,发布这样一份宣言,开始设定软件工艺的原则并完善具体的理论学说,这样,我们就能为新的开发者描绘出振奋人心的愿景。对软件工艺真正感兴趣的人也可以更快地找到我们,与我们讨论学徒计划,并同积极参加学徒计划和‘熟练工’计划等软件工艺活动的公司交流。有的时候,这样做会使他们更快地接触软件工艺思想,甚至还能避免他们在其他情境下所遇到的挫折。
这是一场精彩的讨论,它催生了最终的宣言。讨论的全文都可以在名为oftware_craftsmanship的Google group里找到。几星期之后,Doug根据大家在讨论中所表述的想法,拟定了一份简洁而精确的宣言稿,它的结构与《敏捷软件开发宣言》相似。这份宣言稿写得很好,软件工艺社团大体上都赞同该文。过了几周,他们建立并公布了一个网站,可以让大家签署《软件工艺宣言》。