周昕楊森朱濤
(杭州職業技術學院 信息電子系,浙江 杭州 310018)
以職業崗位能力設置課程的課程改革理念和以職業人專業技能和綜合素質培養為工作任務的項目課程模式,現已成為我國高職院校課程改革與建設的重點和突破口。如何針對職業崗位能力和高職學生特點,進行有效的、系統的教學設計,如何將高職教育教學改革的成果真正運用到教學實施當中,進而提高教學效率和教學質量,使學生獲得良好的發展成為制約高職院校教育教學改革的一個瓶頸,也是高職教師面臨的一個亟待解決的問題。本文從課程整體設計的理念與思路、課程目標設計、課程內容設計、教學模式設計、第一次課設計和課程考核方案設計等方面對高職《軟件測試基礎》這門課程的整體設計進行了初探,為職業院校教師進行課程的教學設計和實施提供參考。
軟件測試設計和實施能力是軟件技術專業學生必須具備的核心能力之一,軟件測試基礎理論的掌握也是學習后續軟件測試相關課程的基礎。軟件測試是軟件技術專業學生就業后從事的主要崗位之一。《軟件測試基礎》課程的功能是培養學生熟練掌握軟件測試過程中的軟件開發需求和設計書分析、測試計劃制定、測試用例設計、測試執行、缺陷跟蹤管理、測試分析總結等各個環節的工作方法,同時掌握軟件測試的基本理論。
《軟件測試基礎》課程旨在使學生掌握軟件測試的基礎知識,培養學生從事軟件測試工作的基本能力。通過任務引領型的項目活動,使學生在認知和實際操作上,對軟件測試有一個整體認識,并掌握進行軟件測試的基本技術和應用技能。倡導學生在“做中學”,培養學生的工程規范和團隊合作精神,為后續課程項目實戰和綜合項目開發中的軟件測試工作奠定良好的基礎。本課程的技能目標、知識目標及態度目標如下:
1)能夠運用配置管理工具VSS進行軟件配置管理;
2)能夠正確理解ATM機模擬系統軟件需求,確定系統可測試的需求和測試側重點;
3)能夠參與確定項目測試階段的目標和策略,制定測試計劃;
4)能夠執行測試用例設計及管理;
5)能夠正確執行測試,正確記錄測試結果;
6)能夠使用單元測試工具NUnit對系統進行自動單元測試;
7)能夠運用缺陷跟蹤管理工具對所發現缺陷進行跟蹤管理;
8)能夠對軟件缺陷進行分析總結形成測試分析報告。
1)了解軟件測試的概念和目的;
2)了解軟件測試方法和策略;
3)了解軟件測試人員角色分工;
4)了解軟件配置管理;
5)熟悉項目評審流程;
6)熟悉測試需求分析方法;
7)了解軟件測試計劃內容;
8)掌握測試用例設計方法;
9)掌握各測試階段執行過程;
10)掌握缺陷跟蹤管理過程;
11)掌握測試文檔編寫方法;
12)了解自動化測試方法和工具。
1)培養良好的交流溝通能力;
2)培養嚴謹的工作態度和堅韌不拔的性格;
3)培養自主、開放的學習能力;
4)培養團隊協作意識。
《軟件測試基礎》課程在項目及模塊設計上,依據各項工作任務的過程來進行。課程以ATM機模擬系統這個小型軟件項目的測試過程為工作目標,課程本身就是一個完整的項目。其中“軟件配置管理(測試相關)”這個學習項目,著重培養學生項目配置管理的執行能力。“需求及設計書的分析理解”這個學習項目,著重培養學生對待測試軟件項目需求的理解能力,為后續測試計劃制定項目提供內容。“測試計劃制定”這個學習項目,著重培養學生測試計劃的制定能力,同時對軟件測試過程、測試策略、測試環境搭建和風險管理等軟件測試基礎內容有一定程度的了解。“測試用例設計”學習項目,著重培養學生運用各種測試方法進行測試用例設計的能力以及用例設計工具的使用能力。“測試執行”學習項目,著重培養學生使用各種測試方法進行測試的執行能力。“缺陷跟蹤管理”學習項目,著重培養學生缺陷報告的陳述能力以及缺陷管理工具的使用能力。“測試分析總結”學習項目,著重培養學生對軟件缺陷的分析能力以及測試分析總結報告的書面總結能力。整個課程項目設計以完成ATM機模擬系統小型軟件項目的測試過程為線索來進行,必備的測試知識融入到相應的工作任務中學習。在學習知識和技能的同時,也培養了學生解決實際問題的工作方法和職業態度。
《軟件測試基礎》課程采用分組教學模式,3-5名學生組成一個測試小組,每組設一名組長,組員工作任務由教師分工。教學場地采用全機房方式,課內教學主要包括內容介紹、示例講解、學生實踐、教師指導、答疑等內容,本項目工作任務規模需要學生課外投入時間完成。表1是測試需求分析工作的小組任務安排。

表1 測試需求分析工作任務安排

表2 學業評價量化表
自我介紹,與學生進行溝通,了解學生對先修課程的學習基礎,介紹《軟件測試基礎》課程的學習目的和學習方法。
提問:這些軟件錯誤都是由于什么原因產生的?
得出結論:軟件故障問題往往會造成相當嚴重的損失和災難。這些問題都與軟件測試有關,軟件測試是軟件開發過程的重要一環,讓學生意識到本課程的重要性;告知學生,本課程的總體安排、教材的處理,上課的方式和要求,明確教學目標—完成ATM模擬系統軟件項目的測試工作。
第一次課要告知學生每堂課都有一定的工作任務,平時按時到課10%,提問回答積極5%,項目日報10%,課堂項目跟上老師進度15%,注意平時積累就已經有了40%的成績;貫穿項目的完成占60%,按照評分標準達到分層次得分,就可以完成課程的學習了。借助課程輔助教學系統,每天的計劃和總結日報有助于養成良好的PDCA(Plan-Do-Check-Action)習慣。
《軟件測試基礎》課程的項目是“ATM模擬系統軟件項目測試”,包括軟件開發需求和設計書分析、測試計劃制定、測試用例設計、測試執行、缺陷跟蹤管理、測試分析總結等學習項目。本課程項目將基本遵循軟件測試生存周期,嚴格按軟件測試流程完成項目。本節課將介紹軟件測試流程,進行項目角色分工,對軟件配置工具VSS進行演示操作,學生模仿,分組建立各小組的項目配置庫。
《軟件測試基礎》課程實踐性強,學習效果平時可測。考核以課堂表現、課后訓練為輔,全程項目工作任務為主的形式。具體比例如下。
(1)平時成績40%:包括考勤10%,課堂提問5%(使用提問程序,保證每個同學都會被提問到至少一次),項目日報10%,課堂項目完成度15%。
(2)項目工作任務60%:項目工作任務貫穿于整個學期,每次課完成的工作產品構成整個軟件測試工作產品。
項目工作任務成績將通過完成項目過程任務達到,每位學生的工作任務由教師安排,每次盡可能安排不同的項目子任務,可以通過項目日報和課堂提問交流等方式控制學生間的相互抄襲現象。如發現非自行完成的,適度扣分。
本課程的學業評價量化標準如表2。
[1]錢銀中.關于《軟件測試》課程教學改革的若干措施及效果[J].職業教育研究,2007(12).
[2]龔宇輝.軟件測試課程教學改革研究[J].教育與職業,2010(24).
[3]黎華,劉柳.如何進行高職課程的整體設計和單元設計[J].廣西職業技術學院學報,2012(10).
[4]徐國慶.職業教育項目課程開發指南[M].華東師范大學出版社,2009,11.
[5]戴士弘,畢蓉.高職教改課程教學設計案例集[M].清華大學出版社,2007,11.