客戶盡快看到可運(yùn)行的應(yīng)用系統(tǒng),經(jīng)過界面設(shè)計或簡單的系統(tǒng)分析后直接進(jìn)入編碼階段,甚至各個模塊分頭開發(fā),服務(wù)器段代碼隨意編寫、數(shù)據(jù)庫任意添加、參數(shù)定義沒有規(guī)范,整個應(yīng)用系統(tǒng)處于一種無序混亂的狀態(tài),當(dāng)我們采用建模及按照軟件工程的方式進(jìn)行管理的時候,情況馬上就會好的多。
什么是建模?
? 建模是使你逐層深入解決問題的辦法;
? 確認(rèn)應(yīng)用系統(tǒng)的功能需求并為事務(wù)處理原則建模;
? 對抽象的對象映射需求,辨認(rèn)和提供設(shè)計模版并創(chuàng)建慣用的模版;
? 分辨和設(shè)計對象或劃分三層模型的服務(wù);
? 對軟件的組成部分映射成對象并設(shè)計組件在網(wǎng)絡(luò)上如何分布;
UML(Unified Modeling Language,統(tǒng)一建模語言)是一種通用的可視化建模語言,用于對軟件進(jìn)行描述、可視化處理、構(gòu)造和建立軟件系統(tǒng)的文檔。UML適用于各種軟件開發(fā)方法、軟件生命周期的各個階段、各種應(yīng)用領(lǐng)域以及各種開發(fā)工具,同樣,在網(wǎng)站設(shè)計或以網(wǎng)站為表現(xiàn)形式的各種網(wǎng)絡(luò)應(yīng)用項目中,UML也表現(xiàn)出強(qiáng)大的作用。UML能夠描述系統(tǒng)的靜態(tài)結(jié)構(gòu)和動態(tài)行為:靜態(tài)結(jié)構(gòu)定義了系統(tǒng)中重要對象的屬性和操作以及這些對象之間的相互關(guān)系;動態(tài)行為定義了對象的時間特性和對象為完成目標(biāo)任務(wù)而相互進(jìn)行通信的機(jī)制。UML不是一種程序設(shè)計語言,但我們可以用代碼生成器將UML模型轉(zhuǎn)換為多種程序設(shè)計語言代碼,或使用反向生成器工具將程序源代碼轉(zhuǎn)換為UML模型。
我們可以看的出,建模并不等同于程序編碼,利用同樣的UML模型可以生成不同語言的框架代碼,而且可以通過反向生成,在編寫代碼過程中及時更新UML模型,這對系統(tǒng)分析員和項目管理人員來說是夢寐以求的。只要能夠仔細(xì)地把握客戶的需求,不斷改進(jìn)UML模型,那么采用什么樣的語言開發(fā)已經(jīng)成了次要,大量的需求積累和分析工作能在客戶需求變化時得到高度的復(fù)用,即使系統(tǒng)采用新的語言重新開發(fā),需要的也僅僅是編碼部分的工作。
雖然軟件建??梢栽陂_發(fā)的任何階段進(jìn)入,但是在設(shè)計初期,應(yīng)該將精力更加集中在系統(tǒng)功能及性能分析、系統(tǒng)運(yùn)行環(huán)境、選擇編程語言等,而不是考慮考慮程序的細(xì)節(jié),如在屏幕上的什么位置放置按鈕等。在項目開發(fā)的中期引入建模是非常有意義的,通過建模把握程序開發(fā)的方向,準(zhǔn)確完成需求分析中所要求的任務(wù)。
在高展先生的《全程建?!芬晃闹嘘U述的“全程鏡像一體化建模方式“,整個建模過程依靠業(yè)務(wù)驅(qū)動,在模型設(shè)計中利用盒子的上下兩部分分別代表業(yè)務(wù)組織結(jié)構(gòu)和軟件邏輯結(jié)構(gòu),將客戶可視的具體的需求與系統(tǒng)抽象的邏輯流程一一對應(yīng),這對缺乏技術(shù)背景的客戶代表和經(jīng)驗(yàn)不足的系統(tǒng)分析員之間的溝通具有明顯有效的作用。
五:總結(jié)
系統(tǒng)分析是項目開發(fā)中最艱巨的工作,本階段需要特別注意的工作重點(diǎn)在于:
? 補(bǔ)充完善上一階段可能欠缺的系統(tǒng)的性能需求;
? 系統(tǒng)分析員需要站在全局出發(fā),設(shè)計合理可行的設(shè)計方案;
? 在需求不明的情況下設(shè)計多種解決方案供客戶選擇,
? 將系統(tǒng)分解模塊,最大限度地設(shè)計代碼復(fù)用;
? 使用UML建模方式,將客戶變化的需求映射到模型中,大大提高系統(tǒng)的擴(kuò)展性和開發(fā)效率
項目經(jīng)理勝任力免費(fèi)測評PMQ上線啦!快來測測你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html