為什么要建模?
就好比如若你自己要建造一座小房子,首先得先給要建造的房子設(shè)計一張草圖甚至是藍圖;若要建造一座大廈,首先要做的肯定不是先去所需買材料,而是需要對建筑物的大小,形狀和樣式做一個規(guī)劃,做出相應(yīng)的圖紙和模型??赡茉谝?guī)劃中突然有了更好的想法,還可以對圖紙或模型進行不斷的修改。這樣直到對圖紙、對模型滿意之后再進行施工。這樣不僅建造出滿意的大廈還能提高施工的效率。
建筑物需要建模,同樣,軟件也需要建模,就像之前沒有任何建模的情況下直接進行《機房收費系統(tǒng)》的軟件開發(fā),而且還妄圖開發(fā)出高質(zhì)量的產(chǎn)品,結(jié)果就是軟件不斷地有bug,甚至有時候都不知道問題出在了哪里。
所以說,如果沒有對代碼結(jié)構(gòu)、過程和工具的詳細計劃,很大的可能都會是一個失敗的產(chǎn)品。看到一句話是:每一個失敗的軟件項目都有其特殊的原因,但是成功的項目在許多方面都是類似的,軟件組織獲得成功的因素有很多,但是一個基本的因素就是對建模的使用。
建模的目標(biāo)
1、便于開發(fā)人員展現(xiàn)系統(tǒng)
2、允許開發(fā)人員指定系統(tǒng)的結(jié)構(gòu)或行為
3、提供指導(dǎo)開發(fā)人員構(gòu)造系統(tǒng)的模板
4、記錄開發(fā)人員的決策
通用建模語言的必要性
對比項目的復(fù)雜度會發(fā)現(xiàn),越簡單的項目,使用規(guī)范建模的可能性越小。實際上,即便是最小的項目,開發(fā)人員也要建立模型,雖然說很不規(guī)范。開發(fā)者可以在一塊黑板或者一小片紙上概略地描述一下系統(tǒng)的某個部分,團隊可以使用CRC(類一責(zé)任一協(xié)作者模型)卡片來驗證設(shè)計的可行性。這些模型本身沒有任何錯誤,只要有用就盡可能地使用。但是這種不正規(guī)的模型通常情況下很難被其他開發(fā)者所共享,因為太有個性色彩了。正因為這樣,通用建模語言的存在成為必然。
每個項目都可以從建模中受益。甚至在自由軟件領(lǐng)域,模型可以幫助開發(fā)小組更好的規(guī)劃系統(tǒng)設(shè)計,更快地開發(fā)。所有受人關(guān)注的有用的系統(tǒng)都有一個隨著時間推移越來越復(fù)雜的趨勢,如果不建立模型,那么失敗的可能性就和項目的復(fù)雜度成正比。
建模四原則
1、選擇建立什么樣的模型對如何發(fā)現(xiàn)和解決問題具有重要的影響。就是說選擇正確的模型。
2、每個模型可以有多重表達方式
3、好的模型總是能夠切合實際
4、孤立的模型是不完整的
面向?qū)ο蠼?/b>
面向?qū)ο蠼V饕K是對象或者類。對象通常是從問題字典或者方法字典中抽象出來的,類是對一組具有共同特點的對象的描述,每一個對象都有自己的標(biāo)識、狀態(tài)和行為。
也就是說,他可以描述一個軟件從需求分析直到實現(xiàn)和測試的開發(fā)全過程。
對于建模還有任何不懂得問題歡迎咨詢,免費教材分享