蘇晶
【摘 要】近年來,軟件行業的蓬勃發展,使得軟件質量日益受到關注,而軟件測試是軟件質量保證的基礎。在深入分析了目前高校軟件測試課程在考核方式上所存在問題后,本文詳細闡述了考試改革的設計方案,該方案的初步構建和實施,對于提高學生的工程實踐能力及職業素質具有重要意義。
【關鍵詞】軟件測試;考試改革;工程實踐
中圖分類號: TP311.53 文獻標識碼: A 文章編號: 2095-2457(2018)26-0074-002
DOI:10.19694/j.cnki.issn2095-2457.2018.26.031
Reform and Exploration of Software Testing Examination Oriented by The Cultivation of Students' Engineering Practical Ability
SU Jing
(Shandong University of Technology,Zibo Shandong 255049,China)
【Abstract】In recent years, with the vigorous development of software industry,software quality has attracted more and more attention, and software testing is the foundation of software quality assurance.After thoroughly analyzing the problems existing in the examination methods of software testing courses in colleges and universities,this paper elaborates the design scheme of the examination reform, and the preliminary construction and implementation of the scheme are of great significance to improve students engineering practice ability and professional quality.
【Key words】Software testing; Examination reform; Engineering practice
0 前言
軟件行業的蓬勃發展,使得保證產品質量,提高用戶滿意度成為業界共同關注的首要任務,一方面推動了軟件測試行業的快速發展,市場對高素質、專業化的軟件測試人才的需求量急劇增加;另一方面,為了提高企業自身的競爭力,對軟件開發人員的質量管理和質量保證意識提出了更高的要求。作為人才培養基地的高校,在培養具備工程實踐能力的測試人才方面任重而道遠。
1 教學改革的目的和意義
軟件測試課程傳統考核方式存在以下弊端:
(1)考核方式過于單一。通過卷面考試形式完成對學生的考核任務,重結果而輕過程,學生往往通過突擊復習或死記硬背應付考核,造成學生對于所學知識不能全面理解,無法解決實際問題。
(2)考核內容重理論而輕實踐。卷面考試內容大多局限于教材中的理論知識,及與教材示例類似的設計題目,缺乏對學生工程實踐能力、團隊協調能力等綜合職業素質的考查,造成學生對課程過程和實踐環節關注度不夠,無法理解軟件測試在提高產品質量過程中所發揮的作用。這種教育模式與社會對軟件質量保證人才的需求脫節,不能滿足創新型應用人才培養的要求。
(3)缺乏考核反饋。由于采用期末終結性的考核方式,受限于課程學時和班級規模,授課過程中教師與學生互動交流不夠,加之本課程知識銜接緊密,如果學生在學習過程中遇到的問題沒有得到及時的解決和反饋,則勢必影響學生學習知識的積極性和信心,對學生的工程實踐能力培養也會產生不利的影響。
2 教學改革方案
2.1 改革總體思路和預期目標
軟件測試課程考試改革的總體思路是加大過程性考核比重,采用靈活多樣的考核方式,制定客觀、公平的成績評定標準,形成良好的過程性考核反饋機制,此外采用項目驅動模式,將考核內容及標準與工程實踐相結合,提高學生的綜合能力和職業素質。
軟件測試課程考試改革的預期目標如下[1]:
(1)考核內容、方式多樣化。將平時成績和過程性考核成績納入考核評價體系中,并適當增加比重。平時成績由課堂出勤率、回答問題情況及案例參與度等綜合評定,過程性考核成績由自主完成實驗報告的質量、實踐環節解決方案等綜合評定。通過逐步將考評側重點向過程性考核轉變,督促學生積極主動的學習。
(2)與工程實踐相結合。過程性考核采用分組、分階段任務的形式展開。實踐內容需實現軟件測試知識體系的全方位覆蓋。
(3)實踐過程模擬公司項目組的工作模式,根據崗位角色,安排3-5人為一個小組,在組內由組長負責任務分配、進度控制和質量監督,培養學生團隊協調能力和解決問題能力。
(4)評價方式多元化。過程性考核中將實踐任務分配至各小組,對學生實踐成績的評定需綜合考慮整個小組的任務完成情況、學生的態度和表現、在小組內部發揮的作用等方面,并根據情況增加小組集體答辯或小組互評環節,增強學生團隊合作意識和集體榮譽感。
(5)形成切實有效的反饋機制。軟件測試課程知識銜接緊密,為了保證學生學習知識的連貫性,教師需及時對學生定期提交的階段成果給予批改和反饋,在課堂上對于共性問題進行有針對性的講解,并于網絡教學平臺上建立答疑討論區,及時解答學生在學習和實踐過程中的疑問。同時,允許學生依據反饋意見對階段性成果進行修改和完善,以加深學生對于所學知識的全面理解。
2.2 過程性考核內容設計
依據軟件測試的知識體系,該課程的學習可以劃分為軟件測試技術、軟件測試階段及軟件測試生命周期三部分。軟件測試分為四個階段,每個階段完成不同的測試目標和任務,從而采用不同的測試技術及工具。另外,每個階段又都包含一個完整的測試生命周期[2],如表1所示。
表1 軟件測試知識及實踐任務劃分
對過程性考核任務的分解依據上述劃分制定。由于課程學時有限,實踐任務主要依據軟件測試生命周期管理的一般過程開展,基本實現對測試技術及測試階段的覆蓋。
過程性考核的內容主要分為以下三部分:
(1)測試技術部分。通過基礎性實踐任務熟練掌握黑盒及白盒測試用例設計的相關技術及方法。
(2)測試實踐部分。通過測試需求分析、測試計劃制定、測試用例設計、測試用例執行、缺陷跟蹤管理等實踐任務掌握軟件測試生命周期管理的一般過程。
(3)測試知識擴展部分。通過課下收集資料,撰寫開放式研究性論文拓展所學知識,加深對于軟件測試技術、學科及行業的全面理解。
2.3 過程性考核流程設計
過程性考核采用分組、分階段任務的形式展開。基于軟件測試課程的工程化特性,階段成果確定為各項測試報告及測試腳本。學生按3-5人自愿組成測試組,選定組長,并依據各階段任務,由組長對組員工作給出精細的分工和協調[3]。
過程性考核改革分為如下六個階段:
(1)必要的準備工作
任課教師選擇待測項目,整理需求規格說明書和被測源代碼,搭建測試環境,整理各項測試報告的模板及撰寫要求,制定各測試階段的具體任務要求和評價標準。
學生需按照要求劃分小組,并在整個任務實施期間盡可能保持一致。
(2)任務分發、完成及提交
每個階段開始時,教師將該階段的任務要求及評價標準分發給各組。
組長參照各階段任務,在教師輔助下,對任務進行精細分工,形成工作量均等的任務項集合。組長將任務項分配至組內成員,并在階段時限內組織和協調任務的完成。
最后組長負責將組員的成果產物匯總整理,提交給任課教師。同時提交小組成員在該階段工作完成情況的互評成績。
(3)初次評價
任課教師對每個階段每組提交的報告進行評審。評審成績分為:小組成績和個人成績。之后將初評成績盡快反饋給各小組。
(4)反饋答疑
為了保證學生學習知識的連貫性,除了將初評成績予以反饋以外,需將批改情況及存在問題一并反饋。另外,在課堂上對于共性問題進行有針對性的講解,并于網絡教學平臺上建立答疑討論區,及時解答學生在學習和實踐過程中的疑問。
(5)任務項迭代及二次評價
在教師反饋初評成績之后的一周內,為任務項迭代周期。該段時間內,學生如對自己的成績不滿意,則可根據教師的要求及反饋意見,對之前完成的任務進行修改完善,并再次提交測試報告。如對成績或批改情況存在疑問,則可向教師提出復審。
教師對再次提交或參與復審的測試報告進行二次評價。二次評價成績為該階段小組及組員的最終成績。
(6)給出階段成績
教師反饋初評成績一周后,綜合小組成員間的互評成績,確定該階段每個小組及學生的最終考核成績,并反饋給各小組。
2.4 終結性考核方案設計
終結性考核采用期末卷面筆試方式,對學生所學理論知識進行綜合測試和考核。
試卷命題需兼顧基礎知識考核與綜合能力考核兩方面。以傳統的選擇、填空、簡答等題目實現對基礎知識掌握程度的考核,以綜合性案例分析、測試用例設計等題目實現對知識運用及分析解決問題能力的考核。
基礎知識考核題目占成績的40%左右,綜合能力考核題目占成績的60%左右。
3 課題實施過程與效果
2015年,隨著我校軟件測試實驗室的建成及投入使用,課題組成員著手對課程考核方式進行改革。2017年,改革方案初步應用于計科卓越班的教學中,采用了終結性考核+過程性考核+平時表現的綜合考核形式,各部分所占比例分別為40%、50%和10%,總體實施效果良好。
學生普遍反映通過過程性考核,增強了學習的積極性和主動性;通過案例分析引導、案例實戰、限時提交與及時反饋等方式,熟悉了軟件測試的基礎理論、方法及測試用例的分析、設計和實施過程,提高了動手實踐能力和文檔撰寫能力;通過分組分階段完成各項實踐任務,提高了團隊合作和交流溝通能力,能夠實現將所學知識與工程實踐的初步結合。
4 總結
軟件測試考試改革以學生工程實踐能力培養為導向,采用模擬公司項目組的工作模式開展實踐任務,使學生能夠更加全面的掌握軟件測試的方法、技術和一般過程,將理論與實踐緊密聯系起來,培養學生動手實踐能力和獨立解決問題的能力。在后續的研究與實踐中,將嘗試與其他課程進行有效整合,使學生將所學知識進一步融會貫通,并逐步形成整個軟件工程課程體系的全局觀。
【參考文獻】
[1]向軍.應用型高校計算機類專業軟件測試課程教學改革[J].計算機教育,2016,(6):147-150.
[2]蔡建平.現代軟件測試基礎[M].北京:清華大學出版社, 2014:175-179.
[3]楊彬.能力導向的軟件測試課程教學改革[J].計算機教育,2017,(10):151-155.