任榮
北方民族大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 銀川 750021
隨著我國(guó)軟件產(chǎn)業(yè)的蓬勃發(fā)展,人們對(duì)軟件的質(zhì)量意識(shí)逐漸增強(qiáng),軟件測(cè)試逐漸成為非常具有生命力的行業(yè)。據(jù)統(tǒng)計(jì),在歐美的軟件項(xiàng)目中,軟件測(cè)試的工作量要占到項(xiàng)目總工作量的40%左右,測(cè)試費(fèi)用占到總項(xiàng)目費(fèi)用的約30%,而中國(guó)的很多軟件企業(yè)還遠(yuǎn)遠(yuǎn)達(dá)不到這個(gè)比例。近幾年,我國(guó)軟件測(cè)試行業(yè)的發(fā)展也在逐步趨于成熟,測(cè)試工程師的需求數(shù)量和待遇都在逐步提高。基于這樣的背景,軟件質(zhì)量保證與測(cè)試課程組教師對(duì)該課程的教學(xué)模式不斷地進(jìn)行改革與創(chuàng)新,目的是縮小教學(xué)內(nèi)容與企業(yè)需求之間的差距,提高學(xué)生的實(shí)踐技能和就業(yè)水平。
軟件質(zhì)量保證與測(cè)試是軟件工程專業(yè)的主干課程,作為軟件工程專業(yè)就業(yè)的一個(gè)重要分支,為學(xué)生參與專業(yè)資格考試、進(jìn)入企業(yè)實(shí)習(xí)、規(guī)劃畢業(yè)設(shè)計(jì)以及就業(yè)提供一個(gè)可供使用的軟件測(cè)試專業(yè)知識(shí)體系,因此,要不斷創(chuàng)新教學(xué)模式,更新教學(xué)內(nèi)容,改革教學(xué)方法。通過本課程的學(xué)習(xí),學(xué)生要能理解軟件測(cè)試的理念與發(fā)展,能夠利用軟件測(cè)試的基本原理、方法和技術(shù),進(jìn)行軟件測(cè)試的分析、設(shè)計(jì)與執(zhí)行,積累、養(yǎng)成軟件工程專業(yè)素質(zhì),提高學(xué)生的就業(yè)能力。
軟件質(zhì)量保證與測(cè)試課程教學(xué)改革的目的是要讓教師在教學(xué)過程中采用合適的教學(xué)方法,激發(fā)學(xué)生的主觀能動(dòng)性,促進(jìn)學(xué)生成為學(xué)習(xí)的主體,使學(xué)生主動(dòng)完成學(xué)習(xí)任務(wù)。在教學(xué)初期,教師是教學(xué)的主體,學(xué)生是客體。教師教學(xué)的一個(gè)十分重要的目的是設(shè)法促進(jìn)學(xué)生角色的轉(zhuǎn)變,即逐漸使學(xué)生具有學(xué)習(xí)主動(dòng)性,承擔(dān)起學(xué)習(xí)的主體責(zé)任。
通過本課程的學(xué)習(xí),學(xué)生能深刻理解軟件測(cè)試的基本思想和理論,熟悉不同類型的軟件測(cè)試方法和測(cè)試過程,具備編寫測(cè)試計(jì)劃、設(shè)計(jì)測(cè)試用例、生成測(cè)試報(bào)告的能力,了解行業(yè)中廣泛使用的白盒測(cè)試和黑盒測(cè)試工具,尤其是功能測(cè)試、性能測(cè)試的自動(dòng)化工具,并能熟悉使用典型工具完成常規(guī)測(cè)試任務(wù)。本課程從工程化的角度培養(yǎng)學(xué)生從事軟件測(cè)試的技術(shù)和能力,為學(xué)生將來(lái)從事軟件開發(fā)及軟件測(cè)試工作奠定扎實(shí)的理論和實(shí)踐基礎(chǔ)。
本課程目標(biāo)設(shè)計(jì)如下:通過對(duì)軟件測(cè)試重要性的認(rèn)識(shí),以及對(duì)軟件測(cè)試基礎(chǔ)知識(shí)、測(cè)試方法的掌握,學(xué)生能夠熟練應(yīng)用軟件測(cè)試中的各種方法技術(shù),并能針對(duì)軟件系統(tǒng)完成測(cè)試用例設(shè)計(jì)和編寫;通過對(duì)軟件質(zhì)量定義、軟件質(zhì)量管理體系、軟件質(zhì)量模型以及軟件質(zhì)量保證活動(dòng)等內(nèi)容的理解,學(xué)生能夠針對(duì)軟件系統(tǒng)的不同開發(fā)周期開展相應(yīng)的軟件測(cè)試活動(dòng);面向不同系統(tǒng)和不同階段的測(cè)試需求,學(xué)生能夠選擇合適的軟件測(cè)試技術(shù)及工具,較好地完成軟件質(zhì)量保證工作;通過對(duì)測(cè)試團(tuán)隊(duì)的構(gòu)成、地位、責(zé)任,測(cè)試團(tuán)隊(duì)的管理,優(yōu)秀測(cè)試工程師的必備素質(zhì)等知識(shí)的理解,學(xué)生能夠在開展軟件測(cè)試活動(dòng)時(shí)有效地與客戶、團(tuán)隊(duì)成員進(jìn)行溝通交流。
軟件測(cè)試的目的是檢驗(yàn)軟件系統(tǒng)是否滿足規(guī)定需求,找到實(shí)際執(zhí)行結(jié)果與預(yù)期結(jié)果之間的差別,驗(yàn)證并提高軟件質(zhì)量[1]。軟件測(cè)試的內(nèi)容很豐富,不僅要測(cè)試軟件是否滿足用戶的功能需求,還要測(cè)試系統(tǒng)的性能需求,如系統(tǒng)的安全性、可靠性、并發(fā)性、易用性、效率等。軟件測(cè)試領(lǐng)域比較廣泛,比如金融、通信、電子商務(wù)、游戲、工業(yè)控制、辦公軟件、通用軟件等。不同的軟件業(yè)務(wù)領(lǐng)域,軟件測(cè)試的底層邏輯都是相通的,軟件測(cè)試階段和測(cè)試方法也是類似的,只是各軟件的業(yè)務(wù)應(yīng)用和流程不同,測(cè)試工具有所差異,因此測(cè)試工程師的應(yīng)用領(lǐng)域跨度比較大,發(fā)展空間比較廣闊。
軟件測(cè)試階段包括單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試;軟件測(cè)試常用的方法包括白盒測(cè)試、黑盒測(cè)試、靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試、回歸測(cè)試、冒煙測(cè)試、隨機(jī)測(cè)試等[2]。在某一階段或類型的測(cè)試中,多種測(cè)試方法一般會(huì)被綜合運(yùn)用,以達(dá)到全面測(cè)試的目的。
從很多軟件質(zhì)量缺陷案例中能看到,軟件質(zhì)量缺陷對(duì)用戶的影響小至損失些信息、金錢,大至危及安全,甚至生命。因此,在教學(xué)過程中,教師應(yīng)通過現(xiàn)實(shí)案例的講解,讓學(xué)生意識(shí)到測(cè)試工程師是保證軟件質(zhì)量的最后一道關(guān)卡的捍衛(wèi)者,如果疏忽大意或責(zé)任缺失,就可能造成不可想象的后果。使學(xué)生認(rèn)識(shí)到合格的測(cè)試人員需要具備的能力,如利用合適的測(cè)試方法設(shè)計(jì)測(cè)試用例,熟悉業(yè)務(wù)知識(shí)、程序、文檔等,能使用主流的測(cè)試工具,既從開發(fā)者專業(yè)的角度進(jìn)行測(cè)試設(shè)計(jì),又從用戶的角度執(zhí)行測(cè)試。
本課程的教學(xué)內(nèi)容包括:軟件測(cè)試概述和基礎(chǔ)、從測(cè)試的角度看軟件質(zhì)量保證、軟件缺陷管理、測(cè)試用例的設(shè)計(jì)、靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試、白盒測(cè)試、黑盒測(cè)試、單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試、測(cè)試管理、軟件測(cè)試環(huán)境及自動(dòng)化測(cè)試[3]。實(shí)驗(yàn)內(nèi)容包括:測(cè)試用例寫作、白盒測(cè)試—邏輯覆蓋法、黑盒測(cè)試—等價(jià)類、邊界值法、黑盒測(cè)試—因果圖法、單元測(cè)試、自動(dòng)化測(cè)試[4]。
從以上描述看,軟件測(cè)試的概念和方法很多,要求學(xué)生正確理解并關(guān)注專業(yè)術(shù)語(yǔ),要從系統(tǒng)化的概念出發(fā)學(xué)習(xí)軟件測(cè)試的方法,在積累了許多概念定義后嘗試建立一些關(guān)系,自己設(shè)計(jì)一個(gè)概念知識(shí)結(jié)構(gòu)。軟件測(cè)試的實(shí)踐性也很強(qiáng),因此要求學(xué)生認(rèn)真完成討論、作業(yè)、實(shí)驗(yàn)和課程設(shè)計(jì),在實(shí)踐中加深對(duì)知識(shí)的理解,作業(yè)中的概念定義必須準(zhǔn)確完整、實(shí)驗(yàn)和課程設(shè)計(jì)中采用的設(shè)計(jì)方法、描述方式要有根據(jù)。軟件測(cè)試,設(shè)計(jì)為先,即學(xué)習(xí)軟件測(cè)試要從軟件需求和測(cè)試方法出發(fā),設(shè)計(jì)測(cè)試模型(測(cè)試用例),為測(cè)試執(zhí)行提供依據(jù)。
軟件質(zhì)量保證與測(cè)試課程的教學(xué)模式設(shè)計(jì)如下。
1)多維度教學(xué)。提供多媒體課堂教學(xué)、提問、討論、作業(yè)練習(xí)、實(shí)驗(yàn)、課程設(shè)計(jì)、期末考試、線下、線上等多維度教學(xué)環(huán)節(jié),在扎實(shí)講述傳統(tǒng)軟件測(cè)試?yán)碚摰幕A(chǔ)上,不斷增加現(xiàn)代軟件的測(cè)試?yán)砟詈图夹g(shù),并努力將教師的“教”與學(xué)生的“學(xué)”相結(jié)合,啟發(fā)學(xué)生、挖掘來(lái)自學(xué)生的切實(shí)的感悟。
2)工程案例式教學(xué)[5]。工程原則的首要原則是用戶原則。盡管軟件質(zhì)量的好壞在很大程度上取決于有效的測(cè)試,但用戶群體特征和用戶群體規(guī)模會(huì)直接影響軟件測(cè)試的目標(biāo)選擇。要使學(xué)生立足當(dāng)下,更新觀念,開拓視野,注重實(shí)用。烘托課堂工程氛圍、培養(yǎng)學(xué)生的IT心態(tài)。
3)線上線下混合式教學(xué)。利用MOOC平臺(tái)建設(shè)豐富的線上教學(xué)內(nèi)容,作為線下教學(xué)的重要補(bǔ)充。學(xué)生可以學(xué)習(xí)線上教學(xué)視頻,預(yù)習(xí)和鞏固所學(xué)內(nèi)容,通過自學(xué)MOOC平臺(tái)上教師精心挑選的各種測(cè)試案例(包括文檔和視頻),加深對(duì)所學(xué)知識(shí)的理解,教師主持線上討論,為學(xué)生提供一個(gè)充分發(fā)表評(píng)論和想法的平臺(tái)。
4)融合國(guó)家優(yōu)質(zhì)MOOC資源。在中國(guó)大學(xué)MOOC平臺(tái)上參考借鑒適合該課程的優(yōu)質(zhì)資源,并與本課程內(nèi)容有效對(duì)接,充實(shí)本課程內(nèi)容,使學(xué)生開闊視野和拓展知識(shí)面。
在平時(shí)課堂教學(xué)中,積極探索適合學(xué)生的教學(xué)方法,嚴(yán)格要求學(xué)生,調(diào)動(dòng)其學(xué)習(xí)積極性,提高學(xué)習(xí)效率。課程內(nèi)容理論聯(lián)系實(shí)際,融入適當(dāng)?shù)慕虒W(xué)案例。
講課過程中,為了吸引學(xué)生的注意力,考量學(xué)生對(duì)知識(shí)點(diǎn)的掌握程度,教師有針對(duì)性地設(shè)置一些問題,并向?qū)W生提問,將學(xué)生回答問題的情況計(jì)入其平時(shí)成績(jī),這也是隨機(jī)點(diǎn)名的好辦法。
在線上補(bǔ)充優(yōu)質(zhì)學(xué)習(xí)內(nèi)容,如教學(xué)視頻、案例視頻或文檔等,并發(fā)布針對(duì)線上學(xué)習(xí)內(nèi)容的討論,要求學(xué)生發(fā)表評(píng)論或觀點(diǎn),督促學(xué)生利用課余時(shí)間多學(xué)多看多想,使學(xué)生多了解課堂以外的世界。
針對(duì)需要重點(diǎn)掌握的知識(shí)點(diǎn),除了線上線下結(jié)合的教學(xué)環(huán)節(jié),教師還在MOOC平臺(tái)上布置設(shè)計(jì)性較強(qiáng)的作業(yè)題目,學(xué)生在網(wǎng)上提交作業(yè)后,教師要認(rèn)真批改,對(duì)作業(yè)問題較多的學(xué)生進(jìn)行單獨(dú)輔導(dǎo)。
在每次實(shí)驗(yàn)中,合理地安排實(shí)驗(yàn)題目,設(shè)置設(shè)計(jì)性實(shí)驗(yàn),充分調(diào)動(dòng)學(xué)生的探索興趣。布置的實(shí)驗(yàn)要求學(xué)生自主完成,每次實(shí)驗(yàn)課,對(duì)每個(gè)學(xué)生的每次實(shí)驗(yàn)都進(jìn)行一次“小答辯”,每個(gè)學(xué)生都要講解實(shí)驗(yàn)內(nèi)容,之后教師進(jìn)行提問,通過學(xué)生的講解和回答,給出該學(xué)生本次實(shí)驗(yàn)的綜合成績(jī)。最后,平均學(xué)生的六次實(shí)驗(yàn)成績(jī),得到該學(xué)生最終的實(shí)驗(yàn)成績(jī)。
在平時(shí)課堂教學(xué)中,運(yùn)用啟發(fā)式、工程案例式原則,在課堂上通過各種教學(xué)方法(如講解、示范、提示等)教授課程內(nèi)容,使學(xué)生接受并內(nèi)化所學(xué)知識(shí)。講課過程中,為了吸引學(xué)生的注意力,考核學(xué)生對(duì)知識(shí)點(diǎn)的掌握程度,有針對(duì)性地設(shè)置一些問題提問學(xué)生,根據(jù)學(xué)生的回答情況,計(jì)入其平時(shí)成績(jī)。實(shí)施共同解決問題的教學(xué)形式,通過師生的平等對(duì)話與討論來(lái)共同思考、探究和解決問題,由此使師生教學(xué)相長(zhǎng),共同獲得知識(shí)技能和發(fā)展能力。
補(bǔ)充新穎實(shí)用的線上教學(xué)材料,使學(xué)生充分利用課余時(shí)間學(xué)習(xí),注重線上線下教學(xué)的有機(jī)結(jié)合,這都有助于學(xué)生注重平時(shí)學(xué)習(xí)的積累,而不是考試時(shí)臨陣磨槍。
合理安排實(shí)驗(yàn)內(nèi)容,使用成熟的測(cè)試工具完成設(shè)計(jì)性實(shí)驗(yàn),充分調(diào)動(dòng)學(xué)生的主觀能動(dòng)性和實(shí)踐積極性。重視每次實(shí)驗(yàn)的完成和考核,除了提交實(shí)驗(yàn)報(bào)告以外,還要進(jìn)行現(xiàn)場(chǎng)提問和考查,讓學(xué)生在實(shí)驗(yàn)課上既動(dòng)手又動(dòng)腦。
本課程的考核采用多元評(píng)價(jià)體系,強(qiáng)調(diào)對(duì)學(xué)生專業(yè)能力的考核和綜合素質(zhì)的評(píng)價(jià)[5]。不僅僅用期末一張?jiān)嚲韥?lái)考核評(píng)價(jià)學(xué)生的學(xué)習(xí)效果,最終的成績(jī)由過程性考核和期末考試構(gòu)成,其中過程性考核占40%,期末考試占60%。平時(shí)的過程性評(píng)價(jià)主要是考核學(xué)生的學(xué)習(xí)態(tài)度、實(shí)踐能力、團(tuán)隊(duì)協(xié)作能力以及對(duì)階段性知識(shí)的掌握情況,依據(jù)課程進(jìn)度,要求學(xué)生完成作業(yè)、實(shí)驗(yàn)、課程設(shè)計(jì)以及其他教學(xué)環(huán)節(jié)。期末考試的試題設(shè)計(jì)主要考核學(xué)生對(duì)知識(shí)綜合運(yùn)用的水平,以及針對(duì)具體問題設(shè)計(jì)解決方案的能力。在引入課程思政元素方面,本課程的教學(xué)內(nèi)容中,介紹國(guó)際國(guó)內(nèi)軟件測(cè)試行業(yè)的發(fā)展及前景,并且重點(diǎn)強(qiáng)調(diào)我國(guó)信息化產(chǎn)業(yè)的發(fā)展,以及對(duì)信息化人才尤其是軟件測(cè)試工程師的需求。
本課程還講解了軟件測(cè)試團(tuán)隊(duì)的構(gòu)成、地位、責(zé)任、測(cè)試團(tuán)隊(duì)的管理,以及優(yōu)秀測(cè)試工程師的必備素質(zhì),增強(qiáng)學(xué)生的團(tuán)隊(duì)和責(zé)任意識(shí)。
教學(xué)改革不是一蹴而就的,新的軟件測(cè)試方技術(shù)在不斷涌現(xiàn),這就要求教師要與時(shí)俱進(jìn),教學(xué)內(nèi)容和教學(xué)方法的改進(jìn)要滿足社會(huì)和企業(yè)的需求[6]。
軟件質(zhì)量保證與測(cè)試是一門實(shí)踐性較強(qiáng)的課程,涉及的概念和方法較多,重點(diǎn)難點(diǎn)突出,學(xué)生掌握該門課程需要將所學(xué)知識(shí)應(yīng)用到實(shí)踐中。該門課程也是針對(duì)提升學(xué)生就業(yè)能力的一門改革課程,后續(xù)還需教師不斷投入更多精力,完善課程建設(shè),提升該門課程的教學(xué)水平。
本課程在持續(xù)不斷改進(jìn),后續(xù)教學(xué)過程中應(yīng)注意學(xué)生的接受和吸收能力,注重學(xué)生學(xué)習(xí)的差異性,提升其對(duì)知識(shí)的應(yīng)用能力。
在以后的教學(xué)中將繼續(xù)完善MOOC教學(xué)平臺(tái)資源,進(jìn)一步引導(dǎo)和提升學(xué)生自主學(xué)習(xí)的能力。后續(xù)的教學(xué)中要不斷探討如何落地工程教育認(rèn)證的核心理念,即如何體現(xiàn)以學(xué)生學(xué)習(xí)為中心,以及OBE(Outcome Based Education)教育理念在本課程中如何實(shí)施,進(jìn)一步提升教學(xué)效果,為提高學(xué)生專業(yè)素養(yǎng)、實(shí)踐水平和就業(yè)能力打下堅(jiān)實(shí)的基礎(chǔ),為建設(shè)本科一流課程邁出堅(jiān)實(shí)的一步。