您現在的位置是:首頁 > 遊戲

敏捷實踐編年史(敏捷聯盟版)

由 優普豐Scrum敏捷教練 發表于 遊戲2022-10-04
簡介2002年:Laurie Williams和Robert Kessler撰寫了《結對程式設計詳解(Pair Programming Illuminated) 》是專門研究結對程式設計實踐的第一本書,討論了迄今為止的理論,實踐和各種研究200

性用語ck是什麼意思

敏捷實踐編年史(敏捷聯盟版)

敏捷實踐編年史(敏捷聯盟版)記錄了上世紀六十年代至今敏捷相關實踐的發展史,其英文原版材料來自於國際敏捷聯盟網站(AgileAlliance。org)

1968年:“康威定律(Conway’s Law)”

“康威定律”被提出並概括為:“任何組織,在設計系統(不僅限於資訊系統)時,產生的設計在結構上必然會複製自身組織的溝通結構。”長期以來,“康威定律”都只是被當成民間傳說,而非得到充分論證的科研成果,儘管最近有些研究為其提供了一些學術支援。(直到90年代中期,軟體開發的人際互動方面仍然在很大程度上為軟體工程學術研究忽視。)

二十世紀七十年代:

Barry Boehm提出了“Wideband Delphi”估算技術,這是“計劃撲克”估演算法的先驅。

1976年:

D。 Panzl的系列文章描述了具有似於JUnit特性的工具,證明自動化單元測試有著悠久的歷史。

1976年:

Glenford Myers的著作《軟體可靠性(Software Reliability)》出版,其中闡述了一條“公理”——“不應該由開發者來測試自己的程式碼”(此時仍是由開發者測試的黑暗年代)。

1977年:

出現了用於UNIX系統的“make”工具——自動化軟體構建的原則從來就不是一個新主意。

1980年:

在Harlan Mills主編的文集中可以發現,在IBM聯邦系統部中進行了關於增量開發的實質性討論。在Dyer的文章中明確指出“軟體工程的原則是,每個迭代完成的功能要儘可能地與其他迭代解耦。”

1980年:

源於豐田生產系統的“視覺化控制(visual control)”概念,是對“資訊輻射器(information radiators)”的預期。

1983年:

在CHI(人機互動)大會記錄中描述了,在“施樂之星”的設計期間,施樂帕克研究中心大範圍使用“人類因素測試(human factors testing)”技術,這為可用性(usability)測試埋下了伏筆。

1984年:

Barry Boehm在專案中使用原型,以便在專案早期實驗學習,這本質上是一種迭代策略。這表面此時迭代方法已首次開始得到認真關注,極可能是由於諸如個人電腦和圖形使用者介面的興起因素導致的。

1984年:

在Brodie的著作《Thinking Forth》中提出了“構造(factoring)”的概念,書中將其表述為“把程式碼組織成有用的片段”且這件事情“發生於詳細設計和實現期間”,這是對重構的預期。

1984年:

對“瀑布”順序式方法的批判早已開始,而對作為替代物的“增量方法”的構想也正變得越來越突出。一個很好的例子是,早期在《軟體工程中基於知識的溝透過程》上一篇文章倡導使用增量開發,具體原因是“不存在完整和穩定的需求規格”。

1985年:

或許首個有明確命名的、用於替代“瀑布”的增量開發方法是Tom Gilb的進化交付模型(Evolutionary Delivery Model),綽號是“進化(Evo)”。

1986年:

在一篇著名的文章中,Barry Boehm提出了“軟體開發和最佳化的螺旋模型”,一種透過合適的方法(儘管展示的“典型”例子是基於原型,但不僅限於原型法)來識別和減少風險的迭代模型。

1986年:

竹內和野中在哈佛商業評論發表了他們的文章《新新產品開發遊戲(The New New Product Development Game)》。這篇文章描述了一種橄欖球方法,方法中“產品開發過程是在一個精心挑選的多學科團隊的持續互動中產生的,團隊成員從頭到尾都在一起工作”,這篇文章經常被引用為Scrum框架的靈感來源。

1988年-1990年:

事件驅動的圖形使用者介面軟體的興起,及其功能測試面臨的挑戰,為Segue 和Mercury等公司開發的“捕獲和回放”類自動化測試工具提供了機會。這類工具在之後十年一致在市場佔據主導地位。

1988年:

“時間盒(timebox)”被描述為Scott Schultz的“快速迭代開發成型”法的基石,這種方法應用於杜邦公司的副業——資訊工程協會。

1988年:

儘管透過把物件擬人化(例如CRC技術)來推理設計問題的思想似乎是很自然的,但仍存在著一些強大的反對者,比如Dijsktra的這篇文章《在實際計算機科學教學中的殘酷性(On the cruelty of really teaching computing science)》,看起來就好像面向物件正在打擊主流思想一樣:“在計算機科學中,擬人化的隱喻都應該被禁止”。

1989年:

Ward Cunningham與Kent Beck合作的文章中描述了CRC技術。卡片上採用這種特定格式,源於Cunningham設計的應用(其用途是為了把設計文件儲存為超文字卡片堆)。

1990年:

在一篇ACM SIGPLAN的文章中,Bill Opdyke與Ralph Johnson創造了“重構(refactoring)”這個術語——“重構:一種在設計應用框架和進化面向物件系統中使用的輔助手段”。

1990年:

黑盒(black box)測試技術仍然在測試學科中佔據主導地位,尤其是以“捕獲和回放”測試工具的形式進行的測試技術。

二十世紀九十年代:

由於快速應用開發(RAD)工具和整合開發環境(IDE)的崛起,“make”類的構建工具譭譽參半。

1991年:

James Martin在其著作《快速應用開發》中描述的RAD(快速應用開發)方法,或許是第一種把時間盒和迭代(較寬鬆意義上的“整個軟體開發過程的一次重複”)緊密結合在一起的方法。這本書在某個章節中描述了時間盒的細節。

1991年:

Taligent公司獨立開發了一個測試框架,這個測試框架與SUnit有著驚人的相似。

1992年:

在一次拜訪Whitesmiths公司時,Larry Constantine創造和報道了“活力二人組(Dynamic Duo)”這個術語:“每一臺終端前有兩位程式設計師!當然,實際上只能由一位程式設計師來操作鍵盤編輯程式碼,但他們兩個是並肩作戰的。”Whitesmiths公司是由P。J。 Plauger建立的編譯器供應商,C語言的實現者之一,存在於1978年到1988年。

1992年:

在Opdyke的文章《重構面向物件架構(Refactoring object-oriented frameworks)》中,對“重構(refactoring)”這一術語進行了全面的描述。

1993年:

Wilson等人的文章《合作對實習生程式設計師的好處(The benefits of collaboration for student programmers)》,是一個“表明結對工作對程式設計任務特別有好處”的早期實證研究。在結對程式設計透過極限程式設計得到普及之後,出於“驗證”的目的,後續又進行了更加充分的研究。

1993年:

Jim Coplien 編寫了最初的站立會議模式。

1993年:

“持續整合(continuous integration)”這個短語已經在使用了,並在敏捷過程這種稱呼之前就出現了這種說法。例如這一年有一篇文章把它與“計劃(scheduled)”整合進行了對比,並建議採用後者,理由是持續整合存在“缺乏全面測試”的問題。這也幫助解釋了為什麼自動化測試會如此受敏捷團隊的青睞,因為它是持續整合的使能器。

1993年:

Jeff Sutherland發明了Scrum,並作為過程在Easel公司使用。

1994年:

Jim Coplien描述了其對“超級多產的”Borland公司Quattro Pro團隊的觀察結果,注意到他們幾乎完全依賴於每日會議(daily meeting)“這個專案召開會議遠遠多過做其他任何事情”,這篇文章也同樣被引用為對Scrum有巨大的影響。

1994年:

Kent Beck編寫了用於Smalltalk程式語言的SUnit測試框架。

1995年:

Coplien在其早期版本的《組織模式(Organizational Patterns)》中,以程式設計模式語言的方式命名了“程式碼所有權(Code Ownership)”模式,這有效影響了後來敏捷用語的發展。然而,他倡導專屬的個人程式碼所有權,並提醒人們不要採用“集體程式碼所有權(collective ownership)”——他把這同於根本就沒有程式碼所有權。Coplien承認對“個人所有權(individual ownership”存在異議,但他認為其模式的其他方面能夠緩解存在的問題。

1995年:

Alistair Cockburn發表了文章《應用開發中人類因素的增長(Growth of human factors in application development》,提出了為什麼迭代方法會逐漸被接受的主要原因之一是:軟體開發的瓶頸正在轉向(個人和組織)學習,並且人類學習本質上是一個迭代和試錯的過程。

1995年:

基於與CRC卡同樣的靈感,Ward Cunningham創造了wiki這個概念,成為後來的維基百科的原型,這無疑是全球資訊網發展歷史上最具影響力的理念之一。

1995年:

在最早的Scrum著作中介紹了作為迭代(iteration)的“衝刺(sprint)”概念,然而其持續時間是可變的。

1995年:

在首本描寫模式的著作——《程式設計模式語言(Pattern Languages of Program Design)》的“一種有生產力的開發過程模式語言(A Generative Development-Process Pattern Language)”章節中,Jim Coplien以Alexandrian模式風格的形式,給出了“結對開發(Developing in Pairs)”模式的簡短描述。

1995年:

在1995年3月-4月版的《面向物件程式學報(the Journal of Object Oriented Program)》中,Andrew Koenig最先創造了術語“反模式(antipattern)”:“反模式就像是模式,但它並不是真正的解決方案,它提供的東西只是貌似解決方案,但實際上根本不能解決問題。”

1995年:

在OOPSLA大會上,Ken Schwaber和Jeff Sutherland聯合釋出了Scrum。

1996年:

Steve McConnell描述了九十年代微軟公司在Windows NT 3。0上使用的“每日構建和冒煙測試(Daily Build and Smoke Test)”技術。其重點不在於自動化而在於應用頻率,即在時間上被認為是非常“極端”的日迴圈。

1996年:

自動化測試是極限程式設計的一個實踐,但並不強調對單元測試和驗收測試的區分,也沒有要特別推薦的概念或工具。

1997年:

Ken Schwaber描述了“每日Scrum站會(daily scrum)”(這在其早期的著作中並未出現,例如1995年的文章《Scrum開發過程(SCRUM Development Process)》),這個活動後來被Mike Beedle重新整理成了模式形式。

1997年:

在Alistair Cockburn的著作《倖存的面向物件專案(Surviving Object-Oriented Projects)》中,描述了非正式地使用敏捷實踐的幾個專案(最早可以追溯到1993年),但並未給出敏捷的標籤,而只是概括為“增量工作,逐個聚焦”。

1997年:

Kent Beck和Erich Gamma編寫了Junit測試工具,其靈感來自於Beck早期在SUnit上的工作。 在接下來的幾年中,它越來越受歡迎,並標誌著“捕獲和回放”時代的結束。

1998年-2002年:

“測試先行(Test First)”被闡述為“測試驅動(Test Driven)”,特別是在“Wiki”上。

1998年:

持續整合和“每日站立會議(daily stand-up)”被列入極限程式設計的核心實踐。

1998年:

Linda Rising在著作《模式手冊:技術、策略和應用(the patterns handbook: techniques, strategies, and applications)》中轉載了Keonig對反模式(antipattern)的定義。

1998年:

《反模式——危機中軟體、架構和專案的重構(AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis)》這一著作普及了“反模式antipattern)”這個術語年。

1998年:

在最早描述極限程式設計的文章《走向極限程式設計的克萊斯勒公司(Chrysler goes to Extremes)》中描述了幾個極限程式設計實踐,例如:自選任務(self-chosen tasks)、測試先行(test first)、三週迭代(three week iterations)、集體程式碼所有權(collective code ownership)和結對程式設計(pair programming)。

1999年:

在早期的極限程式設計闡述中,“系統隱喻(System Metaphor)”實踐被提出並用於解決業務與技術之間的知識轉化和認知摩擦問題,然而這個實踐難以理解和沒能推廣。

1999年:

在一篇寫給《C++報道(C++ Report)》的文章中,Robert C。 Martin對“迭代(iterative)”和“增量(incremental)”術語,給出了最早的、敏捷觀念的描述。

1999年:

在Alan Cooper的著作《互動設計之路(The Inmates are Running the Asylum)》的某個章節中,首次描述了“使用者畫像(Personas)”實踐,基於之前的工作以“目標導向的設計(Goal-Directed design)”來構建。

1999年:

Kent Beck在一篇IEEE計算機文章《使用極限程式設計來擁抱變化(Embracing Change with Extreme Programming)》中首次描述了“簡單設計規則(rules of simple design)”,對之前在OTUG郵件列表列表上的討論做了總結。

1999年:

“重構(refactoring)”實踐,在幾年前就已經被納入極限程式設計,並由於Martin Fowler的同名著作而被普及。

1999年:

Kent Beck在其著作《解析極限程式設計(Extreme Programming Explained)》中創造了“大視覺化圖表(Big Visible Chart)”這個術語,儘管後來他把此歸結於Martin Fowler。

1999年:

Ron Jeffries首次提到使用“橡皮糖熊(Gummi Bears)”代替“故事點(story points)”作為使用者故事的估算單位。(後來此事被歸結於一個由Joseph Pelrine領導的XP專案)

2000年,ca:

Scrum的每日站立會議形式中的“三個問題(three questions)”為極限程式設計團隊廣泛採用。

2000年(或更早):

“駕駛員(Driver)”和“領航員(Navigator)”的角色被引入以幫助解釋結對程式設計,已知的最早來源是一個郵件列表記錄。然而值得注意的是,這些角色的現實性一直都存有爭議,比如Sallyann Bryant的文章《結對程式設計與神秘的領航員角色》。

2000年:

Martin Fowler的一篇文章中提供了或許可以說是對當時可用的持續整合(continuous integration)實踐的最完整描述。

2000年:

Freeman、McKinnon和Craig在他們的文章《內部測試:用模擬物件進行單元測試(Endo-Testing: Unit Testing with Mock Objects)》中描述了“模擬物件(mock objects)”測試技術,暗指 路易斯·卡羅爾的“假海龜”這一角色。

2000年:

Ken Schwaber首次描述了“燃盡圖(burndown chart)”。在富達投資集團工作時,他檢視為Scrum團隊提供一個簡單的工具包,於是發明它,並在其網站上做了正式描述。

2000年:

術語“團隊速率(velocity)”新增到極限程式設計相對較晚,用於替代先前的、被認為過於複雜的概念——“負載係數(load factor)”。

21世紀初:

儘管這種實踐遠不是新起的,也不僅僅侷限於敏捷團隊;但部分歸功於敏捷實踐的興起,使得“make”類自動構建得以復興。

2001年2月11-13日:

在美國猶他州瓦薩奇山的雪鳥滑雪度假村,17位從事軟體開發或者幫助他人從事軟體開發的人相聚一堂,以在他們各自不同的軟體開發方法中尋找共識。此次會議的產物就是敏捷軟體開發宣言(Manifesto for Agile Software Development)。後來幾位會議成員繼續合作,成立了敏捷聯盟(Agile Alliance)。

2001年:

Brian Marick,一位“上下文驅動(context-driven)”軟體測試學派的公開成員,參與了導致敏捷宣言釋出的雪鳥事件。他經常把自己描述為團隊的“預兆測試者”,並把一些探索性測試中的實踐意識引入到敏捷社群中。

2001年:

定期回顧是敏捷宣言的“團隊要定期反省如何能夠做到更有效,並相應地調整團隊的行為(At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly)”原則的實踐之一,雖然還不是必然例行的實踐。

2001年:

Mary Poppendieck的文章《精益程式設計(Lean Programming)》,引發了對敏捷與精益思想(以精益或“豐田生產系統”而聞名)間結構相似性的關注。

2001年:

Cruise Control,是第一款“持續整合伺服器(continuous integration server)”,在開源許可協議下發布。它能自動監測原始碼倉庫,觸發構建和測試過程,並把執行結果和測試報告檔案發送給開發人員。從2001-2007年可以看到大量類似工具的出現,導致可能過度關注工具超過了關注實踐本身。

2001年:

在Norm Kerth的著作《專案回顧(Project Retrospectives)》中描述的視覺化手段中,“活力震盪儀(Energy Seismograph)”或許可以視為是“妮可-妮可日曆(niko-niko calendar)”的先驅。

2001年:

Bill Wake的一篇文章指出了敏捷團隊所使用的兩種不同喜好的估算——相對估算和絕對估算(relative and absolute estimation)。

2001年:

“重構(Refactoring)”終於“破繭化蝶”, Martin Fowler發表言論,描述了Java語言整合開發環境中自動化重構輔助工具的廣泛可用性。

2001年:

在Kaner、Bach和Pettichord的著作《軟體測試經驗與教訓(Lessons Learned in Software Testing)》中介紹了一些探索測試技術的技巧,並首次提到“上下文驅動的軟體測試學派(context driven school of software testing)”。

注:三位作者的全名分別是:Cem Kaner、James Bash和Bret Pettichord。

2001年:

在《極限程式設計實施(Extreme Programming Installed)》中描述了“快速設計會話(quick design session)”實踐。

2001年:

在英國Connextra公司,發明了使用者故事的“role-feature-reason”描述形式。

2001年:

Jeff Sutherland在其文章《規模化敏捷:在五家公司發明和重新發明了Scrum(Agile Can Scale: Inventing and Reinventing SCRUM in Five Companies)》中,首次給出了“Scrum of Scrums”的描述(總結IDX公司的經驗)。

2001年:

極限程式設計社群早期是贊同“回顧(retrospective)”實踐的,比如“XP 2001”大會上的這篇文章《適應極限程式設計風格(Adaptation: XP Style)》。

2001年:

為了區分“互動的(social)”使用者故事與“文件的(documentary)”傳統需求實踐(諸如用例(use case)),Ron Jeffries提出了使用者故事的3C(Card,Conversation,Confirmation)模型。

2001年:

《免疫可預見的專案失敗(Immunizing Against Predictable Project Failure)》一文被髮表,本文後來很大程度上使得定義專案章程成為一項敏捷實踐活動。

2001年:

在Alistair Cockburn的著作《敏捷軟體開發(Agile Software Development)》,出現了對敏捷專案環境中“反思研討會(reflection workshop)”的首次描述。

2001年:

術語“專案回顧(Project Retrospectives)”在 Norm Kerth的同名書籍中進行了介紹。

2001年:

Alistair Cockburn創造了“資訊輻射器(information radiator)”這個術語,有部分的擴充套件隱喻,它把資訊傳遞等同於熱量和氣體的發散。

2002年:

Laurie Williams和Robert Kessler撰寫了《結對程式設計詳解(Pair Programming Illuminated) 》是專門研究結對程式設計實踐的第一本書,討論了迄今為止的理論,實踐和各種研究

2002年:

極限程式設計的發明者之一沃德·坎寧安(Ward Cunningham)發表了Fit,這是一種基於Excel表格式的驗收測試工具

2002年:

Bill Wake 的早期文章提到請注意團隊內對於一些常用術語理解可能不一致的問題,例如“完成(Done)”

2002年:

一個早期的實踐者描述了在更廣泛的環境下的運用使用者畫像(personas):Jeff Patton的論文《擊中目標:將互動設計新增到敏捷軟體開發中(Hitting the Target: Adding Interaction Design to Agile Software Development)》也許是在敏捷環境下的第一個正式描述,雖然這個話題至少從2000年開始就在一些郵件組被非正式的討論過。

2002年:

在將精益理念應用於軟體的早期(未發表)討論中,將未釋出的特性視為“庫存(inventory)”,Kent Beck提到在LifeWare和幾個其他的企業運用持續部署。然而,這個想法還是要花幾年的時間去梳理和整理。

2002年:

Scrum社群汲取了度量“團隊速度(velocity)”的實踐。

2002年:

燃盡圖在Scrum社群中獲得了普及,以及諸如僅僅反轉垂直方向的“燃起圖”,或者更復雜的“累積流圖(Cumulative Flow Diagram)”,這與燃起非常類似,但似乎是一個獨立的發明。

2002年:

計劃撲克的當前形式在James Grenning的一篇文章中被列出。

2002年:

Rebecca Wirfs-Brock和Alan McKean透過他們關於責任驅動設計(Responsibility-driven design)的書:《物件設計:角色,責任和合作者(Object Design: Roles, Responsibilities and Collaborators)》來推廣CRC卡。

2003年:

Industrial Logic的Joshua Kerievsky發表了《Industrial XP》,這是一套建議的極限程式設計的擴充套件,其中包括專案憲章活動,基本上和他們2001年文章中定義的一樣。

2003年:

BDD的祖先AgileDox是一個自動從JUnit測試生成技術文件的工具,它的作者是Chris Stevenson。

2003年:

Bob Martin將Fit與Wiki(Cunningham的另一個發明)結合在一起,建立了FitNesse。

2003年:

Kent Beck 在《測試驅動開發(Test Driven Development:By Example)》一書中簡要提到ATDD,但認為這是不切實際的。儘管Kent Beck持反對意見,部分歸因於Fit / FitNesse的普及,ATDD成為公認的做法。

2003年至2006年:

Fit / FitNesse組合讓其它工具黯然失色,成為敏捷驗收測試的主流模式。

2003年:

C2 Wiki上的一篇匿名文章描述了乒乓程式設計(Ping-Pong Programming),這是結合結對程式設計和測試驅動開發的一個適度流行的變體。

2003年:

早期的Scrum 培訓資料暗示了未來“完成的定義(Definition of Done)”的重要性,最初只是以幻燈片的形式:“關於完成的故事(The story of Done)”。

2003年:

Mary和Tom Poppendieck的著作《精益軟體開發(Lean Software Development)》將“敏捷任務板(Agile task board)”描述為“軟體看板系統(software kanban system)”。

2003年:

Kent Beck 出版《測試驅動開發(Test Driven Development:By Example)》。

2003年:

得益於XP Day大會的定期聚會,更多的團隊開始實行專案和迭代的回顧。

2003年:

用於快速評估使用者故事的INVEST檢查單來自Bill Wake的一篇文章,該文章還為使用者故事分解得到的技術任務改寫了SMART縮寫(Specific具體的,Measurable可衡量的,Achievable可實現的,Relevant相關的,Time-boxed時間盒的)。

2003年:

Mike Cohn在其網站上描述了五列任務板格式;那時候,正如比爾·維克(Bill Wake)收集的相簿展示的那樣,各式各樣的變體仍然比比皆是。

2003年:

Joshua Kerievsky創造了術語“NUTs(Nebulous Units of Time,模糊的時間單位)”,作為“故事點”的替代品。

2003年:

Eric Evans提出了術語“領域驅動設計domain driven design”,並在同名著作中進行了描述,最終成為“系統隱喻(System Metaphor)”的可行替代品。

2004年至2006年:

每日會議被作為敏捷核心實踐推廣,隨著任務板廣泛使用,“在任務板前面召開每日會議” 成為最終的關鍵指導原則。(例如Tobias Mayer 描述的那樣)

2004年:

Kent Beck提出“完整團隊(Whole Team)”作為之前名為“現場客戶”的實踐的新名稱。

2004年:

Alberto Savoia 的文章提出了“極限反饋裝置(Extreme Feedback Devices)”,例如熔岩燈或專用監視器,以顯示最近一次整合的結果,這是持續整合的一個重大創新。

2004年:

為了驗證他關於弱化“測試”術語而代之以“行為”的假設,Dan North釋出了JBehave。

2004年:

INVEST首字母縮略語是Mike Cohn的著作《使用者故事與敏捷方法(User Stories applied)》中推薦的技術之一,在第二章詳細討論了這個技巧。

2005年:

計劃撲克技術在Scrum社群中開始流行,這是Mike Cohn的著作《敏捷估計與規劃(Agile Estimating and Planning)》中做計劃的多個技術中的其中一個。

2005年:

術語“Backlog梳理(backlog grooming)”最早記錄的使用源自Mike Cohn在“Scrum開發郵件列表上”的觀點;幾年之後,這個實踐才被更正式地描述。

2005年:

首個邀請學員思考“完成的定義(definition of done)”的練習出現在Scrum培訓材料中“以後的迭代”部分。

2005年:

Jeff Patton在文章《It’s All in How You Slice It》明確表達了故事地圖(story mapping)的概念,但並沒有給出這個名字。

2006年至2009年:

幾個新的工具釋出,證實了社群在BDD上的投入,比如RSpec或者更近的Cucumber 和GivWenZen。

2006年:

Jean Tabaka在她的著作《協作精解(Collaboration Explained)》一書將專案章程作為有效協作的關鍵實踐之一; 雖然她明確地引用了《IndustrialXP》,但她的陳述與2001年的文章有所不同,表現出受到了其它來源的綜合影響。

2006年:

North與Chris Matts合作提出了“Given-When-Then 畫布”的概念,將BDD的範圍擴充套件到業務分析,並將這個方法寫入了《Introducing BDD》。

2006年:

Akinori Sakata在其文章中首次描述了妮可-妮可日曆(Niko-niko calendars)。

2006年:

描述持續部署核心的首篇會議文章《部署生產線(Deployment Production Line)》,由Jez Humble、Chris Read和Dan North發表在Agile2006的會議記錄中,是對幾個Thoughtworks英國團隊實踐的整理成果。

2006年:

Esther Derby和Diana Larsen的《敏捷回顧(Agile Retrospectives)》的出版完結了對敏捷回顧的編纂。

2007年:

在那個時候,“完成的定義(Definition of Done)”已經是一個完全成熟的實踐,它作為一個文字化的清單展示在團隊辦公室已經變得非常普遍。

2007年:

“Kanbandev”郵件列表的成立,為受看板啟發的(Kanban-inspired)敏捷規劃實踐的提供了一個討論場所。

2007年:

來自看板團隊的最早幾份實踐報告被髮布,這些團隊使用了一套特別的稱為“看板(kanban)”的修訂方案(沒有迭代,沒有估算,持續地帶著WIP限制的任務板),其中包括來自Corbis(David Anderson)和BueTech(Arlo Belshee)的報告。

2007年:

簡化的三列任務板格式(“Todo”,“Doing”,“Done”)在當時變得比原始的五列版本更流行和更標準。

2008年:

Alan Cooper在敏捷2008上的主題演講,標誌著敏捷論述和互動設計之間的正式和解,很長一段時間這兩者之間被認為是存在矛盾的。Cooper是被敏捷領袖作為“外部人士”邀請來的,他在第二年已經被認為是“很內部的人士”。

2008年:

Cem Kaner給出了“探索性測試(Exploratory Testing)”的一個新定義,反映了這種測試方法的不斷完善。

2008年:

Kane Mar以“故事時間(Story Time)”作為名稱,首先正式描述了“Backlog梳理(backlog grooming)”,並建議把它作為一個例行會議。

2008年:

Agile 2008大會專門設定了一個論壇來討論“使用者體驗(User Experience)”的相關實踐,比如可用性測試(usability testing)、使用者畫像(personas),以及紙上原型(paper prototyping)。

2008年:

Jeff Patton的文章《新的使用者故事Backlog是一張地圖(The new user story backlog is a map)》圖文並茂地詳盡描述了“故事地圖(story mapping)”實踐。

2008年:

雖然最初提到團隊開始使用“就緒的定義(Definition of Ready)”的時間是在年初,但第一次正式的說明似乎是從十月開始的,並且很快就被納入了“官方”的Scrum培訓材料。

2009年:

“持續部署(continuous deployment)”實踐已經確立,儘管仍有些爭議,因為Timothy Fitz的文章《IMVU的持續部署(Continuous Deployment at IMVU)》仍然飽受評論。這篇文章不僅在敏捷領域變得非常重要,而且也是近期備受關注的精益創業或DevOps的核心要素。

2009年:

兩個致力於探討看板方法的實體機構成立,一個是旨在解決商業問題的“精益系統協會(Lean Systems Society)”,另一個則是沒有那麼正式而旨在提升社群的知名度的“有限WIP協會(The Limited WIP Society)”。

2010年:

Freeman 和 Pryce的著作《測試驅動的面向物件軟體開發 (Growing Object-Oriented Software Guided by Tests)》提供了一個整合“模擬物件(Mock Objects)”、“測試驅動開發(TDD)”和麵向物件設計的全面描述。

2011年:

“Backlog梳理(backlog grooming)”實踐升級為Scrum的官方元素,並納入了《Scrum指南(the Scrum Guide)》。

2015年:

James Coplien發表了文章《兩人智慧勝過一人(Two Heads are Better Than One)》,它提供了結對程式設計的歷史的概述,可以追溯到20世紀80年代中期(如果不是以前的話)。

2017年:

Janet Gregory和Lisa Crispin建立了對“敏捷測試(Agile Testing)”的定義,標誌著該主題的第一個簡潔的定義。

原文連結: https://www。agilealliance。org/agile101/practices-timeline,譯者:敏捷教練李潔(Jerry Li)和廖靖斌(Eric Liao)

推薦文章