很久以來我都對傳統的軟體工程方法和盛行的敏捷方法的聯絡與區別鬱悶不已,因為每乙個領域都是那麼龐大,作為乙個非專業人士,要能清楚地把握其中的關係,確實不是件容易的事情,直到我看到下面的這個故事(摘自《平衡敏捷與規範》balancing agility and discipline: a guide for the perplexed,鄧輝 孫鳴譯 清華大學出版社)。在敲字的過程中我自己對一些名詞對照著兩個軟體開發方法中的常用概念進行了註解,不當之處,還請大家指正。
很久以前,在一片充滿隱喻的土地上,住著一頭大象(
喻傳統開發方法)。很多年來,這頭忠實的大象一直都是他所居住村莊主要的食物採集者,並且非常清楚這個村莊需要什麼(
喻工程前的事先計畫性)。他在叢林中修建了一條路(
喻最佳實踐),這條路總是能指引他找到最好的根莖、蔬菜、堅果和水果等食物(
喻專案的功能)。他知道哪種水果用鼻子可以夠得著,也知道哪種水果需要鼻子去晃動才能摘取。他很強壯,能夠一次帶回足夠好幾天吃的食物,所以他總是預先估計這個村莊的需要(
喻典型的專案需求),並提供恰當的供給。他恪盡職守,整個村莊的人都很感激他,並認為他的工作很有價值。
唉!就像生活和寓言中常常發生的那樣,情況發生了變化(
喻需求變更)。村莊裡的廚師(
喻專案干係人)想要一些奇特、罕見的原料來烹飪(
喻個性化需求)。這些原料大象曾經聽說過,但是不在他每天要走的路上(
喻傳統工程方法不適合涉及的領域)。他還在為儲存那些無從需要的食物(
喻開始的需求已經過時)疲於奔命,卻沒有時間去修建新的道路以滿足新的需求。村莊裡的人漸漸地對這頭無法滿足他們需求(
可以理解為rup等傳統方法不適合**開發)、越來越氣餒的大象失去了耐心。
與此同時,附近村莊有乙隻猴子(
喻敏捷方法)做著和這頭大象類似的工作。但是,和這頭大象不同,這只敏捷的小猴在這片叢林中快速地穿梭(
喻xp等程式設計方法),採摘它所看到的果實。他只去尋找那些掛得很低的果實(
喻無法滿足企業級應用)並迅速把它們送回到廚師那裡。這只猴子不像大象那樣依賴於一條久經考驗的道路,他依賴於自己的記憶和本能去找到食物,並且只帶回當天所需要的食物(
喻迭代程式設計、每日構建等)。有時,他會跑出去尋找那些日益珍奇的食物(
喻新奇的功能,如ajax功能),偶爾還會迷路(
喻新的方法太多)。但事實證明,他的速度和敏捷完全能勝任村莊分派給他的任務。和那頭大象一樣,他也頗受愛戴(
喻在自己的領域內,如web開發)。
很不幸,這只猴子的生活也發生了變化。他所生活的村莊一天天地擴大起來(
喻企業級web應用)。這只小猴需要滿足太多的需求,以至於他總是疲於奔命,努力記住在每個地方的所有需要。他不得不來來回回地跑很多次,因為他沒有足夠的力量一次運回人們需要的所有東西(
喻功能太多)。同樣地,這個村莊漸漸對這只猴子失去了耐心,而這只猴子也開始懷疑自己是否能夠勝任這項工作。
碰巧有一天,這只疲倦的猴子遇到了那頭氣餒的大象。這只試圖在揹負重物的情況下快速奔跑的猴子發現大象背上的筐可以裝得下那麼多的食物。而大象也被猴子的速度震撼了(
喻雙方開始正視對方的優點),他能跑得那麼遠,他能那麼輕而易舉地拿到大象竭盡全力也無法獲得的食物。這兩隻動物,雖然都以自己的技能而自豪(
喻從前的論戰),但還是承認了對方在某些方面技高一籌。
大象和猴子認識到一起工作的好處(
喻乙個控制大的流程,乙個處理軟體開發細節),於是決定聯合起來。猴子利用他的敏捷去滿足對於遠距離水果的新需求,並讓大象帶回到他的村莊。大象則把充足的食物運到猴子的村莊去滿足那裡逐漸增多的需要。雖然他們花了一些時間去找出協作的方法(
喻兩個不同方法之間的磨合),但是很快他們就能夠很好地滿足兩個村莊的需要了,從此,他們過著快樂的生活,彼此互相信任,從此豐衣足食的村民們又開始看重他們了(
喻實用才是第一:))!
解釋傳統與敏捷方法最貼切的故事 大象與猴子
很久以來我都對傳統的軟體工程方法和盛行的敏捷方法的聯絡與區別鬱悶不已,因為每乙個領域都是那麼龐大,作為乙個非專業人士,要能清楚地把握其中的關係,確實不是件容易的事情,直到我看到下面的這個故事 摘自 平衡敏捷與規範 balancing agility and discipline a guide fo...
解釋傳統與敏捷方法最貼切的故事 大象與猴子
很久以前,在一片充滿隱喻的土地上,住著一頭大象 喻傳統開發方法 很多年來,這頭忠實的大象一直都是他所居住村莊主要的食物採集者,並且非常清楚這個村莊需要什麼 喻工程前的事先計畫性 他在叢林中修建了一條路 喻最佳實踐 這條路總是能指引他找到最好的根莖 蔬菜 堅果和水果等食物 喻專案的功能 他知道哪種水果...
敏捷讀書之使用者故事 《使用者故事與敏捷方法》解讀
本期分享mike cohn 使用者故事與敏捷方法 精益思想五步 價值,價值流,流動,拉動,盡善盡美。使用者故事是精益思想五步的核心載體。首先,使用者故事是價值載體,是承載使用者價值的基本單元。使用者故事要承載價值,而價值也要承載在使用者故事這種歸一化的載體中。其次,使用者故事是節拍器。故事有節奏的流...