軟件開發誤區之二-軟件工程項目管理藍領工人

軟件開發誤區之二-軟件工程項目管理藍領工人 天氣2005年2月16日14:44星期三  [Dev開發]

做了七年的軟件開發,自己好好壞壞也作了一些軟件,平日裏也上網看看一些信息,總的來說,有一些自己的想法,陸續作個筆記。


軟件工程沸沸揚揚這麼多年了,不知道多少年輕學子癡迷於其中,夢想着自己是軟件設計師,軟件構架師,而把基本的代碼視作藍領工人做的低級工作。我前面寫過,不知道中國國內多少軟件公司能夠把這些真正做到。

我曾經參加過一個培訓,說起印度的軟件開發,分層分得很細,構造很清晰,人家只要拿到詳細設計就能寫代碼,並且代碼寫的非常好。什麼設計模式,什麼測試用例,什麼測試驅動之類的。我只是問了一句話:人家的代碼是多少行每月。講師遲疑了一下,300。我就只能笑笑,除了笑,我還能說什麼。

而我們目前的狀況是大多數公司都是找米下鍋,那麼就會面臨這樣一個問題,找到的米並不一定都是能夠安裝一種方法炮製,經常是這幾個人,這幾個月可能在作一個MIS軟件,下幾個月可能就是一個多媒體開發了。而且業務員爲了搶單,通常工期都會壓縮,而且大家也知道,現在客戶是大爺,動不動就是需求變化無常。

在這種情況下,一味按照軟件工程項目管理條款來作,估計是很有問題的。

第一,很多項目對於開發者來說,技術上都是不確定的。軟件工程的一些思路都是按照建築來說的,相對來說,建築技術不會變化很大,無論是別墅還是小區,都是用磚頭、水泥等。而項目而言,系統編程、網絡編程、桌面編程等等,VB/VC/DELPHI/JAVA,WINDOWS/UNIX都是很難統一一種技術的。所以那些動輒軟件工程掛嘴邊的人,如果自身技術不夠紮實,沒有詳細的實戰經驗,那麼只能是添亂,設計的構架亂七八糟。

第二,工期緊張,如果按照前期預研、概要設計、詳細設計等等一系列作下來,那麼我敢打賭,大多數項目最後的結果就是拖延,爲什麼,一則前期佔用了太多的時間,二則,實際開發過程中總會有未曾設想到的問題,那麼這些問題最後就會要命。其實,我們看看房地產開發,我們也能發現,大部分房子很難做到如期交房的。或者交房後發現質量問題。

第三,需求變化大,作爲一個建築設計,至少可以保證一條,設計完後,開始施工,變化的空間不會很大,因爲這水泥磚頭都是實實在在的,而軟件不同,可變性強大,客戶需求經常變。

所以,我覺得現在的軟件開發其實有點類似於 室內裝修,競爭激烈,客戶要求變化大,工期要求短。

同樣的,與其給我10個軟件學院畢業的,滿嘴模式UML等等的,還不如給我5個大專畢業,熟悉VB或者JAVA的。也許有人會說,這樣我鼠目寸光,軟件以後維護很麻煩之類的。moon.gif

但是,我敢打賭,大多數軟件的生存週期不會操作兩年或者三年,在這個基礎上,開發人員的實際開發週期不會操作5個月,日後真正維護的週期不會操作3個月,而真正麻煩的需求變化,隨便你什麼樣的牛人都無法設計出一個只需簡單修改的構架。

真正能夠做到這一步的只有一點,沒有構架,完全模塊封裝,即使代碼冗餘,那麼還有可能只改模塊。如果按照設計模式等,那麼實際更改的內容更多。heartache.gifangry.gif

而我們就是缺少紮紮實實做事的藍領,大家都追求作一個人上人,所以人家用ANSI C作了SQLITE等一大隊開源軟件,而我們卻把23種設計模式翻來覆去,UML畫的出神入化。紙上談兵啊

所以,我讚賞XP的作下去再說的方法。不管怎麼樣,實實在在的代碼纔是軟件的根本!


<script type=text/javaScript>function doZoom(size){ document.getElementById('zoom').style.fontSize=size+'px'}</script> 字體:

Permanant URI 永久地址 http://www.shengfang.org/blog/p/mydevsoft2.php
Trackback URI 引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1108536299

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章