公務(wù)員期刊網(wǎng) 論文中心 正文

計算機(jī)專業(yè)復(fù)合型人才培養(yǎng)路徑探究

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機(jī)專業(yè)復(fù)合型人才培養(yǎng)路徑探究范文,希望能給你帶來靈感和參考,敬請閱讀。

計算機(jī)專業(yè)復(fù)合型人才培養(yǎng)路徑探究

摘要:隨著“互聯(lián)網(wǎng)+智能制造”以及工業(yè)物聯(lián)網(wǎng)的進(jìn)一步發(fā)展,軟件應(yīng)用的規(guī)模、復(fù)雜程度也將進(jìn)一步擴(kuò)大。如何培養(yǎng)高素質(zhì)的復(fù)合型計算機(jī)技能人才,保證軟件的質(zhì)量,降低軟件質(zhì)量問題所帶來的潛在風(fēng)險,是目前軟件產(chǎn)業(yè)走向成熟和標(biāo)準(zhǔn)化生產(chǎn)亟待解決的問題。軟件開發(fā)人員怎樣才能有效地開發(fā)出高質(zhì)量的軟件產(chǎn)品,提高軟件產(chǎn)品的質(zhì)量,是現(xiàn)有計算機(jī)技能人才和中高等教育、培訓(xùn)機(jī)構(gòu)需要探索的重要課題。文章提出應(yīng)將軟件測試?yán)碚撊谌胲浖_發(fā)類課程,提高高職學(xué)生設(shè)計開發(fā)軟件產(chǎn)品的質(zhì)量,完善學(xué)生的專業(yè)技能。

關(guān)鍵詞:軟件測試;軟件開發(fā);軟件質(zhì)量;復(fù)合型技能人才

一、研究背景

智能制造背景下的轉(zhuǎn)型升級需要大量合格和優(yōu)秀的技能人才,他們是國家產(chǎn)業(yè)發(fā)展的重要戰(zhàn)略資源。“十四五”規(guī)劃《建議》明確提出了要加快壯大新一代信息技術(shù)發(fā)展,推動互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等同各產(chǎn)業(yè)深度融合。高職計算機(jī)軟件技術(shù)人才是信息技術(shù)發(fā)展的應(yīng)用研發(fā)人員的重要來源,其人才培養(yǎng)質(zhì)量尤為重要。培養(yǎng)高素質(zhì)的計算機(jī)復(fù)合型人才,是保證新一代信息技術(shù)順利和高質(zhì)量發(fā)展的必經(jīng)之路。近年來互聯(lián)網(wǎng)和信息技術(shù)的不斷發(fā)展成熟,軟件應(yīng)用領(lǐng)域越來越廣泛,其質(zhì)量的優(yōu)劣也逐漸受到了人們的廣泛關(guān)注和重視。隨著智能制造以及工業(yè)物聯(lián)網(wǎng)的進(jìn)一步發(fā)展,軟件應(yīng)用的規(guī)模、復(fù)雜程度也在進(jìn)一步擴(kuò)大,這對計算機(jī)軟件研發(fā)從業(yè)人員提出了更高的要求。如何保證軟件的質(zhì)量,降低軟件質(zhì)量問題所帶來的潛在風(fēng)險,是目前軟件產(chǎn)業(yè)走向成熟和標(biāo)準(zhǔn)化生產(chǎn)亟待解決的問題。軟件測試作為軟件生命周期中的重要環(huán)節(jié),是保證軟件質(zhì)量的重要手段。然而目前包括高等院校在內(nèi)的教育培訓(xùn)機(jī)構(gòu),在培養(yǎng)軟件開發(fā)人才時,過于強(qiáng)調(diào)編程技術(shù)在實現(xiàn)軟件功能方面的應(yīng)用,輕視甚至忽視了軟件整體質(zhì)量對于軟件成功的重要性。這一問題出現(xiàn)的主要原因是,軟件開發(fā)人員缺乏對軟軟件工程理論的科學(xué)認(rèn)識和應(yīng)用,對軟件生命周期中軟件開發(fā)過程與軟件測試的有機(jī)關(guān)聯(lián)還存在不足。

二、軟件測試簡介

軟件測試是為發(fā)現(xiàn)軟件錯誤而執(zhí)行一個程序或者系統(tǒng)的過程。它是軟件投入運行前,對軟件需求分析、設(shè)計規(guī)格說明和編碼的最終復(fù)查,也是軟件質(zhì)量保證的關(guān)鍵步驟。軟件測試強(qiáng)調(diào)的是一系列發(fā)現(xiàn)軟件錯誤和缺陷的活動過程。這一系列活動是發(fā)生在軟件投入生產(chǎn)運行之前,其中既包含對實際軟件的功能篩查,也包含對軟件相關(guān)文檔的審核。雖然軟件測試的重要任務(wù)之一是發(fā)現(xiàn)軟件中存在的缺陷,但其根本目的是為了提高軟件質(zhì)量,降低軟件開發(fā)過程中的風(fēng)險。

(一)軟件測試流程

軟件測試的一般過程包含:測試需求分析,測試計劃制定,測試用例的設(shè)計與開發(fā),測試執(zhí)行與缺陷提交,測試評估與總結(jié),測試資產(chǎn)歸檔六個過程。在實際的軟件測試過程中這六個過程通常是依次執(zhí)行。測試需求分析階段的工作主要是分析軟件規(guī)格需求說明書,確定測試軟件的功能與性能的范圍以及驗證軟件正確性時所參考的行業(yè)和企業(yè)標(biāo)準(zhǔn),明確測試軟件的規(guī)模和測試活動所需的資源配置。測試計劃階段的核心工作是制定軟件測試方案,明確軟件測試活動執(zhí)行的時間和人力安排,以及風(fēng)險應(yīng)對方案。測試用例設(shè)計與開發(fā)是整個測試活動重點。測試用例的本質(zhì)是測試數(shù)據(jù),包含真實測試執(zhí)行過程中輸入的數(shù)據(jù)和具體操作,以及根據(jù)需求說明書期望看到的軟件運行結(jié)果等。不同的測試類型在測試用例設(shè)計上存在區(qū)別,這是測試領(lǐng)域崗位區(qū)分的主要依據(jù)。測試執(zhí)行與缺陷提交是與測試用例設(shè)計與開發(fā)緊密關(guān)聯(lián)的階段,其核心工作是將測數(shù)據(jù)輸入到被測系統(tǒng),根據(jù)軟件的實際運行結(jié)果比對需求說明書,找出軟件的缺陷和不足反饋給開發(fā)人員,實現(xiàn)對軟件功能的完善和修正,以保證軟件的質(zhì)量。

(二)軟件測試的分類

軟件測試是一項系統(tǒng)性的工程,從不同的角度考慮可以有不同的劃分方法,如圖1。從測試執(zhí)行的時間先后劃分,軟件測試可以依次理解為:單元測試、模塊測試,集成測試,系統(tǒng)測試,驗收測試,Alpha測試,Beta測試。根據(jù)測試過程側(cè)重的內(nèi)容不同,測試可以劃分為功能測試,兼容性測試,性能測試,用戶界面測試,安裝卸載測試,接口測試等。從測試技術(shù)和用例設(shè)計的角度考慮,軟件測試可以分為黑盒測試、白盒測試和灰盒測試。隨著自動化測試工具的不斷推廣和應(yīng)用,根據(jù)是否使用工具,軟件測試則可以分為手工測試和自動化測試。文檔作為軟件產(chǎn)品的一部分,在測試過程中根據(jù)是否執(zhí)行被測軟件,軟件測試可以分為靜態(tài)測試和動態(tài)測試,其中靜態(tài)測試主要是對軟件文檔和程序代碼的審查。

(三)軟件測試用例

測試用例是為某個特定的測試目標(biāo)而設(shè)計的,其本質(zhì)是包括輸入數(shù)據(jù)和操作行為在內(nèi)的一系列數(shù)據(jù)的集合。測試用例的設(shè)計和編制是軟件測試活動中最重要的工作內(nèi)容。測試用例是測試工作執(zhí)行的主要參考,也是軟件測試必須遵循的準(zhǔn)則。測試用例的設(shè)計一般需要遵循一定的方法,才能實現(xiàn)對軟件測試活動的科學(xué)組織和歸納。

(四)軟件缺陷

在實際應(yīng)用和測試過程中,準(zhǔn)確地定義軟件缺陷對于整個測試活動至關(guān)重要。IEEE729-1983對缺陷的標(biāo)準(zhǔn)定義:從產(chǎn)品內(nèi)部看,缺陷是軟件產(chǎn)品開發(fā)或維護(hù)過程中存在的錯誤、毛病等各種問題;從產(chǎn)品外部看,缺陷是系統(tǒng)所需要實現(xiàn)的某種功能的失效或違背。缺陷的存在會導(dǎo)致軟件產(chǎn)品在某種程度上不能滿足用戶的需要。完整的軟件缺陷定義可以明確測試目標(biāo),統(tǒng)一測試人員與軟件開發(fā)人員的工作方向。比如,部分軟件對軟件的安全性并沒有特殊或者嚴(yán)格要求,如果軟件開發(fā)人員和測試人員的工作方向沒有達(dá)成一致,若軟件開發(fā)人員在設(shè)計軟件時沒有充分考慮軟件的安全性漏洞,而測試人員在測試過程中過分側(cè)重軟件的安全性測試則可能會導(dǎo)致軟件崩潰性或者運行失敗。合理的軟件缺陷定義可以在軟件提交用戶驗證之前進(jìn)一步明確客戶需求,為軟件的用戶可操作性及質(zhì)量提供有力保障。三、軟件測試與軟件開發(fā)的關(guān)系軟件工程是從技術(shù)和管理兩方面研究如何更好地開發(fā)和維護(hù)計算機(jī)軟件的一門學(xué)科。軟件工程學(xué)提出的軟件生命周期的模型,發(fā)展了許多軟件開發(fā)與維護(hù)階段適用的技術(shù)和方法,并應(yīng)用于軟件工程實踐,取得了良好的效果。軟件開發(fā)與軟件測試作為軟件生命周期模型中的兩個重要活動,他們之間存在緊密的聯(lián)系。軟件開發(fā)通常會遵行一定的開發(fā)模型,經(jīng)典的開發(fā)模型有瀑布模型、原型模型、增量模型、螺旋模型、敏捷模型等。軟件測試和軟件開發(fā)一樣,都遵循軟件工程的原理。測試活動貫穿于軟件項目開發(fā)的全過程,和研發(fā)活動交互開展。瀑布模型作為最早出現(xiàn)的開發(fā)模型,給出了軟件開發(fā)的固定流程,強(qiáng)調(diào)軟件生命周期中各階段的先后順序,使得大部分人至今仍存在一個軟件測試與軟件開發(fā)的認(rèn)識誤區(qū)———軟件測試是在代碼完成之后進(jìn)行的。如圖2,V模型準(zhǔn)確地展現(xiàn)了軟件開發(fā)與軟件測試的有機(jī)關(guān)聯(lián),因此本節(jié)以V模型為參考,分析軟件測試與軟件開發(fā)之間的關(guān)系。以虛線為界,從水平對應(yīng)關(guān)系看,左邊對應(yīng)軟件開發(fā)與設(shè)計的各個環(huán)節(jié),右邊是軟件測試的驗證和測試,即對軟件設(shè)計和分析的各個環(huán)節(jié)進(jìn)行測試,以確認(rèn)是否滿足用戶的需求。需求分析階段對應(yīng)驗收測試。表明軟件開發(fā)人員分析軟件需求和產(chǎn)品功能設(shè)計時,測試人員同時也在了解軟件產(chǎn)品的設(shè)計特性、用戶的真正需求;通過閱讀和審查需求分析結(jié)果,進(jìn)一步確認(rèn)軟件測試的范圍和標(biāo)準(zhǔn),制定測試計劃和安排測試資源。規(guī)格說明階段對應(yīng)系統(tǒng)測試。軟件開發(fā)人員在做系統(tǒng)設(shè)計時,軟件測試人員可以了解軟件系統(tǒng)的架構(gòu)設(shè)計風(fēng)格、系統(tǒng)設(shè)計需要使用的主要技術(shù),提煉相關(guān)的測試要點,事先準(zhǔn)備相關(guān)測試點的用例和搭建對應(yīng)的測試環(huán)境。概要設(shè)計階段對應(yīng)集成測試。軟件開發(fā)人員需要了解各軟件功能模塊之間的業(yè)務(wù)關(guān)聯(lián)和數(shù)據(jù)流通,軟件測試人員則主要側(cè)重各功能模塊之間業(yè)務(wù)的交替規(guī)則,規(guī)劃各模塊測試的先后順序和功能要點。程序設(shè)計階段對應(yīng)的是單元測試。一面編程,一面測試是一種很有效的辦法。充分地單元測試,可以保障程序開發(fā)過程的順利進(jìn)行,提高程序質(zhì)量,降低開發(fā)成本。從整體來看,軟件開發(fā)的每一個階段本質(zhì)上與軟件測試對應(yīng)的每一個階段所關(guān)注的是同一件事情:客戶需求。區(qū)別在于,軟件開發(fā)活動側(cè)重于實現(xiàn)業(yè)務(wù)功能,以業(yè)務(wù)目標(biāo)的實現(xiàn)為工作驅(qū)動,重視軟件局部功能的實現(xiàn),對軟件整體功能的應(yīng)用認(rèn)識和考慮存在不足。軟件測試活動則更強(qiáng)調(diào)對業(yè)務(wù)功能實現(xiàn)結(jié)果的檢驗,不考慮軟件的具體實現(xiàn)技術(shù),側(cè)重從全局使用的角度檢驗軟件設(shè)計和實現(xiàn)是否科學(xué)、合理、滿足用戶友好性,符合用戶的實際需求。它們是兩個互為補(bǔ)充的逆向工作過程。缺乏軟件測試觀念的開發(fā)團(tuán)隊,是難以有效開發(fā)出高質(zhì)量軟件產(chǎn)品的。

四、軟件測試?yán)砟钊谌胲浖_發(fā)課程的意義

近年來隨著工程教育認(rèn)證的不斷推廣,對能力的提高逐漸成為教育的目標(biāo)。一方面,在計算機(jī)類的職業(yè)教育和社會培訓(xùn)機(jī)構(gòu),甚至部分本科院校的計算機(jī)專業(yè)課程開設(shè)中,仍呈現(xiàn)出對編程技術(shù)的“過度”推崇和重視,大部分包括軟件測試在內(nèi)的專業(yè)綜合理論和實踐課程并沒有發(fā)揮應(yīng)有價值。學(xué)生掌握了豐富的編程技能卻難以設(shè)計研發(fā)出具有實際應(yīng)用價值的軟件產(chǎn)品,知識停留在理論的掌握層面,學(xué)生專業(yè)技能很難得到進(jìn)一步的提升和擴(kuò)展。另一方面,因為所學(xué)技能太過豐富又缺乏綜合性的課程將各項“技術(shù)技能”知識有效地關(guān)聯(lián)起來,學(xué)生很難形成自己的知識體系,這對于學(xué)生長期發(fā)展是不利的。例如,部分學(xué)校希望將學(xué)生培養(yǎng)成“無所不能”的全線工程師,在其開設(shè)的課程中學(xué)生不僅要學(xué)習(xí)各種前后端編程語言,還要學(xué)習(xí)各種前后端框架的使用。從整體上看課程設(shè)置是非常完整的,但是從學(xué)生實際掌握的知識和技能提升方面來看,一部分學(xué)生能夠使用所學(xué)習(xí)的各項技能但不精通技能水平,僅停留在認(rèn)識和了解層面,另一部分學(xué)生可以熟練地使用所學(xué)的技能做出復(fù)雜驚艷的效果,卻不懂得如何將這種高級效果合理地歸置到軟件產(chǎn)品中。軟件測試作為軟件工程科學(xué)的重要內(nèi)容和軟件開發(fā)有著密切的關(guān)系。與純編程技能課程不同,軟件測試是綜合性技能課程。它關(guān)注軟件產(chǎn)品的整體,能夠科學(xué)地指導(dǎo)編程學(xué)習(xí)者可以設(shè)計開出什么樣的軟件,什么樣的軟件作品才是具備實用價值的產(chǎn)品,完整的軟件應(yīng)該具備哪些必要條件,滿足哪些的行業(yè)標(biāo)準(zhǔn)。合理地將軟件測試?yán)碚撊谌胲浖_發(fā)類課程中,一方面,可以讓編程學(xué)習(xí)者將學(xué)習(xí)到的各項編程技能參考軟件工程理論有方向地進(jìn)行梳理;另一方面,也可以指導(dǎo)學(xué)生開發(fā)出更符合企業(yè)要求的產(chǎn)品,對提升學(xué)生的專業(yè)技能意義重大。

五、小結(jié)

本文首先提出了現(xiàn)有軟件產(chǎn)品存在的問題以及未來軟件產(chǎn)品和軟件企業(yè)的發(fā)展趨勢,確定了軟件測試在保證軟件質(zhì)量方面的重要性。然后簡單介紹了軟件測試的相關(guān)工作即工作流程,重點分析了軟件測試與軟件開發(fā)的緊密聯(lián)系。最后通過對現(xiàn)有計算機(jī)專業(yè)教學(xué)現(xiàn)狀的思考,分析了將軟件測試?yán)碚撊谌胲浖_發(fā)類課程在培養(yǎng)復(fù)合型計算機(jī)技能人才方面的重要性和深遠(yuǎn)意義。

參考文獻(xiàn):

[1]吳際.能力培養(yǎng)目標(biāo)驅(qū)動的軟件開發(fā)類課程實踐教學(xué)方法研究[J].國內(nèi)高等教育教學(xué)研究動態(tài),2019(9):11-13.

[2]朱少民.軟件測試課程的問題驅(qū)動教學(xué)模式探索[J].中國大學(xué)教學(xué),2018,338(10):34-38.

[3]趙翀,高鵬.軟件測試課程工程實踐教學(xué)模式的探索與實施[J].計算機(jī)工程與科學(xué),2014,36(A01)

[4]辜萍萍.軟件測試課程實驗教學(xué)體系設(shè)計與實踐[J].實驗室研究與探索,2019,38(7)

[5]吳際.能力培養(yǎng)目標(biāo)驅(qū)動的軟件開發(fā)類課程實踐教學(xué)方法研究[J].國內(nèi)高等教育教學(xué)研究動態(tài),2019(9):13-13.

作者:鄒銀鳳 單位:湖南財經(jīng)工業(yè)職業(yè)技術(shù)學(xué)院