|
當我們檢視這些評論時,會發現到許多人對高鐵售票系統的批評不是很成熟,並且他們對問題的了解似乎是不夠深入的。筆者深深地感受到,有些人根據自己的懷疑來推測事實,然後據此提出推論當作結論;然而,在推論過程中,他們看得見他們所深信的解決方案,但卻因為過度簡化推論而看不清楚真正的問題。
依照筆者參與軟體開發專案多年的經驗看來,軟體專案的規模與問題的複雜度之間的關係並非如一般人想像的線性關係。我深信大型軟體專案絕對不是只比中小型軟體專案大一點而已,因此不能用做中小型軟體專案的思維模式來思考大型軟體專案的問題,因為其中複雜性常超乎我們的想像。
本文以筆者參與過大型軟體公共建設開發的心得與感想,分別在管理面及技術面上,分享個人對專案管理及軟體開發的看法,希望對大型公共建設軟體開發專案,提供一些實務上的經驗以供大家參考。
不確定性因素高
管理軟體專案比管理其它產品開發專案要來得困難,探究其主要原因並不在軟體技術難以掌握,而是在軟體開發過程中有高度的不確定性,軟體抽象本質使這些不確定性更難以控制。大型公共建設軟體開發專案更會因為環境的改變及不同利益觀點的關係人(stakeholders)之間對專案產生複雜的交互作用而助長不確定性。因此,相形之下,大型軟體公共建設專案在管理上,常會顯得格外地困難。
依據筆者在軟體開發實務上的觀察,許多專案管理者,都會想盡辦法在軟體開發過程中,試圖減少軟體開發的不確定性,以降低專案的風險。例如,軟體開發團隊會花費很多的努力在分析客戶需求上,並要求客戶需求一經確認後,不得隨意修改變更。直到所有需求都確認沒問題了,專案管理者才能放心,他的開發團隊開始動工做系統設計與程式開發。
然而,在專案管理實務上,要客戶不得更改需求卻是非常困難的。以客戶的角度而言,在看不到真正可讓他們操作的軟體之前,他們很難知道他們真正需要的軟體是什麼,直到他們看到軟體不符合需要,才會了解他們真正需要的軟體需求是什麼。同時,客戶作業環境的改變,往往會對軟體需求造成不小的蝴蝶效應,尤其是對於大型公共建設軟體專案而言,問題的複雜性更導致需求相當難以管理。
為什麼大型公共建設軟體專案的問題會如此複雜呢?筆者認為,最複雜也最難解的部分應該歸因為「人」的因素。即前面提及的不同利益觀點的關係人。在大型公共建設專案開發的過程中,牽涉到的專案關係人相當多,除了甲方的使用單位、資訊部門、乙方的主要及分包委外服務提供者及甲乙雙方所聘請的顧問以外,還會包括上級政府機關、與系統有關的民眾、甚至立法機關都應包括在內。或許有人會奇怪:這關乎立法機關什麼事?
在筆者參與的大型公共建設軟體專案中,就有好幾次因為立法院預算或法案審查的結果而影響到專案目標而必須修改合約內容。這些關係人來自不同的組織、擁有不同的專業、對專案有不同的目標與期待;因此,其實對於專案管理者而言,要做好關係人管理,達到同時兼顧所有關係人的期待其實是一大挑戰。
IT部門與委外商關係
在大型公共建設軟體專案中,經常見到因為關係人之間的目標不相容造成的利害衝突的現象。例如:委外服務提供者與資訊部門之間常會發生衝突與對立。委外服務提供者覺得資訊部門相當難以溝通,在開發過程中不尊重專業,同時對他們開發成果百般刁難與阻礙。資訊部門則認為:「這麼大規模的專案,我必須善盡把關的職責,委外廠商不要以為我們看不懂他在搞什麼,不要想在我面前敷衍了事。」雙方相互鬥法的結果,消耗了相當大量的溝通與代理成本,有了資訊部門擋在中間委外業者也沒辦法取得到使用單位真正的需求,於是開發出來的軟體並沒辦法符合使用單位的需要,於是委外廠商就會掉入無止盡的變更需求惡夢當中。
主包與下包商關係
此外,主要委外服務業者(主包)與分包委外服務提供者(下包)之間,也常會因為目標不相容而產生利害衝突,造成開發過程中系統整合的困難。由於大型公共建設軟體專案的規模相當大,因此主包者必須依據專業分工將非本身專長的領域分包給其他委外服務提供者,以增進專案開發的效率。然而,對分包業者而言,這個專案不見得是對公司最重要的專案;因此,有時候分包委外服務提供者會因為自身利益考量而無法配合,甚至違約、斷絕合作關係。一旦發生此種現象,將造成系統整合困難,而對整個專案成果將造成莫大衝擊。因此,主包商對下包廠商的管理,在大型公共建設軟體專案上往往扮演著極關鍵的角色。(待續)
| 對本則報導有任何意見或看法嗎?歡迎留言 |
共1頁 頁次:
[1]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||