2.2 構造功能列表
本階段的基本目標是確定所有用於支持需求的功能列表。主要任務包括:
⑴ 組建功能分解小組;
⑵ 建立功能列表。
2.3 根據功能製定計劃
本階段的基本目標是產生一個開發計劃。項目經理、開發經理和主程序員根據功能的相關性、開發小組的工作負荷以及功能的複雜性,計劃實現功能的優先級。
該階段的主要任務包括:
⑴ 組建計劃小組;
⑵ 確定開發優先級;
⑶ 為主程序員分配功能集;
⑷ 為開發人員分配類。
2.4 根據功能進行設計
本階段的基本目標是每一個功能集都產生一個功能的設計包。一定數量的功能通過分配給主程序員被列入開發時間表。主程序員從分配給他的任務中選出功能進行開發。
該階段的主要任務包括:
⑴ 成立功能小組;
⑵ 開發順序圖;
⑶ 精化對象模型;
⑷ 編寫類和方法的序言。
2.5 根據功能進行開發測試
該階段開發人員以特征為單位進行開發、單元測試,主程序員進行代碼審查,對通過審查的代碼進行構建。
該階段的主要任務包括:
⑴ 實現類和方法;
⑵ 代碼檢查;
⑶ 單元測試;
⑷ 構建。
3 教學效果
基於FDD的實訓方法已在我們學院連續實施了三個學期,在ASP.NET課程的及格率、學生的評價等方麵均有所提高。另外,因為軟件工程專業學生的畢業設計題目絕大多數也是完成某軟件係統的開發,所以本課程成績高的學生,其畢業設計的成績一般也較高。
4 結束語
傳統教學法已經不能適應ASP.NET課程實踐性強的特點,為此探討了FDD方法在ASP.NET課程實訓中的應用,提出了一種較為實用的實訓教學方法。該方法將實訓分為五個階段:開發總體模型、構造功能列表、根據功能製定計劃、根據功能進行設計、根據功能進行開發測試。經實踐檢驗,使用該方法後,學生的學習成績得到了提高,畢業設計成績也相應提高。在取得效果的同時,我們也發現了一些現象,例如在開發小組內部,有些學生自覺性較差,基本依靠同組的其他學生,如何調動並激勵這些學生的積極性,是我們以後要重點解決的問題。
參考文獻:
[1] 教育部軟件工程學科課程體係研究課題組.中國軟件工程學科教程[M].
清華大學出版社,2005.
[2] Stephen R. Palmer, John M. Felsing著,熊煥宇,王峰,彭設強譯.特征
驅動開發方法原理與實踐[M].機械工業出版社,2003.
[3] Schwaber K, Beedle M. Agile Software Development With Scrum
[M].Prentice Hall,2001.
[4] Kent Beck. Extreme Programming Explained:Embrace Change
Pearson[J].Addison-Wesley Professional,2003.
[5] Kniberg H著,李劍譯.硝煙中的Scrum和XP—我們如何實施Scrum[M].
清華大學出版社,2011.