軟件工程期末考試復(fù)習(xí)總結(jié)知識點(diǎn)+必考題型_第1頁
軟件工程期末考試復(fù)習(xí)總結(jié)知識點(diǎn)+必考題型_第2頁
軟件工程期末考試復(fù)習(xí)總結(jié)知識點(diǎn)+必考題型_第3頁
軟件工程期末考試復(fù)習(xí)總結(jié)知識點(diǎn)+必考題型_第4頁
軟件工程期末考試復(fù)習(xí)總結(jié)知識點(diǎn)+必考題型_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、軟件工程復(fù)習(xí)資料1. 軟件危機(jī)產(chǎn)生的原因(1) 軟件不同于硬件,它是計(jì)算機(jī)系統(tǒng)的邏輯部件而不是物理部件。在 寫出程序代碼并在計(jì)算機(jī)上試運(yùn)行之前軟件開發(fā)過程的進(jìn)展情況較難衡量。 很難檢驗(yàn)開發(fā)的正確性且軟件開發(fā)的質(zhì)量也較難評價(jià)。因此控制軟件開發(fā)過 程相當(dāng)困難。此外在軟件運(yùn)行過程中發(fā)現(xiàn)錯誤很可能是遇到了一個(gè)在開發(fā)期 間引入的但在測試階段沒有能夠檢測出來的錯誤,所以軟件維護(hù)常常意味著 修改原來的設(shè)計(jì)。這樣維護(hù)的費(fèi)用十分驚人,客觀上使得軟件較難維護(hù)。(2) 軟件開發(fā)的過程是多人分工合作分階段完成的過程, 參與人員之間 的溝通和配合十分重要。但是,相當(dāng)多的軟件開發(fā)人員對軟件的開發(fā)和維護(hù) 存在不少錯誤的觀念

2、。在實(shí)踐的過程中沒有采用工程化的方法,或多或少采 用了一些錯誤的方法和技術(shù)。這是造成軟件危機(jī)的主要原因。(3) 開發(fā)和管理人員只重視開發(fā)而輕視問題的定義, 使軟件產(chǎn)品無法滿 足用戶的要求。對用戶的要求沒有完整準(zhǔn)確的認(rèn)識就急于編寫程序。這是許 多軟件開發(fā)失敗的另一主要原因。事實(shí)上,許多用戶在開始時(shí)并不能準(zhǔn)確具 體地?cái)⑹鏊麄兊男枰?。軟件人員需要做大量深入細(xì)致的調(diào)查研究工作,反復(fù) 多次與用戶交流信息,才能真正全面、準(zhǔn)確、具體地了解用戶的要求。(4) 軟件管理技術(shù)不能滿足現(xiàn)代軟件開發(fā)的需要, 沒有統(tǒng)一的軟件質(zhì)量 管理規(guī)范。首先是文檔缺乏一致性和完整性,從而失去管理的依據(jù)。因?yàn)槌?序只是完整軟件產(chǎn)品的一

3、個(gè)組成部分。 一個(gè)軟件產(chǎn)品必須由一組的配置組成, 不能只重視程序而應(yīng)當(dāng)特別重視軟件配置。其次,由于成本估計(jì)不準(zhǔn)確,資 金分配混亂,人員組織不合理,進(jìn)度安排無序,導(dǎo)致軟件技術(shù)無法實(shí)施。(5) 在軟件的開發(fā)和維護(hù)關(guān)系問題上存在錯誤的觀念。 軟件維護(hù)工作通 常是在軟件完成之后進(jìn)行的,因此是極端艱巨復(fù)雜的工作,需要花費(fèi)很大的 代價(jià)。所以做好軟件的定義工作是降低軟件成本,提高軟件質(zhì)量的關(guān)鍵。如 果軟件人員在定義階段沒有正確、全面地理解用戶要求,直到測試階段才發(fā) 現(xiàn)軟件產(chǎn)品不完全符合用戶的需要,這時(shí)再修改就為時(shí)已晚了。另外,在軟 件生存期的不同結(jié)點(diǎn)進(jìn)行修改需要付出的代價(jià)是很不相同的。在早期引入變 更涉及面

4、較小,付出的代價(jià)較低,在開發(fā)的中期軟件配置的許多成分已經(jīng)完 成,引入一個(gè)變更可能需要對所有已完成的配置成分都做相應(yīng)的修改,不僅 工作量大,而且邏輯上更復(fù)雜。因而付出的代價(jià)劇增。在軟 "已經(jīng)完成 "后再 引入變更。則需要付出更高得多的代價(jià)。因此,必須把軟件維護(hù)的觀念引入 軟件開發(fā)的各個(gè)階段,建立起軟件開發(fā)與維護(hù)的正確關(guān)系。2. 軟件工程的概念 軟件工程是研究和應(yīng)用如何以系統(tǒng)性的、規(guī)范化的、可定量的過程化方法 去開發(fā)和維護(hù)軟件, 以及如何把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠 得到的最好的技術(shù)方法結(jié)合起來。2. 軟件工程的三要素 方法、工具和過程3. 軟件工程的基本原理(

5、 1) 用分階段的生命周期計(jì)劃嚴(yán)格管理( 2) 堅(jiān)持進(jìn)行階段評審( 3) 實(shí)行嚴(yán)格的產(chǎn)品控制( 4) 采用現(xiàn)代程序設(shè)計(jì)技術(shù)( 5) 結(jié)果應(yīng)能清楚地審查( 6) 開發(fā)小組的人員應(yīng)該少而精( 7) 承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性4. 軟件生命周期 問題定義 可行性研究 需求分析 總體設(shè)計(jì) 詳細(xì)設(shè)計(jì) 編碼和單元測試 綜合測試 軟件維護(hù)5. 瀑布模型存在的問題 靠文檔驅(qū)動,用戶不能全面地認(rèn)識動態(tài)的軟件產(chǎn)品。且過于理想化,可能出 現(xiàn)設(shè)計(jì)上的錯誤。缺乏靈活性。6. RUP統(tǒng)一過程的四個(gè)階段RUP莫型將軟件開發(fā)過程分為4個(gè)大的階段,分別是先啟、精化、(構(gòu)建)和 產(chǎn)品化。7. 可行性分析研究的主要目的 用最

6、小的代價(jià)在盡可能小的時(shí)間內(nèi),確定問題是否能解決,從而確定問題是 否值得去解決。8. 需求分析階段所有分析方法需要遵守的準(zhǔn)則(1)必須理解并描述問題的信息域,根據(jù)這條準(zhǔn)則必須建立數(shù)據(jù)莫型。(2)必須定義軟件應(yīng)完成的功能,這條準(zhǔn)則要求建立功能莫型。( 3) 必須描述作為外部事件結(jié)果的軟件行為, 這條準(zhǔn)則要求建立行為準(zhǔn)則。(4) 必須對描述信息,功能和行為的莫型進(jìn)行分解,用層次的方式展示細(xì) 節(jié)。9. 需求分析的目的 準(zhǔn)確的回答“系統(tǒng)必須做什么”這個(gè)問題10. 數(shù)據(jù)字典的作用和概念 概念:數(shù)據(jù)字典是指對數(shù)據(jù)的數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲、處理 邏輯、外部實(shí)體等進(jìn)行定義和描述,其目的是對數(shù)據(jù)流程圖

7、中的各個(gè)元素做 出詳細(xì)的說明。作用:數(shù)據(jù)字典和數(shù)據(jù)流圖共同構(gòu)成系統(tǒng)的邏輯模型。沒有流圖數(shù)據(jù)字典難 以發(fā)揮作用。沒有數(shù)據(jù)字典,數(shù)據(jù)流圖就不嚴(yán)格。11. 數(shù)據(jù)流圖的圖形元素T數(shù)據(jù)流數(shù)據(jù)的源點(diǎn)或終點(diǎn)變換數(shù)據(jù)的處理=數(shù)據(jù)存儲12. E-R圖(非畫圖題)在ER圖中有如下四個(gè)成分:矩形框:表示實(shí)體,在框中記入實(shí)體名。菱形框:表示聯(lián)系,在框中記入聯(lián)系名。橢圓形框:表示實(shí)體或聯(lián)系的屬性,將屬性名記入框中。對于主屬性名,貝U 在其名稱下劃一下劃線。連線:實(shí)體與屬性之間;實(shí)體與聯(lián)系之間;聯(lián)系與屬性之間用直線相連,并 在直線上標(biāo)注聯(lián)系的類型。(對于一對一聯(lián)系,要在兩個(gè)實(shí)體連線方向各寫1;對 于一對多聯(lián)系,要在一的一

8、方寫1,多的一方寫N;對于多對多關(guān)系,則要在兩 個(gè)實(shí)體連線方向各寫N,M。)構(gòu)成E-R圖的3個(gè)基本要素是實(shí)體型、屬性和聯(lián)系,其表示方法為:實(shí)體一般認(rèn)為,客觀上可以相互區(qū)分的事物就是實(shí)體,實(shí)體可以是具體的人和物, 也可以是抽象的概念與聯(lián)系。關(guān)鍵在于一個(gè)實(shí)體能與另一個(gè)實(shí)體相區(qū)別, 具有相 同屬性的實(shí)體具有相同的特征和性質(zhì)。用實(shí)體名及其屬性名集合來抽象和刻畫同 類實(shí)體。在E-R圖中用矩形表示,矩形框內(nèi)寫明實(shí)體名;比如學(xué)生張三、學(xué)生李 四都是實(shí)體。如果是弱實(shí)體的話,在矩形外面再套實(shí)線矩形。屬性實(shí)體所具有的某一特性,一個(gè)實(shí)體可由若干個(gè)屬性來刻畫。屬性不能脫離實(shí) 體,屬性是相對實(shí)體而言的。在E-R圖中用橢

9、圓形表示,并用無向邊將其與相應(yīng) 的實(shí)體連接起來;比如學(xué)生的姓名、學(xué)號、性別、都是屬性。如果是多值屬性的 話,在橢圓形外面再套實(shí)線橢圓。如果是派生屬性則用虛線橢圓表示。聯(lián)系聯(lián)系也稱關(guān)系,信息世界中反映實(shí)體內(nèi)部或?qū)嶓w之間的關(guān)聯(lián)。 實(shí)體內(nèi)部的聯(lián) 系通常是指組成實(shí)體的各屬性之間的聯(lián)系;實(shí)體之間的聯(lián)系通常是指不同實(shí)體集 之間的聯(lián)系。在E-R圖中用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與 有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1 : 1,1 : n或m: n)。 比如老師給學(xué)生授課存在授課關(guān)系,學(xué)生選課存在選課關(guān)系。如果是弱實(shí)體的聯(lián) 系則在菱形外面再套菱形13. 需求分析和軟件設(shè)計(jì)兩個(gè)階段

10、的目的需求分析:確定對系統(tǒng)的綜合要求分析系統(tǒng)的數(shù)據(jù)要求導(dǎo)出系統(tǒng)的邏輯模型修正系統(tǒng)開發(fā)計(jì)劃軟件設(shè)計(jì):用比較抽象概括的方式確定目標(biāo)系統(tǒng)如何完成預(yù)定任務(wù)。14. 信息隱藏的概念在設(shè)計(jì)和確定模塊時(shí),使得一個(gè)模塊內(nèi)包含的特定信息(過程或數(shù)據(jù)),對于 不需要這些信息的其他模塊來說,是不可訪問的。15. 耦合的概念和分類概念:耦合性是程序結(jié)構(gòu)中各個(gè)模塊之間相互關(guān)聯(lián)的度量.它取決于各個(gè)模塊 之間的接口的復(fù)雜程度、調(diào)用模塊的方式以及哪些信息通過接口.分類:內(nèi)容耦合,公共耦合,外部耦合,控制耦合,標(biāo)記耦合,數(shù)據(jù)耦合, 非直接耦合,順序耦合(耦合度由高到低排列)16. 內(nèi)聚的概念和分類概念:內(nèi)聚是從功能角度來度量模

11、塊內(nèi)的聯(lián)系,一個(gè)好的內(nèi)聚模塊應(yīng)當(dāng)恰好 做一件事。分類:偶然內(nèi)聚,邏輯內(nèi)聚,時(shí)間內(nèi)聚,過程內(nèi)聚,通信內(nèi)聚,順序內(nèi)聚, 功能內(nèi)聚(內(nèi)聚度由弱到強(qiáng)排列)17. 模塊化的概念概念:把程序劃分成獨(dú)立命名且可獨(dú)立訪問的模塊,每個(gè)模塊完成一個(gè)子功 能,把這些模塊集成起來構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需 求。18. 詳細(xì)設(shè)計(jì)的任務(wù)確定怎樣具體的實(shí)現(xiàn)用戶需要的軟件系統(tǒng),也就是要設(shè)計(jì)出程序的藍(lán)圖 (書上)(網(wǎng)上)(1)為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì)。用某種圖形、表格、語言 等工具將每個(gè)模塊處理過程的詳細(xì)算法描述出來。(2) 為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。 對于需求分析、 概要設(shè)計(jì)確定的概念 性的數(shù)據(jù)類型進(jìn)

12、行確切的定義。(3) 為數(shù)據(jù)結(jié)構(gòu)進(jìn)行物理設(shè)計(jì), 即確定數(shù)據(jù)庫的物理結(jié)構(gòu)。 物理結(jié)構(gòu)主要 指數(shù)據(jù)庫的存儲記錄格式、存儲記錄安排和存儲方法,這些都依賴于具體所 使用的數(shù)據(jù)庫系統(tǒng)。(4) 其他設(shè)計(jì):根據(jù)軟件系統(tǒng)的類型,還可能要進(jìn)行以下設(shè)計(jì): 代碼設(shè)計(jì)。為了提高數(shù)據(jù)的輸入、分類、存儲、檢索等操作,節(jié)約內(nèi) 存空間,對數(shù)據(jù)庫中的某些數(shù)據(jù)項(xiàng)的值要進(jìn)行代碼設(shè)計(jì)。 輸入 / 輸出格式設(shè)計(jì)。 人機(jī)對話設(shè)計(jì)。對于一個(gè)實(shí)時(shí)系統(tǒng),用戶與計(jì)算機(jī)頻繁對話,因此要 進(jìn)行對話方式、內(nèi)容、格式的具體設(shè)計(jì)。(5) 編寫詳細(xì)設(shè)計(jì)說明書。(6) 評審。對處理過程的算法和數(shù)據(jù)庫的物理結(jié)構(gòu)都要評審。19. 設(shè)計(jì)復(fù)審的目的和作用 避免后期付

13、出高代價(jià)20. 判定樹,判定表判定樹和判定表是用于描述結(jié)構(gòu)化分析方法中 (數(shù)據(jù)加工 )環(huán)節(jié)的工具21. 結(jié)構(gòu)化程序設(shè)計(jì)的三種結(jié)構(gòu) 順序,選擇,循環(huán)22. 畫N-S圖和pad圖 Pad:PIIrWHILE C 卜IdlFAD圏的主要優(yōu)點(diǎn)如下:使冃表示結(jié)構(gòu)化控制結(jié)構(gòu)的PAD符號垃計(jì)出來的稈序必然是結(jié)構(gòu)化稈序.PAD圏所描繪的程洋結(jié)構(gòu)十分淸晰口PAD團(tuán)表現(xiàn)程序邏輯易讀、易懂=易記口容易將PAD醫(yī)轉(zhuǎn)喚成高級語言源程序*這種轉(zhuǎn)換匹用軟件工具自動憲成d 即可表示程序邏謨,也可描繪數(shù)據(jù)結(jié)構(gòu).迪圉的芍號支持自頂向下、逐步求靖方法的使用。第任井琦三任務(wù)N-S圖DO-WHILE陽4條件XELSETHEM耶介23.

14、 軟件測試的目的發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程24. 軟件測試的方法(黑盒 &白盒)黑盒:把程序看做一個(gè)黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程。也 就是說,黑盒測試是在程序接口進(jìn)行的測試,他只檢查程序功能是否能按規(guī) 格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)慕邮茌斎霐?shù)據(jù)并產(chǎn)生爭取的輸 入信息,程序測試過程中能否保持外部信息的完整性。黑盒測試又被稱為功 能測試。白盒:可以把程序看成裝在一個(gè)透明白盒子里,測試者完全知道程序的結(jié)構(gòu) 和處理算法。這種方法按照程序內(nèi)部的邏輯測試程序,檢測程序的主要執(zhí)行 通路是否都能按預(yù)定要求正確工作。白盒測試又被稱為結(jié)構(gòu)測試。25. 軟件測試的步驟(1)單元

15、測試(也稱模塊測試) :針對軟件設(shè)計(jì)的基本單元程序模 塊,進(jìn)行正確性檢驗(yàn)的測試工作。目的在于發(fā)現(xiàn)各個(gè)模塊內(nèi)部可能存在的各 種差錯。單元測試需要從程序內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測試用例,多個(gè)模塊可以平 行、獨(dú)立地進(jìn)行測試;(2)集成測試(也稱組裝測試,聯(lián)合測試) :在單元測試的基礎(chǔ)上,將 所有模塊按設(shè)計(jì)要求集成在一起進(jìn)行測試,以檢驗(yàn)總體設(shè)計(jì)中各模塊間的接 口設(shè)計(jì)問題、模塊之間的相互影響、上層模塊存在的各種差錯及全局?jǐn)?shù)據(jù)結(jié) 構(gòu)對系統(tǒng)的影響等方面。( 3)確認(rèn)測試(也稱驗(yàn)收測試,有效性測試) :主要檢驗(yàn)軟件的功能和性能 是否與需求說明書中的規(guī)定一致。(4)系統(tǒng)測試:將軟件系統(tǒng)作為一個(gè)元素,放入整個(gè)實(shí)際的計(jì)算機(jī)

16、系統(tǒng)中, 與計(jì)算機(jī)硬件、其他軟件、使用人員等系統(tǒng)元素結(jié)合在一起,在實(shí)際使用環(huán) 境下進(jìn)行綜合全面的測試。26. 軟件測試用例的組成 測試用例由輸入數(shù)據(jù)和預(yù)期的輸出數(shù)據(jù)組成。27. 根據(jù)題目要求設(shè)計(jì)測試用例請參考下方題目( 3)28. 軟件維護(hù)的分類( 4 種)(1)完善性的維護(hù)。 完善性維護(hù)就是在應(yīng)用軟件系統(tǒng)使用期間為不斷改 善和加強(qiáng)系統(tǒng)的功能和性能, 以滿足用戶日益增長的需求所進(jìn)行的維護(hù)工作。 在整個(gè)維護(hù)工作量中,完善性維護(hù)居第一位。(2)適應(yīng)性維護(hù)。適應(yīng)性維護(hù)是指為了讓應(yīng)用軟件系統(tǒng)適應(yīng)運(yùn)行環(huán)境的糾錯性維護(hù)的目的在于, 糾正在開發(fā)期間未能發(fā)現(xiàn)的變化而進(jìn)行的維護(hù)活動。適應(yīng)性維護(hù)工作量約占整個(gè)維護(hù)

17、工作量的25%。(3)糾錯性維護(hù)。遺留錯誤。對這些錯誤的相繼發(fā)現(xiàn),對它們進(jìn)行診斷和改正的過程稱為糾錯性維護(hù)。這類維護(hù)約占總維護(hù)工作量的 20%(4) 預(yù)防性維護(hù)。其主要思想是維護(hù)人員不應(yīng)被動地等待用戶提出要求 才做維護(hù)工作,而應(yīng)該選擇那些還有較長使用壽命。29. 面向?qū)ο蟮奶卣?封裝,集成,多態(tài)30. 面向?qū)ο蟮慕UZ言UML 請仔細(xì)復(fù)習(xí)書上第九章31. 面向?qū)ο蟮膭討B(tài)模型包含哪兩種圖型請仔細(xì)復(fù)習(xí)書上第九章32. 類的概念類 就是對具有相同數(shù)據(jù)和相同操作的的一組相似對象的定義33. 類圖的元素名稱,屬性,操作34. UM沖對象之間類的關(guān)系(空心三角形,菱形分別表示什么) 在UML圖中,類之間的

18、關(guān)系有如下幾種:關(guān)聯(lián)關(guān)系:Association黑三角形 聚合關(guān)系:Aggregatio n 空心菱形 卜 組合關(guān)系:Composition 依賴關(guān)系:Dependency帶箭頭的虛線 泛化關(guān)系:Ge neralizati on端為空心三角形的虛線 實(shí)現(xiàn)關(guān)系:Realization35. 畫用例圖參考下方題目最后一題36. 用例圖圖形元素37. 方框代表系統(tǒng)橢圓代表用例線條人代表行為者38. 對象模型的五個(gè)層次主題層、類&對象層、結(jié)構(gòu)層、屬性層、服務(wù)層39. 面向?qū)ο蠓治龇椒ǖ奈鍌€(gè)基本步驟第一步,確定對象和類。這里所說的對象是對數(shù)據(jù)及其處理方式的抽象, 它反映了系統(tǒng)保存和處理現(xiàn)實(shí)世界中

19、某些事物的信息的能力。類是多個(gè)對象 的共同屬性和方法集合的描述,它包括如何在一個(gè)類中建立一個(gè)新對象的描述。第二步,確定結(jié)構(gòu)(structure )。結(jié)構(gòu)是指問題域的復(fù)雜性和連接關(guān)系。 類成員結(jié)構(gòu)反映了泛化 - 特化關(guān)系,整體 - 部分結(jié)構(gòu)反映整體和局部之間的關(guān) 系。第三步,確定主題( subject )。主題是指事物的總體概貌和總體分析模 型。第四步,確定屬性( attribute )。屬性就是數(shù)據(jù)元素,可用來描述對象 或分類結(jié)構(gòu)的實(shí)例,可在圖中給出,并在對象的存儲中指定。第五步,確定方法(method)方法是在收到消息后必須進(jìn)行的一些處理方法: 方法要在圖中定義,并在對象的存儲中指定。對于每

20、個(gè)對象和結(jié)構(gòu)來說,那 些用來增加、修改、刪除和選擇一個(gè)方法本身都是隱含的(雖然它們是要在 對象的存儲中定義的,但并不在圖上給出) ,而有些則是顯示的。40. UML勺協(xié)助圖和時(shí)序圖時(shí)序圖定義 : 描述了對象之間傳遞消息的時(shí)間順序 , 用來表示用例中 的行為順序 , 是強(qiáng)調(diào)消息時(shí)間順序的交互圖 ;時(shí)序圖描述的事物 : 時(shí)序圖描述系統(tǒng)中類和類之間的交互 , 將這些交互 建模成消息交換 , 時(shí)序圖描述了類以及類之間的交換以完成的期望行為的消 息, 時(shí)序圖中每條消息都代表了類的一個(gè)操作 或者 引起狀態(tài)機(jī)改變的觸發(fā) 事件;時(shí)序圖表示 : 參與交互的對象在時(shí)序圖頂端水平排列 , 每個(gè)對象的底 端繪制了一條

21、垂直虛線,對象A像對象B發(fā)送消息,用一條帶箭頭的實(shí)線表 示,該實(shí)線起始于對象A底部的虛線,終止于對象B底部的虛線;實(shí)線箭頭 水平放置 , 越靠近頂端越早被發(fā)送 .時(shí)序圖軌跡 : 時(shí)序圖提供了隨時(shí)間推移的 , 清晰的 可視化的軌跡 ;時(shí)序圖組成:時(shí)序圖包括四個(gè)元素 對象(Object), 生命線(Lifeline), 激 活(Activatio n),消息(Message);協(xié)作圖 : 協(xié)作圖是 一種 類圖, 包含 類元角色 和 關(guān)聯(lián)角色, 不僅僅 是 類元 和 關(guān)聯(lián) ;- 強(qiáng)調(diào) : 強(qiáng)調(diào)參與交互的 各個(gè)對象的結(jié)構(gòu)信息 和 組織;協(xié)作圖建模對象 : 對有交互的對象 和 這些對象之間的關(guān)系建模 ,

22、 不 參與交互的對象及它們的關(guān)系忽略 ;協(xié)作圖內(nèi)容 : 協(xié)作圖中表現(xiàn)了 類操作中用到的參數(shù) , 布局變量 , 操作 中的永久鏈 ;對象圖擴(kuò)展 : 協(xié)作圖可以看做對象圖的擴(kuò)展 , 該圖展示了對象之間的關(guān)聯(lián) , 顯示出了對象間的消息傳遞 ;41. 軟件重用的定義和層次(三個(gè)層次)定義:軟件重用,是指在兩次或多次不同的軟件開發(fā)過程中重復(fù)使用相同或 相似軟件元素的過程。層次:(1)知識重用(例如,軟件工程知識的重用)。(2)方法和標(biāo)準(zhǔn)的重用(例如,面向?qū)ο蠓椒ɑ驀抑贫ǖ能浖_發(fā)規(guī)范的 重用)。(3)軟件成分的重用。42. 面向?qū)ο笤O(shè)計(jì)的啟發(fā)規(guī)則1、設(shè)計(jì)結(jié)果應(yīng)該清晰易懂2、一般特殊結(jié)構(gòu)的深度適當(dāng)3、設(shè)

23、計(jì)簡單的類4、使用簡單的協(xié)議5、使用簡單的服務(wù)6、把設(shè)計(jì)變動減至最小43. 軟件質(zhì)量的的概念概括地說,軟件質(zhì)量就是“反應(yīng)實(shí)體滿足明確的和隱含的需求的能力的 特性的總和”。具體地說,軟件質(zhì)量是軟件符合明確敘述的功能和性能需求、 文檔中明確描述的開發(fā)標(biāo)準(zhǔn)、以及所有專業(yè)開發(fā)的軟件都應(yīng)具有的和隱含特 征相一致的程度。44. 軟件可移植性把程序從一種硬件配置和軟件系統(tǒng)環(huán)境轉(zhuǎn)移到另一種配置和環(huán)境時(shí),需要的 工作量多少。有一種度量方法是:用原來的程序設(shè)計(jì)和調(diào)試的成本除移植時(shí) 需要的費(fèi)用44. 軟件工程管理的定義技術(shù)p度量軟件規(guī)模軟件工程廠計(jì)劃一估算工作量 明確軟杵開發(fā)的目標(biāo)L進(jìn)度計(jì)劃管理一組織 提供組織機(jī)構(gòu)

24、和資源配置方面的保證 廠風(fēng)險(xiǎn)管理-控制-質(zhì)量保證 保證開發(fā)目標(biāo)的實(shí)現(xiàn)L配置管理45. 能力成熟度模型作用1. 初始級軟件過程的特征是無序的,有時(shí)甚至是混亂的。2. 可重復(fù)級軟件機(jī)構(gòu)建立了基本的項(xiàng)目管理過程(過程模型),可跟蹤成本、進(jìn)度、 功能和質(zhì)量。3. 已定義級軟件機(jī)構(gòu)已經(jīng)定義了完整的軟件過程 (過程模型),軟件過程已經(jīng)文檔化 和標(biāo)準(zhǔn)化。4. 已管理級軟件機(jī)構(gòu)對軟件過程(過程模型和過程實(shí)例)和軟件產(chǎn)品都建立了定量 的質(zhì)量目標(biāo),所有項(xiàng)目的重要的過程活動都是可度量的。5. 優(yōu)化級軟件機(jī)構(gòu)集中精力持續(xù)不斷地改進(jìn)軟件過程。這一級的軟件機(jī)構(gòu)是一個(gè)以防 止出現(xiàn)缺陷為目標(biāo)的機(jī)構(gòu),它有能力識別軟件過程要素的

25、薄弱環(huán)節(jié),并有足 夠的手段改進(jìn)它們。46. 基線的概念基線(baseli ne)經(jīng)過正式審查和認(rèn)可作為以后進(jìn)一步演進(jìn)的基礎(chǔ),并且只有通過正式的更改控制規(guī)程才能進(jìn)行更改的規(guī)格說明或產(chǎn)品。簡而言之基線就是通過了正式復(fù)審的軟件配置項(xiàng)。47. 關(guān)鍵路徑的概念關(guān)鍵事件:EET(最早時(shí)刻)=LET(最遲時(shí)刻)48. 度量軟件規(guī)模的常用技術(shù)代碼行技術(shù)估算方法: 由多名有經(jīng)驗(yàn)的軟件工程師分別做出估計(jì)。每個(gè)人都估計(jì)程序的最小規(guī)模(a)、最大規(guī)模(b)和最可能的 規(guī)模 (m), 分別算出這3種規(guī)模的平均值之后,再用下式計(jì)算程序規(guī)模的估計(jì) 值:?+4?+?L=_單位:LOC或 KLOC代碼行技術(shù)的優(yōu)點(diǎn):代碼是所有軟

26、件開發(fā)項(xiàng)目都有的“產(chǎn)品”,而且很容易計(jì)算代碼行數(shù);有大量參考文獻(xiàn)和數(shù)據(jù)。代碼行技術(shù)的缺點(diǎn):源程序僅是軟件配置的一個(gè)成分,由源程序度量軟件規(guī)模不太合理;用不同語言實(shí)現(xiàn)同一個(gè)軟件所需要的代碼行數(shù)并不相同;不適用于非過程性功能點(diǎn)技術(shù)功能點(diǎn)技術(shù)依據(jù)對軟件信息域特性和軟件復(fù)雜性的評估結(jié)果,估算軟件 規(guī)模。這種方法用功能點(diǎn)(FP)為單位度量軟件規(guī)模。1. 信息域特性輸入項(xiàng)數(shù)(Inp)、輸出項(xiàng)數(shù)(Out)、查詢數(shù)(Inq)、主文件數(shù)(Maf)、外部 接口數(shù) (Inf) 每個(gè)特征根據(jù)其復(fù)雜程度分配一個(gè)功能點(diǎn)數(shù), 即信息域特征系 數(shù) a1, a2,a3, a4,a5 2. 估算功能點(diǎn)的步驟(1) 計(jì)算未調(diào)整的功

27、能點(diǎn)數(shù) UFPUFP=aK Inp+a2 x Out+a3x Inq+a4 x Maf+a5X Inf(2) 計(jì)算技術(shù)復(fù)雜性因子TCF 技術(shù)因素對軟件規(guī)模的綜合影響程度 DI:DI = £?/?技術(shù)復(fù)雜性因子TCF由下式計(jì)算:TCF = 0.65+ 0.01 x DI因?yàn)镈I的值在070之間,所以TCF的值在0.651.35之間。(3) 計(jì)算功能點(diǎn)數(shù) FPFP = UFP x TCF功能點(diǎn)技術(shù)優(yōu)點(diǎn):與所用的編程語言無關(guān),比代碼行技術(shù)更合理。 功能點(diǎn)技術(shù)缺點(diǎn):在判斷信息域特性復(fù)雜級別和技術(shù)因素的影響程度時(shí) 主觀因素較大,對經(jīng)驗(yàn)依賴性較強(qiáng)。49. 評價(jià)軟件質(zhì)量的因素(常見的 4個(gè)) 可維

28、護(hù)性,可靠性,可理解性,效率50. COCOMO模 型3 個(gè)層次的估算模型: 應(yīng)用系統(tǒng)組成模型:這個(gè)模型主要用于估算構(gòu) 建原型的工作量,模型名字暗示在構(gòu)建原型時(shí)大量使用已有的構(gòu)件。早期設(shè)計(jì)模型:這個(gè)模型適用于體系結(jié)構(gòu)設(shè)計(jì)階段。 后體系結(jié)構(gòu)模型:這個(gè)模型適用于完成體系結(jié)構(gòu)設(shè)計(jì)之后的軟件開發(fā)階 段。COCOMO使用的 5個(gè)分級因素:項(xiàng)目先例性、開發(fā)靈活性、風(fēng)險(xiǎn)排除度、項(xiàng) 目組凝聚力、過程成熟度1. 請使用N-S圖、PAD圖描述下列程序的算法。(1) 在數(shù)據(jù)A(1)A(10)中求最大數(shù)和次大數(shù)。2. 某公司為本科以上學(xué)歷的人重新分配工作,分配原則如下:( 1 )如果年齡不滿 1 8歲,學(xué)歷是本科,男

29、性要求報(bào)考研究生,女性則擔(dān)任行政 工作;(2) 如果年齡滿 18歲不滿 50歲,學(xué)歷本科,不分男女,任中層領(lǐng)導(dǎo)職務(wù),學(xué) 歷是碩士不分男女,任課題組組長;( 3)如果年齡滿 50 歲,學(xué)歷本科,男性任科研人員,女性則擔(dān)任資料員,學(xué)歷 是碩士不分男女,任課題組組長。要求:畫出分析過程,得出判定表,并進(jìn)行化簡。2-(7 分)判定條件可能取值表:條件名稱収值符號収值數(shù)性別男MMl=2女F年齡不滿18歲CM2=3滿18歲小于50歲Y超過50歲L碩1:G文化程度木科UM3=2(2) 計(jì)算纟H合數(shù)22=12;(3) 初步判定表123456789101112性別MMMMMMFFFFFF文化程度GGGUUUGG

30、GUUU仆:3LYCLYCLYCLYC爼長JV7領(lǐng)尋VV科研V行政資料從考研4)簡化石的判定表h 2f 3 7r謝945, 1161012性刑MFF文化程度G【uuUU年齢 壬 ai L¥CLCM長V領(lǐng)導(dǎo):J科研J冇政1;丿1竊料員y穴 / 1 hi KU .W ERFl fX 3. “一個(gè)程序讀入3個(gè)整數(shù),它們分別代表一個(gè)三角形的 3個(gè)邊長。該程序判斷所輸入的整數(shù)是否構(gòu)成一個(gè)三角形,以及該三角形是一般的、等腰的或等邊的, 并將結(jié)果打印出來?!币螅涸O(shè)三角形的3條邊分別為A、B、C,并且(1)列出等價(jià)類表,格式如下:輸入條件有效等價(jià)類無效等價(jià)類(注意:將等價(jià)類編號)(注意:將等價(jià)類編

31、號)cd列岀尊們爍.格做下-有議等忻襄無K等榆矣1)B>0 且 UX 且a+<?>b.<21tiiBsO UJiCsOG)A + B<<成占4C油 衣 R +CSA A = B lftA = C= C目 AH 且 EM工丄尊衛(wèi)三弟i 6)fl A-C flB-亡C')曲丄乂 nl(2)設(shè)計(jì)測試用例,格式如下:用例n:輸入【A, B,C】覆蓋等價(jià)類(列出等價(jià)類序號),輸出結(jié)果為o 例如:用例10:輸入【3,3, 3】覆蓋等價(jià)類(100) (600),輸出結(jié)果為等邊三 角形。輸入4,小董蓋等悅奧(1,込3, 4,乩6)榆岀給果為梅咸一般三角形. 用例石三再取一輸人CO, 1-刃留辭櫛売 輸:宦杲為不構(gòu)成三用聚.輸人QE刀猊蓋導(dǎo)價(jià)類輸岀站果為不構(gòu)成二角形.輸入IL簽M笹需零忻類(卻輸噩結(jié)果為冷構(gòu)成三帚瓠用例:h三者取-輸入“尢3】軽等價(jià)類(3) 輸岀結(jié)果為不構(gòu)威三角羽。輸A IL 32】瞻蓋毓畫r輸出結(jié)果為瑋構(gòu)成二角私輸入1. 21覆蓋零楡類(3)輸岀結(jié)果為不購必三烏羽.川例4:三;S取一輸

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論