




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、軟件工程實 驗 指 導 書趙緒輝 張樹明 編渤海大學信息科學與工程學院前 言軟件工程開課對象為計算機科學與技術專業本科高年級學生,先修課程為高級語言程序設計,數據結構,數據庫原理,計算機網絡。軟件工程實驗是軟件工程基于模擬項目和實用項目的課程設計的基本實驗環節,實驗內容為利用軟件工程開發思想進行軟件系統的開發,從系統規劃、需求分析、軟件設計、軟件編碼實現、軟件測試到軟件維護全過程,需要按照標準建立規范的軟件相關文檔,并以此指導軟件開發,最終完成軟件系統項目。針對不同學生的不同語言及開發工具基礎,可分小組選擇不同的實用軟件開發項目,無法完成實用軟件項目作品的學生擬以學生學籍成績管理系統、通用圖書
2、管理系統、通用在線考試系統任選其一進行軟件開發實驗實踐。目 錄實驗一 軟件規劃安排及軟件開發基礎準備1實驗二 需求分析及軟件菜單工具欄設計4實驗三 軟件設計(一)與輸入程序設計實現7實驗四 軟件設計(二)與查詢程序設計實現11實驗五 軟件編碼實現(一)與打印程序實現14實驗六 軟件編碼實現(二)與軟件安裝程序實現17實驗七 軟件單元測試與綜合確認測試20實驗八 軟件發布與維護24附錄1 軟件項目開發計劃參考模板27附錄2 軟件需求規格說明書的編寫參考模板31附錄3 軟件概要設計說明書參考模板36附錄4 軟件詳細設計說明書參考模板41附錄5 軟件測試說明書參考模板45附錄6 軟件工程實驗教學大綱
3、49附錄7 課程設計簡介53附錄8 軟件工程課程設計54主要參考文獻57實驗一 軟件規劃安排及軟件開發基礎準備一、實驗目的掌握軟件項目開發的過程管理,撰寫軟件項目計劃書。掌握軟件開發工具的配置方法,檢查并配置軟件開發軟硬件環境和軟件開發工具。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1軟件過程管理; 2使用Word撰寫軟件項目計劃書。3配置軟件開發軟硬件環境和軟件開發工具。四、實驗要求1硬件配置: Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。2軟件要求:Windows 2000操作系統或Linux
4、,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4學會軟件項目計劃書的書寫格式。五、實驗步驟(一)使用Word撰寫軟件項目計劃書1引言1.1編寫目的1.2 背景1.3定義1.4參考資料2項目概述2.1工作內容2.2主要參加人員2.3產品2.3.1程序2.3.2文件2.3.3服務2.3.4非移交的產品2.4驗收標準2.5完成項目的最遲期限2.6本計劃的批準者和批準日
5、期3實施計劃3.1工作任務的分解與人員分工3.2接口人員3.3進度3.4預算3.5關鍵問題4支持條件4.1計算機系統支持4.2需由用戶承擔的工作4.3由外單位提供的條件5專題計劃要點軟件項目計劃書詳細內容請參考附錄1。(二)配置軟件開發軟硬件環境和軟件開發工具1軟件開發平臺操作系統的配置。2軟件開發工具的安裝與配置。六、思考題1. 如何考察所開發的軟件實用性與可推廣性? 2. 如何進行軟件的可行性分析?3. 開發規劃中如何進行人員組織安排?4. 面向結構軟件開發與面向對象軟件開發有何異同?5. 開發環境如何選擇與配置?實驗二 需求分析及軟件菜單工具欄設計一、實驗目的掌握需求分析的步驟,撰寫需求
6、規格說明書。掌握軟件菜單和工具欄的設計方法,并能具體使用開發工具實現菜單欄和工具欄的軟件框架部分。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1需求分析方法; 2使用Word撰寫需求規格說明書;3設計軟件菜單;4設計軟件工具欄。四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic
7、 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4寫出實驗報告。五、實驗步驟(一)使用Word撰寫需求規格說明書1引言1.1編寫目的1.2背景1.3定義1.4參考資料2任務概述2.1目標2.2用戶的特點2.3假定和約束3需求規定 3.1對功能的規定3.2對性能的規定3.2.1精度3.2.2時間特性要求3.2.3靈活性3.3輸人輸出要求3.4數據管理能力要求3.5故障處理要求3.6其他專門要求4運行環境規定4.1設備4.2支持軟件4.3接口4.4控制需求規格說明書詳細內容請參考附錄2。(二)使用開發工具設計軟件菜
8、單(三)使用開發工具設計軟件工具欄六、思考題1. 如何通過用戶調查進行需求分析?2. 需求分析過程應注意哪些細節?3. 需求規格說明書如何有效反映軟件需求的各個方面?4. 為什么要使用UML?5. UML實際建模過程如何?6. 在UML中的狀態圖,協作圖,活動圖,序列圖在系統分析中各起到了什么作用?7. 關聯和依賴的區別如何?實驗三 軟件設計(一)與輸入程序設計實現一、實驗目的掌握軟件設計的步驟,實現軟件的總體設計,撰寫概要設計規格說明書。 掌握輸入程序的設計方法,并能具體使用開發工具實現軟件的數據輸入模塊。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗
9、內容1概要設計方法; 2使用Word撰寫撰寫概要設計規格說明書。3實現輸入程序的設計。四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4寫出實驗報告。5學會撰寫設計規格說明書。6至少完成兩個
10、輸入模塊的設計。五、實驗步驟(一)使用Word撰寫撰寫概要設計規格說明書1引言1.1編寫目的1.2背景1.3定義1.4參考資料2總體設計2.1需求規定2.2運行環境2.3基本設計概念和處理流程2.4結構2.5功能器求與程序的關系2.6人工處理過程2.7尚未問決的問題3接口設計3.1用戶接口3.2外部接口3.3內部接口4運行設計4.1運行模塊組合4.2運行控制4.3運行時間5系統數據結構設計5.1邏輯結構設計要點5.2物理結構設計要點5.3數據結構與程序的關系6系統出錯處理設計6.1出錯信息6.2補救措施6.3系統維護設計概要設計規格說明書詳細內容請參考附錄3。(二)使用開發工具實現輸入程序的設
11、計六、思考題1. 軟件設計方法有哪些?2. 面向過程的軟件設計的缺點如何?3. 面向對象設計的優勢如何?4. 軟件設計應注意的基本規則有哪些?實驗四 軟件設計(二)與查詢程序設計實現一、實驗目的掌握軟件設計的步驟,實現軟件的詳細設計,撰寫詳細設計規格說明書。 掌握查詢程序的設計方法,并能具體使用開發工具實現軟件的數據查詢或數據顯示模塊。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1詳細設計方法; 2使用Word撰寫撰寫詳細設計規格說明書。3實現查詢程序的設計,包括簡單查詢和模糊查詢。四、實驗要求1硬件配置:Intel Pentium 166或以上級
12、別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4寫出實驗報告。5學會撰寫設計規格說明書。6至少完成兩個查詢模塊的設計。五、實驗步驟(一)使用Word撰寫撰寫詳細設計規格說明書1引言1.1編寫目的1.2背景1.3定義1.4參考資料2程序系統的結構3程序1(
13、標識符)設計說明3.1程序描述3.2功能3.3性能3.4輸人項3.5輸出項3.6算法3.7流程邏輯3.8接口3.9存儲分配3.10注釋設計3.11限制條件3.12測試計劃3.13尚未解決的問題4程序2(標識符)設計說明詳細設計規格說明書詳細內容請參考附錄4。(二)使用軟件開發工具實現查詢程序的設計六、思考題1. 組件開發的適應性和優勢如何?2. 什么項目適合采用面向數據流的設計方法?3. 面向對象的設計方法同面向數據流的設計方法相比,有什么優勢?實驗五 軟件編碼實現(一)與打印程序實現一、實驗目的掌握軟件編碼規范與編程標準,并在編碼中實施規范的編碼標準。掌握打印程序的設計方法,并能具體使用開發
14、工具實現軟件的打印預覽或打印模塊。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1依據軟件編程標準修改代碼,形成規范的代碼。2實現打印程序的設計編碼。四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/
15、PHP/JSP等任一開發工具。 3實驗學時2學時。 4寫出實驗報告。5學會不同的編程標準的應用。五、實驗步驟(一) 編碼標準規范1編制易于修改和維護的代碼。2編制易于測試的代碼,對所有代碼考慮測試需要。3將編程與編文檔統一起來,文檔注釋如下:1) 代碼的功能2) 代碼的完成者3) 代碼在整個軟件系統中的位置4) 代碼編制、復審的時間5) 保留代碼的原因6) 代碼中如何使用數據結構和算法4編程中采用統一的標準和約定,降低程序復雜性,檢查軟件系統各部分的標準和約定是否一致。5限定每一層的副作用6盡可能的重用(二)使用開發工具實現打印程序設計1打印預覽程序的設計編碼2打印程序的設計編碼六、思考題1.
16、 如何實現超過屏幕的打印預覽程序?2. 如何實現數據庫的模糊查詢?3. 打印報表程序設計要點有哪些?實驗六 軟件編碼實現(二)與軟件安裝程序實現一、實驗目的掌握軟件編碼規范與編程風格,并在編碼中實施規范的編碼風格。掌握軟件安裝程序的設計方法,并能具體使用安裝盤制作工具實現軟件的安裝盤制作。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1依據軟件編程風格修改代碼,形成自己的編程風格。2實現軟件安裝盤的制作。基于Web的項目制作網頁格式的安裝說明,其它類型的項目制作安裝說明書。四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,
17、大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具;InstallShield,SetupBuilder,WiseInstall等安裝盤制作工具。3實驗學時2學時。 4寫出實驗報告。5學習不同的編程風格,逐步形成自己的編程風格。五、實驗步驟(一)編碼風格規范1. 提供盡可能簡潔的代碼節儉化。2
18、. 把代碼分為內聚度高、富有意義的功能塊模塊化。3. 去掉過分復雜和不必要的矯揉造作簡單化。4. 把程序的各個構件組織成一個有效系統結構化。5. 程序能自說明文檔化。6. 盡量使程序布局合理、清晰、明了格式化。(二)使用開發工具實現軟件安裝盤的制作1安裝盤制作工具的安裝。2安裝盤制作工具的使用。3規范工程文件,編譯系統并制作安裝盤。基于Web的項目制作網頁格式的安裝說明,其它類型的項目制作安裝說明書。六、思考題1.如何實現口令文件加密與用戶權限設計實現?2. 如何制作軟件安裝盤?3. 如何制作軟件幫助?實驗七 軟件單元測試與綜合確認測試一、實驗目的掌握結構化測試基本技術,并能夠應用黑盒測試和白
19、盒測試技術設計測試用例,實現軟件的單元測試與綜合確認測試環節,撰寫軟件測試說明書。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1用白盒測試法設計測試用例,實現軟件的單元測試。2用黑盒測試法設計測試用例,實現軟件的綜合確認測試。3撰寫軟件測試說明書。四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Vi
20、sual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4寫出實驗報告。5學會用白盒測試和黑盒測試法設計測試用例。6學會撰寫軟件測試說明書。五、實驗步驟(一)用白盒測試法設計測試用例,實現軟件的單元測試對每個程序模塊進行代碼級測試,特別是變量的作用范圍、程序的調用關系、邊界條件等。1語句覆蓋、判定覆蓋、條件覆蓋、判定 /條件覆蓋、條件組合覆蓋等白盒測試。 2點覆蓋、邊覆蓋和路徑覆蓋等白盒測試。(二)用黑盒測試法設計測試用例,實現軟件的綜合確認測試對每個功能模塊進行測試1 應用等價類劃分方法設計測試用
21、例; 2 應用邊界值分析方法設計測試用例。(三)撰寫軟件測試說明書1引言1.1編寫目的1.2背景1.3定義1.4參考資料2計劃2.1軟件說明2.2測試內容2.3測試1(標識符)2.3.1進度安排2.3.2條件2.3.3測試資料2.3.4測試培訓2.4測試2(標識符)3測試設計說明3.1測試1(標識符)3.1.1控制3.1.2輸入3.1.3輸出3.1.4過程3.2測試2(標識符)4評價準則4.1范圍4.2數據整理4.3尺度軟件測試說明書詳細內容請參考附錄5。六、思考題1. 軟件測試方法有哪些?2. 測試與測試的區別是什么?3. 軟件測試哪些部分可使用自動化測試工具實現測試自動化?4. 白盒測試與
22、黑盒測試有什么區別?實驗八 軟件發布與維護一、實驗目的掌握軟件發布方法,用不同機器環境發布自己的軟件,并提交所有基于項目的課程設計內容。二、實驗儀器奔騰166及以上計算機每人1臺,組成局域網并聯入Internet。三、實驗內容1軟件發布方法。2對其它項目組的作品進行評價,在不同項目組間進行軟件開發交流。3向指導教師提交基于項目的課程設計內容。序號提交內容1項目計劃書2需求規格說明書3設計規格說明書4編碼實現(源代碼盤)5測試說明書6幫助系統或使用說明書7安裝盤或安裝說明書四、實驗要求1硬件配置:Intel Pentium 166或以上級別的CPU,大于64Mb的內存,500MB硬盤空間。 2軟
23、件要求:Windows 2000操作系統或Linux,Office 2000系統程序,IIS5.0或Apache Web服務器安裝程序,SQL Server 2000數據庫系統;Visual Basic 6.0,Visual C+6.0,Visual FoxPro 6.0,ASP/PHP/JSP等任一開發工具。 3實驗學時2學時。 4安裝并發布軟件,并對軟件進行評價,不同項目組交叉進行。五、實驗步驟(一)發布所開發軟件項目。(二)對其它項目組的作品進行評價,在不同項目組間進行軟件開發交流。(三)向指導教師提交基于項目的課程設計內容。1項目計劃書2需求規格說明書3設計規格說明書4編碼實現(源代碼
24、盤)5測試說明書6幫助系統或使用說明書7安裝盤或安裝說明書課程設計簡介請參考附錄7。軟件工程課程設計請參考附錄8。六、思考題1. 桌面開發同基于WEB的開發各自的優缺點如何?2. JAVA同C#語言有何異同?3. 軟件維護有哪些種類?附錄1 軟件項目開發計劃參考模板1引言1.1編寫目的說明:編寫這份軟件項目開發計劃的目的,并指出預期的讀者。1.2 背景說明:a.待開發的軟件系統的名稱;b.本項目的任務提出者、開發者、用戶及實現該軟件的計算中心或計算機網絡;c.該軟件系統同其他系統或其他機構的基本的相互來往關系。1.3定義列出本文件中用到的專門術語的定義和外文的首字母組詞的原詞組。1.4參考資料
25、列出用得著的參考資料,如:a.本項目的經核準的計劃任務書和合同、上級機關的批文;b.屬于本項目的其他已發表的文件;c.本文件中各處引用的文件、資料,包括所要用到的軟件開發標準。列出這些文件資料的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。2項目概述2.1工作內容簡要地說明在本項目的開發中須進行的各項主要工作。2.2主要參加人員扼要說明參加本項目開發的主要人員的情況,包括他們的技術水平。2.3產品2.3.1程序列出須移交給用戶的程序的名稱、所用地編程語言及存儲程序的媒體形式,并通過引用相關文件,逐項說明其功能和能力。2.3.2文件列出須移交用戶的每種文件的名稱及內容要點。
26、2.3.3服務列出需向用戶提供的各項服務,如培訓安裝、維護和運行支持等,應逐項規定開始日期、所提供支持的級別和服務的期限。2.3.4非移交的產品說明開發集體應向本單位交出但不必向用戶移交的產品(文件甚至某些程序)。2.4驗收標準對于上述這些應交出的產品和服務,逐項說明或引用資料說明驗收標準。2.5完成項目的最遲期限2.6本計劃的批準者和批準日期3實施計劃3.1工作任務的分解與人員分工對于項目開發中需要完成的各項工作,從需求分析、設計、實現、測試直到維護,包括文件的編制、審批、打印、分發工作,用戶培訓工作,軟件安裝工作等,按層次進行分解,指明每項任務的負責人和參加人員。3.2接口人員說明負責接口
27、工作的人員及他們的職責,包括:a.負責本項目同用戶的接口人員;b.負責本項目同本單位各管理機構,如合同計劃管理部門、財務部門、質量管理部門等的接口人員;c.負責本項目同個份合同負責單位的接口人員等。3.3進度對于需求分析、設計、編碼實現、測試、移交、培訓和安裝等工作,給出每項工作任務的預定開始日期、完成日期及所需資源,規定各項工作任務完成的先后順序以及表征每項工作任務完成的標志性事件(即所謂“里程碑)。3.4預算逐項列出本開發項目所需要的勞務(包括人員的數量和時間)以及經費的預算(包括辦公費、差旅費、機時費、資料費、通訊設備和專用設備的租金等)和來源。3.5關鍵問題逐項列出能夠影響整個項目成敗
28、的關鍵問題、技術難點和風險,指出這些問題對項目的影響。4支持條件說明為支持本項目的開發所需要的各種條件和設施。4.1計算機系統支持逐項列出開發中和運行時所需的計算機系統支持,包括計算機、外圍設備、通訊設備、模擬器、編譯(或匯編)程序、操作系統、數據管理程序包、數據存儲能力和測試支持能力等,逐項給出有關到貨日期、使用時間的要求。4.2需由用戶承擔的工作逐項列出需要用戶承擔的工作和完成期限。包括需由用戶提供的條件及提供時間。4.3由外單位提供的條件逐項列出需要外單位分合同承包者承擔的工作和完成的時間,包括需要由外單位提供的條件和提供的時間。5專題計劃要點說明本項目開發中需制定的各個專題計劃(如分合
29、同計劃、開發人員培訓計劃、測試計劃、安全保密計劃、質量保證計劃、配置管理計劃、用戶培訓計劃、系統安裝計劃等)的要點。附錄2 軟件需求規格說明書的編寫參考模板1引言1.1編寫目的說明編寫這份軟件需求規格說明書的目的,指出預期的讀者。1.2背景說明:a待開發的軟件系統的名稱;b本項目的任務提出者、開發者、用戶及實現該軟件的計算中心或計算機網絡;c該軟件系統同其他系統或其他機構的基本的相互來往關系。 1.3定義列出本文件中用到的專門術語的定義和外文首字母組詞的原詞組。1.4參考資料列出用得著的參考資料,如:a本項目的經核準的計劃任務書或合同、上級機關的批文;b屬于本項目的其他已發表的文件;c本文件中
30、各處引用的文件、資料、包括所要用到的軟件開發標準。 列出這些文件資料的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。2任務概述2.1目標敘述該項軟件開發的意圖、應用目標、作用范圍以及其他應向讀者說明的有關該軟件開發的背景材料。解釋被開發軟件與其他有關軟件之間的關系。如果本軟件產品是一項獨立的軟件,而且全部內容自含,則說明這一點。如果所定義的產品是一個更大的系統的一個組成部分,則應說明本產品與該系統中其他各組成部分之間的關系,為此可使用一張方框圖來說明該系統的組成和本產品同其他各部分的聯系和接口。2.2用戶的特點列出本軟件的最終用戶的特點,充分說明操作人員、維護人員的教育水
31、平和技術專長,以及本軟件的預期使甩頻度。這些是軟件設計工作的重要約束2.3假定和約束列出進行本軟件開發工作的假定和約束,例如經費限制、開發期限等。3需求規定 3.1對功能的規定用列表的方式(例如IPO表即輸入、處理、輸出表的形式),逐項定量和定性地敘述對軟件所提出的功能要求,說明輸入什么量、經怎樣的處理、得到什么輸出,說明軟件應支持的終端數和應支持的并行操作的用戶數。3.2對性能的規定3.2.1精度說明對該軟件的輸入、輸出數據精度的要求,可能包括傳輸過程中的精度。3.2.2時間特性要求說明對于該軟件的時間特性要求,如對:a響應時間;b更新處理時間;c數據的轉換和傳送時間;d解題時間;等的要求。
32、3.2.3靈活性說明對該軟件的靈活性的要求,即當需求發生某些變化時,該軟件對這些變化的適應能力,如:a操作方式上的變化;b運行環境的變化;c同其他軟件的接口的變化;d精度和有效時限的變化;e計劃的變化或改進。對于為了提供這些靈活性而進行的專門設計的部分應該加以標明。3.3輸人輸出要求解釋各輸入輸出數據類型,并逐項說明其媒體、格式、數值范圍、精度等。對軟件的數據輸出及必須標明的控制輸出量進行解釋并舉例,包括對硬拷貝報告(正常結果輸出、狀態輸出及異常輸出)以及圖形或顯示報告的描述。3.4數據管理能力要求說明需要管理的文卷和記錄的個數、表和文卷的大小規模,要按可預見的增長對數據及其分量的存儲要求作出
33、估算。3.5故障處理要求列出可能的軟件、硬件故障以及對各項性能而言所產生的后果和對故障處理的要求。3.6其他專門要求如用戶單位對安全保密的要求,對使用方便的要求,對可維護性、可補充性、易讀性、可靠性、運行環境可轉換性的特殊要求等。4運行環境規定4.1設備列出運行該軟件所需要的硬設備。說明其中的新型設備及其專門功能,包括:a處理器型號及內存容量;b外存容量、聯機或脫機、媒體及其存儲格式,設備的型號及數量;c輸入及輸出設備的型號和數量,聯機或脫機;d數據通信設備的型號和數量;e功能鍵及其他專用硬件4.2支持軟件列出支持軟件,包括要用到的操作系統、編譯(或匯編)程序、測試支持軟件等。4.3接口說明該
34、軟件同其他軟件之間的接口、數據通信協議等。4.4控制說明控制該軟件的運行的方法和控制信號,并說明這些控制信號的來源。附錄3 軟件概要設計說明書參考模板1引言1.1編寫目的說明編寫這份概要設計說明書的目的,指出預期的讀者。1.2背景說明:a.待開發軟件系統的名稱;b.列出此項目的任務提出者、開發者、用戶以及將運行該軟件的計算站(中心)。1.3定義列出本文件中用到的專門術語的定義和外文首字母組詞的原詞組。1.4參考資料列出有關的參考文件,如:a.本項目的經核準的計劃任務書或合同,上級機關的批文;b.屬于本項目的其他已發表文件;c.本文件中各處引用的文件、資料,包括所要用到的軟件開發標準。列出這些文
35、件的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。2總體設計2.1需求規定說明對本系統的主要的輸入輸出項目、處理的功能性能要求,詳細的說明可參見附錄C。2.2運行環境簡要地說明對本系統的運行環境(包括硬件環境和支持環境)的規定,詳細說明參見附錄C。2.3基本設計概念和處理流程說明本系統的基本設計概念和處理流程,盡量使用圖表的形式。2.4結構用一覽表及框圖的形式說明本系統的系統元素(各層模塊、子程序、公用程序等)的劃分,扼要說明每個系統元素的標識符和功能,分層次地給出各元素之間的控制與被控制關系.2.5功能器求與程序的關系本條用一張如下的矩陣圖說明各項功能需求的實現同各塊程
36、序的分配關系:程序1程序2程序n功能需求1功能需求2功能需求n2.6人工處理過程說明在本軟件系統的工作過程中不得不包含的人工處理過程(如果有的話)。2.7尚未問決的問題說明在概要設計過程中尚未解決而設計者認為在系統完成之前必須解決的各個問題。3接口設計3.1用戶接口說明將向用戶提供的命令和它們的語法結構,以及軟件的回答信息。3.2外部接口說明本系統同外界的所有接口的安排包括軟件與硬件之間的接口、本系統與各支持軟件之間的接口關系。3.3內部接口說明本系統之內的各個系統元素之間的接口的安排。4運行設計4.1運行模塊組合說明對系統施加不同的外界運行控制時所引起的各種不同的運行模塊組合,說明每種運行所
37、歷經的內部模塊和支持軟件。4.2運行控制說明每一種外界的運行控制的方式方法和操作步驟。4.3運行時間說明每種運行模塊組合將占用各種資源的時間。5系統數據結構設計5.1邏輯結構設計要點給出本系統內所使用的每個數據結構的名稱、標識符以及它們之中每個數據項、記錄、文卷和系的標識、定義、長度及它們之間的層次的或表格的相互關系。5.2物理結構設計要點給出本系統內所使用的每個數據結構中的每個數據項的存儲要求,訪問方法、存取單位、存取的物理關系(索引、設備、存儲區域)、設計考慮和保密條件。5.3數據結構與程序的關系說明各個數據結構與訪問這些數據結構的形式:6系統出錯處理設計6.1出錯信息用一覽表的方式說朗每
38、種可能的出錯或故障情況出現時,系統輸出信息的形式、含意及處理方法。6.2補救措施說明故障出現后可能采取的變通措施,包括:a.后備技術說明準備采用的后備技術,當原始系統數據萬一丟失時啟用的副本的建立和啟動的技術,例如周期性地把磁盤信息記錄到磁帶上去就是對于磁盤媒體的一種后備技術;b.降效技術說明準備采用的后備技術,使用另一個效率稍低的系統或方法來求得所需結果的某些部分,例如一個自動系統的降效技術可以是手工操作和數據的人工記錄;c.恢復及再啟動技術說明將使用的恢復再啟動技術,使軟件從故障點恢復執行或使軟件從頭開始重新運行的方法。6.3系統維護設計說明為了系統維護的方便而在程序內部設計中作出的安排,
39、包括在程序中專門安排用于系統的檢查與維護的檢測點和專用模塊。 各個程序之間的對應關系,可采用如下的矩陣圖的形式;附錄4 軟件詳細設計說明書參考模板1引言1.1編寫目的說明編寫這份詳細設計說明書的目的,指出預期的讀者。1.2背景說明:a待開發軟件系統的名稱;b本項目的任務提出者、開發者、用戶和運行該程序系統的計算中心。1.3定義列出本文件中用到專門術語的定義和外文首字母組詞的原詞組。1.4參考資料列出有關的參考資料,如:a本項目的經核準的計劃任務書或合同、上級機關的批文;b屬于本項目的其他已發表的文件;c本文件中各處引用到的文件資料,包括所要用到的軟件開發標準。列出這些文件的標題、文件編號、發表
40、日期和出版單位,說明能夠取得這些文件的來源。2程序系統的結構用一系列圖表列出本程序系統內的每個程序(包括每個模塊和子程序)的名稱、標識符和它們之間 的層次結構關系。3程序1(標識符)設計說明從本章開始,逐個地給出各個層次中的每個程序的設計考慮。以下給出的提綱是針對一般情況的。對于一個具體的模塊,尤其是層次比較低的模塊或子程序,其很多條目的內容往往與它所隸屬的上一層 模塊的對應條目的內容相同,在這種情況下,只要簡單地說明這一點即可。3.1程序描述給出對該程序的簡要描述,主要說明安排設計本程序的目的意義,并且,還要說明本程序的特點(如 是常駐內存還是非常駐?是否子程序?是可重人的還是不可重人的?有
41、無覆蓋要求?是順序處理還是并發處理等)。3.2功能說明該程序應具有的功能,可采用IPO圖(即輸入一處理一輸出圖)的形式。3.3性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。3.4輸人項給出對每一個輸入項的特性,包括名稱、標識、數據的類型和格式、數據值的有效范圍、輸入的方式。數量和頻度、輸入媒體、輸入數據的來源和安全保密條件等等。3.5輸出項給出對每一個輸出項的特性,包括名稱、標識、數據的類型和格式,數據值的有效范圍,輸出的形式、數量和頻度,輸出媒體、對輸出圖形及符號的說明、安全保密條件等等。3.6算法詳細說明本程序所選用的算法,具體的計算公式和計算步驟。3.7流程邏輯用圖
42、表(例如流程圖、判定表等)輔以必要的說明來表示本程序的邏輯流程。3.8接口用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數賦值和調用方式,說明與本程序相直接關聯的數據結構(數據庫、數據文卷)。3.9存儲分配根據需要,說明本程序的存儲分配。3.10注釋設計說明準備在本程序中安排的注釋,如:a加在模塊首部的注釋;b加在各分枝點處的注釋;c對各變量的功能、范圍、缺省條件等所加的注釋;d對使用的邏輯所加的注釋等等。3.11限制條件說明本程序運行中所受到的限制條件。3.12測試計劃說明對本程序進行單體測試的計劃,包括對測試的技術要求、輸入數據、預期結果、進度安排、人員職
43、責、設備條件驅動程序及樁模塊等的規定。3.13尚未解決的問題說明在本程序的設計中尚未解決而設計者認為在軟件完成之前應解決的問題。4程序2(標識符)設計說明用類似F3的方式,說明第2個程序乃至第N個程序的設計考慮。.附錄5 軟件測試說明書參考模板1引言1.1編寫目的本測試說明書的具體編寫目的,指出預期的讀者范圍。1.2背景說明:a測試說明書所從屬的軟件系統的名稱;b該開發項目的歷史,列出用戶和執行此項目測試的計算中心,說明在開始執行本測試說明書之前必須完成的各項工作。1.3定義列出本文件中用到的專門術語的定義和外文首字母組詞的原詞組。1.4參考資料列出要用到的參考資料,如:a本項目的經核準的計劃
44、任務書或合同、上級機關的批文;b屬于本項目的其他已發表的文件;c本文件中各處引用的文件、資料,包括所要用到的軟件開發標準。列出這些文件的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。2計劃2.1軟件說明提供一份圖表,并逐項說明被測軟件的功能、輸入和輸出等質量指標,作為敘述測試說明書的提綱。2.2測試內容列出組裝測試和確認測試中的每一項測試內容的名稱標識符、這些測試的進度安排以及這些測試的內容和目的,例如模塊功能測試、接口正確性測試、數據文卷存取的測試、運行時間的測試、設計約束和極限的測試等。2.3測試1(標識符)給出這項測試內容的參與單位及被測試的部位。2.3.1進度安排
45、給出對這項測試的進度安排,包括進行測試的日期和工作內容(如熟悉環境。培訓、準備輸入數據等)。2.3.2條件陳述本項測試工作對資源的要求,包括:a設備所用到的設備類型、數量和預定使用時間;b軟件列出將被用來支持本項測試過程而本身又并不是被測軟件的組成部分的軟件,如測試驅動程序、測試監控程序、仿真程序、樁模塊等等;c人員列出在測試工作期間預期可由用戶和開發任務組提供的工作人員的人數。技術水平及有關的預備知識,包括一些特殊要求,如倒班操作和數據鍵入人員。2.3.3測試資料列出本項測試所需的資料,如:a有關本項任務的文件;b被測試程序及其所在的媒體;c測試的輸入和輸出舉例;d有關控制此項測試的方法、過
46、程的圖表。2.3.4測試培訓說明或引用資料說明為被測軟件的使用提供培訓的計劃。規定培訓的內容、受訓的人員及從事培訓的工作人員。2.4測試2(標識符)用與本測試說明書2.3條相類似的方式說明用于另一項及其后各項測試內容的測試工作計劃。3測試設計說明3.1測試1(標識符)說明對第一項測試內容的測試設計考慮。3.1.1控制說明本測試的控制方式,如輸入是人工、半自動或自動引入、控制操作的順序以及結果的記錄方法。3.1.2輸入說明本項測試中所使用的輸入數據及選擇這些輸入數據的策略。3.1.3輸出說明預期的輸出數據,如測試結果及可能產生的中間結果或運行信息。3.1.4過程說明完成此項測試的一個個步驟和控制
47、命令,包括測試的準備、初始化、中間步聚和運行結束方式。3.2測試2(標識符)用與本測試說明書3.l條相類似的方式說明第2項及其后各項測試工作的設計考慮。4評價準則4.1范圍說明所選擇的測試用例能夠接查的范圍及其局限性。4.2數據整理陳述為了把測試數據加工成便于評價的適當形式,使得測試結果可以同,已知結果進行比較而要用到的轉換處理技術,如手工方式或自動方式;如果是用自動方式整理數據,還要說明為進行處理而要用到的硬件、軟件資源。4.3尺度說明用來判斷測試工作是否能通過的評價尺度,如合理的輸出結果的類型、測試輸出結果與預期輸出之間的容許偏離范圍、允許中斷或停機的最大次數。附錄6 軟件工程實驗教學大綱
48、一、實驗教學內容開課對象為計算機科學與技術專業本科高年級學生,先修課程為高級語言程序設計,數據結構,數據庫原理,計算機網絡。實驗教學內容為利用軟件工程開發思想進行一小型軟件系統的開發,從系統規劃、需求分析、軟件設計、軟件編碼實現至軟件測試及維護全過程,需要建立規范的軟件文檔,并指導軟件開發,最終完成一小型軟件系統。針對不同學生的不同語言及開發工具基礎,可分小組選擇不同的實用軟件開發項目,自己不能確定的擬以學生學籍成績管理系統、通用圖書管理系統、通用在線考試系統任選其一進行軟件開發。二、實驗目的熟悉軟件開發全過程,建立文檔規范化及設計開發符合軟件工程規律的觀念,利用一門計算機語言或開發工具完成一
49、小型軟件系統的設計開發,最終勝任各種軟件開發與管理工作。三、實驗教學重點、難點及教學方式重點是需求分析、軟件設計、軟件測試等相關文檔規范化過程,并能利用語言工具完成一小型實用的軟件作品。難點是文檔的編寫規范及技術基礎薄弱,無法綜合運用所學知識。教學方式主要是專題指導及探討。實驗重點、難點及教學方式綜合表表1序號重點(難點)內容簡述指導方式1軟件需求規格如何轉化為設計書分組指導2軟件編碼中如何把握軟件整體架構分組檢查并研討3軟件實現中核心算法如何實現分組指導與研討4軟件編碼中如何實現查詢及打印模塊上機調試、重點指導5軟件測試中如何改進測試方法、提高測試效率上機調試、重點指導四、對學生的實驗操作技
50、能、能力和科學作風等方面的要求表2概述與哪些教學內容有聯系實驗 操作 (技能)熟悉操作系統、數據結構、網絡環境、數據庫基礎操作等,并熟練掌握一種計算機語言或開發工具,能夠編寫相關軟件文檔,綜合運用相關理論知識實現一小型軟件系統。程序設計語言與編碼軟件測試軟件維護學生的 能力發現問題、提出問題的能力,分析問題、解決問題的能力,綜合思維能力。具備軟件開發能力、文檔編寫能力、團隊合作能力、綜合運用相關課程理論的能力。需求分析基礎軟件設計基礎程序設計語言與編碼軟件測試科學 作風嚴謹對待每一次上機實踐,認真完成每一個實驗題目,養成小組內互相探討,小組間互相溝通,完滿完成軟件開發任務。軟件項目管理需求分析
51、基礎軟件設計基礎五、實驗教學條件列表說明軟件工程實驗條件明細表表3名稱規格數量是否具備計算機奔騰166及以上80是六、實驗考核1、 實驗報告批閱。2、 提交軟件設計開發過程中軟件規劃文檔、需求規格說明書、軟件設計書、軟件測試報告。3、 軟件編碼與實現形成軟件安裝盤及源代碼盤并以電子方式上交。七、教學進度表4實驗內容概述所用學時月日/周實驗類型1. 軟件規劃安排及軟件開發基礎準備2. 需求分析及軟件菜單工具欄設計3. 軟件設計(一)與輸入程序設計實現4. 軟件設計(二)與查詢程序設計實現5. 軟件編碼實現(一)與打印程序實現6. 軟件編碼實現(二)與軟件安裝程序實現7. 軟件單元測試與綜合確認測
52、試8. 軟件發布與維護22222222357911131517綜合設計綜合設計綜合設計綜合設計綜合設計綜合設計綜合設計演示總學時數: 16 八、思考題、作業,資料(含電子文檔)和參考書。1. 思考題、作業:1) 軟件開發規劃與準備方面的5個思考題:I) 如何考察所開發的軟件實用性與可推廣性? II)如何進行軟件的可行性分析?III)開發規劃中如何進行人員組織安排?IV)面向結構軟件開發與面向對象軟件開發有何異同?V)開發環境如何選擇與配置?2) 需求分析方面的3個思考題:I)如何通過用戶調查進行需求分析?II)需求分析過程應注意哪些細節?III)需求規格說明書如何有效反映軟件需求的各個方面?3) 軟件設計方面的5個思考題:I)軟件設計方法有哪些?II)面向過程的軟件設計的缺點如何?III)面向對象設計的優勢如何?IV)軟件設計應注意的基本規則有哪些?V)組件開發的適應性和優勢如何?4) 軟件實現方面的6個思考題:I)如何實現口令文件加密與用戶權限設計實現?II)如何實現超過屏幕的打印預覽程序?III)如何制作軟件安裝盤?IV)如何制作軟件幫助?V)如何實現數據庫的模糊查詢?VI)打印報表程序設計要點有哪些?5) 軟件測試方面的5個思考題:I)軟件測試方法有哪些?II)測試與測試的區別是什么?III)軟件測試哪些部分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025勞動合同模板范文
- 2025年廣州市房屋租賃合同(官方版)
- 2025年安徽省宿州市中考一模語文試卷含答案
- 2024-2025各個班組安全培訓考試試題含答案【培優】
- 2025年廠里廠里安全培訓考試試題附參考答案(奪分金卷)
- 2025公司項目負責人安全培訓考試試題答案AB卷
- 2025承包商入廠安全培訓考試試題答案全面
- 2024-2025公司項目部管理人員安全培訓考試試題帶答案(精練)
- 2025職工安全培訓考試試題附參考答案(綜合題)
- 2024-2025各個班組三級安全培訓考試試題考試直接用
- 第18課《井岡翠竹》課件-2024-2025學年統編版語文七年級下冊
- 公立醫院成本核算指導手冊
- MOOC 中醫與辨證-暨南大學 中國大學慕課答案
- 年產10噸功能益生菌凍干粉的工廠設計改
- 執行異議及復議課件
- 安全生產管理組織機構設置圖
- 智能健身鏡行業分析及案例
- 中聯HIS系統掛號收費 操 作 說 明
- HIT(肝素誘導的血小板減少癥)課件
- Mayo肘關節功能評分
- 螺栓加工工序卡(共7頁)
評論
0/150
提交評論