




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、-. z.大學本科教學課程教案課程代碼:ZJ36047 課程名稱:軟件工程導論授課專業:軟件工程 授課教師:章程職稱/學位:講師/博士 開課時間:二一六至二一七學年第2學期第1次課程教學方案周次1課時數2教學章節第1章 軟件工程的疇目標要求(1)明確軟件工程的各個方面的含義。(2)描述傳統軟件工程生命周期模型和面向對象型。(3)感受遵守道德規的重要性。重點難點重點:(1)軟件工程的定義;(2)軟件工程的傳統型;(3)軟件工程的面向對象型。難點:維護的傳統和現代的觀點。教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像
2、材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業(1)為什么傳統意義上的維護觀點對于今天的軟件產品不現實?(2)軟件危機”一詞于1976年提出,它是什么意思?這個詞現在還適用嗎?板書設計教學課件第1章 軟件工程的疇歷史方面經濟方面維護性方面需求、分析和設計方面小組編程方面為什么沒有計劃階段為什么沒有測試階段為什么沒有文檔階段面向對象型術語道德問題第1次教學活動設計教學環節容設計與手段導入新課由兩個實例引入:工程學的意義。軟件生產過程雖然很多方面與傳統工程相似,但是仍然有自己的屬性和問題。軟件工程定義為一門學科,目的是生產出滿足客戶要求的、未超出預算的、按時交付的、沒有錯誤的軟
3、件。需要在軟件生產的各個階段使用恰當的技術,包括何時進行分析、設計和交付后維護。軟件工程結合人類各個領域的許多知識,包括經濟和社會科學。講授容1.1歷史方面1968年在德國Garmisch召開的NATO軟件工程會議上簽署了聲明,正式確立了軟件工程的概念。目標: 軟件工程應當是一項類似工程的活動,應當使用已建立的工程學科的基本原理和型來解決軟件危機”。軟件交付所出現的問題推遲完成超出預算特性缺失錯誤軟件危機仍然伴隨著我們,告訴我們兩件事情:(1)軟件生產過程雖然很多方面與傳統工程相似,但是仍然有自己的屬性和問題。(2)可能應當重新命名為軟件蕭條”(Software Depression)周期長難
4、預測1.2經濟方面舉例:使用新的編碼技術 CTnew 編碼時間比使用舊的編碼技術CTold少花1/10的時間。是否應該使用新的編碼技術通常的答案時:當然選擇新的編碼技術。從軟件工程的經濟觀點來看:考慮培訓的成本考慮采用新技術CMnew 對維護工作的影響1.3維護性方面傳統維護觀點:傳統意義上,維護是根據不同時期所開展的活動來進行定義的客戶想要增加該軟件產品的功能傳統維護(完善性)客戶想要在軟件之前做同一改變(移動目標問題”)傳統開發疇現代維護定義是軟件因存在問題或因有改進或適應性需求時,對代碼及相應文檔所進行的修改過程1.4需求、分析和設計方面提高需求、分析和設計技術是非常重要的可以盡早發現錯
5、誤降低錯誤的總體數量(需求、分析和設計中錯誤所占比例較高)1.5小組編程方面硬件成本不斷降低產品太大了無法由一個人在規定時間編寫完成這種產品需要由一個小組去完成模塊之間的接口問題小組成員之間的交流協調問題1.6為什么沒有計劃階段在項目的開始,對管理需求和分析階段進行初步計劃一旦明確之道將要開發什么,就制定出軟件項目管理計劃在整個項目過程中,管理者需要監督SPMP的執行情況,并且注意是否有偏離計劃的情況發生1.7為什么沒有測試階段在一個軟件準備好交付給客戶時才檢查它實在是太晚了持續測試活動必須始終貫穿于軟件生命周期中測試活動是每個軟件正確建造的保證軟件質量保證(SQA)小組的責任1.8為什么沒有
6、文檔階段在一個軟件準備好交付給客戶時才編制文檔實在是太晚了軟件行業中的人員流動性較大如果前一階段的文檔不是完整、正確和最新的,幾乎不可能執行下一階段的步驟除非提供文檔來說明對一個軟件產品期望的性能,否則不可能測試該軟件產品是否正確工作如果沒有一套完整、正確的文檔精確地描述產品的當前版本做些什么,維護幾乎是不可能的1.9面向對象型優點1. 由于信息隱藏,交付后維護更安全極減少了出現回歸錯誤的機會2. 使軟件開發變得更加容易對象在現實中都存在對應物能夠簡化建模(建模在面向對象型中起著非常重要的作用)3. 設計良好的對象是獨立的單元產品中與現實世界相關的、被該對象模擬的部分都可以在對象本身中找到 封
7、裝encapsulation與外界通信的唯一形式就是給對象發消息由對象執行特定操作,怎樣執行操作完全是對象自身的職責 職責驅動設計responsibility-driven design4. 降低了軟件產品的復雜度,從而簡化了軟件開發與維護5. 提高了重用度1.10正確看待面向對象型1. 必須正確使用面向對象型所有型都很容易被錯誤地使用2. 當正確使用的時候,面向對象型可以解決一些(但不是全部)傳統型遇到的問題3. 面向對象型有其自身的問題4. 面向對象型是目前可用的最好方法然而,將來它一定會被更先進的技術所取代1.11術語 對一些主要術語概念做出解釋1.12道德問題介紹軟件從業人員必須遵守的
8、道德規歸納總結通過本章的學習,明確軟件工程的各個方面的含義,描述傳統軟件工程生命周期模型和面向對象型,感受遵守道德規的重要性。第2次課程教學方案周次2課時數2教學章節第2章 軟件生命周期模型目標要求(1)掌握各種不同的軟件生命周期模型(2)能夠針對*一具體項目選用合適的生命周期模型,對比和比較各種生命周期模型。重點難點重點:(1)迭代的定義;(2)遞增的定義;(3)生命周期模型。難點:迭代-遞增生命周期模型。教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課
9、后作業(1)描述什么情況下螺旋生命周期模型不適用?(2)描述什么樣的產品是螺旋生命周期模型的理想應用?(3)在迭代-遞增生命周期模型中如何使用逐步求精?板書設計教學課件第2章 軟件生命周期模型第2次教學活動設計教學環節容設計與手段導入新課復習上節課容,包括軟件工程的概念、傳統開發型和面向對象型。復習完這些重點知識后,向學生提問:能否舉個例子說明理想狀況下軟件開發的過程是什么?講授容2.1理論上的軟件開發在理想世界中。軟件產品像第一章所描述的那樣開發。線性 Linear從零開始 Starting from scratch在現實實踐中,軟件開發完全不同。軟件專業人員是人,因此會犯錯誤。當軟件正在開
10、發時,客戶的需求會發生變化。2.2-2.4小型實例研究(一)通過Winburg小型系統實例描述進化樹生命周期模型,并對比瀑布生命周期模型。(二)通過野鴨拖拉機公司小型實例研究說明公司業務需求發生變化的時候對軟件開發過程所產生的危害。2.5迭代和遞增基本的軟件開發過程是迭代的。每個版本比前一個版本離我們的目標更進一步。處理信息量的限制的一個辦法是使用逐步求精的方法。stepwise refinement集中精力于目前最重要的那些方面。那些不緊急的方面延后。事情的那個方面最終都要處理,但是要按照目前的重要性依次進行。2.6修訂的Winburg小型實例研究通過Winburg小型實例把進化樹模型添加在
11、迭代-遞增模型之上,說明遞增的含義。2.7迭代和遞增的風險和其他方面闡述迭代-遞增模型的優點和存在的風險。2.8迭代和遞增的控制闡述為什么需要對迭代-遞增模型進行控制。2.9其他生命周期模型描述編碼-修補生命周期模型、瀑布生命周期模型、快速原型開發生命周期模型、開源生命周期模型、敏捷過程、螺旋生命周期模型,分別描述幾種模型的特點和適用條件。2.12生命周期模型的比較對比幾種生命周期模型的優點和缺點。歸納總結通過本章的學習,掌握各種不同的軟件生命周期模型,能夠針對*一具體項目選用合適的生命周期模型,對比和比較各種生命周期模型。第3次課程教學方案周次3課時數2教學章節第3章 軟件過程3.1 統一過
12、程3.2 面向對象型的迭代和遞增3.3需求流3.4分析流3.5設計流3.6實現流教學目標和要求掌握統一過程中的五個核心工作流和四個階段,掌握統一過程的工作流和階段之間的差別重點難點重點:(1)統一過程的五個核心工作流;(2)統一過程的四個階段。難點:統一過程工作流與階段之間的差別。教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:作業或練習(1)統一過程的階段”是什么意思?(2)瀑布生命周期模型的缺點是交付后的產品可能不滿足客戶的需求。統一過程是如何解決這個問
13、題的?板書設計教學課件第3章 軟件過程第3次教學活動設計教學環節容設計與手段導入新課復習上節課容,包括迭代和遞增的概念,回顧幾種常用的軟件開發模型。舉例分析不同的軟件開發組織之間的軟件開發過程的差異。講授容第3章 軟件過程3.1 統一過程軟件開發過程描述了構造、部署以及維護軟件的方式。統一過程(Unified Process)是一種構造面向對象系統的迭代軟件開發過程。迭代和演化式開發是UP和其它方法中普遍采用的開發方法。開發被組織成一系列固定的短期小項目,每次迭代都產生可執行的局部系統,都具有各自的需求分析、設計、實現和測試活動。3.2 面向對象型的迭代和遞增統一過程是一種建模技術模型是一套U
14、ML圖表,表示要開發的軟件產品的一個或多個方面。UML 是一種建模語言表示(模擬)目標軟件產品的工具面向對象型是一種迭代和遞增方法每個工作流由一些步驟組成,為了完成該工作流,重復執行工作流的步驟直至開發小組成員認為UML圖的表示是正確的。3.3需求流需求流的目標確定客戶需求任務首先,理解應用領域(application domain)特定的業務環境其次,業務建模利用UML描述業務過程3.4分析流分析流目標分析和提取需求,以獲得正確開發軟件產品和易于維護產品所必需的需求 為什么沒有在需求流中進行需求流的輸出必須完全能夠被客戶理解 分析流的輸出必須是精確的 需求制品必須用客戶的語言表達所有的自然語
15、言都是不精確的 需求流和分析流的分離是必要的3.5設計流目標是細化分析流的制品,使程序員根據設計制品可以直接編程實現 傳統設計體系結構設計(總體設計)將產品分解為各個模塊詳細設計設計每個模塊: 數據結構 算法面向對象設計類”(可被視為特殊類型的模塊)在分析流期間被提取出來,在設計流期間進行設計。傳統的體系結構設計對應于分析流的一部分傳統的詳細設計對應于設計流的一部分目標是細化分析流的制品,使程序員根據設計制品可以直接編程實現 傳統設計體系結構設計(總體設計)將產品分解為各個模塊詳細設計設計每個模塊: 數據結構 算法面向對象設計類”(可被視為特殊類型的模塊)在分析流期間被提取出來,在設計流期間進
16、行設計。傳統的體系結構設計對應于分析流的一部分傳統的詳細設計對應于設計流的一部分3.6實現流實現流的目標是用選擇的實現語言實現目標軟件產品大型軟件產品被分為一個個的子系統子系統包含組件和代碼制品歸納總結通過本章的學習,掌握統一過程中的五個核心工作流和四個階段。第4次課程教學方案周次4課時數2教學章節第3章 軟件過程3.7測試流3.8交付后維護3.9退役3.10統一過程的各階段3.11一維和二維生命周期模型3.12改進軟件過程3.13能力成熟度模型教學目標和要求(1)解釋統一過程的工作流和階段之間的差別(2)理解軟件過程改進的重要性重點難點重點:統一過程的四個階段。難點:統一過程工作流與階段之間
17、的差別。教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:作業或練習課本第63頁10-16題板書設計教學課件第3章 軟件過程第4次教學活動設計教學環節容設計與手段導入新課復習上節課容,回顧軟件過程中的幾種過程流。從統一過程模型導入。講授容3.7測試流參加人員每個開發人員和維護人員質量保證小組制品的可追蹤性是成功測試的重要保證在統一過程中,測試從始至終與其他工作流并行進行 測試流的性質隨著被測試的制品的不同而不同 3.8交付后維護軟件開發過程的重要組成部分各類文
18、檔的缺乏會給維護帶來很大的困難需要兩種類型的測試針對更改本身的測試回歸測試3.9退役軟件使用了若干年后,當進一步的交付后維護已經不值得時,軟件就達到了退役階段3.10統一過程的各階段四個遞增階段初始階段(Inception phase)細化階段(Elaboration phase)構造階段(Construction phase)轉換階段(Transition phase) 統一過程中執行的每一個步驟屬于五個核心工作流之一,也屬于四個階段之一。3.11一維和二維生命周期模型對比瀑布模型和進化樹模型3.12改進軟件過程軟件開發的根本問題在于人們不能對軟件過程進行管理。3.13能力成熟度模型CMM提
19、供了一個成熟度等級框架: 1級-初始級、2級-可重復級、3級-已定義級、4級-已管理級和5級-優化級。關鍵過程域(KPA):是一個組織進入級別時要實現的目標歸納總結通過本次課的學習,掌握統一過程的工作流和階段之間的差別,理解軟件過程改進的重要性。第5次課程教學方案周次5課時數2教學章節第4章 軟件小組4.1小組組織4.2小組方法4.3傳統的主程序員小組方法4.4主程序員小組和小組之外的編程小組教學目標和要求(1)明確一個組織良好的軟件小組的重要性(2)掌握現代分級小組是如何組織的,重點難點重點:(1)小組方法;(2)傳統的主程序員小組方法。難點:分散決策形式下的技術管理溝通渠道。教學方式 課堂
20、講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:作業或練習課本第73頁1-9題板書設計教學課件第4章 軟件小組第5次教學活動設計教學環節容設計與手段導入新課回顧第一章軟件工程疇的容,說明軟件工程領域不僅僅包含開發技術的應用和研究,同時還涉及經濟學、管理學等相關的容,引入軟件開發團隊的組織的重要性。講授容第4章 軟件小組4.1小組組織通過實例說明分模塊完成任務,并非簡單的各自完成模塊任務,還存在協調問題開發小組的組織是一個管理問題,與程序員的技術能力無關;布魯克斯法則:向一
21、個已經延期的軟件項目增加人員會使該項目完成得更晚;4.2小組方法無我編程(egoless Programming),鼓勵他人找出自己程序中的錯誤 強調集體,小組成員是平等的,打破程序員對自己開發程序的護短”心理,主要目的盡可能多地發現BUG,這種方法的優點就是對查找錯誤的積極態度需要成員都是有經驗的專家一般適合開源項目的開發(10人)4.3傳統的主程序員小組方法主程序員小組的兩個關鍵特性:專業化:小組的每個成員只承擔其接受過培訓的那部分工作;等級性:主程序員指導小組所有其他成員的行動,并且對該項目的每個方面負責;主程序員既是一個成功的管理者,也是一個訓練有素的程序員,他完成結構化設計以及代碼中
22、的關鍵和復雜的部分其他的小組成員在主程序員指導下進行具體的細節設計和編寫代碼在程序員之間沒有溝通的渠道,所有的接口問題都由主程序員解決;最后,主程序員審查其他小組成員的工作,因為主程序員個人要對每行代碼負責;備程序員應該在各方面與主程序員一樣有能力,并且需要與主程序員一樣深入了解這個項目,另外,為讓主程序員集中精力進行結構化設計,備程序員應進行黑盒測試的用例規劃,并承擔其他與設計過程獨立的任務;編程秘書是主程序員小組中一個精通專業、收入頗豐的核心人物;4.4主程序員小組和小組之外的編程小組從小組和主程序員小組的優點中得出的另一種方法是適當分散決策過程。歸納總結通過本次課的學習,明確一個組織良好
23、的軟件小組的重要性,描述現代分級小組是如何組織的。第6次課程教學方案周次6課時數2教學章節第4章 軟件小組4.5同步-穩定小組4.6敏捷過程小組4.7開源編程小組4.8人員能力成熟度模型4.9選擇合適的小組組織教學目標和要求掌握現代分級小組是如何組織的了解各種不同小組組織的優缺點。重點難點重點:同步-穩定小組難點:選擇合適的小組組織教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:作業或練習課本第73頁10-15題板書設計教學課件第4章 軟件小組第6次教學活動
24、設計教學環節容設計與手段導入新課回顧上次課容,包括小組組織和主程序員小組組織。通過分析這兩種組織形式的優缺點引入新課。講授容4.5同步-穩定小組微軟公司采用的方式程序員與測試員1:1比例配備(3-8) 構件并行小組(3-4小組,每組一個程序管理者) 具備小組的特點(鼓勵單個程序員的創新),同時為了協同工作,每天必須進行工作同步-(每天將產品輸入數據庫,進行同步編譯或測試),發現問題當天解決4.6敏捷過程小組結對編程(一個編寫程序代碼,另一個編寫測試用例),同一臺計算機上工作具備無我編程的特點水平弱的可以向水平高的學習4.7開源編程小組參與開源項目的個人志愿者出于兩個原因:完成一項值得做的任務的
25、成就感;得到培訓的經驗,得到較新技術方面的技能。對于一個成功的開源項目目標產品的特性組織者的個性核心小組成員的天資4.8 人員能力成熟度模型描述管理合開發一個組織的人力資源的最佳實踐舉例Level 2:關鍵過程區安置員工,溝通合協調,工作環境,性能管理,培訓和開發以及補償 Level 5:關鍵過程區連續能力提高,組織的能力聯合以及連續人力資源改革4.9選擇合適的小組組織沒有一個解決方案可以解決編程小組組織的所有問題.較為 正確”方法是依據需要建造的軟件產品本身各種小組結構經驗組織文化歸納總結通過本次課的學習,掌握現代分級小組是如何組織的,了解各種不同小組組織的優缺點。第7次課程教學方案周次7課
26、時數2教學章節第5章 軟件工程工具5.1逐步求精法5.2成本-效益分析法5.3分治5.4關注分離5.5軟件度量5.6 CASE目標要求通過本章的學習,理解逐步分離法,理解分治,理解關注分離的重要性,選擇適當的軟件度量。重點難點重點:逐步求精法、分治、關注分離難點:選擇適當的軟件度量教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第90頁1-9題板書設計教學課件第5章 軟件工程工具第7次教學活動設計教學環節容設計與手段導入新課回顧上次課容,包括小組
27、組織的各種方法的優缺點。通過回顧軟件工程的三個基本要素說明工具在軟件工程開發中的作用。講授容5.1逐步求精法通過實例描述逐步求精法的特點。5.2本-效益分析法描述如何用成本-效益分析法確定客戶是否應當進行業務計算機化,如果確定使用計算機處理業務,應用何種方式來比較各種可選方案的成本和收益。5.3分治描述分析工具分治”的特點和問題。5.4關注分離描述關注分離的概念。5.5軟件度量描述軟件開發中幾種基本的度量方法。5.6CASE描述計算機輔助軟件工程的概念。歸納總結通過本次課的學習,理解逐步分離法,理解分治,理解關注分離的重要性,選擇適當的軟件度量。第8次課程教學方案周次8課時數2教學章節第5章
28、軟件工程工具5.7 CASE的分類5.8 CASE的圍5.9軟件版本5.10配置控制5.11建造工具5.12使用CASE技術提高生產力目標要求通過本次課的學習,了解CASE的圍和分類法,掌握版本控制工具、配置控制工具以及構件工具,理解CASE的重要性。重點難點重點:CASE的圍和分類難點:版本控制工具教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第90頁10-14題板書設計教學課件第5章 軟件工程工具第8次教學活動設計教學環節容設計與手段導入新
29、課通過上一次課的學習,了解了軟件工程的分析工具,還有軟件工具CASE,本次課將重點討論CASE工具。講授容5.7 CASE的分類目前CASE工具用于軟件生命周期的每一個工作流(1) 高端CASE或前段工具:在軟件開發過程的較早工作流(需求流、分析流和設計流)(2)低端CASE或后端工具:幫助實現流和交付后維護的CASE工具。5.8 CASE的圍編程工具接口檢查器在線文檔操作系統前端源代碼級調試器電子數據表格結構化編輯器文字處理器5.9軟件版本無論何時維護產品,至少會有兩個版本的產品:老版本和新版本。因為產品是由代碼制品組成的,修改過的每個組件制品也會有兩個或更多的版本。本節先討論交付后維護圍的
30、版本控制,然后再擴展到該過程的較早階段。(1)修訂版(2)變種版5.10 配置控制配置控制工具可以自動管理多個變種版,但配置控制的作用不局限于多個變種版。5.11建造工具幫助選擇要的每個編譯代碼制品的正確版本,從而形成該產品的一個特定版本。5.12使用CASE技術提高生產力通過實例說明使用CASE技術可以提高軟件開發的生產力。歸納總結通過本次課的學習,了解CASE的圍和分類法,掌握版本控制工具、配置控制工具以及構件工具,理解CASE的重要性。第9次課程教學方案周次9課時數2教學章節第6章 測試6.1 質量問題6.2 非執行測試6.3執行測試目標要求掌握質量保證問題,掌握如何對制品進行基于非執行
31、的測試,理解基于執行的測試原則重點難點重點:1. 軟件質量保證2. 非執行測試難點:審查教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第106頁1-8題板書設計教學課件第6章 測試第9次教學活動設計教學環節容設計與手段導入新課復習上節課的容,包括軟件分析工具和CASE工具。然后說明測試是軟件過程中的一個完整的組成部分,是軟件生命周期從始至終必須進行的活動。講授容6.1質量問題描述軟件質量保證中包含的概念。差錯是一個人犯了過錯時加到軟件中的。故障
32、是觀察到的軟件產品的不正確行為,它是差錯的結果。錯誤是不正確的結果的累積。軟件的質量是產品滿足規格說明的程度。(1)軟件質量保證(2)管理獨立6.2非執行測試描述評審中走查和審查的概念。(1)兩種方式實施走查:參加者驅動,文檔驅動。(2)審查最初是為測試設計和代碼而提出的,遠比走查更深入。6.3執行測試描述執行測試的概念。歸納總結通過本次課的學習,掌握質量保證問題,掌握如何對制品進行基于非執行的測試,理解基于執行的測試原則第10次課程教學方案周次10課時數2教學章節第6章 測試6.4應該測試什么6.5測試與正確性證明6.6誰應當完成執行測試6.7測試什么時候停止目標要求掌握需要測試的容和圍。重
33、點難點重點:測試的容難點:正確性證明教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第107頁10-15題板書設計教學課件第6章 測試第10次教學活動設計教學環節容設計與手段導入新課回顧上次課的容,包括質量保證問題、基于非執行的測試和基于執行的測試。本次課將對測試的容和圍做主要的講解。講授容6.4應該測試什么(1)實用性:是在規格說明允許的條件下使用正確的產品時,滿足用戶需求的程度。(2)可靠性:是對產品故障的出現頻率和嚴重性進行的測試。(3)健
34、壯性:是一些因素的函數,如運行條件的圍、有效輸入帶來不可接受的結果的可能性以及產品的輸入無效時結果的可接受性。(4)性能:是產品必須測試的一個方面。(5)正確性:如果產品的允許的條件下運行,能夠滿足輸出規格說明,并與使用的計算資源無關,則該產品是正確的。6.5測試與正確性證明通過實例描述正確性的數學證明過程。6.6誰應當完成執行測試系統的執行測試必須由獨立的SQA小組完成,而不是由程序員完成。6.7測試什么時候停止只有在義無反顧地廢除軟件時,才是停止測試的時候。歸納總結通過本次課的學習,掌握需要測試的容和圍,包括對實用性、可靠性、健壯性、性能和正確性的測試,尤其需要了解正確性測試通過數學證明完
35、成。第11次課程教學方案周次11課時數2教學章節第7章 從模塊到對象7.1 什么是模塊7.2 聚7.3耦合目標要求掌握聚和耦合的概念,理解設計帶有高聚和低耦合的模塊與類。重點難點重點:1. 模塊2. 聚和耦合難點:高聚和低耦合教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第134頁1-8題板書設計教學課件第7章 從模塊到對象第11次教學活動設計教學環節容設計與手段導入新課在20世紀70年代和80年代期間,模塊化理論經歷了穩步的發展,而對象只是模
36、塊化理論中的衍變發展。本章在模塊化的疇描述對象。講授容7.1 什么是模塊一個或多個鄰接的程序語句的集合,它有一個名稱以便系統的其他部分調用它,并且最好具有自己專用的變量名集。通過實例理解模塊化的重要意義。模塊操作:模塊做什么。模塊邏輯:模塊如何完成它的操作。模塊背景:模塊的特殊用途。7.2 聚聚的7個分類和級別:(1)偶然性聚:如果一個模塊執行多個完全不相關的操作。(2)邏輯性聚:當一個模塊進行一系列相關的操作,每個操作由調用模塊來選擇時,該模塊具有邏輯性聚。(3)時間性聚:模塊執行一系列與時間有關的操作。(4)過程性聚:一個模塊執行一系列與產品要遵循的步驟順序有關的操作。(5)通信性聚:一個
37、模塊執行一系列與產品要遵循的步驟順序有關的操作,并且所有操作都對相同的數據進行。(6)功能性聚:只執行一個操作或只達到單一目標的模塊。(7)信息性聚:模塊進行許多操作,每個都有各自的入口點,每個操作的代碼相對獨立,并且所有操作都對相同的數據結構完成。7.3耦合耦合是兩個模塊之間的交互程度。分為5個級別:(1)容耦合:兩個模塊中的一個直接引用了另一個模塊的容。(2)共同耦合:兩個模塊都可存取相同的全局數據。(3)控制耦合:兩個模塊中的一個模塊給另一個模塊傳遞控制要素。(4)印記耦合:數據結構作為參數進行傳遞。(5)數據耦合:兩模塊的所有參數是同類數據項。歸納總結通過本次課的學習,掌握聚和耦合的概
38、念,理解設計帶有高聚和低耦合的模塊與類。第12次課程教學方案周次12課時數2教學章節第7章 從模塊到對象7.4數據封裝7.5抽象數據類型7.6信息隱藏7.7對象7.8繼承、多態和動態綁定7.9面向對象型目標要求理解信息隱藏的必要性,掌握繼承、多重性和動態綁定的意義,區分泛化、聚合和關聯的不同。重點難點重點:1. 數據封裝2. 抽象數據類型難點:信息隱藏教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第134頁9-18題板書設計教學課件第7章 從模
39、塊到對象第12次教學活動設計教學環節容設計與手段導入新課回顧上次課容,包括聚和耦合的概念,強調設計高聚低耦合的重要性。本次課介紹各種類型的抽象。講授容7.4數據封裝一個數據結構中含有對這個數據結構執行的操作。(1)數據封裝和產品開發(2)數據封裝和產品維護7.5抽象數據類型一個數據類型連同對該數據類型的實例進行的操作。抽象數據類型是一個有廣泛用途的設計工具。7.6信息隱藏在設計產品之前,應列出一個未來可能修改的實現決定的清單。然后設計模塊,對其他模塊隱藏本模塊設計的實現細節。7.7對象對象是抽象數據類型的一個具體例子。產品根據抽象數據類型進行設計,產品的變量是抽象數據類型的實例。7.8繼承、多
40、態和動態綁定繼承:新的數據類型可定義為先前定義過的類型的擴展,而不是從頭開始定義。動態綁定:把對象與合適的方法連接起來的行為。多態:方法可應用于不同類的形態。7.9面向對象型通過實例說明,盡管面向對象型有很多優點,但還是存在一些問題。歸納總結通過本次課的學習,理解信息隱藏的必要性,掌握繼承、多重性和動態綁定的意義,區分泛化、聚合和關聯的不同。第13次課程教學方案周次13課時數2教學章節第8章 可重用性和可移植性8.1重用的概念8.2重用的障礙8.3重用實例研究8.4對象和重用8.5設計和實現期間的重用8.6其他設計模式目標要求理解為什么重用如此重要,了解在工作流期間獲得重用的技術,理解設計模式
41、的重要性。重點難點重點:重用難點:設計模式教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第160頁1-6題板書設計教學課件第8章 可重用性和可移植性第13次教學活動設計教學環節容設計與手段導入新課通過實例說明在軟件開發中很多程序是在不斷重復地進行開發,而利用重用技術可以避免重復開發。講授容8.1重用的概念使用一個產品中的組件來簡化另一個功能不同的產品的開發。(1)偶然重用:一個新產品的開發者意識到,以前設計的產品的一個組件可在這個新產品中重用。
42、(2)有意重用:使用專門為未來可能的重用而建造的軟件組件。8.2重用的障礙描述重用可能會遇到的6大障礙。8.3重用實例研究通過實例說明現代重用在實踐中是如何成功進行的。8.4對象和重用當正確使用面向對象型時,得到的模塊(對象)具有信息性聚,這促進了重用。8.5設計和實現期間的重用(1)設計重用:當設計一個產品時,設計小組的成員可能會發現從早先的設計中得到的模塊或類,經過一些小的修改或不做修改,可在目前的項目中重用。(2)應用框架:當重用框架時,開發者需要設計所建產品的特定應用操作。(3)設計模式:是通常的設計問題的解決方案,這類問題以一組交互類的形式出現,需要由用戶根據需要定制這類交互類以形成
43、專門的設計。(4)軟件體系結構:面臨各類設計事項,包括根據它的組件進行的產品的組織、產品級的控制結構、通信和同步問題、數據庫和數據訪問、組件的物理分布、性能及設計替代的選擇。8.6其他設計模式適配器設計模式、橋設計模式、迭代器設計模式、抽象工廠設計模式歸納總結通過本次課的學習,理解為什么重用如此重要,了解在工作流期間獲得重用的技術,理解設計模式的重要性。第14次課程教學方案周次14課時數2教學章節第8章 可重用性和可移植性8.7設計模式的種類8.8設計模式的優缺點8.9重用及互聯網8.10重用和交付后維護8.11可移植性8.12為什么需要可移植性8.13實現可移植性的技術目標要求理解設計模式的
44、重要性,理解重用對可維護性的影響,掌握可移植性的重要性。重點難點重點:可移植性難點:實現可移植性的技術教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第161頁11-20題。板書設計教學課件第8章 可重用性和可移植性第14次教學活動設計教學環節容設計與手段導入新課回顧上次課的容,包括重用的概念,重用的不同類型。本次課將繼續討論重用的重要性,以及可移植性及相關技術。講授容8.7設計模式的種類創建類設計模式、結構類設計模式、動作類設計模式8.8設計模
45、式的優缺點介紹設計模式的5大優點和4大缺點。8.9重用及互聯網一方面,互聯網促進了代碼重用的廣泛傳播。另一方面,下載材料的質量不可預測,因而重用的后果也許很嚴重。8.10重用和交付后維護重用可減少產品維護的時間和花費,重用對交付后維護的影響比對開發的影響大。8.11可移植性假設產品P由編譯器C進行編譯,然后運行在源計算機上,源計算機的硬件配置為H,操作系統為O。產品P與產品P的功能相同,但必須由編譯器C進行編譯,并運行在目標計算機上,目標計算機的硬件配置為H,操作系統為O。如果把P轉換為P的成本比從頭開始編寫P的成本少的多,則產品P是可移植的。移植軟件的問題包括以下問題:(1)硬件的不兼容性(
46、2)操作系統的不兼容性(3)數值計算軟件的不兼容性(4)編譯器的不兼容性8.12為什么需要可移植性軟件產品的生存期通常比第一次為編寫軟件的硬件生存期更長。8.13實現可移植性的技術使用流行的高級語言、隔離產品中不可移植的部分和堅持語言標準、可移植數據和模型驅動結構。歸納總結通過本次課的學習,理解設計模式的重要性,理解重用對可維護性的影響,掌握可移植性的重要性。第15次課程教學方案周次15課時數2教學章節第9章 計劃和估算9.1計劃和軟件過程9.2周期和成本估算9.3軟件項目管理計劃的組成9.4軟件項目管理計劃框架9.5 IEEE軟件項目管理計劃目標要求理解計劃的重要性,掌握估算構建一個軟件產品
47、的規模和成本技術。重點難點重點:計劃的概念、周期和成本估算難點:成本估算技術教學方式 課堂講授 小組活動 實驗演示 難點答疑 提問 作業講評 實踐教學 考試測驗 其他活動媒體資源 文字教材 電子教案 錄像材料 錄音材料 直播課堂 CAI課件 IP課件 其他資源:課后作業課本第177頁1-8題板書設計教學課件第9章 計劃和估算第15次教學活動設計教學環節容設計與手段導入新課完整構建一個大型軟件產品需要時間和資源,而且像其他大型構建項目一樣,在項目開始階段仔細地規劃可能是決定成敗的最重要的因素。計劃需要在軟件開發和維護過程中不斷地進行。講授容第9章 計劃和估算9.1計劃和軟件過程草率的周期和成本估
48、算,也就是客戶簽署規格說明之前進行的估算,很有可能比收集了足夠數據時進行的估算要相對地缺乏準確性。9.2周期和成本估算部成本:針對開發者的成本。外部成本:客戶付的成本。(1)產品規模的度量:最常用的產品規模度量是代碼行數。由于代碼行數不可靠,其他的度量方法包括FFP度量和計算技術復雜因子。(2)成本估算技術:用類推法進行專家評判自底向上的方法算法成本估算模型(3)中間COO(4)COO II(5)跟蹤周期和成本估算。當開發產品時,實際的開發工作量要不斷地與預測值進行比較。必須在整個開發過程中對預測進行仔細地跟蹤,不論預測應用了何種技術。9.3軟件項目管理計劃的組成一個軟件項目管理計劃有三個主要的組成部分:要做的工作、做這個工作所用的資源以及為此需要付出的金錢。9.4軟件項目管理計劃框架介紹項目管理計劃的IEEE標準1058【1998】。9.5 I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國耳鳴緩解市場風險預警及未來前景趨勢研究報告
- 2025至2030中國羥丙基甲基纖維素行業供需態勢及未來前景研究報告
- 2025至2030中國粘性浴市場發展趨勢及未來競爭戰略規劃報告
- 2025至2030中國空氣能熱水器市場產銷形勢與未來銷售渠道趨勢-版報告
- 2025至2030中國磷酸市場需求分析及投資建議研究報告
- 2025至2030中國監控攝像頭市場行情監測及投資需求潛力分析-版報告
- 2025至2030中國物業管理行業運營格局與投資盈利研究報告
- 2025至2030中國煤炭物流行業現狀調查及前景策略研究報告
- 2025至2030中國濃縮果汁行業營銷動態及競爭趨勢研究報告
- 2025至2030中國泡沫包裝市場競爭格局及發展戰略規劃研究報告
- 2025年年中考物理綜合復習(壓軸特訓100題55大考點)(原卷版+解析)
- 2025上海房屋租賃合同模板
- T-SCSTA001-2025《四川省好住房評價標準》
- 2025-2030全球及中國可持續飛機能源行業市場現狀供需分析及市場深度研究發展前景及規劃可行性分析研究報告
- 西紅門鎮生活垃圾轉運站及環衛停車場工程報告表
- 2025年信息系統監理師考試題(附答案)
- 農村留守兒童教育支持體系構建研究
- 機械裝配技術試題及答案
- GB/T 44971-2024土壤硒含量等級
- 醫院檢驗科實驗室生物安全程序文件SOP
- dgt801系列數字式發電機變壓器組保護裝置調試大綱
評論
0/150
提交評論