1.軟件質(zhì)量特性
- 功能性:適合性墓猎、準(zhǔn)確性捆昏、互操作性、保密安全性毙沾、功能依從性骗卜。
- 可靠性:成熟性、容錯(cuò)性、易恢復(fù)性寇仓、可靠依從性举户。
- 易用性:易理解性、易操作性遍烦、易學(xué)性俭嘁、吸引性、易用依從性乳愉。
- 效率:時(shí)間特性兄淫、資源利用、效率依從性蔓姚。
- 維護(hù)性:易分析性捕虽、易改變性、穩(wěn)定性坡脐、易測(cè)試性泄私、維護(hù)依從性。
- 可移植性:適用性备闲、易安裝性晌端、共存性、易替換性恬砂、可移植性的依從性咧纠。
2.環(huán)形復(fù)雜度計(jì)算
- 環(huán)形復(fù)雜度V(G) = E - N + 2
(E是流圖中的邊的條數(shù),N是節(jié)點(diǎn)數(shù))
3.內(nèi)聚類(lèi)型
- ① 偶然內(nèi)聚:模塊中的代碼無(wú)法定義其不同功能的調(diào)用泻骤。但它使該模塊能執(zhí)行不同的功能漆羔,這種模塊稱(chēng)為巧合強(qiáng)度模塊。
- ② 邏輯內(nèi)聚:這種模塊把幾種相關(guān)的功能組合在一起狱掂, 每次被調(diào)用時(shí)演痒,由傳送給模塊參數(shù)來(lái)確定該模塊應(yīng)完成哪一種功能
- ③ 時(shí)間內(nèi)聚:把需要同時(shí)執(zhí)行的動(dòng)作組合在一起形成的模塊為時(shí)間內(nèi)聚模塊。
- ④ 過(guò)程內(nèi)聚:構(gòu)件或者操作的組合方式是趋惨,允許在調(diào)用前面的構(gòu)件或操作之后鸟顺,馬上調(diào)用后面的構(gòu)件或操作,即使兩者之間沒(méi)有數(shù)據(jù)進(jìn)行傳遞器虾。
- ⑤ 通信內(nèi)聚:指模塊內(nèi)所有處理元素都在同一個(gè)數(shù)據(jù)結(jié)構(gòu)上操作(有時(shí)稱(chēng)之為信息內(nèi)聚)讯嫂,或者指各處理使用相同的輸入數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù)。
- ⑥ 順序內(nèi)聚:指一個(gè)模塊中各個(gè)處理元素都密切相關(guān)于同一功能且必須順序執(zhí)行兆沙,前一功能元素輸出就是下一功能元素的輸入欧芽。即一個(gè)模塊完成多個(gè)功能,這些模塊又必須順序執(zhí)行挤悉。
- ⑦ 功能內(nèi)聚:這是最強(qiáng)的內(nèi)聚,指模塊內(nèi)所有元素共同完成一個(gè)功能,聯(lián)系緊密装悲,缺一不可昏鹃。
4.UML狀態(tài)圖的轉(zhuǎn)換(transition)的五要素
- 源狀態(tài):即受轉(zhuǎn)換影響的狀態(tài)。
- 目標(biāo)狀態(tài):當(dāng)轉(zhuǎn)換完成后對(duì)象的狀態(tài)诀诊。
- 觸發(fā)事件:用來(lái)為轉(zhuǎn)換定義一個(gè)事件洞渤,包括調(diào)用、改變属瓣、信號(hào)载迄、時(shí)間四類(lèi)事件。
- 監(jiān)護(hù)條件:布爾表達(dá)式抡蛙,決定是否激活轉(zhuǎn)換护昧。
- 動(dòng)作:轉(zhuǎn)換激活時(shí)的操作。
5.策略模式
策略模式定義了一系列的算法粗截,并將每一個(gè)算法封裝起來(lái)惋耙,而且使它們還可以互相替換。策略模式讓算法獨(dú)立于它的客戶(hù)而獨(dú)立變換熊昌。
應(yīng)用場(chǎng)景:
- 多個(gè)類(lèi)只區(qū)別在表現(xiàn)行為不同绽榛,可以使用Strategy模式,在運(yùn)行時(shí)動(dòng)態(tài)選擇具體要執(zhí)行的行為婿屹。
- 需要在不同情況下使用不同的策略(算法)灭美,或者策略還可能在未來(lái)用其它方式來(lái)實(shí)現(xiàn)。
- 對(duì)客戶(hù)隱藏具體策略(算法)的實(shí)現(xiàn)細(xì)節(jié)昂利,彼此完全獨(dú)立届腐。
6.生成器模式
生成器模式將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離,使得同樣的構(gòu)建過(guò)程可以創(chuàng)建不同的表示页眯。
適用范圍:
- 當(dāng)創(chuàng)建復(fù)雜對(duì)象的算法應(yīng)該獨(dú)立于該對(duì)象的組成部分以及它們的裝配方式時(shí)梯捕。
- 當(dāng)構(gòu)造過(guò)程必須允許被構(gòu)造的對(duì)象有不同表示時(shí)。
7.喬姆斯基(chomsky)文法分類(lèi)
- 0型文法(短語(yǔ)結(jié)構(gòu)文法):0型文法的能力相當(dāng)于圖靈機(jī)(Turing)窝撵】耍或者說(shuō),任何0型文語(yǔ)言都是遞歸可枚舉的碌奉,反之短曾,遞歸可枚舉集必定是一個(gè)0型語(yǔ)言。0型文法是這幾類(lèi)文法中赐劣,限制最少的一個(gè)嫉拐,所以我們?cè)谠囶}中見(jiàn)到的,至少是0型文法。
- 1型文法(上下文有關(guān)文法):此文法對(duì)應(yīng)于線(xiàn)性有界自動(dòng)機(jī)魁兼。它是在0型文法的基礎(chǔ)上每一個(gè)α→β,都有|β|≥|α|婉徘。這里的|β|表示的是β的長(zhǎng)度。
- 2型文法(上下文無(wú)關(guān)文法):此文發(fā)對(duì)應(yīng)于下推自動(dòng)機(jī),形式語(yǔ)言論中一種重要的變換文法盖呼,用來(lái)描述上下文無(wú)關(guān)語(yǔ)言儒鹿。由于程序設(shè)計(jì)語(yǔ)言的語(yǔ)法基本上都是上下文無(wú)關(guān)文法,因此應(yīng)用十分廣泛几晤。2型文法是在1型文法的基礎(chǔ)上,再滿(mǎn)足:每一個(gè)α→β都有α是非終結(jié)符约炎。如A->Ba,符合2型文法要求。
- 3型文法(正規(guī)文法):此文發(fā)對(duì)應(yīng)于有限狀態(tài)自動(dòng)機(jī)蟹瘾。它是在2型文法的基礎(chǔ)上滿(mǎn)足:A→α|αB(右線(xiàn)性)或A→α|Bα(左線(xiàn)性)圾浅。