《軟件需求工程》教學大綱
課程名稱:
| 軟件需求工程
|
|
|
課程編號:
| 436012
|
|
|
適用專業(yè):
| 軟件工程
|
|
|
課程類別:
| 專業(yè)必修課
|
|
|
課程學分:
| 3
|
|
|
總學時:
| 54
|
|
|
其中:理論學時
| 30
|
|
|
實驗學時
| 24
|
|
|
先修課程:
| C語言程序設(shè)計、面向?qū)ο蟪绦蛟O(shè)計、數(shù)據(jù)庫原理、軟件工程
|
一、課程的性質(zhì)、目的與任務
軟件需求作為軟件工程的一個階段,在軟件項目開發(fā)中起著至關(guān)重要的作用。軟件項目要取得成功,最重要的莫過于了解所要開發(fā)的軟件需要解決哪些問題,這就是軟件需求所要解決的問題,因此,軟件需求為軟件項目的成功奠定了基礎(chǔ)。本課程是提升軟件工程專業(yè)學生能力和水平的重要教學內(nèi)容。
通過本課程的學習,要求學生達到:
1.了解需求工程的作用與地位;
2.掌握需求工程的常用方法;
3.掌握獲取需求的常用方法;
4.了解需求管理的內(nèi)容和方法;
5.學會軟件規(guī)格需求說明書的撰寫;
6.了解軟件工程各領(lǐng)域的發(fā)展動向,成為具有獨立工作能力的高素質(zhì)高水平的軟件人才。
二、課程教學基本內(nèi)容與要求
工科專業(yè)基礎(chǔ)課和專業(yè)課具有同樣的特點,即課程知識內(nèi)容可分為兩類:第一類為“概念原理的知識”,即一門學科經(jīng)由探究過程而獲致的基本結(jié)論——概念原理的體系;第二類為“過程方法的知識”,即關(guān)于一門學科的探究過程與探究方法的知識。同時,概念原理的知識和過程方法的知識具有內(nèi)在的統(tǒng)一性,課程選擇就不能把二者人為地割裂開來。為此,本課程內(nèi)容共分4個部分,前兩個部分為“概念原理的知識”,后兩部分為“過程方法的知識”,每個部分都具有明確的目的。
第一部分軟件需求初步知識和體驗
第二部分軟件需求理論知識與方法
第三部分軟件需求分析實踐與文檔寫作
第四部分軟件需求管理初步
第一部分:軟件需求初步知識和體驗
(一)基本教學內(nèi)容
第1章軟件需求基礎(chǔ)知識
第2章客戶眼中的需求
第3章需求工程的推薦方法
第4章需求分析員
(二)基本要求
教學目的:通過課堂理論教學和對關(guān)于常用軟件的體驗和理解,使學生建立軟件需求的初步知識,掌握優(yōu)質(zhì)需求過程與優(yōu)質(zhì)需求,了解需求的開發(fā)過程。
教學重點:軟件需求的定義與初步知識
教學難點:軟件需求的定義。
第二部分:軟件需求理論知識與方法
(一)基本教學內(nèi)容
第5章確定產(chǎn)品前景與項目范圍
第6章獲取客戶的需求
第7章聆聽客戶的需求
第8章理解用戶需求
第9章遵守規(guī)則
第10章編寫需求文檔
(二)基本要求
教學目的:通過課堂及實驗教學、課后的閱讀和理解,使學生建立關(guān)于軟件需求的基礎(chǔ)理論與實踐知識,了解軟件需求基本方法。使學生能從程序設(shè)計看軟件功能需求。要求學生結(jié)合已有的C語言程序設(shè)計等知識,對程序設(shè)計描述進行分析,提煉出軟件功能需求和非功能需求,并以比較規(guī)范的語言進行描述。
教學重點:軟件開發(fā)過程及需求工程對軟件開發(fā)的影響、需求獲取中的注意事項。
教學難點:軟件需求關(guān)聯(lián)圖,用例法,事件-響應表。
第三部分:軟件需求分析實踐與文檔寫作
(一)基本教學內(nèi)容
第11章一圖勝千言
第12章軟件質(zhì)量屬性
第13章通過制作原型減少項目風險
第14章設(shè)定需求優(yōu)先級
(二)基本要求
教學目的:通過課堂及實驗教學及課后的實踐與應用,使學生初步掌握軟件需求文檔的寫作方法,重點掌握業(yè)務需求和用戶需求的編寫方法。
教學重點:如何進行需求描述。
教學難點:數(shù)據(jù)流圖、實體關(guān)系圖、狀態(tài)轉(zhuǎn)換圖、質(zhì)量屬性、性能需求。
第四部分軟件需求管理初步
(一)基本教學內(nèi)容
第15章需求確認
第16章需求開發(fā)面臨的特殊難題
第17章超越需求開發(fā)
第18章需求管理的原則和實踐
第19章變更管理
第20章需求鏈中的聯(lián)系鏈
第21章需求管理工具
第22章改進需求過程
第23章軟件需求與風險管理
(二)基本要求
教學目的:本部分為提高部分,通過課堂教學和課后閱讀,使學生對軟件工程中的需求管理具有初步的了解,并能結(jié)合課堂教學,針對小型軟件(網(wǎng)站)設(shè)計開展用戶需求分析實驗,在模擬性工程實踐中,理解需求獲取階段、需求分析階段的需求工程基礎(chǔ)理論與實踐方法。
教學重點:需求管理的概念、原則和方法,需求與項目管理的聯(lián)系。
教學難點:軟件維護需求、軟件包解決方案中的需求分析、需求變更管理、軟件過程改進的基本原則。第1部分:
軟件需求初步知識和體驗
三、課程各章節(jié)學時分配
序號
| 內(nèi)容
| 理論學時
| 實驗學時
|
1
| 基本的軟件需求
客戶的需求觀
| 1
|
|
2
| 需求工程的推薦方法
| 2
| 2
|
3
| 改進需求過程
| 2
| 2
|
4
| 軟件需求與風險管理
| 2
| 2
|
5
| 建立項目視圖與范圍
| 2
| 2
|
6
| 尋找客戶的需求
| 1
|
|
7
| 聆聽客戶的需求
| 1
| 2
|
8
| 編寫需求文檔
| 2
| 2
|
9
| 需求的圖形化分析
| 2
| 6
|
10
| 軟件的質(zhì)量屬性
| 1
|
|
11
| 通過原型法減少項目風險
| 2
|
|
12
| 設(shè)定需求優(yōu)先級
| 1
|
|
13
| 需求質(zhì)量驗證
| 2
| 2
|
14
| 需求開發(fā)向設(shè)計規(guī)劃的轉(zhuǎn)化
| 2
| 2
|
15
| 需求管理的原則與實現(xiàn)
| 1
|
|
16
| 管理變更請求
| 2
|
|
17
| 需求鏈中的聯(lián)系鏈
| 2
|
|
18
| 需求管理工具
| 2
| 2
|
合計
| 30
| 24
|
四、本課程課外學習與修學指導
針對《軟件需求工程》的課程特點,為加強實踐環(huán)節(jié),提高學生學習的主動性,可將學生分組進行項目實踐,提高學生的團隊合作能力。讓學生利用課外時間相對獨立完成一個模擬的科研項目,這些項目都是從實際項目中提煉出來的,具有典型性、客觀性和啟發(fā)性,教師采用點拔方式或共同探究的方式進行指導。項目完成后,教師要求學生寫專題論文,啟發(fā)他們的思維,表達他們的見解,鼓勵學生在本課程的學習中學會聯(lián)系相關(guān)課程(如網(wǎng)絡、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫等)的知識去思考和解決問題。教師應準備若干來自工程實踐的技術(shù)文檔,讓學生學習、模仿軟件工程文檔的格式和用語,練習寫作,再布置作業(yè),通過課外閱讀和寫作練習,逐步建立需求工程的思想意識。
五、本課程考核方式及成績評定標準
考核方式:閉卷考試
成績評定方法:本課程的考核是平時成績、實驗成績和期終考試成績相結(jié)合。具體比例為:上課出勤、作業(yè)占20%,實驗占20%,期末考試成績占60%。
其中期未考試總分100分,基礎(chǔ)題占50%,中等難度題占35%,較難題占15%。考試題型主要有:選擇題、填空題、判斷題、簡答題、分析題等。
六、教材及參考書
教材:《軟件需求》(第2版),(美)Karl E.Wiegers著,劉偉琴、劉洪濤譯,清華大學出版社,2004年11月
主要參考書:
[1] 軟件需求管理用例方法,蔣慧等譯,中國電力出版社,2004,5
[2] 掌握軟件需求過程,Suzanne Robertson著,人民郵電出版社,2003,2
[3] 實用軟件需求,Benjamin L.Kovitz著,機械工業(yè)出版社,2004,9
[4] 需求分析,David C.Itay著,清華大學出版社,2003,12
[5] 軟件需求,Lauesen著,電子工業(yè)出版社,2006,9
大綱撰寫人:顏富強、謝小婷
大綱審閱人:羅如為
教學副主任:易葉青
編寫日期:2012.6