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