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