閱讀655 返回首頁    go 阿裏雲 go 技術社區[雲棲]


需求、開發和測試的“三足鼎立”

在很多電影或電視劇中,大家經常會看到一種代表權利與威望的東西—鼎。古語曰“問鼎中原”,可見鼎在當時人們心中地位之高。下麵是一張來源於互聯網的鼎的圖片。
ding

不知大家注意到沒有,鼎有三隻“腳”。大家在幾何課上學過,在所有的平麵圖形中三角形最穩定。看來古人也深知這個道理,做出了有三隻“腳”的擺放穩定的鼎。當鼎的任意一隻“腳”被去掉時,整個鼎必然會轟然倒下的。也就是說,“三足鼎立”是最穩定的。

在軟件開發活動中,可以把鼎比作是一個軟件產品,要保持產品的穩定,就需要有三隻牢固的“腳”來支撐它。那麼,這三隻“腳”是什麼呢?作為一個軟件開發人員,我認為需求、開發和測試就是支撐產品的三隻“腳”。
sanzu

需求是需求工程師(有的地方也叫係統工程師)寫出來的,它就是一個軟件產品的文字實現,以文檔的形式描述了產品所要實現的功能。當需求寫出來並經過評審之後,就要由開發人員用程序來實現。

開發是由被稱之為程序員(也有的地方稱之為“碼農”)的人所組成的群體,他們的主要任務就是參照需求來編寫程序以做出軟件產品。他們每天的大多時間都以電腦為伴,辦公室和機房就是他們的休息場所。

測試是由測試工程師所組成的群體,他們不直接開發產品,但是,他們要對開發出的產品進行各種驗證來確保其沒有大的問題。在產品提供給用戶使用之前,都要首先經過測試這一關。從另一方麵來說,測試工程師就是軟件產品的第一批用戶。

大家都知道,三國時期的魏蜀吳之間戰火不斷、勾心鬥角的故事已成曆史經典,而需求、開發和測試之間的“恩怨情仇”如果要寫成故事,估計比《三國演義》還精彩。

需求可以比作“魏國”。在三國中,魏國占了“天時”。曹操“挾天子以令諸侯”讓天下有識之士紛紛投靠。對應到軟件開發上來,需求工程師與用戶靠得很近,他們寫的需求代表了用戶的意見(雖然有時候並不準確),他們挾用戶這個“天子”來給開發和測試“發號施令”。同時,需求工程師一般都是在一個公司裏麵工作年限較長的人,他們對行業、對產品的認識比新入行的人要深一些,這就像是曹操身邊的那些謀士,幾乎個個都是一流的。

測試可以比作“吳國”。在三國中,吳國占了“地利”。長江天險阻擋了侵犯者的步伐,江東富饒的物產是吳國後勤的有力保障。對應到軟件開發上來,測試部門擁有眾多的測試機器和測試環境,任何其他部門的人想要用這些機器和環境,都要經過測試工程師的批準。這些資源就像是吳國那些富庶的土地,讓別人垂涎三尺。測試工程師幾乎不會主動對開發產品提意見,他們就等著開發人員主動找上門來要測試的環境,這就像是吳國幾乎很少主動出擊而采用的是以守為主的戰略。

開發可以比作“蜀國”。在三國中,蜀國最為“苦逼”,在經過重重磨難之後,終於在偏遠的四川占得了一席之地。蜀國能夠成功,靠的就是“人和”。劉關張三兄弟靠三個人三匹馬起家,在最困難的時候都是一條心,這才走到了最後。對應到軟件開發上來,開發工程師就像是苦命的兄弟,誰有了問題,都可以向身邊的人請教,大家努力來將事情做好,這和劉關張三兄弟的經曆是何等的相似。同時,除了自己辦公用的電腦之外,開發部門很少擁有多餘的資源,需要測試環境的時候就要向測試部門申請,這就像劉備為了生存向孫權借荊州一樣,區別就是開發部借了的資源是要歸還的。

需求、開發和測試雖然各自做著不同的事情,所關注的點不一樣,有時還有可能會出現意見不統一,但大家都有一個共同的目標:將產品做好。也正是這個共同的目標讓需求、開發和測試之間的合作大於對抗、理解大於分歧,也正是這個共同的目標讓軟件產品這個“鼎”的三隻“腳”永遠平穩和牢固。

最後更新:2017-09-23 20:32:46

  上一篇:go  求職簡曆中一些常見的問題
  下一篇:go  這個時代博客是否還會繼續沒落?