楊晴虹 張莉


摘要:圍繞軟件質量管理與測試專業培養目標,在分析課程體系建設、學生實踐實習等各個環節的基礎上,論述軟件質量管理和測試專業課程體系構建及應用實踐,探討質量管理和軟件測試人才培養的教學模式。
關鍵詞:工程碩士;軟件測試;質量管理;課程體系
隨著軟件產業的發展及應用需求的不斷提高,軟件產品的質量控制與質量管理正逐漸成為軟件企業生存與發展的核心,軟件質量問題越來越受到政府相關部門、軟件企業、軟件用戶的關心與重視。目前軟件質量是制約我國軟件產業發展的主要障礙之一,需要加快制定工業軟件安全評測和監理的標準規范,確保工業軟件應用安全和質量。軟件測試是保證軟件質量的重要手段,軟件質量管理和軟件測試成了IT就業的新亮點。由于我國企業對于軟件測試技術在整個軟件行業中的重要作用認識較晚,這方面的專業技術人員在供需之間存在著巨大缺口。針對目前國內質量管理和軟件測試人才缺乏的現狀,北京航空航天大學軟件學院開設了培養質量管理和軟件測試人才的軟件工程碩士專業,緊密圍繞質量管理和軟件測試領域需求目標,突出理論與實踐教學相結合,體現了高度定制化、專業化的特色。
1.軟件質量管理與測試專業人才培養目標
軟件質量管理與測試專業人才培養目標:使學生掌握軟件工程相關理論和技術,熟悉主流軟件開發平臺和軟件測試工具與方法,熟悉軟件測試管理和外包服務的業務流程,具備較強的軟件開發、軟件測試和綜合應用能力,同時,積極開展軟件在領域和行業的交叉及國際化合作,培養特定領域的軟件質量管理與測試人才。
2.課程體系設置
一個專業的課程設置在保證必要的專業理論基礎上,還應具有廣泛適應性和相對穩定性,具有先進性、系統性、寬廣性和創新性的特點。軟件工程碩士軟件質量管理和測試專業的課程設置分為必修課和選修課兩大類。
必修課分為公共基礎課、專業實踐課和專業方向基礎課。公共基礎課主要培養學生的世界觀與基本素養,專業實踐課培養學生進行工程實踐的能力,專業方向基礎課讓學生掌握基本的工程設計、開發與管理的理論、方法與技術。選修課程根據專業技術的發展和市場的變化被定期評估后,可進行增加和修改設置。
課程成績一般采用百分制,軟件工程碩士培養課程采用學分制,碩士研究生畢業至少需修滿40學分。軟件質量管理與測試專業工程碩士培養學分分配如表1所示。
根據培養方案要求,軟件質量管理與測試專業的課程設置分6層,公共基礎課、專業基礎課、專業實踐課、專業技術課、專業選修課和工業實踐。軟件質量管理與測試專業課程體系框架如表2所示。
公共基礎課包括政治與倫理學、工程數學(包括數理統計和模糊數學)、英語、科技寫作與溝通技巧,主要培養學生的價值觀和基本職業素養。
軟件質量管理是一套復雜的系統工程,軟件質量管理與測試專業的專業基礎課共設置6門課,分別為軟件工程方法、軟件工程過程、軟件需求與系統建模、軟件質量管理、軟件度量、軟件測試項目管理。專業基礎課使學生在學習系統需求分析的基礎上,學會軟件系統建模,掌握基本的軟件工程設計、軟件開發與管理的理論、技術和方法。在此基礎上,軟件質量管理是質量管理學和軟件工程學的結合,研究軟件開發各個階段的質量管理的組織、技術、方法和活動。開設軟件質量管理課程主要培養學生軟件質量管理的思想,提高學生軟件質量保證和質量管理的專業能力;軟件度量是良好軟件工程的一個重要組成部分,是軟件質量管理的基礎,它有助于了解和控制軟件開發中的各項活動,有助于軟件過程和產品的改進。通過學習軟件度量,能夠使學生了解和掌握軟件度量的基本知識和技術,提高理解、預測、評估、控制和改善軟件過程和軟件產品質量的能力。軟件測試項目管理課程使學生掌握測試項目的組織、過程、資源管理、進度、風險、質量、配置和文檔管理,使學生掌握軟件測試項目管理的特點及其和一般軟件項目管理的不同之處。
專業實踐課包括軟件測試工程實踐(一)和軟件測試工程實踐(二),培養學生工程實踐能力。開設專業方向實踐課是為了讓學生掌握基本的工程設計、開發與管理的理論、方法與技術。軟件測試工程實踐(一)是對學生進行軟件開發測試基本技能訓練,培養學生高質量程序測試的觀念。通過大量的實例強化訓練和有針對性的討論輔導,使學生在熟練掌握基本編程語言技能的同時,理解軟件測試的基礎知識,關注軟件質量,軟件的正確性、易用性、可讀性、可擴展性、可復用性等;軟件測試工程實踐(二)通過團隊合作,完成一個完整的測試項目,通過團隊合作的形式完成一個軟件測試項目整個過程,掌握軟件測試的項目管理、團隊管理、過程管理,增強學生實際測試項目案例知識和技能。
軟件測試技術課包括8門課,分別為軟件測試技術、軟件過程改進、軟件測試分析與設計、軟件測試工具與實踐、性能測試方法與實踐、軟件可靠性測試與實踐、軟件安全測試與實踐、高級語言程序設計。軟件測試技術課使學生了解軟件測試的理論和測試策略,以及實用軟件測試技術及相關的軟件質量保證方法,并對軟件測試的全過程有所掌握;軟件測試分析與設計課程使學生掌握測試需求分析、用例編寫及測試過程。軟件測試工具與實踐將是一門實踐性很強的課程,將以IT行業現狀、背景為基礎,全面介紹目前軟件測試行業測試工具的整體應用情況,同時盡可能結合市場主流的軟件測試工具以及實際的項目案例進行教學講解,使學生全面地認識軟件測試工具、了解熟悉主流的軟件測試工具并且能初步利用介紹軟件測試工具解決實際項目中遇到問題的能力。通過軟件性能測試技術及實踐讓學生在掌握傳統的測試技術和測試工具使用的基礎上,強化軟件功能、性能、易用性等方面測試,關注軟件用戶使用和用戶體驗方面的質量指標,掌握性能測試技術,包括人工測試技術和自動化測試技術等。但是隨著軟件應用的廣泛度和復雜度的快速拓展和發展,軟件可靠性、軟件安全日益成為各國政府、國防科研單位、金融、電信等領域更加關注的質量問題。開設軟件安全測試與實踐課程,主要培養計算機領域學生了解軟件漏洞產生的根源,培養軟件安全編程和對源代碼進行漏洞分析的能力,讓學生掌握軟件安全測試的過程、方法。軟件可靠性測試目前還處于初期的探討和研究階段,軟件可靠性測試與實踐這門課程主要讓學生掌握軟件可靠性測試的概念,測試過程及大型軟件可靠性測試項目案例分析和設計。
專業選修課根據軟件技術的發展和市場的變化定期開設,可根據需要進行增加、刪除或修改。國際化軟件外包與測試課程是為了讓學生了解軟件外包的項目管理過程,了解軟件國際化和本地化測試已成為軟件測試重要的組成部分,期望學生了解軟件全球化(Globalization)、國際化(Internationalization)和本地化(Localization)的基本概念和知識,初步掌握軟件國際化和本地化測試的內容和方法。云測試技術與實踐使學生掌握云計算基礎知識(虛擬化、群集、綠色能源等),掌握壓力測試的云端化和測試服務的云端化,結合HP的敏捷測試分析和微軟測試云方案例,學習云測試的案例分析和設計。
軟件工程碩士研究生在修完有關課程并取得規定的35學分(不包含實習與論文的5學分)后,應通過學院推薦或自找企業的方式進入相關企業進行一年以上的企業實習,直接參與企業實際的軟件測試項目實踐,完成必要的測試項目的需求分析、測試方案設計、測試腳本編寫(測試系統開發)、測試實施、結果分析等工作,并在企業工程實踐背景基礎上完成學位論文的撰寫。
3.結語
針對目前國內質量管理和軟件測試人才缺乏現狀,北京航空航天大學軟件學院在總結企業項目合作的基礎上,以培養具備不同專業背景、有市場觀念的軟件工程管理、質量管理及軟件經營等復合型軟件人才為目標,開設了全國第一個專門培養質量管理和軟件測試人才的軟件工程碩士專業,并在課程設置、師資配備、教學內容、學習方式、論文設計等方面圍繞質量管理和軟件測試領域的最新發展趨勢,突出理論與實踐教學相結合,探索了學校和企業聯合培養的教學模式,縮短了學院培養和企業人才需求的差距,推動了軟件質量技術方法與質量管理水平、產品質量水平與服務質量水平實現同步提高。
參考文獻:
[1]中華人民共和國工業和信息化部,軟件和信息技術服務業“十二五”發展規劃[EB/OL],(2012-04-06)[2013-01-10],http://www.miit.gov.cn/n11293472/n11293832/n11293907/n11368223/14542600.html.
[2]張謹,軟件質量管理指南[M]。北京:電子工業出版社,2009:1-3.
[3]SQuBOK策定部會,軟件質量知識體系指南[M],楊根興,譯,北京:清華大學出版社,2011:3-6.
[4]Pfleeger S F,Fenton N E,軟件度量[M],楊海燕,譯,北京:機械工業出版社。2004:1-4.
[5]中華人民共和國工業和信息化部,工業產品質量發展“十二五”規劃[EB/OL],(2011-11-14)[2013-01-10].http://kjs.miit.gov.cn/n11293472/n11295040/n11298163/14320837.html.
(見習編輯:劉麗麗)