【正文】
總體設(shè)計:①設(shè)想提供選擇的方案②選取合理的方案③推薦最佳方案④功能分解⑤設(shè)計軟件結(jié)構(gòu)⑥設(shè)計數(shù)據(jù)庫⑦制定測試計劃⑧書寫文檔⑨審查和復(fù)審: 重要性:①有效的模塊化軟件比較容易開發(fā)出來 ②便于測試和維護 模塊的獨立程度由兩個標(biāo)準(zhǔn)度量: 內(nèi)聚、耦合耦合:是對一個軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量,:數(shù)據(jù)耦合:①改進軟件結(jié)構(gòu)提高模塊獨立性.②模塊規(guī)模應(yīng)該適中.③深度、寬度、扇出和扇入都應(yīng)適當(dāng).④模塊的作用域應(yīng)該在控制域之內(nèi).⑤力爭降低模塊接口的復(fù)雜程度.⑥設(shè)計單入口單出口的模塊.⑦:變換分析,事務(wù)分析第六章 詳細(xì)設(shè)計: 系統(tǒng)響應(yīng)時間、用戶幫助設(shè)施、出錯信息處理、命令交互:?一般交互指南:①保持一致性.②提供有意義的反饋.③在執(zhí)行有較大破壞性的動作之前要求用戶確認(rèn).④允許取消絕大多數(shù)操作.⑤減少在兩次操作之間必須記憶的信息量.⑥提高對話、移動和思考的效率.⑦允許犯錯誤.⑧按功能對動作分類,并據(jù)此設(shè)計屏幕布局.⑨提供對用戶工作內(nèi)容敏感的幫助設(shè)施.⑩用簡單動詞或動詞短語作為命令名.?信息顯示指南:①只顯示與當(dāng)前工作內(nèi)容有關(guān)的信息.②不要用數(shù)據(jù)淹沒用戶,應(yīng)該用便于用戶迅速吸取信息的方式來表示數(shù)據(jù).③使用一致的標(biāo)記、標(biāo)準(zhǔn)的縮寫和可預(yù)知的顏色.④允許用戶保持可視化的語境.⑤產(chǎn)生有意義的出錯信息.⑥使用大小寫、縮進和文本分組以幫助理解.⑦使用窗口分隔不同類型的信息.⑧使用“模擬”顯示方式表示信息,以使信息更容易被用戶提取.⑨高效率的使用顯示屏.?數(shù)據(jù)輸入指南:①盡量減少用戶的輸入動作.②保持信息顯示和數(shù)據(jù)輸入之間的一致性.③允許用戶自定義輸入.④交互應(yīng)該是靈活的,并且可調(diào)整成用戶最喜歡的輸入方式.⑤使在當(dāng)前動作語境中不適用的命令不起作用.⑥讓用戶控制交互流.⑦對所有輸入動作都提供幫助.⑧: 即描述程序處理過程的工具.①程序流程圖②盒圖③PAD圖(問題分析圖)④判定表⑤判定樹⑥過程設(shè)計語言(PDL,也稱為偽碼):Jackson方法和Warnier方法Jackson圖:只有順序結(jié)構(gòu),選擇結(jié)構(gòu),: 便于表示層次結(jié)構(gòu)??蜷g連線為斜線,不易打印.(改進的Jackson圖框間連線為直線)第七章 實現(xiàn):?選擇程序語言的標(biāo)準(zhǔn):①系統(tǒng)用戶的要求②可以使用的編譯程序③可以得到的軟件工具④工程規(guī)模⑤程序員的知識⑥軟件可移植性要求⑦軟件的應(yīng)用領(lǐng)域?編碼風(fēng)格應(yīng)遵循的規(guī)則:①程序內(nèi)部的文檔②數(shù)據(jù)說明③語句構(gòu)造④輸入輸出⑤效率:?目標(biāo):①發(fā)現(xiàn)程序中的錯誤②發(fā)現(xiàn)錯誤的測試方案③發(fā)現(xiàn)錯誤的測試 ?準(zhǔn)則:①所以測試都應(yīng)該能追溯到用戶需求.②應(yīng)該遠(yuǎn)在測試開始之前就制定出測試計劃.③把Pareto原理應(yīng)用到測試軟件中.④應(yīng)該從“小規(guī)?!睖y試開始,并逐步進行“大規(guī)?!睖y試.⑤窮舉測試是不可能的.⑥應(yīng)該由獨立的第三方從事測試工作.?方法:白盒,黑盒?步驟:①模塊測試②子系統(tǒng)測試③系統(tǒng)測試④驗收測試⑤平行運行:把程序看成裝在一個透明的白盒子里,:把程序看作一個黑盒子,它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)并產(chǎn)生正確的信息,這種技術(shù)把程序的輸入域劃分成若干個數(shù)據(jù)類,:①蠻干法②回溯法③原因排除法第八章 維護:①理解別人寫的程序通常非常困難,而且困難程度隨著軟件配置成分的減少而迅速增加.②需要維護的軟件往往沒有合格的文檔,或文檔資料不足.③當(dāng)要求對軟件進行維護時,不能指望由開發(fā)人員給人們仔細(xì)說明軟件.④絕大多數(shù)軟件在設(shè)計時沒有考慮將來的修改.⑤: ①維護組織②維護報告③維護的事件流④保存維護記錄⑤評價維護活動: ①可理解性②可測試性③可修改性④可移植性⑤可重用性第十三章 軟件項目管理:代碼行技術(shù),功能點技術(shù):是歷史悠久、:①不能顯式地描繪各項作業(yè)彼此間的依賴關(guān)系.②進度計劃的關(guān)鍵部分不明確,難于判定哪些部分應(yīng)當(dāng)是主攻和主控的對象.③計劃中有潛力的部分及潛力的大小不明確,:①民主制程序員組 ②主程序員組 ③現(xiàn)代程序員組:基于非執(zhí)行的測試,:①軟件配置項:計算機程序,描述計算機程序的文檔,數(shù)據(jù).②基線:①標(biāo)識軟件配置中的對象 ②版本控制 ③變化控制④配置審計 ⑤狀態(tài)報告:初始級第四篇:軟件工程復(fù)習(xí)知識點總結(jié),內(nèi)容,原因及消除的途徑; ,基本原理;、內(nèi)容;,每一個階段的任務(wù)是什么?結(jié)合具體的工程例子來理解做軟件項目主要分那幾個階段。? ??:程序流程圖的概念,內(nèi)容和方法;盒圖的概念、內(nèi)容和方法;會結(jié)合實例使用這些工具;掌握PAD 圖的概念和內(nèi)容;掌握判定表的概念和內(nèi)容。A.確定B.行或不行C.正確D.無二義3. 系統(tǒng)流程圖是用來()A 描繪程序結(jié)構(gòu)的 B 描繪系統(tǒng)的邏輯模型C 表示信息層次結(jié)構(gòu)的圖形工具 D 描繪物理系統(tǒng)的 () ,在規(guī)定時間和條件下達到不出故障,持續(xù)運行的要求的質(zhì)量特性稱為()快速原型模型的主要特點之一是() 軟件需求分析的主要任務(wù)是準(zhǔn)確地定義出要開發(fā)的軟件系統(tǒng)是() ,它的輸入量只有一個X,其范圍是[,],現(xiàn)從輸入的角度考慮一組測試用例:。其信息流分為 和 兩種類型。,每個層次都包括、方法、三要素。6.(教材P141)畫出下列偽碼程序的程序流程圖和盒圖 START IF p THEN WHILE q DO f END DO ELSE BLOCK 4 g n END BLOCK END IF STOP 7.(教材P141)研究下面的PDL語言(過程設(shè)計語言,也稱偽碼程序): LOOP: Set I to(START + FINISH)/2 If TABLE(I)=ITEM goto FOUND If TABLE(I)ITEM Set FINISH to(I1)If(FINISHSTART) 1 goto LOOP If TABLE(START)=ITEM goto FOUND If TABLE(FINISH)= ITEM goto FOUND Set FLAG to 0 Goto DONE FOUND: Set FLAG to 1 DONE:Exit 。如果是想注銷原來已選修的課程,則由注銷人員在課程文件、學(xué)生文件和帳目文件上做相應(yīng)的修改,并給學(xué)生注銷單。:可以撥分機號和外線號碼。區(qū)號是從100到300中任意的數(shù)字串。要求:寫出在數(shù)據(jù)字典中,電話號碼的數(shù)據(jù)條目的定義即組成。自底向上集成優(yōu)點:對底層組件行為較早驗證;工作最初可以并行集成,比自頂向下效率高;減少了樁的工作量;支持故障隔離。正確答案(1)需求定義。(3)工程實現(xiàn)。上述過程將不斷迭代,直至給出用戶滿意的目標(biāo)軟件產(chǎn)品。(4)用戶需求中關(guān)于性能方面的需要。四.名詞解釋:軟件危機是指落后的軟件生產(chǎn)方式無法滿足迅速增長的計算機軟件需求,從而導(dǎo)致軟件開發(fā)與維護過程中出現(xiàn)一系列嚴(yán)重問題的現(xiàn)象軟件質(zhì)量是軟件符合明確敘述的功能和性能需求、文檔中明確描述的開發(fā)標(biāo)準(zhǔn)、以及所有專業(yè)開發(fā)的軟件都應(yīng)具有的和隱含特征相一致的程度。,它是包括程序在,數(shù)據(jù)及其相關(guān)文檔的集合。,是建立軟件組織所使用的進程成熟度的模型以及定義和測量過程成熟度的有效方法,在實際中被軟件開發(fā)組織用于軟件過程改進和評估。(3)開在迭代模型中應(yīng)用瀑布模型。適用性:用戶的需求非常清楚全面。從而使軟件過程的控制失去整體性。缺點:(1)采用螺旋模型需要具有相當(dāng)豐富的風(fēng)險評估經(jīng)驗和專門知識,在風(fēng)險較大的項目開發(fā)中,如果未能夠及時標(biāo)識風(fēng)險,勢必造成重大損失。(2)需求導(dǎo)出和分析:這是一個通過對現(xiàn)有系統(tǒng)分析與潛在用戶和購買者討論。這個活動檢查需求實現(xiàn)、一致和完備。(3)要給出系統(tǒng)的邏輯視圖和物理視圖。(3)編寫概要設(shè)計說明書,用戶手冊、測試計劃、選用相關(guān)的軟件工具來描述軟件結(jié)構(gòu),結(jié)構(gòu)圖是經(jīng)常使用的軟件的軟件描述工具。,也是判斷模塊夠著是否合理的標(biāo)準(zhǔn)。模塊間耦合高低取決于模塊間接口的復(fù)雜性,調(diào)用的方式以及傳遞的信息。:高內(nèi)聚、低耦合。概括性則是指數(shù)據(jù)流圖把系統(tǒng)對各種業(yè)務(wù)的處理過程聯(lián)系起來考慮,形成一個總體。:用于表示某些對象的共同特征(屬性和操作),對象是類的實例。:屬性就是類中定義的數(shù)據(jù),它是對客觀世界實體所具有的性質(zhì)的抽象。頂層測試無需驅(qū)動模塊,底層測試無需樁模塊,在單元測試的基礎(chǔ)上把所有模塊組裝成一個系統(tǒng)進行測試。:是現(xiàn)實世界中遺傳關(guān)系的直接模擬。:消息傳遞時對象與外界相互關(guān)系的唯一途徑。:對象是由描述該對象屬性的數(shù)據(jù)以及可以對這些數(shù)據(jù)施加的所有操作封裝在一起構(gòu)成的統(tǒng)一體。:數(shù)據(jù)流程圖有兩個特征:抽象性和概括性。指模塊的躬耕強度的度量即一個模塊內(nèi)部各個元素,彼此結(jié)合的緊密程度的度量。:也稱塊間聯(lián)系,指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系和緊密程度的一種度量。,即外部模塊對模塊內(nèi)部的實現(xiàn)過程的不可見性。(2)去頂模塊結(jié)構(gòu),劃分功能模塊,將軟件功能需求分