成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓
當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 建筑OA系統(tǒng) > 項(xiàng)目進(jìn)度管理軟件
正確看待項(xiàng)目開始的前期分析
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
談過(guò)RUP原則,也搞定了客戶需求,一個(gè)軟件開發(fā)項(xiàng)目總算從客戶端轉(zhuǎn)由開發(fā)團(tuán)隊(duì)掌控。
「太好了,案子終于進(jìn)來(lái)了,大家開始動(dòng)手做吧!」項(xiàng)目領(lǐng)導(dǎo)人宣布。于是辦公室燈火通明,準(zhǔn)備與開發(fā)工程進(jìn)行長(zhǎng)期抗戰(zhàn)。但是等一等!不是要先做分析嗎?「分析?沒(méi)問(wèn)題,我們當(dāng)然也做分析。」項(xiàng)目領(lǐng)導(dǎo)人如此回答,同時(shí)對(duì)某人喊道:「喂,給你三天時(shí)間…不,兩天內(nèi)把分析做好,大家等著趕工呢!」
這樣的形容或許有些夸張,不過(guò)許多開發(fā)團(tuán)隊(duì)看待「前置階段」(程序撰寫之前的階段)的態(tài)度大概是如此。因?yàn)榇蟛糠秩苏J(rèn)為:反正分析又不是真正的「生產(chǎn)」,何必投入太多人力與時(shí)間在這種沒(méi)有實(shí)際貢獻(xiàn)的事情上?
分析不事生產(chǎn)嗎?其實(shí)并非如此。您是否對(duì)在前兩篇文章中不斷提到的「1:200」成本概念記憶猶新?同樣一個(gè)問(wèn)題,當(dāng)它發(fā)生在前面階段與后面階段時(shí),所需要投入的解決成本平均比例大約是一比兩百,所以您應(yīng)該不難理解在「前置階段」中分析的重要性。
相信絕大多數(shù)的開發(fā)人員都知道分析很重要,因?yàn)樗痪映邢葐⒑蟮膽?zhàn)略位置,任何一個(gè)小小的錯(cuò)誤,都可能導(dǎo)致開發(fā)大業(yè)功虧一簣。因此,分析并非「不事生產(chǎn)」;相反的,我認(rèn)為從分析階段開始就是一種生產(chǎn)。
分析的目的
「分析」在RUP的定義是:「正確理解問(wèn)題,把需求陳述轉(zhuǎn)換成軟件概念,并開始對(duì)所欲建置的系統(tǒng)發(fā)展出一個(gè)可視化模型,以便快速、毫無(wú)銜接障礙地進(jìn)入程序設(shè)計(jì)等后續(xù)階段。」為了達(dá)到這個(gè)目標(biāo),我建議采用以下作法:
在RUP里,這個(gè)階段的工作稱為「對(duì)象導(dǎo)向分析」(Object Oriental Analysis),又名「視覺(jué)塑型分析」(Visualizing Modeling Analysis)。「對(duì)象導(dǎo)向分析」代表從分析階段就開始建立正確的對(duì)象導(dǎo)向概念,而「視覺(jué)塑型分析」則彰顯分析在此是一種可視化與模型化的過(guò)程?!笇?duì)象導(dǎo)向」(Object Oriented,簡(jiǎn)稱OO)是許多教科書都會(huì)介紹的程序語(yǔ)言概念,因此不再贅述。至于強(qiáng)調(diào)視覺(jué)感的「塑型」(modeling)則是一種新的觀念與作法,在此特別說(shuō)明。
Model是什么?
什么是Model?Model就是對(duì)真實(shí)物品的簡(jiǎn)化呈現(xiàn),它可以是汽車模型、飛機(jī)模型等實(shí)體模型,也可以是一份設(shè)計(jì)藍(lán)圖。不論如何,其目的都是利用「視覺(jué)」來(lái)代表真實(shí)物品。對(duì)RUP而言,「視覺(jué)塑型分析」也同時(shí)擁有上述兩種意涵。希望把藍(lán)圖畫出來(lái),也期望透過(guò)這個(gè)過(guò)程創(chuàng)造「產(chǎn)品雛形」。
為何要做Modeling?理由很簡(jiǎn)單:因?yàn)椤敢曈X(jué)圖像」遠(yuǎn)較「文字陳述」更容易被理解,也更接近真實(shí)物品。所以,當(dāng)開發(fā)過(guò)程與產(chǎn)品都被「視覺(jué)塑型化」之后,就產(chǎn)生以下幾個(gè)好處:
首先,開發(fā)成員可以按照實(shí)際模型或藍(lán)圖進(jìn)行討論,避免各自以文字或想象進(jìn)行溝通而可能產(chǎn)生的誤解。第二,可以讓客戶驗(yàn)證產(chǎn)品雛形是否符合真正需求,避免需求被扭曲。第三,可以預(yù)先了解及檢測(cè)產(chǎn)品的特色、行為與功能等,進(jìn)一步掌控質(zhì)量。最后,可以據(jù)此發(fā)展成為最終產(chǎn)品。
不過(guò),你可能會(huì)問(wèn):「可視化?做模型?哪有那么多時(shí)間?干脆直接寫程序算了!」當(dāng)然,如果做模型也要一頭鉆入實(shí)際的程序代碼撰寫工作,確實(shí)是蠻累人的。不過(guò),幸好有個(gè)叫做「UML語(yǔ)言」的好東西,可以幫助我們完成這些工作。
UML的威力
UML(Unified Modeling Language)是一種可以把軟件開發(fā)過(guò)程中的各種產(chǎn)物予以可視化、特定化、建構(gòu)化與文件化的語(yǔ)言。是由Rational的Gardy Booch、Jim Rumbaugh與Ivar Jacobson三位對(duì)象導(dǎo)向領(lǐng)域的大師級(jí)人物于1994年所發(fā)展與公布的語(yǔ)言,隨后并經(jīng)全球各程序語(yǔ)言專家,以及包括IBM、HP、Microsoft、Oracle等業(yè)界大廠共同參與、制訂及推動(dòng),目前已是OMG(Object Management Group;對(duì)象管理組織)的公開性標(biāo)準(zhǔn)語(yǔ)言,被廣泛應(yīng)用在跨領(lǐng)域的軟件開發(fā)過(guò)程。
那么,UML可以做到什么事情呢?
首先,UML可以「可視化(Visualizing)」系統(tǒng)及系統(tǒng)架構(gòu)。因而能夠把需求、問(wèn)題、行為等概念或文字描述,轉(zhuǎn)換成各種互有關(guān)連的「圖形」,讓開發(fā)成員可以清楚知道系統(tǒng)的各種詳細(xì)架構(gòu),讓大家得以在共同基礎(chǔ)上溝通,避免誤解。
第二,UML可以「特定化(Specifying)」一個(gè)模型。也就是可以建立一個(gè)精準(zhǔn)、毫不模糊及完整的模型,幫助進(jìn)行特定功能或行為的追蹤、檢測(cè)與控管,確保它們不會(huì)在后續(xù)階段被模糊或失焦。
第三,UML可以「建構(gòu)(Constructing)」真正的程序代碼??梢灾苯影裊ML語(yǔ)言「對(duì)應(yīng)轉(zhuǎn)換(Mapping)」成Java、C++、VB等真正的程序代碼或數(shù)據(jù)庫(kù),所以產(chǎn)品雛形就能制造出來(lái)。更棒的是,它不僅提供這種「正向工程」,也允許從程序代碼轉(zhuǎn)回UML的「逆向工程」。
第四,UML將整個(gè)系統(tǒng)架構(gòu)及開發(fā)流程「文件化(Documenting)」。因?yàn)閁ML除了可以把整個(gè)系統(tǒng)及系統(tǒng)架構(gòu)予以可視化,產(chǎn)生各種互有關(guān)連的大量圖表外,還會(huì)瞄準(zhǔn)所有圖表的運(yùn)作與互動(dòng)細(xì)節(jié),幫助掌控從需求、項(xiàng)目計(jì)劃、測(cè)試到產(chǎn)品成型的所有開發(fā)流程都遵循標(biāo)準(zhǔn)作業(yè)。
從以上說(shuō)明可以發(fā)現(xiàn),UML可說(shuō)是軟件分析工程的最大利器,也是整個(gè)軟件開發(fā)過(guò)程的堅(jiān)強(qiáng)后盾。大家都知道,軟件系統(tǒng)日趨龐大復(fù)雜,而且往往也不是單獨(dú)存在,必須與其它既有或未來(lái)的系統(tǒng)互動(dòng)溝通,這些都讓系統(tǒng)架構(gòu)的復(fù)雜度大幅提升,不能單靠想象或文字進(jìn)行描述與溝通;應(yīng)該讓UML發(fā)揮其強(qiáng)大的威力。
所以,只要會(huì)利用UML,誰(shuí)能說(shuō)「分析」不事生產(chǎn)呢?
本站推薦
- 12024 年企業(yè)倉(cāng)庫(kù)管理系統(tǒng)軟件選型必看:正確采購(gòu)的方法指南
- 2資金預(yù)算管理軟件大揭秘:企業(yè)獲利秘訣與正確挑選攻略在此!
- 3企業(yè)怎樣從OKR項(xiàng)目管理系統(tǒng)中獲益并做出正確選擇?
- 4企業(yè)如何從競(jìng)價(jià)排名客戶管理平臺(tái)受益并做出正確選擇?
- 5審計(jì)ERP系統(tǒng)能否真正確保企業(yè)數(shù)據(jù)精準(zhǔn)與內(nèi)控高效?
- 6怎樣挑到超適配的保險(xiǎn)業(yè)務(wù)系統(tǒng)廠家?深度剖析引您正確抉擇
- 7項(xiàng)目管理系統(tǒng)的正確打開方式,讓企業(yè)告別“拖泥帶水”
- 8erp系統(tǒng)會(huì)出表格的正確設(shè)置
- 9erp收銀系統(tǒng)打不開參數(shù)不正確