论文部分内容阅读
美国著名海军历史学家兼作家C?诺斯科特?帕金森(C. Northcote Parkinson),在1957年出版的《帕金森定律及行政机构中的其他研究》一书中虚构了这样一个委员会会议:在决定是否建造一个价值1000万美元的核反应堆时,委员会成员先是浪费2分半的时间未做任何讨论,然后又花了45分钟来讨论核反应堆项目中成本仅为2350美元的自行车棚.由此他提出了“帕金森鸡毛蒜皮定律”:“工作议程表上每一个项目所需的时间与项目涉及的金额呈反比.”程序员保尔-亨宁?凯普(Poul-Henning Kamp)利用帕金森所举的例子,使得自行车棚(bikeshedding)这个词普及开来:频繁地对枝节问题进行细致讨论,而忽视或拖延主要问题.与自行车棚的功效截然相反的是尝试风暴(trystorming),指迅速并反复地进行新产品的原型设计或实施新流程.在自行车棚文化中,新想法只经过短短的讨论就因为要“进一步研究”而一再被拖延.而在尝试风暴文化中,同样的想法会立即得到原型设计、建模、仿真、制作实体模型或实施,并检查哪一部分可行、哪一部分不可行.尝试风暴的座右铭是“早失败,快失败,常失败”.●这种快失败(fail-fast)准则也描述了敏捷软件开发的过程.敏捷软件开发是一套软件制作准则,强调互动、协作和自适应方法.在敏捷框架Scrum中,程序员有各自指定的时间盒(timeboxes),又称迭代(iterations)或冲刺(sprints),即他们在指定的时间段内专注于完成预定目标,使其随后变成在制品(WIP).敏捷开发的其中一项关键元素是,这些目标通常是最终产品不可用的一些特征,这一过程称为持续集成(continuous integration).Scrum团队(Scrum teams)中的程序员受敏捷教练(Scrum master)的监督,后者负责每日站立会议(standups)——一种回顾进展的短会议,参会人员通常站立而并不落座.