前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的軟件測試培訓(xùn)總結(jié)主題范文,僅供參考,歡迎閱讀并收藏。
軟件質(zhì)量重于泰山
軟件質(zhì)量重于泰山,軟件質(zhì)量是核心競爭力之一?,F(xiàn)在和未來軟件企業(yè)的競爭力不僅體現(xiàn)在產(chǎn)品類型的多樣性,產(chǎn)品功能的先進(jìn)性,更多的體現(xiàn)在產(chǎn)品質(zhì)量的穩(wěn)定性和可靠性。軟件應(yīng)用的領(lǐng)域不斷深入,設(shè)計的復(fù)雜程度逐步增加,開發(fā)的周期不斷縮短,質(zhì)量的要求水漲船高,軟件企業(yè)面臨著巨大挑戰(zhàn)。
用戶對軟件產(chǎn)品質(zhì)量的要求不斷提高,促使軟件企業(yè)把提高軟件質(zhì)量作為增強(qiáng)競爭力的策略。提高軟件質(zhì)量要素在哪里?可以通過采用軟件設(shè)計技術(shù),加強(qiáng)軟件過程管理,實(shí)施軟件測試等方法。從提高軟件質(zhì)量的顯著程度、投資回報率和可實(shí)施性等方面比較,實(shí)施有效的軟件測試,提高軟件測試的效率,是保證軟件質(zhì)量的顯著方法。
軟件測試是通過技術(shù)、流程、工具、人員以及管理手段,檢測軟件文檔、軟件中間產(chǎn)品和最終產(chǎn)品,查找和報告軟件缺陷、錯誤以及隱患的專業(yè)技術(shù)。通過跟蹤缺陷、錯誤及隱患的修正過程,確保軟件產(chǎn)品、中間產(chǎn)品和文檔符合軟件工程過程需求和用戶的最終需求。
軟件測試創(chuàng)新之道
軟件測試在國內(nèi)仍處于起步階段,各種軟件測試的方法、技術(shù)和標(biāo)準(zhǔn)都還在探索階段。國內(nèi)軟件行業(yè)規(guī)模普遍偏小,缺乏大型軟件產(chǎn)品經(jīng)驗(yàn),開發(fā)過程不夠規(guī)范,這決定了國內(nèi)軟件質(zhì)量和測試行業(yè),必須根據(jù)國內(nèi)行業(yè)現(xiàn)狀,確定軟件質(zhì)量目標(biāo)和測試策略方法,而不是照搬照抄國外成熟軟件企業(yè)的測試方法。
觀念創(chuàng)新
提高軟件質(zhì)量的決定因素不是軟件測試技術(shù),而是對軟件質(zhì)量和測試的思想觀念。只有把提高軟件質(zhì)量上升到企業(yè)戰(zhàn)略發(fā)展的高度,才能從根本上解決問題。長期以來,國內(nèi)軟件行業(yè)對軟件質(zhì)量重視程度不足,對于軟件測試的作用認(rèn)識不夠,造成項(xiàng)目因質(zhì)量問題造成進(jìn)度推遲甚至失敗。
為了徹底改變這種被動現(xiàn)象,企業(yè)高層管理人員必須從管理思想、資源支持等方面為軟件質(zhì)量和測試部門提供全力支持。軟件項(xiàng)目經(jīng)理必須堅(jiān)持軟件開發(fā)和軟件測試并行處理并且互相協(xié)調(diào)。軟件開發(fā)人員重視和配合軟件測試人員。
觀念創(chuàng)新不要僅停留在口頭上,而要落實(shí)在具體行動上,通過軟件質(zhì)量和測試的有效流程進(jìn)行推動,通過過程改進(jìn)進(jìn)行提高。通過有效組織管理,形成“以重視軟件質(zhì)量為榮,以輕視軟件質(zhì)量為恥”的工作氛圍。
流程創(chuàng)新
測試流程決定軟件質(zhì)量。軟件測試如同軟件開發(fā)一樣,需要經(jīng)過收集測試需求、確定測試策略、設(shè)計測試、執(zhí)行測試、分析測試等流程。軟件測試不是軟件開發(fā)的最后階段,而是貫穿于軟件項(xiàng)目的整個生命周期。
軟件測試流程既不是僵化的生搬硬套,也不是隨機(jī)的增添取舍。軟件企業(yè)的質(zhì)量管理部門和項(xiàng)目開發(fā)團(tuán)隊(duì)需要根據(jù)公司技術(shù)、資源現(xiàn)狀,針對項(xiàng)目的特點(diǎn)和客戶需求,從保證軟件質(zhì)量、項(xiàng)目進(jìn)度和測試成本等方面,進(jìn)行優(yōu)化設(shè)計并且不斷改進(jìn)流程管理。對于項(xiàng)目周期長、應(yīng)用領(lǐng)域廣、對質(zhì)量要求高的軟件,必須制定和遵守嚴(yán)格的測試流程。
測試流程創(chuàng)新的目標(biāo)是在公司內(nèi)部制定和執(zhí)行完善的項(xiàng)目質(zhì)量管理體系。優(yōu)化項(xiàng)目生產(chǎn)方式,跟蹤和度量生產(chǎn)過程和產(chǎn)品,使得生產(chǎn)過程和各階段產(chǎn)品處于可控制和可度量狀態(tài),保證產(chǎn)品符合客戶的功能和進(jìn)度需求。
技術(shù)創(chuàng)新
軟件測試是一項(xiàng)軟件工程領(lǐng)域的專業(yè)技術(shù),而不是簡單的把軟件測試認(rèn)為隨便找個人運(yùn)行幾次軟件,就可以發(fā)現(xiàn)全部的軟件問題。前文已經(jīng)提到,軟件測試需求和測試設(shè)計是決定軟件測試效果的關(guān)鍵因素,因此,加強(qiáng)測試技術(shù)創(chuàng)新的重點(diǎn)是在測試需求和設(shè)計設(shè)計的創(chuàng)新。
在軟件測試技術(shù)創(chuàng)新方面,要避免陷入過度追求自動化測試技術(shù)的誤區(qū)。自動化測試確實(shí)可以在某些方面顯著提高測試效率和準(zhǔn)確性,但是自動化測試只適合測試軟件的某些方面的質(zhì)量,80%左右的軟件缺陷是靠測試人員手工測試發(fā)現(xiàn)的。
對于某些特別需要自動化測試的軟件特性,需要加強(qiáng)開發(fā)軟件測試工具,而不是全部依賴市場上的現(xiàn)有測試工具。這是因?yàn)樯虡I(yè)工具功能繁多,價格昂貴,培訓(xùn)和學(xué)習(xí)周期很長,選擇不當(dāng)就會造成巨大浪費(fèi)。
管理創(chuàng)新
軟件測試管理的目標(biāo)是實(shí)現(xiàn)軟件質(zhì)量、進(jìn)度、成本之間的最佳平衡。有效的測試管理需要企業(yè)管理層、軟件開發(fā)團(tuán)隊(duì)、質(zhì)量保證與測試團(tuán)隊(duì)通力合作,采用計劃、組織、領(lǐng)導(dǎo)、控制等手段,組建高效團(tuán)隊(duì),制定完善的測試流程,做好測試設(shè)計,有效執(zhí)行測試,加強(qiáng)過程跟蹤,從而順利完成質(zhì)量保證和測試任務(wù)。
測試管理創(chuàng)新的核心是軟件質(zhì)量和測試的團(tuán)隊(duì)建設(shè),軟件質(zhì)量和測試是技術(shù)密集型活動,團(tuán)隊(duì)的知識結(jié)構(gòu)、創(chuàng)造力和凝聚力是保證測試流程、測試技術(shù)充分實(shí)施的基礎(chǔ)。質(zhì)量和測試團(tuán)隊(duì)建設(shè)的重點(diǎn)是設(shè)置和培養(yǎng)各類技術(shù)和管理人才,進(jìn)行有效交流,形成良好的評估和促進(jìn)機(jī)制。
測試管理創(chuàng)新的另一個重點(diǎn)是測試管理平臺建設(shè)。包括構(gòu)建測試項(xiàng)目管理的集成系統(tǒng),實(shí)現(xiàn)公司產(chǎn)品和項(xiàng)目數(shù)據(jù)信息的有效管理和順序控制,使項(xiàng)目數(shù)據(jù)透明化,技術(shù)知識有效傳承,項(xiàng)目質(zhì)量和進(jìn)度數(shù)據(jù)化、圖形化??梢愿鶕?jù)公司的現(xiàn)狀,購買軟件測試管理的商業(yè)工具,也可以內(nèi)部開發(fā)軟件測試管理工具。
軟件測試技術(shù)路線圖
如果把軟件測試之道成為測試戰(zhàn)略,要發(fā)揮測試戰(zhàn)略的現(xiàn)實(shí)意義,需要把測試戰(zhàn)略轉(zhuǎn)化為測試戰(zhàn)術(shù)。測試的“道”與“術(shù)”的無縫集成,才能顯著地、持續(xù)地、逐步地提高軟件產(chǎn)品質(zhì)量。實(shí)施軟件測試的戰(zhàn)術(shù)是一系列過程的組合,涉及測試團(tuán)隊(duì)建設(shè)、流程設(shè)計、測試平臺、測試管理等多個方面。
測試團(tuán)隊(duì)建設(shè)
測試團(tuán)隊(duì)可以是測試部,也可以是測試組。公司規(guī)模決定了測試團(tuán)隊(duì)的大小和組織形式。測試團(tuán)隊(duì)建設(shè)需要執(zhí)行兩個原則:第一,測試團(tuán)隊(duì)必須獨(dú)立于開發(fā)團(tuán)隊(duì),而不是附屬于開發(fā)團(tuán)隊(duì),實(shí)現(xiàn)測試的獨(dú)立性和公正性;第二,測試團(tuán)隊(duì)必須具有明確的工作目標(biāo),即發(fā)現(xiàn)和報告軟件缺陷,推動和確認(rèn)缺陷修正,協(xié)助軟件開發(fā)的過程改進(jìn),提高軟件整體質(zhì)量。
軟件測試團(tuán)隊(duì)根據(jù)規(guī)??梢栽O(shè)置多個職位,每個職位具有明確的崗位職責(zé)。例如,測試部門經(jīng)理、測試項(xiàng)目經(jīng)理、測試組長、測試架構(gòu)師、高級測試工程師、測試工程師等。對于剛剛成立的測試團(tuán)隊(duì),可以一個人兼任多個職位,完成多項(xiàng)測試任務(wù)。測試人員的總數(shù)應(yīng)該與開發(fā)人員相適應(yīng),最好在1:1到1:2之間。
流程設(shè)計
測試流程設(shè)計必須與軟件設(shè)計流程相對應(yīng),基本測試流程包括測試需求分析、測試計劃設(shè)計、測試用例設(shè)計、測試執(zhí)行、測試評價、測試總結(jié)等。
根據(jù)軟件需求和軟件設(shè)計規(guī)格說明進(jìn)行測試需求分析,測試需求分析的目的是明確需要測試的對象、特征、范圍和方法,從而制定測試計劃,確定測試策略。
測試計劃設(shè)計是為了有效配置測試過程、人員和工具,充分利用現(xiàn)有的資源,按照項(xiàng)目計劃進(jìn)度,組織有效的測試。測試計劃設(shè)計的輸出結(jié)果是測試計劃文檔,它是指導(dǎo)軟件測試活動的綱領(lǐng)性文檔。
測試用例設(shè)計是指導(dǎo)具體測試內(nèi)容和方法的關(guān)鍵內(nèi)容,如果需要執(zhí)行自動化測試,還需要依靠測試用例設(shè)計生成對應(yīng)的測試腳本。測試用例設(shè)計的輸出結(jié)果是不同類型的測試用例,這些測試用例必須以標(biāo)準(zhǔn)、一致的形式設(shè)計、評審、存儲、更新。
測試執(zhí)行是報告軟件缺陷的階段,根據(jù)軟件計劃的進(jìn)度,分配測試內(nèi)容,構(gòu)建測試環(huán)境,依靠測試用例運(yùn)行測試程序和程序文檔。測試執(zhí)行的輸出結(jié)果是缺陷報告、測試進(jìn)度報告等。
測試評價是度量軟件測試執(zhí)行效率和有效性的過程。測試評價的輸入是測試用例的執(zhí)行情況,軟件缺陷的報告數(shù)據(jù)。測試評價的輸出包括測試用例的有效性分析,軟件缺陷的類型和有效性分析等,測試進(jìn)度和有效性分析等。
測試總結(jié)包括測試過程每天或者每周的過程總結(jié),也包括測試項(xiàng)目結(jié)束后的測試項(xiàng)目總結(jié)。測試總結(jié)的輸出是測試總結(jié)報告,總體評價軟件質(zhì)量,指出測試存在的問題,提出改進(jìn)的方法和進(jìn)程,總計測試的有效經(jīng)驗(yàn)。
測試平臺設(shè)計
測試平臺設(shè)計包括測試技術(shù)平臺設(shè)計和測試管理平臺設(shè)計。測試技術(shù)平臺包括設(shè)計測試環(huán)境,設(shè)計或設(shè)置測試工具等。測試管理平臺設(shè)計包括測試文檔系統(tǒng)設(shè)計、測試版本配置管理、缺陷數(shù)據(jù)庫設(shè)計、測試進(jìn)度和質(zhì)量分析系統(tǒng)設(shè)計。
測試技術(shù)平臺設(shè)計需要根據(jù)測試計劃的測試內(nèi)容和測試環(huán)境要求,組織軟件、硬件、數(shù)據(jù)庫和網(wǎng)絡(luò)等,這經(jīng)常是一項(xiàng)較為耗時的工作,同時它影響著測試的正確性,必須盡快在測試開始階段完成,最好采用有效的方法把搭建的測試環(huán)境進(jìn)行備份保存,以便今后可以快速恢復(fù),重復(fù)利用。
測試管理平臺設(shè)計,影響測試管理的復(fù)雜度,好的測試管理平臺可以使測試管理人員,方便地跟蹤、查詢、分析測試進(jìn)度,評估測試人員的工作績效,評價測試的總體質(zhì)量。對于測試技術(shù)人員而言,可以方便的尋找測試對象和測試文檔,報告和輸出測試結(jié)果,共享測試數(shù)據(jù),提高測試效率。
測試管理
測試管理關(guān)注人員、過程、產(chǎn)品三要素的互動與變化,測試管理包含項(xiàng)目計劃和組織結(jié)構(gòu)管理,測試階段管理,時間、資源和質(zhì)量管理,文檔管理和團(tuán)隊(duì)管理等。測試部門經(jīng)理、測試項(xiàng)目經(jīng)理和測試組長是測試管理的主要執(zhí)行者,需要與測試團(tuán)隊(duì)成員、開發(fā)人員、公司管理人員密切配合。
為了加強(qiáng)測試管理,需要確保測試數(shù)據(jù)信息流通暢,使測試團(tuán)隊(duì)、開發(fā)團(tuán)隊(duì)、質(zhì)量保證團(tuán)隊(duì)之間有效交流。測試管理的其他內(nèi)容包括團(tuán)隊(duì)成員參與各種培訓(xùn),客觀積極的績效評估,識別項(xiàng)目測試風(fēng)險,實(shí)現(xiàn)人盡其才,信息共享,進(jìn)度可控,規(guī)避風(fēng)險,降低成本,提高質(zhì)量。
國家示范性軟件學(xué)院的一個重要職責(zé)就是要在教學(xué)研究、教學(xué)實(shí)踐以及教學(xué)改革方面進(jìn)行大膽的探索和實(shí)踐。因此,在完善已有課程體系及授課的同時,應(yīng)該充分利用優(yōu)秀的教學(xué)資源,總結(jié)教學(xué)經(jīng)驗(yàn)和科研成果,編寫專業(yè)教材,力爭探索出一條為國家快速培養(yǎng)高素質(zhì)軟件工程人才之路。
北京工業(yè)大學(xué)軟件學(xué)院蔡建平教授長期從事軟件工程、軟件測試及軟件質(zhì)量保證的研究,在多年講授軟件測試課程經(jīng)驗(yàn)和體會的基礎(chǔ)上,對軟件測試課程教學(xué)內(nèi)的知識點(diǎn)進(jìn)行調(diào)整、補(bǔ)充和完善等方面的改革,針對軟件質(zhì)量評價和軟件高可靠性的要求,針對國內(nèi)軟件研發(fā)和測試外包的本地化要求,以及針對軟件測試用于各種應(yīng)用領(lǐng)域的要求選擇授課的知識點(diǎn),并取得了較好的效果。
目前國內(nèi)關(guān)于軟件測試的書籍較多,其中很多書籍是翻譯的、為培訓(xùn)用的或介紹軟件測試技術(shù)和方法,作為教材滿足各類測試人員的學(xué)習(xí)還有一定的距離。本書是在作者長達(dá)二十幾年軟件工程、軟件測試和軟件質(zhì)量保證實(shí)踐經(jīng)驗(yàn)和教學(xué)經(jīng)驗(yàn)的基礎(chǔ)上,借鑒前人成果,參考當(dāng)前軟件測試方法和技術(shù)應(yīng)用實(shí)踐案例進(jìn)行編寫的。蔡建平教授編寫的《軟件測試大學(xué)教程》一書,以現(xiàn)代軟件測試需求為背景,以現(xiàn)代軟件測試技術(shù)和方法為基礎(chǔ),以當(dāng)前軟件測試通常應(yīng)用為典型實(shí)例,從軟件危機(jī)及軟件缺陷開始,全面介紹軟件測試的基本概念,軟件測試的技術(shù)、方法和工具應(yīng)用,以及軟件測試在當(dāng)前主流應(yīng)用中的具體開展和實(shí)施。
其特點(diǎn)如下:
(1) 內(nèi)容全面。突出全生命周期軟件測試概念、軟件質(zhì)量分析手段、現(xiàn)代軟件測試技術(shù)、主流測試工具應(yīng)用以及典型應(yīng)用測試方法等,幫助學(xué)生了解和掌握現(xiàn)代軟件測試的各種原理、方法和技術(shù),并能夠選擇合適的軟件測試工具進(jìn)行相關(guān)測試。為培養(yǎng)學(xué)生今后成為高素質(zhì)、專業(yè)化的軟件測試人才打下基礎(chǔ)。
(2) 針對性強(qiáng)。針對軟件開發(fā)方法和技術(shù)的發(fā)展變化,針對我國軟件外包服務(wù)的蓬勃興起,針對我國國防工業(yè)如航空、航天、船舶、電子、通訊等大量重要軟件或關(guān)鍵軟件的實(shí)際應(yīng)用情況和測試需求,特別是對軟件高可靠性的要求,選擇教材的知識點(diǎn)。
(3) 重實(shí)踐性。該書對支撐現(xiàn)代軟件測試技術(shù)應(yīng)用的測試工具進(jìn)行了全面地介紹,特別是對開源軟件測試工具的介紹,這對高校開設(shè)軟件測試實(shí)驗(yàn)課程是非常有意義的。在教材中給出了軟件測試在幾個典型應(yīng)用領(lǐng)域具體實(shí)施的要點(diǎn)和注意事項(xiàng),這對缺乏實(shí)踐經(jīng)驗(yàn)的培養(yǎng)對象而言具有極好的引領(lǐng)作用,對開闊軟件測試人員的眼界、思路和具體實(shí)踐有很大幫助。
(4) 具前瞻性。書中不少內(nèi)容取材于互聯(lián)網(wǎng),在一定程度上體現(xiàn)了軟件測試技術(shù)的最新發(fā)展,具有較強(qiáng)的新穎性和現(xiàn)代性。
關(guān)鍵詞:市場需求;軟件測試;課程體系
中圖分類號:G64文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2012)14-3353-02
Course System Research of Software Testing Technology Based on Demand of Talent Market
ZHENG Hao, LIU Jian-fang
(Pingdingshan University, Pingdingshan 467000, China)
Abstract: This paper analyze the actual needs of talent market at first, and then set up the Curriculum system based on the software testing theory and technology. Paying more attention on the application, we want to construct course system to meet the market, which has deep foundation and strong skills. All of these promote the quality of the professional course.
Key words: Market requirement; software testing; Curriculum system
最近的年度軟件測試行業(yè)專項(xiàng)調(diào)查報告顯示,社會對軟件測試人才的需求越來越大,可人才市場提供的人力資源、實(shí)際能力卻不能滿足這種需求。目前國內(nèi)對測試人才職業(yè)化培養(yǎng)體系還不夠充分,現(xiàn)行的傳統(tǒng)教育體制重學(xué)歷教育,輕職業(yè)技能培訓(xùn),導(dǎo)致了軟件測試人才告急。如何結(jié)合人才市場的實(shí)際需求,構(gòu)建適合的課程培養(yǎng)體系,成為軟件測試課程改革迫在眉睫的問題。
1中國軟件測試行業(yè)的市場需求分析
在我國,軟件產(chǎn)業(yè)的興起和發(fā)展也就是這短短十幾年。在前面的興起和發(fā)展壯大階段,一般的軟件公司都是重開發(fā)輕測試,甚至存在把測試工作都放在用戶那里去做的錯誤思想;追求眼前功能的實(shí)現(xiàn),開發(fā)軟件追求“短”、“平”、“快”。不太考慮性能和功能的優(yōu)化。軟件測試以往一直被中小IT企業(yè)所忽視,只有一些知名企業(yè)才有專門的軟件測試人員。
現(xiàn)在,更多的國內(nèi)企業(yè)認(rèn)識到測試的重要性,但是由于國內(nèi)測試人才的儲備相對較少,據(jù)國家權(quán)威部門統(tǒng)計,中國軟件人才缺口超過100萬人,其中很大一部分為軟件測試人才,缺口達(dá)到30~40萬。但由于軟件測試的重要性是近幾年才被充分認(rèn)識到的,高校教育和企業(yè)培養(yǎng)都還沒有跟上,致使軟件測試需求嚴(yán)重供不應(yīng)求。
分析年度軟件測試行業(yè)專項(xiàng)調(diào)查報告,目前對測試人員的素質(zhì)和要求逐步提高,測試人員不僅應(yīng)掌握相關(guān)計算機(jī)知識背景、軟件工程基本知識、熟悉項(xiàng)目編程語言、熟悉項(xiàng)目技術(shù)架構(gòu)及需求內(nèi)容,而且要求工作有責(zé)任感、獨(dú)立分析能力及團(tuán)隊(duì)精神等方面。其中“動手能力”和“實(shí)際經(jīng)驗(yàn)”是軟件企業(yè)在招聘軟件測試人員時最為看重的,而這也恰恰是很多求職者的“軟肋”。
2現(xiàn)有軟件測試課程體系存在的問題
2007年,我校軟件學(xué)院認(rèn)證管理中心被授予計算機(jī)軟件測試人才培養(yǎng)基地。軟件學(xué)院軟件工程專業(yè)以及軟件技術(shù)專業(yè)均開設(shè)有軟件測試相關(guān)課程。由于軟件測試是一門實(shí)踐性很強(qiáng)的課程,應(yīng)采用精講多練的原則開展教學(xué),即學(xué)生通過大量的上機(jī)實(shí)踐,循序漸進(jìn)地提高自身的軟件測試用例設(shè)計、開發(fā)、執(zhí)行能力以及軟件測試的管理能力。但在具體實(shí)踐教學(xué)組織中,教師普遍感覺有許多不如意的地方,具體存在的問題有:
1)對實(shí)踐課程的認(rèn)識程度和重視程度不夠,軟件測試開展的不夠徹底,測試過程中存在大量的不規(guī)范性;
2)缺乏合適的教材,同時教師缺乏相應(yīng)的實(shí)戰(zhàn)經(jīng)驗(yàn),導(dǎo)致教學(xué)上知識結(jié)構(gòu)不合理,教學(xué)內(nèi)容與具體應(yīng)用脫節(jié),盡管教師都能很好的講解軟件測試?yán)碚撝R,但卻由于缺乏合適的測試案例,沒有將理論教學(xué)內(nèi)容和最新相關(guān)技術(shù)結(jié)合,使得學(xué)生思維局限性大,并沒有真正提高學(xué)生自主思考的能力和創(chuàng)造性思維。
3)教學(xué)方法和手段因循守舊,學(xué)生對軟件測試職業(yè)存在一些片面的,甚至是錯誤的理解。
3基于人才市場需求的《軟件測試技術(shù)》課程體系研究
基于人才市場需求的軟件測試技術(shù)課程體系研究主要是分析目前人才市場對軟件測試行業(yè)人才的崗位需求,掌握軟件測試人才需要具備的職業(yè)素質(zhì),同時調(diào)查研究在學(xué)生對前續(xù)課程的掌握情況,以及目前所具備的相關(guān)職業(yè)素養(yǎng)的程度,計劃從技術(shù)、溝通協(xié)調(diào)能力、經(jīng)驗(yàn)和技能、綜合素質(zhì)能力等方面分別對崗位需求和學(xué)生水平展開調(diào)研。
3.1課程體系目標(biāo)定位
我校軟件工程專業(yè)的培養(yǎng)目標(biāo)是培養(yǎng)適應(yīng)社會發(fā)展需求,具有扎實(shí)的計算機(jī)知識基礎(chǔ),掌握軟件工程領(lǐng)域的前沿技術(shù)和軟件開發(fā)方法,具有較強(qiáng)的軟件實(shí)踐能力和創(chuàng)新精神,具備較強(qiáng)的軟件項(xiàng)目的分析、設(shè)計、開發(fā)和維護(hù)能力,能夠按照工程化的原則和方法從事軟件開發(fā)和管理的應(yīng)用型人才。
作為該專業(yè)的一門專業(yè)必修課,為構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系。將以軟件技術(shù)為基礎(chǔ),測試?yán)碚撆c技術(shù)為核心,進(jìn)行課程體系設(shè)置。理論教學(xué)目的是讓學(xué)生深刻理解軟件測試思想和基本理論;熟悉多種軟件的測試方法、相關(guān)技術(shù)和系統(tǒng)地軟件測試過程;會熟練編寫測試計劃,測試用例,測試報告,并熟悉幾種自動化測試工具,從而從工程化角度提高和培養(yǎng)學(xué)生從事大型軟件的測試技術(shù)和能力。
同時在實(shí)踐環(huán)節(jié),要求學(xué)生通過實(shí)驗(yàn)學(xué)習(xí),培養(yǎng)與提高項(xiàng)目測試過程中采用的主要技術(shù)、設(shè)計測試用例、編寫測試總結(jié)報告等能力,激發(fā)學(xué)生創(chuàng)新精神和創(chuàng)新能力,具體應(yīng)達(dá)到下列基本要求。1)使學(xué)生掌握分析問題和解決問題的技巧,通過具體實(shí)驗(yàn)使學(xué)生掌握常用的黑盒測試技術(shù)、白盒測試技術(shù)、自動化測試工具。2)讓學(xué)生了解測試流程,掌握測試總結(jié)報告的編寫。通過實(shí)驗(yàn)使學(xué)生理解軟件缺陷的描述,并能結(jié)合項(xiàng)目設(shè)計出較完善的測試用例。
3)了解Web系統(tǒng)的測試范圍,使學(xué)生能在應(yīng)用場景下聯(lián)系實(shí)際和所學(xué)知識分析和解決問題,縮短理論和實(shí)踐的距離。
3.2課程教學(xué)內(nèi)容選取
結(jié)合課程體系目標(biāo)定位,該課程在教學(xué)內(nèi)容選取上主要是基于人才市場需求,厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用??倢W(xué)時共72學(xué)時,其中理論和實(shí)踐各36學(xué)時。結(jié)合課堂教學(xué)和實(shí)踐教學(xué),軟件測試技術(shù)課程包括以下幾部分:
1)軟件測試基本理論及方法:包括軟件測試的概念、測試的原則、用例的設(shè)計、各種測試方法及技巧,測試策略。同時通過實(shí)驗(yàn)掌握軟件測試的步驟、方法及常見問題的處理。
2)測試流程及文檔寫作:軟件測試流程、各階段的文檔編寫;書寫測試計、測試用例、測試報告、產(chǎn)品安裝手冊、產(chǎn)品使用手冊。在實(shí)踐環(huán)節(jié),通過SATM系統(tǒng)讓學(xué)生掌握軟件測試流程各個階段的相關(guān)技術(shù)、測試相關(guān)文檔的寫作技巧。
3)系統(tǒng)學(xué)習(xí)軟件測試的各種工具,包括:自動測試工具WinRunner;壓力測試工具LoadRunner;測試管理工具Testdirector;流程管理工具CVS;JAVA單元測試工具Junit。要求學(xué)生掌握自動化測試?yán)碚撆c方法,熟練使用常見測試工具。
4)軟件過程控制與質(zhì)量保證:軟件質(zhì)量的概念及軟件質(zhì)量管理的基本方法;測試項(xiàng)目的范圍管理、人員組織結(jié)構(gòu)、理解測試的配置管理、風(fēng)險管理、成本管理等。
5)項(xiàng)目實(shí)訓(xùn):引入具有真實(shí)企業(yè)背景的軟件測試案例,充分考慮人才市場的需求,突出強(qiáng)調(diào)工學(xué)結(jié)合的重要性。通過實(shí)際項(xiàng)目掌握實(shí)際工作中開發(fā)和測試的流程,使用相關(guān)工具,完成各種測試目標(biāo),實(shí)現(xiàn)軟件測試實(shí)踐環(huán)節(jié)單項(xiàng)專業(yè)知識與整體技能綜合運(yùn)用的目標(biāo),提高測試能力和積累相關(guān)經(jīng)驗(yàn)。
3.3課程教學(xué)方法設(shè)計
為構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系,在教學(xué)過程中,需要把技能訓(xùn)練和職業(yè)素質(zhì)培養(yǎng)有機(jī)結(jié)合起來,注重學(xué)生綜合能力的培養(yǎng)與提高,突出強(qiáng)調(diào)職業(yè)崗位針對性。提高學(xué)生綜合運(yùn)用所學(xué)知識發(fā)現(xiàn)問題、分析問題、解決問題的能力,進(jìn)而培養(yǎng)學(xué)生的技術(shù)應(yīng)用和技術(shù)創(chuàng)新能力。在教學(xué)方法設(shè)計上做了一下改進(jìn):
1)突出工學(xué)結(jié)合:在講解基本理論知識的基礎(chǔ)上,引入具有真實(shí)背景的軟件測試案例,并結(jié)合理論知識講解將案例進(jìn)行改造,使案例的分析應(yīng)用與理論知識相呼應(yīng)。目前市場上IT公司在招聘測試人員時按照所需技能的不同,將測試人員分為三個等級,分別為初級測試工程師、中級測試工程師和高級測試工程師。分析不同等級的要求,在教學(xué)過程中,主要針對初級和中級的技能要求循序漸近的展開教學(xué)。使通過此教學(xué)改進(jìn),既彌補(bǔ)了教師缺乏實(shí)戰(zhàn)經(jīng)驗(yàn)帶來的不足,也使學(xué)生能較真實(shí)的接觸到實(shí)際應(yīng)用,從一定程度上實(shí)現(xiàn)了人才培養(yǎng)與市場需求的接軌。
2)強(qiáng)調(diào)團(tuán)隊(duì)合作:在教學(xué)過程中實(shí)施“1-7”模式,即在實(shí)驗(yàn)課教學(xué)中,采用團(tuán)隊(duì)合作的方式,分組完成各項(xiàng)任務(wù)。在實(shí)驗(yàn)初期由教師合理分配各團(tuán)隊(duì)成員間的任務(wù),培養(yǎng)學(xué)生的基本崗位技能。經(jīng)過兩個實(shí)驗(yàn)任務(wù)的完成,每個團(tuán)隊(duì)挑出一名同學(xué)為項(xiàng)目組長,模擬公司招聘的形式,招聘4~6個組員組建自己的團(tuán)隊(duì)。后期實(shí)驗(yàn)任務(wù)的分工由團(tuán)隊(duì)組長負(fù)責(zé)項(xiàng)目進(jìn)展、分工協(xié)作、制定測試計劃等工作,其他小組成員則按要求完成自己的工作,如編寫測試策略、設(shè)計測試用例、撰寫測試報告等,教師主要起引導(dǎo)作用,充分發(fā)揮以學(xué)生為主體。為了全面培養(yǎng)學(xué)生,在不同的任務(wù)中,組員通過角色互換,充分發(fā)揮其溝通能力及綜合技術(shù)能力。在學(xué)期末,通過團(tuán)隊(duì)評比,以提高平時成績的形式對表現(xiàn)優(yōu)秀的團(tuán)隊(duì)進(jìn)行獎勵。通過此教學(xué)手段,可以培養(yǎng)加強(qiáng)學(xué)生面試技巧、溝通能力、團(tuán)隊(duì)意識、競爭意識等職業(yè)素質(zhì)的培養(yǎng)。
4結(jié)束語
基于人才市場需求的《軟件測試技術(shù)》課程體系研究定位在對人才市場的實(shí)際需求分析之上,針對軟件測試人才的特點(diǎn)要求,把行業(yè)、企業(yè)對人才的要求轉(zhuǎn)化為教學(xué)中的具體目標(biāo)。構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系。
參考文獻(xiàn):
[1]朱少民.軟件測試方法和技術(shù)[M].北京:清華大學(xué)出版社,2010.
[2]古樂.軟件測試案例與實(shí)踐教程[M].北京:清華大學(xué)出版社,2007.
[3]馬民生,馬友忠,任剛.以就業(yè)為導(dǎo)向的軟件測試實(shí)踐課課程改革[J].電腦知識與技術(shù),2010(4):241-242.
[4]劉偉.獨(dú)立學(xué)院軟件測試課程的教學(xué)探索與實(shí)踐[J].廣西教育.2009(24):31-33.
關(guān)鍵字:服務(wù)區(qū)經(jīng)濟(jì);軟件測試;課程建設(shè)
1市場需要和目前現(xiàn)狀
隨著IT技術(shù)的發(fā)展和普及,我國軟件行業(yè)對于測試專業(yè)工作人員的需要超過20萬人。但是目前我國本科的課程中大部門都沒有專門的建設(shè)軟件測試的課程,僅僅只是作為軟件工程中的一個要點(diǎn)被簡單地學(xué)習(xí),學(xué)生在學(xué)習(xí)過程中普遍重視開發(fā),輕視測試,進(jìn)入測試行業(yè)的人數(shù)非常少。高職學(xué)院很多都在后期單獨(dú)建設(shè)軟件測試的課程,但是由于學(xué)時還很少,總的來說,學(xué)生經(jīng)過課程的學(xué)習(xí),雖然能夠基本掌握軟件測試的基本含義和理論,了解基本的測試技術(shù)和測試的方法,但是能夠真正使用到技術(shù)分析和在實(shí)際崗位中使用的專業(yè)能力還是不足。
目前我國很多軟件企業(yè)的總?cè)藬?shù)在50人以下,達(dá)到70%。很多沒有成立專門的軟件測試相關(guān)部門,這些中小型的軟件企業(yè)都希望使用有工作經(jīng)理的軟件測試工作人員直接工作。很多社會上的培訓(xùn)機(jī)構(gòu),在市場經(jīng)濟(jì)方面非常重視,這些機(jī)構(gòu)一般會開設(shè)將近210節(jié)課時的課程,學(xué)生大部分都是還沒有找到工作的應(yīng)屆畢業(yè)生,主要老師都是曾經(jīng)在相關(guān)電信、證券、金融行業(yè)負(fù)責(zé)過軟件測試的負(fù)責(zé)人,有很多機(jī)構(gòu)在課程接收后可以推薦學(xué)生就業(yè),很多中小型軟件企業(yè)也愿意吸收。但是,這類培訓(xùn)機(jī)構(gòu)很多價格都非常高,而且培訓(xùn)機(jī)構(gòu)數(shù)量眾多,質(zhì)量無法得到保證。
2目前存在的不足和對策措施
目前高職軟件測試技術(shù)課程建設(shè)中存在的不足還有很多,下面進(jìn)行簡單的分析研究。
2.1教材不完善
目前我國面對高職院校的軟件測試教材還很少,內(nèi)容還不完善。近年來出版的基本相關(guān)教材都是對軟件測試的基本概念、理論和使用知識進(jìn)行詳細(xì)的講解,但是還存在著很多相同的問題:(1)沒有大型集中項(xiàng)目的功能、性能測試實(shí)際事例的全過程,沒有把比較分開的知識要點(diǎn)和主要技能綜合起來進(jìn)行分析研究。(2)在實(shí)現(xiàn)技術(shù)操作上比較重視,但是在文檔工作上的重視度不足,對于這一點(diǎn),可以增加怎樣編寫“測試計劃”和“測試報告”的模板,并且給出測試的記錄和日記模板。同時,還可以編制出軟件測試工作中根據(jù)經(jīng)驗(yàn)得出的工作經(jīng)驗(yàn),比如軟件測試的十條標(biāo)準(zhǔn)、十大經(jīng)典事例等。這些經(jīng)驗(yàn)都非常實(shí)用,如果進(jìn)入工作崗位中就可以馬上使用。(3)在現(xiàn)在的教材中關(guān)于測試工具的使用方法都是來自產(chǎn)品的使用說明書上的內(nèi)容,很難讓學(xué)生產(chǎn)生學(xué)習(xí)興趣。在教材的編寫中,要以學(xué)生的角度來編寫,在實(shí)踐指導(dǎo)上多重視,讓學(xué)生能夠在最少的實(shí)踐中熟練掌握和應(yīng)用測試技能。(4)測試的工具要使用中小型軟件企業(yè)經(jīng)常使用的軟件,比如在功能的測試上使用Mercuey QuickTest Professional(QTP),在性能的測試上使用Mercuey LoadRunner,在管理工具中可以使用開源的并行版本控制的CVS,使用Test Director或者相同類型的新版工具Quality Center(QC)。在2個極端中要注意:一是避免教材中出現(xiàn)已經(jīng)在市場中不再使用的工具;二是避免價格高昂的軟件教育,比如IBM Rational中的Clear Case,ClearQuest,F(xiàn)unctional Tester,Performance Tester,雖然這些軟件的性能比較好,但是在市場中的使用率很低,只有成熟度能力CMM高的大型軟件才能使用。
2.2教師隊(duì)伍建設(shè)
高職院校在軟件測試的教育中,經(jīng)常使用事例教學(xué)和實(shí)際的項(xiàng)目結(jié)合到課程的教育和設(shè)計里,它是經(jīng)過一直的累積和創(chuàng)新,主要存在在教師頭腦中的知識,所以,提高教師本身的知識量明顯比提高在教材上的知識更加重要。提高教師知識儲量,讓教師有終身學(xué)習(xí)的良好素質(zhì),在教育和教學(xué)的發(fā)展中,要更加加深教師對于教學(xué)中專業(yè)經(jīng)驗(yàn)、教學(xué)理念和方法的反省,不停探索學(xué)習(xí)相關(guān)專業(yè)知識。
從封閉的知識變?yōu)殚_放的知識,目前知識的更新速度非???,教師也要在軟件行業(yè)的前線,了解行業(yè)的發(fā)展情況,把目前市場中的最新技術(shù)和理念帶到課程中,讓學(xué)生的學(xué)習(xí)課程和市場統(tǒng)一。教師的自身知識水平需要不斷的擴(kuò)充和提高,讓自身的知識能夠形成一種開放的、動態(tài)的模式,進(jìn)行自我的調(diào)節(jié)和管理。而且教師應(yīng)該走在行業(yè)的尖端,或者參加相關(guān)企業(yè)的項(xiàng)目研發(fā),獲得行業(yè)資格證,這也是提高師資隊(duì)伍水平的有效方法。
很多軟件企業(yè)的測試人員都有著豐富的項(xiàng)目實(shí)際測試經(jīng)驗(yàn),是知識的應(yīng)用和創(chuàng)新中最有效的資源。如果在條件允許的情況下,可以邀請他們來學(xué)校兼職進(jìn)行教育授課。同時,可以使用提高學(xué)習(xí)的有效方法來深入研究其成果共同學(xué)習(xí)。共同學(xué)習(xí)是在目前技術(shù)系統(tǒng)中的創(chuàng)新改革,在信息、知識、技能中間建設(shè)共同進(jìn)步、共同學(xué)習(xí)的關(guān)系。讓雙方可以在學(xué)習(xí)的內(nèi)容中和學(xué)生進(jìn)行有效的互動。在信息的結(jié)構(gòu)上,要提高信息的聚合制度??偟膩碚f,就是加深交流,綜合信息,共同寫作,合作創(chuàng)新,產(chǎn)生一種共享知識的形態(tài)。
2.3改進(jìn)教學(xué)方法的對策措施
課程應(yīng)該建立在一個知識充實(shí)的職業(yè)技能培訓(xùn)制度中,使用新型的“場景教學(xué)方法”。用實(shí)際的工作內(nèi)容作為主體,使用項(xiàng)目方向的角色模擬形式,提出“以實(shí)用為基礎(chǔ),學(xué)以致用”的教學(xué)觀念。把實(shí)際中的經(jīng)驗(yàn)作為主要的指導(dǎo),使用任務(wù)驅(qū)動的方法,加強(qiáng)實(shí)際的測試技能學(xué)習(xí),給一些企業(yè)進(jìn)行測試項(xiàng)目。
2.3.1工作場景
這是企業(yè)的實(shí)際操作過程和工作的場景,使用已經(jīng)開始使用的需要測試的資料和代碼,開始項(xiàng)目的分析和工作分解,模擬出企業(yè)在測試工作中的環(huán)境。
2.3.2主導(dǎo)項(xiàng)目
所有的學(xué)習(xí)點(diǎn)和方法都是經(jīng)過一個或多個項(xiàng)目結(jié)合的。學(xué)生經(jīng)過可以擴(kuò)充的項(xiàng)目實(shí)際例子來進(jìn)一步學(xué)習(xí)相關(guān)知識和技能。所有的學(xué)習(xí)都是在進(jìn)行項(xiàng)目中的實(shí)際工作任務(wù),了解在測試過程中經(jīng)常使用的技術(shù)、過程和人員配合情況,并學(xué)會運(yùn)用有關(guān)的解決方法。學(xué)生使用這種方法可以擁有一定的完成項(xiàng)目的主導(dǎo)能力。
2.3.3模擬角色
學(xué)生在真實(shí)的動手過程的課程和項(xiàng)目時間上,利用實(shí)際的企業(yè)項(xiàng)目、實(shí)際的工作流程和使用的工作,開始模擬項(xiàng)目中所需的角色。共同完成項(xiàng)目的任務(wù)。這樣可以了解不同角色需要的工作技能并且積累相關(guān)的工作經(jīng)驗(yàn)。
2.3.4分解任務(wù)
在需要完成的整個項(xiàng)目中,對于必須掌握和理解的概念和知識,把一個項(xiàng)目分成多個任務(wù),然后對每一個任務(wù)所需要了解的知識、技能以及要求進(jìn)行逐個的分析講解。并經(jīng)過每個小任務(wù)的完成的完成方法對整個學(xué)習(xí)內(nèi)容進(jìn)行組織和設(shè)計。
2.3.5六步教學(xué)
在知識和技能的學(xué)習(xí)和教育過程中,從特別的到普通的,一般都是根據(jù)以下6個步驟來進(jìn)行學(xué)習(xí)的組織,分別是:提出問題、分析問題、解決問題、總結(jié)相關(guān)規(guī)律和知識、擴(kuò)展相關(guān)知識和技能、能夠解決相關(guān)相似的更高級問題。在教學(xué)的過程中,為了讓學(xué)生對于知識的層面和思維方法更加豐富,可以鼓勵學(xué)生自己解決。經(jīng)過實(shí)際訓(xùn)練課程中的試驗(yàn),項(xiàng)目的模擬,讓學(xué)生對于學(xué)習(xí)具有舉一反三的思維,讓學(xué)生能夠更加熟悉地掌握重點(diǎn)技術(shù)的使用方法,給日后積累更多的經(jīng)驗(yàn)。
2.3.6團(tuán)隊(duì)合作
在教學(xué)的過程中,可以把學(xué)生分成幾組團(tuán)隊(duì),每一個團(tuán)隊(duì)按照課程的教學(xué)內(nèi)容和教師的安排,使用技術(shù)分析、討論,實(shí)際使用等方法,完成這個項(xiàng)目中的任務(wù)。
2.3.7崗位信息
進(jìn)行軟件測試技術(shù)課程學(xué)習(xí)的都是軟件的測試員或工程師,目前市場中對于這類人才的需求非常大。案例庫也是一個動態(tài)的資源系統(tǒng),所以可以把網(wǎng)絡(luò)、報紙、合作單位、專業(yè)人員的信息進(jìn)行結(jié)合,一方面可以讓畢業(yè)生就業(yè)問題更加輕松,還能幫助學(xué)生了解企業(yè)對于工作人員的要求。用在線的方式,幫助畢業(yè)生、測試工程師等了解相關(guān)的崗位信息,更有針對性。
關(guān)鍵詞:開發(fā)內(nèi)化教學(xué)法;就業(yè)競爭力;軟件測試人才培養(yǎng)
中圖分類號:G642文獻(xiàn)標(biāo)識碼:A
武昌理工學(xué)院堅(jiān)持以“成功素質(zhì)教育”為特色的教育理念和人才培養(yǎng)模式,致力于培養(yǎng)“專業(yè)素質(zhì)扎實(shí)、非專業(yè)素質(zhì)過硬、個性特長突出、創(chuàng)新與實(shí)踐能力強(qiáng)”的高素質(zhì)人才 [1]。通過廣大師生十余年的努力,我校畢業(yè)生的就業(yè)率和就業(yè)質(zhì)量穩(wěn)步上升,取得了一定的成效。2010年,我校被列為國家教育體制改革試點(diǎn)高校,承擔(dān)“創(chuàng)新民辦高校高素質(zhì)人才培養(yǎng)模式”的改革試點(diǎn)任務(wù),目前,我校正沿著這一任務(wù)的指導(dǎo)思想,采用通過教師的開發(fā)促成學(xué)生內(nèi)化的教學(xué)方法,進(jìn)一步深化教學(xué)改革。近兩年來,筆者主要承擔(dān)計算機(jī)科學(xué)和軟件工程專業(yè)軟件測試課程的教學(xué)任務(wù),在此,簡要分析軟件測試人才的市場需求及軟件測試課程教學(xué)中存在的問題,結(jié)合課程特點(diǎn)和開發(fā)內(nèi)化教學(xué)法,探索軟件測試人才的培養(yǎng)模式。
一、軟件測試人才的需求狀況
軟件產(chǎn)業(yè)發(fā)展的幾十年中,軟件測試已逐步滲透到各個領(lǐng)域,成為越來越重要的技術(shù)成分。很多優(yōu)秀的企業(yè)中,開發(fā)人員與測試人員的比例達(dá)到了3:1或2:1[2]。大量的人才需求導(dǎo)致我國軟件測試人才嚴(yán)重缺乏,專家分析其主要原因是國內(nèi)軟件測試人才教育相對滯后[3]。實(shí)際上,我國從2003年起計算機(jī)相關(guān)的教育機(jī)構(gòu)就相繼開設(shè)了軟件測試課程,經(jīng)過多年的軟件測試人才培養(yǎng),用人單位依然缺乏軟件測試人才,而學(xué)過軟件測試課程的畢業(yè)生還是難于找到工作。針對這一問題,筆者對軟件測試人才的市場需求進(jìn)行了調(diào)研。
調(diào)研結(jié)果顯示,各公司的用人條件和考察內(nèi)容雖不盡相同,但多數(shù)條件都比較相似,歸納起來包括以下幾個方面:
① 計算機(jī)相關(guān)專業(yè)畢業(yè);
② 有測試工作經(jīng)驗(yàn);
③ 能獨(dú)立編寫各類測試文檔;
④ 熟練相關(guān)工具使用(包括測試工具及配置管理工具);
⑤ 熟悉主流操作系統(tǒng);
⑥ 具備很強(qiáng)的語言表達(dá)能力、溝通能力和團(tuán)隊(duì)合作精神;
⑦ 學(xué)習(xí)能力強(qiáng),能快速上手新技術(shù),新業(yè)務(wù)。
此外,其他調(diào)查結(jié)果顯示,在計算機(jī)行業(yè),隨著外包開發(fā)行業(yè)快速發(fā)展,對人才在代碼和文檔方面的規(guī)范性、技能和工具的熟練程度要求越來越高[4]。前面列舉的軟件測試人才招聘條件也應(yīng)證了這一點(diǎn)。
二、軟件測試課程的教學(xué)現(xiàn)狀
近年來,各教育機(jī)構(gòu)的教師們圍繞該課程展開了一些課堂和實(shí)驗(yàn)教學(xué)的研究,在教學(xué)中采用案例教學(xué)法,強(qiáng)化實(shí)驗(yàn)教學(xué)環(huán)節(jié),取得了一定的成果,但從案例的規(guī)范性和實(shí)驗(yàn)體系看,忽略了軟件測試具有以工程項(xiàng)目為對象、以設(shè)計文檔為依據(jù)的特征。主要存在的問題表現(xiàn)在以下幾個方面:
① 缺乏規(guī)范的系統(tǒng)案例;
② 重技術(shù)實(shí)現(xiàn)輕文檔訓(xùn)練(使用及書寫);
③ 測試工具流于產(chǎn)品說明;
④ 缺乏面向項(xiàng)目的實(shí)驗(yàn)教學(xué)體系。
由此可見,我們教學(xué)中存在的問題正是人才市場的需求所在。
三、開發(fā)內(nèi)化教學(xué)法在軟件測試人才培養(yǎng)中的應(yīng)用
成功素質(zhì)教育的基本教學(xué)方法包括啟發(fā)式教學(xué)法、互動式教學(xué)法、實(shí)戰(zhàn)式教學(xué)法,成功素質(zhì)教育的基本學(xué)習(xí)方法包括自主式學(xué)習(xí)法和研究式學(xué)習(xí)法[1]。開發(fā)內(nèi)化教學(xué)法以培養(yǎng)和調(diào)動學(xué)生自主學(xué)習(xí)的積極性為前提,通過教師的開發(fā)促成學(xué)生內(nèi)化的一種教學(xué)方法,筆者認(rèn)為開發(fā)內(nèi)化教學(xué)發(fā)就是成功素質(zhì)教育的基本教學(xué)方法和基本學(xué)習(xí)方法的總和。軟件測試是近年來誕生的一門新學(xué)科,目前已基本形成其獨(dú)立的理論體系,但是隨著軟件產(chǎn)業(yè)的發(fā)展,有關(guān)軟件測試的有效技術(shù)和方法還有待人們進(jìn)一步探索。軟件測試課程主要針對計算機(jī)相關(guān)專業(yè)高年級學(xué)生開設(shè),需要多門先修課程作為鋪墊。針對具備一定計算機(jī)專業(yè)知識的教學(xué)對象及還有較大發(fā)展空間的學(xué)科來說,采用開發(fā)內(nèi)化教學(xué)法是比較適合的。下面主要針對人才市場需求和軟件測試課程教學(xué)中存在的問題,利用開發(fā)內(nèi)化教學(xué)法探索軟件測試人才培養(yǎng)模式。
(一)啟發(fā)式教學(xué)法的應(yīng)用
啟發(fā)式教學(xué)能提高學(xué)生的學(xué)習(xí)能力、快速上手新技術(shù)和新業(yè)務(wù)的能力,因此,能幫助學(xué)生達(dá)成人才需求條件中的⑦,并能促進(jìn)學(xué)生養(yǎng)成自主式學(xué)習(xí)和研究式學(xué)習(xí)的良好習(xí)慣。
軟件測試是一門主要由計算機(jī)科學(xué)及管理學(xué)相結(jié)合的新學(xué)科,目前,教材中的很多內(nèi)容基本都是前人采用技術(shù)的介紹,這些技術(shù)往往是利用計算機(jī)技術(shù)和管理學(xué)的思想,在軟件測試實(shí)踐中探索出來的。因此,在教學(xué)中,對于各種測試技術(shù)的學(xué)習(xí),不是直接介紹技術(shù)實(shí)現(xiàn)的方法,而是先提出一個具體的測試對象,讓學(xué)生思考怎么測試更科學(xué),在這一過程中,我們經(jīng)常發(fā)現(xiàn)學(xué)生們也能利用先修課程學(xué)到的知識想到教材上介紹的方法,抓住這樣的時機(jī),鼓勵學(xué)生,表揚(yáng)學(xué)生,讓學(xué)生堅(jiān)定“我行”的自信心,有了自信心學(xué)生們就能更大膽更主動地思考和解決問題。
對軟件進(jìn)行有效的測試,提升測試效率,是軟件測試面臨的關(guān)鍵性挑戰(zhàn),也是軟件測試技術(shù)進(jìn)一步發(fā)展的瓶頸,各種測試工具的誕生正是基于這樣的出發(fā)點(diǎn)。但由于種種原因測試工具的使用還遠(yuǎn)遠(yuǎn)達(dá)不到普及的程度和期望的效果,這說明工具不夠完善,有待我們?nèi)ラ_發(fā)更有效更易于使用的新工具來突破這一瓶頸。在軟件測試工具的學(xué)習(xí)中,我們主要不在介紹工具的作用,而主要是啟發(fā)學(xué)生去思考測試工具采用的技術(shù)并評判這種技術(shù),讓學(xué)生通過查閱資料進(jìn)一步學(xué)習(xí),思考還有沒有更好的手段和方法來改進(jìn)測試工具。
此外,由于軟件測試的手段基本都來源于計算機(jī)專業(yè)的相關(guān)知識,教學(xué)中就要引導(dǎo)學(xué)生去挖掘已經(jīng)學(xué)過的知識來解決測試中的問題,并不失時機(jī)地強(qiáng)調(diào)每一位計算機(jī)專業(yè)的學(xué)生都要有“計算機(jī)頭腦”,這個“計算機(jī)頭腦”要善于觀察,捕獲日常生活中一切可以用計算機(jī)來解決的問題,并思考解決方法。
(二)互動式教學(xué)法的應(yīng)用
互動式教學(xué)法能提高學(xué)生能過的思考能力、資料查閱能力、歸納總結(jié)能力、表達(dá)能力,因此,能幫助學(xué)生達(dá)成人才需求條件中的⑥和⑦。
啟發(fā)式教學(xué)產(chǎn)生的最佳效果就是帶來師生間良好的互動,由于授課時間和內(nèi)容的制約,我們采用啟發(fā)式教育常常是教師自問自答的方式。目前,我校推行的教學(xué)改革,倡導(dǎo)學(xué)生自主學(xué)習(xí),大力提倡課堂提問,并要求加大授課時間中提問和互動時間的比例。在這一改革思想的指導(dǎo)下,軟件測試教學(xué)中將按照啟發(fā)式教育中針對的相關(guān)內(nèi)容,提出問題,采用讓學(xué)生隨堂回答的方式和課后查閱再做答的方式進(jìn)行。主要以兩種方式進(jìn)行提問:第一,預(yù)習(xí)提問,在這一環(huán)節(jié),設(shè)置基本概念和知識點(diǎn)的提問,主要檢驗(yàn)學(xué)生的預(yù)習(xí)效果,并在提問過程中對重點(diǎn)內(nèi)容進(jìn)行講解;第二,復(fù)習(xí)提問,復(fù)習(xí)提問的難度比預(yù)習(xí)提問有所加大,屬于基本知識的衍生提問,需要學(xué)生在掌握基本知識的基礎(chǔ)上經(jīng)過一定的思考或資料查閱才能回答。通過這兩種形式的提問,可以促進(jìn)學(xué)生掌握知識、訓(xùn)練學(xué)生靈活運(yùn)用知識解決實(shí)際問題的能力。
(三)實(shí)戰(zhàn)式教學(xué)法的應(yīng)用
人才需求條件中的測試工作經(jīng)驗(yàn)是畢業(yè)生們就職難的關(guān)鍵,而實(shí)戰(zhàn)教學(xué)法是達(dá)成這一條件的主要途徑,在軟件測試的實(shí)戰(zhàn)中,還能訓(xùn)練學(xué)生測試文檔寫作及測試工具的使用,因此,實(shí)戰(zhàn)教學(xué)法能達(dá)成人才需求條件中的②、③和④。
在近兩年的教學(xué)改革中,主要采用案例教學(xué)法,在實(shí)驗(yàn)教學(xué)中用規(guī)范完整的案例模擬企業(yè)測試工作模式,讓學(xué)生在實(shí)踐中形成“技能”、具備“經(jīng)驗(yàn)”。實(shí)驗(yàn)內(nèi)容的安排上,注重指導(dǎo)學(xué)生使用設(shè)計文檔、自己編寫測試文檔,并利用自動化測試工具實(shí)施測試,兼顧測試技能訓(xùn)練及工具熟練程度的提高。
1. 規(guī)范案例的選擇:早期的軟件測試教材只涉及一些小的程序段和非系統(tǒng)的案例,2009年以后的軟件測試教材在這方面做了很大的改進(jìn),出現(xiàn)了較多的案例教程及實(shí)踐教程。利用系統(tǒng)案例作為理論知識講解的載體,將更直觀地讓學(xué)生理解知識。但要讓學(xué)生具備軟件測試經(jīng)驗(yàn),教材中的案例還存在一些問題,學(xué)生的經(jīng)驗(yàn)只有通過動手實(shí)驗(yàn)才可能具備,而且這里所說的經(jīng)驗(yàn)不是零散的,而是系統(tǒng)化的軟件測試經(jīng)驗(yàn)。在實(shí)際工作中,軟件測試過程中的單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試分別對應(yīng)軟件設(shè)計中的詳細(xì)設(shè)計、概要設(shè)計、系統(tǒng)設(shè)計和需求分析,要讓學(xué)生在實(shí)驗(yàn)中完成一個系統(tǒng)的較完整測試過程,不僅需要被測案例系統(tǒng)的完整代碼及數(shù)據(jù),還必須提供全套的設(shè)計文檔,這樣的案例系統(tǒng)是現(xiàn)有軟件測試教材和很多軟件開發(fā)的實(shí)例參考書所不具備的。
我們通過企業(yè)調(diào)研,分析軟件行業(yè)的流行開發(fā)模式,主要從清華大學(xué)出版的系列叢書“軟件開發(fā)全程實(shí)錄”中選擇案例,并陸續(xù)補(bǔ)充完案例的設(shè)計資料(需求分析、系統(tǒng)設(shè)計、概要設(shè)計、詳細(xì)設(shè)計)。利用規(guī)范的案例系統(tǒng),在理論教學(xué)中用系統(tǒng)案例詮釋理論,在實(shí)驗(yàn)教學(xué)中用系統(tǒng)案例模擬實(shí)際工作模式進(jìn)行實(shí)戰(zhàn)訓(xùn)練。
2. 實(shí)際測試過程的模擬:在實(shí)驗(yàn)教學(xué)中,我們花1/3的時間進(jìn)行軟件測試基本技能訓(xùn)練,主要針對白盒及黑盒測試技術(shù)選擇最實(shí)用的測試技術(shù)進(jìn)行用例設(shè)計,這一部分是常規(guī)的軟件測試課程的主要實(shí)驗(yàn)內(nèi)容,屬于基本功訓(xùn)練實(shí)驗(yàn)。我們用2/3的時間進(jìn)行模擬實(shí)驗(yàn),在這部分,根據(jù)學(xué)生的實(shí)際情況及筆者多年企業(yè)工作經(jīng)驗(yàn),模擬企業(yè)對新手軟件測試人員的培養(yǎng)及職業(yè)規(guī)劃模式,循序漸進(jìn)安排實(shí)驗(yàn)。
在軟件測試的模擬實(shí)驗(yàn)中,我們采用文檔齊全的規(guī)范案例實(shí)施教學(xué),采用先實(shí)施后設(shè)計的順序,依次讓學(xué)生進(jìn)行單元測試、集成測試、系統(tǒng)測試的實(shí)施及用例設(shè)計。注重測試過程、設(shè)計文檔的使用及測試文檔的書寫訓(xùn)練,在實(shí)驗(yàn)后期,采用分組實(shí)驗(yàn)的方式,讓學(xué)生分擔(dān)測試任務(wù)中的不同角色,模擬團(tuán)隊(duì)協(xié)作完成測試任務(wù)。
3. 一體化教學(xué)的實(shí)施:從軟件測試人員的招聘條件看,除了要求具備軟件測試的基本知識,要設(shè)計出較好的測試用例、跟蹤軟件缺陷并改正軟件缺陷、選擇較好的測試手段提高測試效率等,還需要相關(guān)計算機(jī)專業(yè)知識的支撐。此外,企業(yè)期望的是懂編程、設(shè)計、測試、管理的綜合人才,因此,必須結(jié)合專業(yè)方向形成課程體系。我們已經(jīng)進(jìn)行了在同一學(xué)期三門課程之間,利用同一案例進(jìn)行一體化教學(xué)的嘗試,即在軟件建模設(shè)計課程、編程語言課程、軟件測試課程中采用相同的案例推進(jìn)教學(xué),以期讓學(xué)生更深入地體會軟件開發(fā)的全過程,具備軟件工程化的“經(jīng)驗(yàn)”。
四、結(jié)論
在“創(chuàng)新民辦高校高素質(zhì)人才培養(yǎng)模式”的改革試點(diǎn)中,軟件測試課程的教學(xué)改革將在總結(jié)前面教學(xué)改革經(jīng)驗(yàn)和教訓(xùn)的基礎(chǔ)進(jìn)一步推行開發(fā)內(nèi)化教學(xué)法。在今后的教學(xué)中,我們打算進(jìn)行相同案例跨學(xué)期跨課程的一體化教學(xué)探索,在這一探索過程中,將建設(shè)規(guī)范的教學(xué)案例資源庫,探索合理的一體化教學(xué)體系,以幫助學(xué)生系統(tǒng)地學(xué)習(xí)專業(yè)知識、領(lǐng)悟知識的連貫性、提高學(xué)生的工程素養(yǎng)和實(shí)戰(zhàn)能力。參與一體化教學(xué)的各門課程在試驗(yàn)教學(xué)中注重企業(yè)工作模式和場景的模擬,讓學(xué)生在學(xué)習(xí)過程中具備軟件工程全過程的“經(jīng)驗(yàn)”,以進(jìn)一步提升學(xué)生就業(yè)競爭力。
參考文獻(xiàn):
[1] 趙作斌. 大學(xué)成功素質(zhì)教育理論與實(shí)踐[M]. 武漢: 武漢大學(xué)出版社, 2009.
[2] 張向宏. 軟件測試?yán)碚撆c實(shí)踐教程[M]. 北京: 人民郵電出版社, 2009.
[3] 劉德寶. 軟件測試工程師培訓(xùn)教材[M]. 北京: 科學(xué)出版社, 2009.
[4] 北京阿博泰克北大青鳥信息技術(shù)有限公司. 行業(yè)規(guī)則和行業(yè)經(jīng)驗(yàn)手冊[M]. 北京: 科學(xué)出版社, 2008.
[5] 吳建平. 高職“軟件測試技術(shù)”課程存在問題和應(yīng)對措施[J]. 計算機(jī)教育, 2007(9).
[6] 陸慧娟等. 面向本科就業(yè)市場的計算機(jī)工程型人才培養(yǎng)研究[J]. 計算機(jī)教育, 2011(5).
[7] 佟偉光. 軟件測試[M]. 北京: 人民郵電出版社, 2008.
各位領(lǐng)導(dǎo)、老師,親愛的同學(xué)們:
大家下午好!
我叫xx,來自xx班級,很高興能夠代表2018軟件測試國賽隊(duì)上臺發(fā)言。在這次全國比賽中,xx和xx和xx組成的代表隊(duì)很榮幸獲得一等獎,成為此項(xiàng)賽事湖北省唯一獲獎的代表隊(duì)。這一成績不僅凝結(jié)著我們的汗水,更離不開學(xué)校和軟件工程學(xué)院領(lǐng)導(dǎo)的關(guān)心支持,輔導(dǎo)老師的辛勤培育。
這次參賽,使我們得到了很大提高和鍛煉,使我深深認(rèn)識到了只要我們自己付出汗水和努力,就一定能夠得到回報。接下來,我代表我的隊(duì)員發(fā)表一下我們從培訓(xùn)到參賽期間的心得體會:
1、始終保持一顆學(xué)習(xí)的心
剛開始訓(xùn)練的時候,我們每個人對軟件測試都了解的比較淺薄,需要重新去學(xué)習(xí)這方面的知識,而理論知識的學(xué)習(xí)上是枯燥的,在這個過程中,我們每個人都戒驕戒躁,認(rèn)真學(xué)習(xí),討論、根據(jù)老師給出的測試用例設(shè)計方法來舉一反三。同時,我們要端正對訓(xùn)練期間學(xué)習(xí)的態(tài)度,不能把訓(xùn)練期間學(xué)習(xí)的內(nèi)容當(dāng)作要去比賽而完成的任務(wù),要真正的探討,把老師教會的知識完全理解、學(xué)會,然后運(yùn)用到實(shí)際操作當(dāng)中。
2、
責(zé)任心和毅力是獲獎重要因素
從3月初選拔到5月底競賽,中間經(jīng)歷了將近3個月的訓(xùn)練,我們每天早8晚8,訓(xùn)練12個小時,每天進(jìn)行2次模擬練習(xí),練習(xí)、總結(jié)、再練習(xí)、再總結(jié)。這個過程是枯燥的,別的同學(xué)周末、清明節(jié)、勞動節(jié)在放假、休息時,我們在培訓(xùn)室敲打著鍵盤,每天都想著自己去提升自己,比如說:比昨天多寫50條測試用例,兩篇文檔的時間再縮短5分鐘,Bug找的更多,性能測試能夠解決環(huán)境問題。4個小時的比賽時間,我們訓(xùn)練時間從最初的4個小時,壓縮到3個半小時,再壓縮到3個小時。時間安排上從剛開始的早上2小時,下午2小時,改到和比賽時間相符的早上9點(diǎn)到下午1點(diǎn)。每次訓(xùn)練完后我們都會向老師匯報任務(wù)完成度,不足之處,進(jìn)行自我總結(jié),不浪費(fèi)一絲時間,甚至在去往許昌的高鐵上,我們每個人都拿著一撮打印好的知識要點(diǎn)默讀,直到參賽前一天的晚上,才結(jié)束這種狀態(tài)。
3、
細(xì)節(jié)和臨場應(yīng)對是取勝關(guān)鍵
比賽中有很多實(shí)力強(qiáng)的團(tuán)隊(duì),但是有的獲得了一等獎,有的沒有獲得一等獎,其原因就在于細(xì)心和臨場應(yīng)對能力。4個小時,6篇文檔,很多隊(duì)都能做到,但是得分的關(guān)鍵就在于細(xì)節(jié)。我們從訓(xùn)練開始就注重細(xì)節(jié)問題,盡量不因細(xì)節(jié)問題丟分。其次是臨場應(yīng)對,賽場上的環(huán)境是多變的,我們訓(xùn)練的環(huán)境并不可能百分百與賽場環(huán)境相符,為了保證在比賽期間不因環(huán)境問題打亂計劃,在訓(xùn)練的過程中,出現(xiàn)的環(huán)境問題都是我們盡量自己去解決,實(shí)在解決不了才會詢問老師。同時,我們還假想了很多賽場上會出現(xiàn)的問題,并且制定了相應(yīng)的策略,以充足的準(zhǔn)備去面對賽場。
4、
團(tuán)隊(duì)協(xié)作很重要
關(guān)鍵詞:PLC軟件;工程化;管理實(shí)踐
中圖分類號: TU71 文獻(xiàn)標(biāo)識碼: A 文章編號: 1673-1069(2016)35-23-2
0 引言
本文結(jié)合本單位裝檢類設(shè)備及高端工藝裝備中PLC軟件特點(diǎn),推廣深化GJB5000A體系應(yīng)用,對PLC軟件工程化管理進(jìn)行了初步探索與實(shí)踐,提出了PLC軟件工程化管理方法與規(guī)范,管控關(guān)鍵性過程活動和文檔質(zhì)量,以測試推動PLC軟件工程化,提升PLC軟件的綜合效能,有效支撐本單位裝檢設(shè)備及高端工藝裝備的高質(zhì)量研制與管理。
1 PLC軟件工程化管理的迫切需求
軟件工程化管理是提高軟件研制質(zhì)量的必經(jīng)之路,不僅能降低開發(fā)成本,縮短開發(fā)周期,更能降低軟件研制風(fēng)險,提高軟件的質(zhì)量和可靠性,增強(qiáng)軟件的可維護(hù)性。作為工業(yè)控制系統(tǒng)的重要組成部分,PLC軟件的工程化管理對于保障控制系統(tǒng)安全與可靠運(yùn)行、提升效能和增值等具有重要作用。
PLC(Programmable Logic Controller),即可編程邏輯控制器,應(yīng)用于自動化、高可靠性要求的工業(yè)環(huán)境,成為工業(yè)控制系統(tǒng)的重要單元,廣泛應(yīng)用于邏輯控制、運(yùn)動控制、工藝過程控制、信號測試與診斷等領(lǐng)域,因此廣義上的PLC,亦包括可編程自動化控制器、可編程控制器。
相對于PLC硬件的固態(tài)化與顯性化,PLC軟件具備更靈活的柔性與更強(qiáng)的擴(kuò)展性,成為PLC產(chǎn)品功能實(shí)現(xiàn)與性能提升的關(guān)鍵載體,因此,PLC軟件質(zhì)量亦成為工業(yè)控制系統(tǒng)質(zhì)量與可靠性的關(guān)鍵。PLC軟件廣泛應(yīng)用于各類測試設(shè)備、實(shí)驗(yàn)裝置、裝檢設(shè)備以及高端工藝裝備等,在自動化與智能化控制、安全性與可靠性等方面發(fā)揮著重要作用。
集成化裝檢設(shè)備離不開PLC軟件。實(shí)現(xiàn)裝檢自動化,包括實(shí)現(xiàn)傳感儀表信號檢測、流程自動控制、狀態(tài)監(jiān)控、應(yīng)急安全處理及報警等需要高質(zhì)量、高可靠性的PLC軟件。因此PLC軟件是實(shí)現(xiàn)裝檢自動化與智能化的保障,可以顯著提升產(chǎn)品質(zhì)量可靠性、提高應(yīng)急響應(yīng)能力和環(huán)境適應(yīng)能力、降低勞動強(qiáng)度和操作技能要求、減少人體危害風(fēng)險等。
面向超精密加工領(lǐng)域研發(fā)的高端工藝裝備,幾乎均涉及PLC控制,如金剛車系列機(jī)床、磁流變拋光系列機(jī)床、激光焊接機(jī)床等,實(shí)現(xiàn)電機(jī)與儀表驅(qū)動、人機(jī)交互、運(yùn)動控制、加工工藝過程控制、數(shù)據(jù)采集、通信及故障診斷等。
在高端工藝裝備中,PLC軟件作為控制系統(tǒng)的重要組成部分,從功能看, 它是實(shí)現(xiàn)運(yùn)動(協(xié)調(diào))控制、開關(guān)量邏輯控制、工藝參數(shù)與工藝過程控制、數(shù)據(jù)處理及通信的重要載體;從性能看,它是實(shí)現(xiàn)高端工藝裝備安全性、可靠性的重要技術(shù)手段。
綜前所述,PLC軟件在當(dāng)前和未來均存在巨大的現(xiàn)實(shí)和潛在需求。相對于PLC軟件技術(shù)的不斷發(fā)展,需要在PLC軟件管理方面與時俱進(jìn)。經(jīng)過分析,以下方面制約了PLC軟件的質(zhì)量與研發(fā)進(jìn)度。
①使用的PLC產(chǎn)品種類繁多,各PLC產(chǎn)品技術(shù)差異性大,包括平臺架構(gòu)方式、編程與測試方法等,導(dǎo)致PLC軟件設(shè)計差異性大,尚未結(jié)合本單位產(chǎn)品特點(diǎn)形成相應(yīng)的PLC軟件技術(shù)規(guī)范。
②PLC軟件開發(fā)人員分工不明確,設(shè)計、編碼與測試多由同一人承擔(dān),軟件質(zhì)量與開發(fā)進(jìn)度無法保證,人員更替對項(xiàng)目研發(fā)和后期維護(hù)影響較大。
③PLC軟件開發(fā)過程活動、軟件相關(guān)開發(fā)文檔和軟件版本,未進(jìn)行有效管控,導(dǎo)致PLC軟件質(zhì)量與開發(fā)進(jìn)度成為項(xiàng)目發(fā)展的瓶頸之一。
④針對PLC軟件的測試平臺和測試手段較為欠缺,測試過程缺乏規(guī)范。
大量研究和實(shí)踐表明,軟件工程化是提高軟件開發(fā)質(zhì)量的必經(jīng)之路。中國工程物理研究院機(jī)械制造工藝研究所在軟件工程化管理方面開展了體系研究,于2015年11月通過GJB5000A二級正式評價,形成了軟件工程管理手冊、管理規(guī)范和技術(shù)規(guī)范,切實(shí)提高了本單位軟件工程化水平。
但本單位軟件工程化管理尚未涵蓋PLC軟件。有別于其他軟件,PLC軟件與硬件耦合度高,對硬件平臺依賴性大;PLC軟件驅(qū)動硬件單元,對系統(tǒng)綜合性能影響大;PLC軟件測試難度大,包括測試平臺的搭建、真實(shí)工況與異常工況的模擬等;PLC軟件涉及更多的接口,包括與機(jī)械結(jié)構(gòu)、電氣硬件、上位軟件及復(fù)雜的現(xiàn)場工況。因此,實(shí)施PLC軟件工程化,加強(qiáng)PLC軟件質(zhì)量控制,確保其有效推動提高PLC軟件質(zhì)量和開發(fā)進(jìn)度,需探索與PLC特點(diǎn)和本單位工業(yè)控制系統(tǒng)相適宜的管理辦法。
2 PLC軟件工程化管理調(diào)研
為探索PLC軟件工程化管理方法,我們對國內(nèi)相關(guān)單位的PLC軟件管理進(jìn)行了調(diào)研。根據(jù)調(diào)研初步情況,國內(nèi)還沒有單位將PLC軟件納入GJB5000A體系進(jìn)行管理,尚未針對PLC軟件形成工程體系化的管理方法和規(guī)范。一般均將PLC軟件納入電氣控制系統(tǒng)管理,存在與電氣硬件強(qiáng)耦合、開發(fā)角色分工不明確等帶來的一些問題,包括PLC軟件規(guī)格需求不清晰、開發(fā)過程無法有效跟蹤和控制、測試不規(guī)范、PLC軟件質(zhì)量對人的依賴性大等。但從調(diào)研單位的工程實(shí)踐看,有諸多可供加強(qiáng)PLC軟件質(zhì)量控制的有效手段。
機(jī)床廠專機(jī)的控制軟件,與本單位PLC軟件具有較大相似度。機(jī)床廠對專機(jī)在控制軟件界定及分類管理、設(shè)計原則和技術(shù)要求、評審與軟件驗(yàn)證、軟件版本管理等方面,進(jìn)行了規(guī)范與要求。
同為下位控制的PLC軟件,可借鑒FPGA軟件管理。雖然FPGA軟件面向芯片級、側(cè)重時序邏輯,而PLC軟件面向控制系統(tǒng)集成,兩者在技術(shù)上差異性較大,但在管理方面具有較大的相似性。該院對FPGA軟件質(zhì)量進(jìn)行了有效的體系管理,形成了設(shè)計準(zhǔn)則及測試規(guī)范等,相關(guān)管理經(jīng)驗(yàn)包括配置、需求、角色分配、評審與測試規(guī)范等方面,對于PLC軟件管理均是有益的參考。
重視軟件測試。PLC軟件測試,包括測試平臺的搭建和測試方法的構(gòu)建、PLC程序的執(zhí)行效率、PLC軟件的配置與移植、PLC軟件對硬件變化或性能衰減的適應(yīng)性、PLC軟件對控制系統(tǒng)總體的安全性和可靠性影響等內(nèi)容。從調(diào)研情況看,分階段(包括單元測試、接口測試、集成測試)、多方法(包括數(shù)字仿真、硬件在回路、形式化驗(yàn)證等)測試是有益的,同時,編制測試規(guī)范、測試計劃及測試過程需要對相關(guān)控制軟硬件知識的深入認(rèn)識。
3 PLC軟件工程化管理初探
作為總裝備部組織國內(nèi)專家制定、用于指導(dǎo)軍用軟件研制機(jī)構(gòu)改善軟件過程和加強(qiáng)軟件開發(fā)過程控制與管理的標(biāo)準(zhǔn),GJB5000A對提升軟件研制質(zhì)量和管理水平、實(shí)現(xiàn)軟件研制能力由基于個人的能力轉(zhuǎn)變?yōu)榻M織的能力,提供了科學(xué)管理理念和做法。本單位在高端工藝裝備多個軟件項(xiàng)目開發(fā)中推行GJB5000A,切實(shí)提升了上位控制軟件的研制質(zhì)量。鑒于國內(nèi)尚未將GJB5000A涵蓋PLC軟件管理的現(xiàn)狀,本單位PLC軟件管理遵循GJB5000A“服務(wù)于本單位組織目標(biāo)和質(zhì)量目標(biāo)、追求有效性和適用性,漸進(jìn)推進(jìn)”的思想,結(jié)合本單位PLC軟件和組織特點(diǎn),對PLC軟件工程化管理進(jìn)行了初步探索與管理實(shí)踐。
基于本單位的軟件工程管理體系(QJZ53/54/55),結(jié)合本單位PLC軟件特點(diǎn)、PLC軟件研制管理基礎(chǔ)等,借鑒同行相關(guān)管理方法,形成適宜于本單位PLC軟件應(yīng)用需求、與研發(fā)人員能力和組織管理水平相匹配的PLC軟件研制管理要求,按此要求,在武器型號裝檢設(shè)備及高端工藝裝備項(xiàng)目中,推行PLC軟件工程化項(xiàng)目試點(diǎn),通過項(xiàng)目實(shí)踐及時總結(jié)評價,在實(shí)踐中不斷提升人員的研發(fā)和管理能力、組織管理水平,并迭代完善PLC軟件研制管理要求,從而引導(dǎo)、促進(jìn)PLC軟件研制能力成熟度不斷進(jìn)步。
如前所述,將制約本單位當(dāng)前PLC軟件質(zhì)量和項(xiàng)目進(jìn)度的這些薄弱環(huán)節(jié),設(shè)置為重要環(huán)節(jié)和節(jié)點(diǎn),納入質(zhì)量目標(biāo)加以規(guī)范管理,并基于GJB5000A本地化的軟件工程管理體系進(jìn)行裁剪簡化,形成PLC軟件研制管理要求,其流程:重點(diǎn)從項(xiàng)目開發(fā)的人員配置、過程重要節(jié)點(diǎn)管控和測試規(guī)范、文檔質(zhì)量等方面推進(jìn)PLC軟件工程化管理。
3.1 人員配置
改變設(shè)計、編碼與測試由同一人承擔(dān)的開發(fā)方式,軟件開發(fā)人員至少由2人構(gòu)成,包括需求與設(shè)計員、程序編碼員(根據(jù)目前人員情況,需求與設(shè)計員和程序編碼員可以由同一人承擔(dān))、程序測試員。
軟件工程化總是關(guān)注過程,而過程的關(guān)鍵因素是人。針對當(dāng)前PLC研發(fā)人員不熟悉GJB5000A體系、而掌握GJB5000A的人員又不理解PLC技術(shù)的現(xiàn)況,一方面開展培訓(xùn),提高專業(yè)技術(shù)人員在PLC技術(shù)及軟件工程化管理兩方面的知識儲備;另一方面,讓專業(yè)技術(shù)人員參與數(shù)項(xiàng)PLC軟件工程化試點(diǎn)項(xiàng)目,并交叉承擔(dān)開發(fā)人員、QA、CM、測試人員等不同角色,在過程實(shí)踐中理解各角色要求、發(fā)現(xiàn)問題、改進(jìn)方法、形成共識,進(jìn)而形成兩類人員相互匹配和相互促進(jìn)的持續(xù)改進(jìn)過程。
3.2 重視設(shè)計文檔,管控關(guān)鍵過程
加強(qiáng)并規(guī)范源頭設(shè)計,重視設(shè)計文檔,對關(guān)鍵過程活動進(jìn)行管控。重點(diǎn)對軟件研制任務(wù)書、軟件需求規(guī)格說明書、軟件設(shè)計說明書,進(jìn)行評審確保設(shè)計文檔質(zhì)量。評審?fù)ㄟ^后,才能進(jìn)行下環(huán)節(jié),即根據(jù)軟件研制任務(wù)書、軟件需求規(guī)格說明,進(jìn)行軟件設(shè)計工作,形成軟件設(shè)計說明書、軟件測試計劃與說明書,指導(dǎo)軟件編碼設(shè)計和測試工作。
簡化文檔形式,強(qiáng)化文檔內(nèi)容,確保設(shè)計文檔能有效提升PLC軟件質(zhì)量和開發(fā)進(jìn)度。鑒于PLC軟件與子系統(tǒng)(包含機(jī)械結(jié)構(gòu)、電氣硬件和上位軟件)涉及多接口,重點(diǎn)要求對接口詳細(xì)分析和說明;要求以流程框圖對控制功能模塊的邏輯進(jìn)行說明。
3.3 以軟件測試推動PLC軟件工程化
規(guī)范并加強(qiáng)PLC軟件測試工作。PLC軟件測試包括單元測試和系統(tǒng)集成測試,由項(xiàng)目組內(nèi)部控制,測試前要求編制測試計劃與說明書,由程序測試員根據(jù)測試計劃與說明書,進(jìn)行測試、迭代優(yōu)化;測試后,編制軟件測試報告。測試過程中,除測試軟件研制任務(wù)書要求的功能與性能外,重點(diǎn)考察下位軟件對控制系統(tǒng)安全性、可靠性的防護(hù)和保障,考察程序的執(zhí)行效率和關(guān)鍵信號的實(shí)時響應(yīng)性。
3.4 加強(qiáng)軟件版本進(jìn)行控制管理
參照軟件工程管理手冊,對PLC軟件建立至少兩級受控庫,并進(jìn)行分級受控庫的配置管理。針對PLC涉及多接口及對系統(tǒng)影響直接,加強(qiáng)版本變更對影響域的詳細(xì)分析與說明。
4 小結(jié)
GJB5000A對軟件研制提供了一套科學(xué)管理理念和做法,這是一個結(jié)合單位實(shí)際實(shí)現(xiàn)軟件質(zhì)量持續(xù)優(yōu)化、不斷改進(jìn)的過程,對剛起步的PLC軟件工程化管理尤其如此。今后,將在GJB5000A體系涵蓋PLC軟件研制的基礎(chǔ)上,結(jié)合各試點(diǎn)項(xiàng)目反饋,持續(xù)優(yōu)化PLC軟件的管理活動,完善PLC軟件技術(shù)規(guī)范,切實(shí)加強(qiáng)PLC軟件質(zhì)量控制。
關(guān)鍵詞:軟件“準(zhǔn)職業(yè)人”;實(shí)訓(xùn)教學(xué)
中圖分類號:TP31-4
1 軟件專業(yè)畢業(yè)生面臨的主要問題
1.1 缺乏實(shí)用技能。在實(shí)際項(xiàng)目中,客戶首次接觸軟件時關(guān)注的是界面風(fēng)格是否美觀、大氣、整齊一致,詢問是否有能夠給自己工作帶來便利并解決問題的功能;而學(xué)生在學(xué)校里接受的訓(xùn)練主要以完成基本功能為目標(biāo),所以在應(yīng)對實(shí)際項(xiàng)目時,他們總認(rèn)為軟件項(xiàng)目的界面交互式設(shè)計是美工的事,以軟件實(shí)現(xiàn)功能的多少來衡量自己開發(fā)能力的高低。
1.2 缺乏分析能力。很多畢業(yè)生習(xí)慣于想到哪兒就做到哪兒,很少有人在做項(xiàng)目之前先使用有效的需求規(guī)格說明書和原型與客戶交流,缺乏軟件開發(fā)的條理性。很多人只對編程感興趣,對開發(fā)需求、系統(tǒng)設(shè)計、組件重用、技術(shù)評審、交互設(shè)計、版本控制、測試驅(qū)動等重要實(shí)踐步驟不予考慮。
1.3 缺乏有效的溝通能力。主要體現(xiàn)在多人一起開發(fā)一個項(xiàng)目時效率極為低下。其主要原因在于他們通常不愿意傾聽對方的意見,容易武斷。為此我院軟件技術(shù)專業(yè)提出了基于“企業(yè)學(xué)院”的“知訓(xùn)合一、課證相融”軟件“準(zhǔn)職業(yè)人”人才培養(yǎng)模式。在此人才培養(yǎng)模式的指導(dǎo)下,我們構(gòu)建了符合軟件“準(zhǔn)職業(yè)人”培養(yǎng)目標(biāo)的多層次、模塊化的實(shí)踐教學(xué)體系。
2 符合軟件“準(zhǔn)職業(yè)人”培養(yǎng)目標(biāo)的多層次、模塊化的實(shí)踐教學(xué)體系
2.1 研究思路。第一條主線以軟件企業(yè)“準(zhǔn)職業(yè)人”的職業(yè)成長路線貫穿整個教學(xué)過程,使學(xué)生通過“職場體驗(yàn)―實(shí)境訓(xùn)練―頂崗歷練”來感知職業(yè)環(huán)境氛圍、職業(yè)崗位流程,培養(yǎng)職業(yè)崗位素質(zhì)、技能,體驗(yàn)崗位能力需求,逐漸從Freshman(新員工)轉(zhuǎn)變?yōu)镴unior(正式員工),最終成長為Senior(核心骨干)。如圖1:
第二條主線按照軟件企業(yè)項(xiàng)目開發(fā)工作過程來組織教學(xué)實(shí)施。畢業(yè)生常抱怨“以往的實(shí)踐沒有開發(fā)真實(shí)工程項(xiàng)目的經(jīng)歷,很難形成完整的知識體系和能力體系”。我們在教學(xué)過程中就選取當(dāng)前中小型企業(yè)普遍采用的快速原型開發(fā)法,按照“項(xiàng)目規(guī)劃-需求分析-軟件開發(fā)-多次迭代-逐步完善項(xiàng)目原型-軟件測試-項(xiàng)目驗(yàn)收-軟件維護(hù)”的真實(shí)企業(yè)軟件開發(fā)過程的順序來進(jìn)行項(xiàng)目的實(shí)施。如圖2:
2.2 多層次、模塊化的實(shí)踐教學(xué)體系。實(shí)踐教學(xué)環(huán)節(jié)由學(xué)校的教師跟企業(yè)的項(xiàng)目經(jīng)理配合,共同完成。在項(xiàng)目經(jīng)理進(jìn)校園這個環(huán)節(jié),不將模擬項(xiàng)目帶到學(xué)校來,而是由項(xiàng)目經(jīng)理帶領(lǐng)學(xué)生,按照學(xué)校的需求定制開發(fā)系統(tǒng),比如食堂管理系統(tǒng),大學(xué)生創(chuàng)新創(chuàng)業(yè)計劃管理系統(tǒng)等,項(xiàng)目開發(fā)完全產(chǎn)品化。并希望產(chǎn)品未來能夠?qū)ν馔茝V,將科研成果產(chǎn)品化。在這個過程中學(xué)生也接受全真項(xiàng)目鍛煉,相當(dāng)于在畢業(yè)時學(xué)生就已經(jīng)有了真實(shí)的系統(tǒng)項(xiàng)目開發(fā)經(jīng)驗(yàn)。如圖3:
技術(shù)迭代:循序漸進(jìn)培養(yǎng)學(xué)生不同技術(shù)結(jié)構(gòu)的開發(fā)技能。
設(shè)計迭代:培養(yǎng)學(xué)生軟件設(shè)計及架構(gòu)思路。
項(xiàng)目主線:一個項(xiàng)目貫穿整個培養(yǎng)過程,保持思路連貫性。
3 實(shí)訓(xùn)教學(xué)的具體實(shí)施(以《項(xiàng)目實(shí)戰(zhàn)為例》)
3.1 逆向制定教學(xué)內(nèi)容。通過對典型職業(yè)崗位程序員,拓展職業(yè)崗位測試員、界面設(shè)計師、技術(shù)支持的分析,得出完成崗位工作任務(wù)所需的特有的知識、能力、素質(zhì)和共有的知識、能力、素質(zhì),再結(jié)合第二條主線軟件企業(yè)項(xiàng)目開發(fā)的需要,對課程內(nèi)容進(jìn)行選取。對選取出來的內(nèi)容,再按照第一條主線職業(yè)成長路線的需要,對課程內(nèi)容進(jìn)行了重新組合,科學(xué)設(shè)計了入職培訓(xùn)、食堂管理系統(tǒng)、大學(xué)生創(chuàng)新創(chuàng)業(yè)計劃系統(tǒng),將專業(yè)技能和知識點(diǎn)進(jìn)行整合、優(yōu)化。
3.2 各階段實(shí)施過程。(1)入職培訓(xùn)。入職培訓(xùn)的目的是讓學(xué)生了解企業(yè)文化,學(xué)習(xí)管理制度,并通過一系列的素質(zhì)拓展訓(xùn)練來培養(yǎng)員工的溝通能力、表達(dá)能力和團(tuán)隊(duì)協(xié)作能力。由企業(yè)兼職教師對員工進(jìn)行企業(yè)文化和管理制度的培訓(xùn)。比如完美表達(dá)的訓(xùn)練,地雷戰(zhàn)的訓(xùn)練,擺造型等。(2)食堂管理系統(tǒng)。這是為試用期的員工而設(shè)計的。在企業(yè)里試用期由老員工指導(dǎo)新員工完成項(xiàng)目的開發(fā),注重的是技能的培養(yǎng)。在這里由老員工(教師)帶領(lǐng)新員工(學(xué)生)來理清項(xiàng)目開發(fā)的一般流程從項(xiàng)目背景介紹到解決方案的給出再到項(xiàng)目開發(fā)、項(xiàng)目測試、項(xiàng)目匯報直至項(xiàng)目總結(jié),重點(diǎn)介紹企業(yè)級開發(fā)中涉及到的技術(shù)要點(diǎn),以及這些技術(shù)要點(diǎn)之間的關(guān)系,幫助學(xué)生在短時間內(nèi)將所學(xué)的知識點(diǎn)串接起來并形成體系。(3)大學(xué)生創(chuàng)新創(chuàng)業(yè)計劃系統(tǒng)。根據(jù)軟件開發(fā)流程,將項(xiàng)目劃分為項(xiàng)目策劃、需求分析、系統(tǒng)設(shè)計、編碼測試、部署和項(xiàng)目總結(jié)六個任務(wù)。在本階段我們的學(xué)生已經(jīng)成長為企業(yè)的正式員工,由學(xué)生主體來完成項(xiàng)目的開發(fā)。在分組時充分考慮每位員工的特性。崗位分配的原則是從前兩個階段的考核結(jié)果中提取溝通能力、表達(dá)能力,界面的友好性設(shè)計,功能的完整性,技術(shù)含量的高低,測試水平等制成圖表,從圖中將清晰的顯示每位員工的優(yōu)劣勢所在,在進(jìn)行崗位分配時注意揚(yáng)長避短。比如某員工在界面設(shè)計性方面顯示出較強(qiáng)的能力,而他的編碼能力則顯得相對較弱,在崗位分配時可以給他分配一個難度相對較低的模塊,同時讓他兼任界面設(shè)計美化的工作。要求每位員工每天給出日工作日志,每周給出周工作日志。需求分析階段主要由項(xiàng)目經(jīng)理完成,同時穿插對技術(shù)支持和界面設(shè)計師的培養(yǎng)。比如在需求分析的前期由技術(shù)支持先與客戶溝通,將收集到的有用的信息反饋給我們的項(xiàng)目經(jīng)理。在這過程中教給技術(shù)支持一些實(shí)用的技巧。在需求分析的中后期由界面設(shè)計師不斷的構(gòu)建項(xiàng)目原型與客戶進(jìn)行溝通,直至客戶滿意為止。再比如軟件測試階段,由各組根據(jù)項(xiàng)目經(jīng)理提供的學(xué)習(xí)資源自主完成集成測試、數(shù)據(jù)庫測試和系統(tǒng)測試。
4 實(shí)訓(xùn)教學(xué)的效果
通過以企業(yè)真實(shí)工程項(xiàng)目做載體,扎根企業(yè),引用企業(yè)標(biāo)準(zhǔn),共享企業(yè)資源,借鑒企業(yè)機(jī)制,熏陶企業(yè)文化來培育人才。學(xué)生在教師的指導(dǎo)下能利用所學(xué)知識去提供技術(shù)服務(wù),開發(fā)了我院的工資查詢系統(tǒng),同時還對教師的科研項(xiàng)目進(jìn)行了自主開發(fā),比如市科技項(xiàng)目“南通市主要農(nóng)作物生產(chǎn)信息化網(wǎng)絡(luò)共享服務(wù)平臺”的子課題“南通市主要農(nóng)作物生產(chǎn)技術(shù)數(shù)據(jù)庫”;“長江藥用植物園”藥用植物數(shù)據(jù)庫的設(shè)計與開發(fā)等。在對畢業(yè)生的跟蹤調(diào)查中用人單位普遍反映這批學(xué)生掌握了職業(yè)核心能力,職業(yè)素質(zhì)也大幅提高,真正實(shí)現(xiàn)了與企業(yè)需求的零距離對接。
參考文獻(xiàn):
[1]張舜德,張琪.高職軟件技術(shù)專業(yè)多層次實(shí)訓(xùn)體系的設(shè)計[J].職教論壇,2010(5).
[2]李唯.高職院校軟件技術(shù)專業(yè)實(shí)訓(xùn)教學(xué)的研究與實(shí)踐[J].計算機(jī)教育,2012(20).
[3]史玉珍,李波.基于.net的軟件實(shí)訓(xùn)體系構(gòu)建與研究[J].職業(yè)技術(shù)教育,2009(11).
關(guān)鍵詞:學(xué)校;軟件工程;教學(xué)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-4311(2012)02-0216-02
0 引言
軟件工程與其他計算機(jī)課程,如程序設(shè)計語言、數(shù)據(jù)結(jié)構(gòu)、編譯原理、數(shù)據(jù)庫以及操作系統(tǒng)等課程都是相互作用和影響的。在一定程度上說,軟件工程討論的是在實(shí)際開發(fā)當(dāng)中綜合運(yùn)用這些課程中講過的理論和方法,將這些課程的理論和方法放在一個統(tǒng)一的目標(biāo)下,這個目標(biāo)就是在有限的時間及預(yù)算條件下,開發(fā)出高質(zhì)量的令用戶滿意的軟件。
軟件是信息化的核心,各行各業(yè)的信息化建設(shè)都離不開軟件,軟件產(chǎn)業(yè)的發(fā)展需要大量的人才,無論是公辦學(xué)校還是民辦學(xué)校,作為人才培養(yǎng)的基地,都應(yīng)該培養(yǎng)學(xué)生掌握軟件工程的基本理論、基本概念和方法和技術(shù),并將其應(yīng)用于軟件開發(fā)的具體實(shí)踐中,為國家的信息化建設(shè)服務(wù)。
1 《軟件工程》教學(xué)內(nèi)容與課程特點(diǎn)
《軟件工程》是針對計算機(jī)及相關(guān)專業(yè)高年級學(xué)生開設(shè)的課程,在學(xué)習(xí)《軟件工程》課程之前,學(xué)生必須完成《高級語言程序設(shè)計》、《數(shù)據(jù)結(jié)構(gòu)》、《數(shù)據(jù)庫系統(tǒng)原理》、《操作系統(tǒng)》、《計算機(jī)網(wǎng)絡(luò)》等先行課程的學(xué)習(xí)。本課程的知識點(diǎn)是軟件工程的整個知識體系結(jié)構(gòu),即軟件需求、軟件設(shè)計、軟件實(shí)現(xiàn)、軟件測試、軟件維護(hù)、軟件配置管理、軟件工程管理、軟件工程過程、軟件工程的工具和方法、軟件質(zhì)量等十個知識點(diǎn),特別是軟件過程的概念和軟件系統(tǒng)的分析設(shè)計技術(shù)。
軟件工程涉及到計算機(jī)、經(jīng)濟(jì)學(xué)、管理學(xué)、工程學(xué)、市場學(xué)等多個領(lǐng)域的知識,由于涉及內(nèi)容太多、太寬,使學(xué)生感到這門課中包含的知識非常豐富,而且其本身還處于不斷發(fā)展中,這是本課程的突出特點(diǎn)。正因?yàn)檫@一特點(diǎn),軟件工程教學(xué)中要突出重點(diǎn),擴(kuò)大學(xué)生的知識面,同時要重視實(shí)踐環(huán)節(jié),通過多種教學(xué)形式使學(xué)生掌握各種知識的綜合應(yīng)用。
2 學(xué)校《軟件工程》課程教學(xué)存在的問題
普遍教學(xué)條件和設(shè)備資源比較短缺,師資力量較薄弱,教師教學(xué)水平、教學(xué)條件以及所處的社會大環(huán)境方面都表現(xiàn)出一些特性,具體到《軟件工程》課程教學(xué)方面,存在一些問題。
2.1學(xué)生基礎(chǔ)較差,文化課學(xué)習(xí)積極性不高學(xué)生普遍基礎(chǔ)較差,學(xué)習(xí)積極性、主動性不高,還有的學(xué)生存在自卑心理,對學(xué)習(xí)有畏難情緒,對于《軟件工程》課程的前修課程,如《高級語言程序設(shè)計》、《數(shù)據(jù)結(jié)構(gòu)》、《數(shù)據(jù)庫系統(tǒng)原理》等學(xué)習(xí)的不夠扎實(shí),許多知識體系不能連貫起來,給《軟件工程》課程教學(xué)帶來一定的問題。
2.2教師教學(xué)水平問題教師大多數(shù)是近幾年新招聘的其他高校畢業(yè)生,他們畢業(yè)以后直接進(jìn)入學(xué)校,缺乏實(shí)際軟件工程項(xiàng)目的鍛煉,教學(xué)方法比較單一,教學(xué)經(jīng)驗(yàn)不足,不利于搞好《軟件工程》課程教學(xué)o
2.3教學(xué)條件問題學(xué)校普遍存在辦學(xué)資金緊張的問題,因此,教學(xué)設(shè)備和教學(xué)條件等方面不一定能全部滿足需要,如有的學(xué)校多媒體教室、電腦等設(shè)備不能滿足要求,學(xué)校在計算機(jī)軟件方面的投資就更少;還有的學(xué)校校園網(wǎng)絡(luò)的建設(shè)也沒有到位,這些都給提高《軟件工程》課程教學(xué)質(zhì)量帶來一定的困難。
2.4社會環(huán)境問題不容質(zhì)疑,現(xiàn)在社會上普遍存在著輕視學(xué)校的現(xiàn)象,突出表現(xiàn)在學(xué)校畢業(yè)生求職、就業(yè)等方面,學(xué)校要求得發(fā)展,必須高度重視畢業(yè)生的就業(yè)問題。在具體課程教學(xué)中,要從培養(yǎng)“應(yīng)用型”人才這一目標(biāo)出發(fā),緊密結(jié)合社會需要,不斷改進(jìn)教學(xué)內(nèi)容,抓好新技術(shù)、新知識教學(xué),同時大力加強(qiáng)實(shí)踐性教學(xué)環(huán)節(jié),培養(yǎng)與社會需要“接軌”的“產(chǎn)品”。
3 《軟件工程》教學(xué)改進(jìn)的內(nèi)容和方法
3.1教學(xué)過程引入實(shí)際案例軟件工程課程涉及面很廣,如果不結(jié)合實(shí)際工程項(xiàng)目進(jìn)行教學(xué),很難把教學(xué)內(nèi)容教授給學(xué)生。因此,在教學(xué)過程中引入案例,將復(fù)雜抽象的概念用具體生動的實(shí)例進(jìn)行詮釋,能夠收到事半功倍的效果。例如,在授課時教師可結(jié)合1個“學(xué)校教材購銷系統(tǒng)”實(shí)例,給學(xué)生介紹具體的開發(fā)過程和方法。案例教學(xué)法也是在軟件工程教學(xué)中經(jīng)常采用的一種方法,軟件工程案例教學(xué)通過以企事業(yè)單位中的實(shí)際項(xiàng)目或從中抽取的模擬項(xiàng)目為研討核心,為學(xué)生創(chuàng)造一個仿真環(huán)境,使其在課堂上就能接觸到實(shí)際問題和環(huán)境,從而學(xué)會在復(fù)雜條件下利用所學(xué)理論解決問題。要搞好案例教學(xué),必須從教學(xué)準(zhǔn)備、教學(xué)組織與實(shí)施、教學(xué)總結(jié)與討論幾個環(huán)節(jié)抓起,同時,在具體教學(xué)中,還要注意以下問題:第一,選擇與設(shè)計案例時,要考慮案例的針對性、復(fù)雜性,最好是授課教師與具有豐富經(jīng)驗(yàn)的軟件工程師共同編寫,可以從軟件工程生命周期的角度出發(fā),選擇一個軟件工程項(xiàng)目的全部過程,也可以將一個大型項(xiàng)目的某一個階段作為教學(xué)案例。第二,案例涉及多門計算機(jī)課程。在講授過程中,最好由多位相應(yīng)課程老師共同組織教學(xué)。第三,教師布置案例后,學(xué)生可以進(jìn)行“討論式”學(xué)習(xí),在這個過程中,學(xué)生是項(xiàng)目的主體,教師起到組織、指導(dǎo)、咨詢的作用。可將學(xué)生分成若干個小組,每個學(xué)生均有機(jī)會參加討論。
“軟件過程及管理”是軟件工程教學(xué)內(nèi)容中的一個重點(diǎn),軟件過程及其管理是長期開發(fā)實(shí)踐中提煉的內(nèi)容,如軟件開發(fā)過程中的時間控制、人與人之間的合作和交流等。該內(nèi)容只有在實(shí)踐中才能切身體會到其正確性和必要性。因而這部分的教學(xué)宜采用“實(shí)踐型”教學(xué)方式,以課程設(shè)計的形式,學(xué)生以小組為單位共同討論、協(xié)商完成任務(wù)。
3.2組織課堂討論,形成教學(xué)互動我國有句名言:“授人以魚,不如授人以漁”。學(xué)生是教學(xué)活動的核心,教師要利用合適的方法調(diào)動學(xué)生的積極心理和參與意識,改變傳統(tǒng)的教師高高在上的教學(xué)方式,讓學(xué)生參與教學(xué)過程,有機(jī)會發(fā)表自己的看法。
為了提高軟件工程教學(xué)質(zhì)量,學(xué)校還可以采取開辦講座的形式,針對一些專題,如UML知識、軟件測試技術(shù)與崗位需求、第四代技術(shù)等。聘請軟件園區(qū)或科研院所的專家到校內(nèi)開展講座,擴(kuò)大教師和學(xué)生的知識面。網(wǎng)絡(luò)教學(xué)也是一種較好的教學(xué)形式,軟件工程相關(guān)教師共同建立軟件工程學(xué)習(xí)網(wǎng)站,將課程安排、教學(xué)大綱、多媒體課件、研究案例、文檔模板、工程規(guī)范和標(biāo)準(zhǔn)、作業(yè)、實(shí)踐項(xiàng)目和要求等,以及大量的、有價值的參考書籍清單、電子文獻(xiàn)等放在網(wǎng)上,供學(xué)生隨時查閱。同時,教師和學(xué)生也可以在網(wǎng)上進(jìn)行交流和答疑,擴(kuò)大教學(xué)時間和空間。
如上所述,軟件工程教學(xué)內(nèi)容寬泛,涉及面廣,教學(xué)中有許多圖形,利用多媒體教學(xué)手段,將教學(xué)內(nèi)容制作成多媒體課件,能夠在同樣的一節(jié)課內(nèi)教授更多的內(nèi)容,形象化地展示軟件工程基本原理,還可以動態(tài)演示軟件項(xiàng)目結(jié)構(gòu)和設(shè)計細(xì)節(jié),利于學(xué)生理解教學(xué)內(nèi)容。
3.3加強(qiáng)實(shí)踐環(huán)節(jié)從本質(zhì)上看,軟件工程的實(shí)踐性和綜合性是其他相關(guān)課程難以比擬的。因此,必須結(jié)合設(shè)計項(xiàng)目和實(shí)際應(yīng)用加以施教。才能取得良好的教學(xué)效果。那么,在把握教學(xué)進(jìn)度的同
時,必須及早安排好課程設(shè)計,讓學(xué)生同步開展課程設(shè)計。這樣,理論課講完了,課程設(shè)計也基本結(jié)束,學(xué)生們能從理論和實(shí)踐的結(jié)合上,加深對軟件工程知識難點(diǎn)、重點(diǎn)的理解,進(jìn)一步深刻理解軟件過程和系統(tǒng)消化理論知識,訓(xùn)練項(xiàng)目設(shè)計的思路,鍛煉實(shí)際開發(fā)能力,培養(yǎng)嚴(yán)格規(guī)范的項(xiàng)目開發(fā)方法和步驟,體驗(yàn)文檔編寫整理、階段性評審總結(jié)以及軟件測試等各個方面的工作流程,直接培養(yǎng)了學(xué)生從事實(shí)際開發(fā)的能力。
3.4派骨干教師參加企業(yè)項(xiàng)目實(shí)踐學(xué)校的教師大多是青年教師,實(shí)際開發(fā)經(jīng)驗(yàn)較少,要將《軟件工程》課程教好、教活,有一定的難度,學(xué)校辦學(xué)資金緊張,也不可能花錢送教師參加培訓(xùn),可以利用暑期時間,派骨干教師參加軟件企業(yè)具體項(xiàng)目的開發(fā),既為專業(yè)培養(yǎng)了教師,也節(jié)約了成本,同時教師參與開發(fā)的具體項(xiàng)目也可以作為教學(xué)中的案例或項(xiàng)目驅(qū)動教學(xué)中的項(xiàng)目積累起來。
3.5引進(jìn)培訓(xùn)機(jī)構(gòu),多方共同培養(yǎng)學(xué)生目前計算機(jī)軟件類培訓(xùn)機(jī)構(gòu)非常多,其中有一批專門針對計算機(jī)專業(yè)畢業(yè)生,受軟件企業(yè)委托開展定向培訓(xùn),其培訓(xùn)內(nèi)容與《軟件工程》課程內(nèi)容有許多是相同的。在國家的大力支持下,國內(nèi)已經(jīng)建設(shè)了中關(guān)村軟件園、大連軟件園、成都軟件園、西安軟件園等國家級軟件企業(yè)園區(qū),同時也成立了大型的實(shí)訓(xùn)基地與培訓(xùn)中心,這些機(jī)構(gòu)目前都開展軟件工程項(xiàng)目培訓(xùn)。學(xué)校在師資力量薄弱、硬件資源相對落后的情況下,可以考慮與上述培訓(xùn)機(jī)構(gòu)合作,采取派學(xué)生出去、將培訓(xùn)機(jī)構(gòu)引進(jìn)學(xué)校、課程輸出和置換等各種方式,開展軟件工程培訓(xùn),提高教學(xué)質(zhì)量,培養(yǎng)學(xué)生實(shí)際工作能力,為學(xué)生順利就業(yè)打下良好的基礎(chǔ)。
4 結(jié)束語
《軟件工程》教學(xué)的目標(biāo),一是培養(yǎng)學(xué)生運(yùn)用軟件工程的基本知識開發(fā)實(shí)際軟件項(xiàng)目的能力,強(qiáng)調(diào)對過程的理解,方法的掌握,技術(shù)和工具的應(yīng)用,以及對團(tuán)隊(duì)的重視:二是培養(yǎng)學(xué)生嚴(yán)謹(jǐn)、求實(shí)的科學(xué)態(tài)度和團(tuán)隊(duì)合作精神。以上僅從從實(shí)踐教學(xué)環(huán)節(jié),教師隊(duì)伍培養(yǎng),引進(jìn)培訓(xùn)機(jī)構(gòu),改建教學(xué)方法、采取多種教學(xué)形式等方面提出了一些想法,要想真正達(dá)到上述目標(biāo),還需要進(jìn)一步深入研究和思考。
參考文獻(xiàn):
[1]杜晶,王鳳芹,李祁.軟件工程課程教學(xué)特征與改革[J]福建電腦,2010,(06)
[2]沈備軍,顧春華.軟件工程教學(xué)模式的研究和實(shí)踐[J].計算機(jī)教育,2005。(01)
[3]潘婭歙件工程教學(xué)方法探索[J].西南科技大學(xué)高教研究,2006,(02)