Scrum和敏捷的历史发展概述
敏捷发展历史
起源--精益思想
起源
》20世纪30年代-迭代增量开发起源时间,应⽤于⾮软件开发项⽬
贝尔实验室的物理学界和统计学家Walter Shewhart使⽤P(计划)-D(执⾏)-C(研究)-A(检查)⽅法对产品过程进⾏改善。他把这种反复渐进的⽅法教给了他的学⽣戴明,后者在第⼆次世界⼤战后被⽇本⼤量使⽤。丰⽥雇佣戴明做⽣产改进,在他的经验之上形成了丰⽥体系——“精益”思想的最初来源。
》20世纪60年代初——最早引⼊敏捷开发⽅式
美国航天局的⽔星计划,此后,迭代和增量开发被IBM联邦系统和沃森研究中⼼采纳
》20世纪70年代
最早的有记载的使⽤迭代和增量开发的主要项⽬之⼀,是为第⼀艘美国三叉戟潜艇开发的第⼀指挥和控
制系统。迭代与增量式开发稳定发展。迭代和增量开发的另⼀次出⾊发挥,是在⼀个美国宇航局航天飞机软件的开发项⽬。这个项⽬负责开发其航空电⼦设备的软件系统。
》20世纪80年代
在1895年,巴⾥贝母(Barry Boehm)正式定义了使⽤迭代开发的螺旋模型(Spiral model)。
1986年,Takeuchi和共同作者 Ikujiro Nanaka在哈佛商业评论上发表了名为《崭新的新产品开发游戏》的⽂章。提出定义了以团队为基础新的产品和研发过程,被称为“橄榄球”⽅式。团队作为⼀个整体来完成所有任务,将球传来传去。
敏捷转型案例:80年代初,在美国国防部发⽣了⼀件有趣的事情。美国国防部⼀直以来都要求其软件开发商在开发过程中使⽤严格的瀑布开发模型。但是到了1987年末,国防部开始“建议”使⽤迭代和增量开发作为软件开发模式。后来美国国防部的项⽬审查显⽰,早期使⽤瀑布模式开发的软件项⽬,有75%以失败告终,有些开发出来的产品根本没有被使⽤过,只有2%的软件产品⽆需⼤量修改就能被正常使⽤。
》20世纪90年代
1993年:Sutherland在“橄榄球”⽅式上,研究出“争球(Scrum)”开发⽅式。Sutherland随后就长时间
和同事Ken Schwaber对该⽅法进⾏长期研究
1995年:在OOPSLA‘95 会议上,Sutherland⾸次在公众⾯前公布了Scrum⽅法
》21世纪初
到2000年底,更多的敏捷开发⽅法被⼴泛推⼴并被使⽤于各种不同的项⽬中。推荐使⽤迭代和增量开发的出版物和⽂献显著增加。
2001年⼆⽉,⼀组由17位在DSDM,XP,Scrum,FSD等领域的专家组成的代表团齐聚美国犹他州,寻这些⽅法的共同点。参与者们分享了互相竞争的⼏种⽅式:极限编程(XP);透明化;⾃适应软件开发(ASD);特征驱动开发(FDD);动态系统开发⽅法(DSDM)。所有这些⽅式都是“轻量版”的框架。⽽这场运动后来被成为“敏捷”,随后发表了敏捷宣⾔和敏捷的12条原则。由此形成了现在我们所认识的敏捷开发和后来的敏捷联盟。
》2011年之后
所有的开发框架,及与之匹配的价值观和原则被称做为敏捷技术
Scrum发展历史
Scrum原始含义:在橄榄球运动中,这个术语指的是在意外犯规或球出界后重新开始⽐赛。其形式为:两个队的前锋在球前⾯围成⼀圈,彼此的胳膊架在⼀起,低头争夺球权。
Scrum⾸次应⽤于产品开发
》1986年
scrum框架的灵感来源:⽵内弘⾼和野中郁次郎在New New Product Development Game ⽂章⾸次提到将Scrum应⽤于产品开发,指出:传统的“接⼒式”的开发模式已经不能满⾜快速灵活的市场需求,⽽整体或者“橄榄球式”的⽅法——团队作为⼀个整体前进,在团队内部传球并保
丰田发展史整体性⽅法
持前进,也许可以更好的满⾜当前激烈的市场竞争。——
——整体性⽅法
Scrum⾸次应⽤于软件开发
》1993年
Jeff Sutherland在 1993年⾸次在Easel公司定义了⽤于了软件开发⾏业的Scrum流程,并开始实施
》1995年
在OOPSLA 95上公开发布。Jeff Sutherland(萨瑟)和Ken Schwaber(施⽡伯)⾸次提出了Scrum概念,并规范化了Scrum框架。
》2001年
敏捷宣⾔及原则发布、敏捷联盟成⽴,Scrum是其中⼀种敏捷⽅法。
》2001年
Ken Schwaber(施⽡伯)和Mike Beedle(麦克·⽐窦)推出第⼀本Scrum书籍《Scrum敏捷软件开发》,介绍了Scrum开发
》2002年
Ken Schwaber 和Mike Cohn共同创办了Scrum联盟。
》2005年
英国电信(BT)宣称全⾯推⼴敏捷⽅法,规模达千⼈,标志着⼤规模敏捷应⽤逐渐被接受和认可。
》2006年
Google、MicroSoft、IBM、Amazon、华为等公司在⼤规模软件开发中开始应⽤敏捷,掀起敏捷应⽤热潮。
ThoughtWorks主办第⼀届敏捷中国⼤会,正式在中国推⼴敏捷⽅法。
》2010年
ThoughtWorks Jez Humble出版《Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation》⾸次正式提出构建流⽔线(Build Pipeline)的概念,通过从根本上改变开发团队与运维团队的协作⽅式,达到敏捷软件交付,创造软件价值。