軟件項目需求分析與項目風(fēng)險的關(guān)系
發(fā)布時(shí)間:2016/3/4 9:28:00
導讀:從定制一個(gè)軟件項目到最終的實(shí)現不僅是個(gè)漫長(cháng)的過(guò)程,也是充滿(mǎn)變數的過(guò)程,全面理解與正確領(lǐng)悟用戶(hù)需求演變的本質(zhì)與應對的策略應當是需求分析人員所要具備的素質(zhì)。
從定制一個(gè)軟件項目到最終的實(shí)現不僅是個(gè)漫長(cháng)的過(guò)程,也是充滿(mǎn)變數的過(guò)程,全面理解與正確領(lǐng)悟用戶(hù)需求演變的本質(zhì)與應對的策略應當是需求分析人員所要具備的素質(zhì)。有理由認為面向對象的理念降低了開(kāi)發(fā)過(guò)程的難度,但卻強化了需求分析在項目過(guò)程中的地位與作用。需求分析人員是否具備、是否能夠駕馭面向對象的概念對項目的成功率關(guān)系會(huì )更加重大。下面就說(shuō)明一下需求分析與項目風(fēng)險的關(guān)系。
1.來(lái)自用戶(hù)的風(fēng)險
投資者總是在摸索的過(guò)程中不斷調整自己的實(shí)現目標,盡管軟件開(kāi)發(fā)商使盡渾身解數也跟不上用戶(hù)需求的變化,最終只能是疲于應付敷衍了事。投資方的感覺(jué)是上當受騙卻又無(wú)可奈何,開(kāi)發(fā)商則抱怨用戶(hù)需求漫無(wú)邊界、任意變更。這種公說(shuō)公有理、婆說(shuō)婆有理的局面在合同條款中難分伯仲,不能說(shuō)是兩敗俱傷,起碼也是各有苦衷。造成這種局面固然存在著(zhù)客戶(hù)方的原因,但要把責任全部歸結給“上帝”似乎也有失公允,因為用戶(hù)對于計算機應用畢竟是外行,F實(shí)地說(shuō)問(wèn)題解決的關(guān)鍵只能是提升自身的設計能力來(lái)化解這種項目過(guò)程中可能出現的危機,所以需求分析在項目過(guò)程中的作用就像航標或是舵手,一旦有所偏頗對項目過(guò)程影響重大。
“對象”作為最接近真實(shí)事物的載體,把主觀(guān)思維與客觀(guān)事物形成映射關(guān)系。通過(guò)這種映射把設計構思的模式標準化,把實(shí)現的方式規范化,這就是“對象”在軟件設計過(guò)程中的作用。所以,需求分析過(guò)程中善于發(fā)現與發(fā)覺(jué)可以被歸結成“對象”的元素非常必要。它以體現為承載技術(shù)設計的單元載體,也可以被構造成同時(shí)承載技術(shù)與業(yè)務(wù)的合成載體。面向對象的設計理念為軟件的開(kāi)發(fā)開(kāi)辟了一條前所未有的光明之路,但要想在這條路上走好,就要學(xué)會(huì )全面應用并自由駕馭面向對象的理念。規避項目過(guò)程中的風(fēng)險,應當是從需求構架的構思過(guò)程開(kāi)始,而不是在設計過(guò)程中開(kāi)始。
2.來(lái)自開(kāi)發(fā)過(guò)程的風(fēng)險
如果基于“面向過(guò)程”的開(kāi)發(fā)理念,面對項目過(guò)程中源源不斷的用戶(hù)需求及頻繁的功能變更,會(huì )使開(kāi)發(fā)效率、工程質(zhì)量與服務(wù)能力面臨著(zhù)嚴峻的考驗。進(jìn)度停滯不前、性能難以把握、可靠程度低、測試工作量大、整體成本失控等一系列的問(wèn)題很可能發(fā)生,最終導致交付周期長(cháng)、實(shí)施難度大、應變能力差、相對壽命周期短的必然性后果。面向對象的誘惑力就在于它能徹底改變這種困惑被動(dòng)的局面。達到設計目標的途徑可以有很多種,如果沒(méi)有得力的指導與約束,問(wèn)題就會(huì )變得復雜起來(lái)。設計者常常會(huì )在仁者見(jiàn)仁、智者見(jiàn)智的抉擇中困惑不已,而客觀(guān)評價(jià)這些主觀(guān)構思方面的優(yōu)劣并沒(méi)有多大的說(shuō)服力,這里有技術(shù)上的原因,也有思維方式不同、習慣上的差別、視野視角的變化等原因。這往往是造成項目管理難度大、可控性不強的主要原因之一。
對于專(zhuān)業(yè)人士來(lái)說(shuō)崇尚“陽(yáng)春白雪”的高雅固然沒(méi)錯,但如果對“下里巴人”的技術(shù)不屑一顧也未必就是合理的選擇。因為“陽(yáng)春白雪”會(huì )意味著(zhù)更多成本的支出,如果“下里巴人”能夠兌現訂單也未必非要“陽(yáng)春白雪”不可。技術(shù)的意義在于創(chuàng )造價(jià)值并兌現市場(chǎng)利益,當企業(yè)面對市場(chǎng)的時(shí)候,駕馭技術(shù)的本質(zhì)并不在于技術(shù)本身,如何用盡量小的代價(jià)獲取相對好的市場(chǎng)回報才是技術(shù)價(jià)值的意義所在。推崇先進(jìn)的開(kāi)發(fā)理念并不等同于對技術(shù)的迷信或盲目崇拜,技術(shù)對于企業(yè)來(lái)說(shuō)只是一個(gè)生產(chǎn)手段,而不是研究的對象。忽略技術(shù)在企業(yè)過(guò)程中的作用并不妥當,但盲目追求技術(shù)上的先進(jìn)性也同樣具有極高的風(fēng)險性。制定技術(shù)路線(xiàn)、把握技術(shù)介入的深刻程度都是決定項目盈利能力的控制要素。軟件企業(yè)中不能沒(méi)有技術(shù),但企業(yè)畢竟不是基礎技術(shù)的機構,這也是技術(shù)管理人員經(jīng)常容易步入的一個(gè)誤區。
在引入了面向對象的理念之后,通過(guò)對象的封裝可以在很大程度上形成設計實(shí)現的客觀(guān)約束,從而避免過(guò)多的自由發(fā)揮空間,使整個(gè)團隊能夠沿著(zhù)基本相同的設計方式完成設計任務(wù)。關(guān)于業(yè)務(wù)對象的抽象與封裝如果是從實(shí)現的過(guò)程中去總結摸索,將會(huì )是一個(gè)漫長(cháng)而重復的實(shí)踐過(guò)程,如果在需求分析階段就能夠造出對象原型,對于有效屏蔽上述種種風(fēng)險具有非常明顯的改進(jìn)效果,也就是說(shuō)面向對象絕不僅僅是編程人員需要掌握的理念,需求分析人員對此理念的駕馭能力對項目的影響程度要比程序員多得多。(項目管理者聯(lián)盟)
更多內容詳細咨詢(xún):http://www.firg8.com/