劉桃麗 張 健 蔡莉華
(廣東海洋大學數學與計算機學院,廣東 湛江 524000)
軟件工程專業(yè)自上世紀六十年代提出來至今,已經走過了半個多世紀的發(fā)展歷程。國外對該專業(yè)各方面的研究,包括理論、實踐以及工具,包括人才培養(yǎng)模式,都形成比較成熟的體系。但是國內起步較晚,發(fā)展歷程較曲折,經歷了萌芽、發(fā)展及優(yōu)化成熟的過程。甚至在2016年后,教育部開展學科評估,諸多高校主動優(yōu)化學科布局,對學位點進行動態(tài)調整撤銷及增列,而軟件工程專業(yè)則成為了被撤銷的重災區(qū),從而一度引發(fā)了社會上所謂“軟件工程危機”的關注和討論[1]。與此同時,社會上對軟件工程專業(yè)人才的需求卻與日俱增。統(tǒng)計顯示,僅2021年1月至8月份,我國軟件和信息技術服務業(yè)實現收入近6萬億元,同比增速超過20%,居國民經濟各行業(yè)之首;軟件出口額平穩(wěn)增長,從業(yè)人員規(guī)模持續(xù)擴大至近800萬[1];行業(yè)薪酬持續(xù)上漲,工資總額同比增長11.9%[1]。迅猛增長的市場需求與高校軟件工程專業(yè)的萎縮,究其原因是供需失衡導致的[1]。目前,社會需要的是具有創(chuàng)新性的高質量應用型軟件工程人才,而我國大部分傳統(tǒng)的軟件工程教育偏重于理論教育,實踐教學環(huán)節(jié)比較薄弱,培養(yǎng)出來的學生,即使是比較優(yōu)秀的畢業(yè)生,在走向社會之后,也要花1年左右甚至更多的時間才能逐步建立相應的工程能力,因此軟件工程專業(yè)建設的改革勢在必行[2]。
目前,在軟件工程專業(yè)的人才培養(yǎng)上,對于絕大部分非“雙一流”的普通高校,還存在不少問題。以廣東海洋大學為例,廣東海洋大學軟件工程專業(yè)在改革前,存在的主要問題是專業(yè)建設的教學理實關系需要進一步優(yōu)化,人才培養(yǎng)模式需要進一步優(yōu)化和完善,課程建設水平需要在深度和廣度上需要進一步提高,學生的創(chuàng)新能力需要進一步加強,專業(yè)建設特色不夠鮮明,人才培養(yǎng)質量有待提高。具體表現如下:
一是軟件工程專業(yè)理論教學與實踐教學之間存在問題。傳統(tǒng)的人才培養(yǎng)計劃,重視理論教育,往往忽視實踐教學的關聯性和系統(tǒng)性,這樣導致培養(yǎng)出來的畢業(yè)生實踐動手能力較差,理論容易與實踐脫節(jié)。軟件工程是一門實踐性、工程性要求非常強的專業(yè),目前大部分學校采用的傳統(tǒng)人才培養(yǎng)模式包含課堂講解、課后實驗,再加部分課程的課程實習的模式,此模式針對某一門課程展開,割裂了課程與課程之間的關聯,無法將所學的知識和內容串聯起來,從而導致學生的實際動手能力達不到預期。
二是傳統(tǒng)的實驗教學模式不適應軟件行業(yè)要求問題。傳統(tǒng)的工科人才培養(yǎng)計劃中,針對實踐部分,一般設置為三大部分:第一部分是課程實驗,這部分內容對應課程理論知識,與理論課程同時開展,主要針對課程中的某個具體知識點設置的小實驗,一個實驗對應2~4學時,實驗和實驗之間,關聯性不大;第二部分為課程設計,即課程結束后,針對整門課程的主要內容而設計的綜合性大實驗,綜合了本課程的重要知識內容及其綜合應用,難度較大,本階段一般安排20課時左右,教師給出要求,學時自行開發(fā),最后答辯驗收,此階段由于缺乏教師的現場指導,學生容易導致學生在實驗過程中出現兩極分化,甚至出現全班只有幾個版本的情況,從而使實驗效果大打折扣;第三部分為畢業(yè)實習和畢業(yè)設計,安排在大四階段,總時長共14周。此階段綜合整個大學階段所學,實現一個較為復雜的軟件系統(tǒng),并要求需求合理、功能齊全、運行流暢。此三部分的設置,從形式上,從簡單到復雜,從局部到整體,但是實驗內容缺乏關聯性,而且沒有考慮到學生的不同情況,最終導致學生理論與實踐脫節(jié),影響了教學效果。
三是高速發(fā)展的軟件工程新技術與教師原有的知識體系之間存在不匹配的問題。計算機自出現以來,相關軟硬件技術飛速發(fā)展,近年來軟件工程技術發(fā)展尤為迅猛。大部分學校教師的知識和技術儲備不足,往往處于追趕社會發(fā)展的趨勢,從而導致教師花費了大力氣更新自己的知識體系,學習新的軟件技術,但是教學效果反而達不到理想預期。如近幾年熱門的區(qū)塊鏈、人工智能、云計算等技術,高校為了滿足社會的需求,陸續(xù)開設相關的課程和專業(yè),但是對于教師來說,掌握一門新的技術,教師需要大量的時間來學習與實踐,才能勝任相關教學工作,與已經成熟掌握的技術相比,教學效果往往不盡如人意。想要達到好的教學效果,往往需要交流、培訓和實戰(zhàn),如何在短時間內快速提高教師的相關能力以適應高速發(fā)展的計算機軟件技術,是一個亟待解決的問題。
四是隨著各大高校連年擴招,生源質量良莠不齊,對于大部分非“雙一流”高校來說,學生的各方面素質呈現出整體下降、兩極分化日趨明顯的趨勢,這就導致了傳統(tǒng)的人才培養(yǎng)方案無法滿足較復雜的學生情況。
根據以上實際情況,調整人才培養(yǎng)方案和目標,已經刻不容緩。
軟件工程的本質是應用工程化的開發(fā)方法,將現實世界的各種問題轉化為計算機世界的表達,并在計算機世界中求得解決方案,最后將計算機世界中的解決方案返回到現實世界,達到提供服務,解決工程問題的目的。
傳統(tǒng)的教學體系,更偏重于理論教學體系的研究和建立,本專業(yè)的理論課程,與其他專業(yè)類似,根據教育部的要求,將理論課劃分為公共基礎課、專業(yè)基礎課、專業(yè)課以及拓展類課程,但是以應用型人才培養(yǎng)為目標的軟件工程專業(yè),其核心是學生工程實踐能力的培養(yǎng),傳統(tǒng)的課程設置遠不能到達此目標。通過教學理論的研究,我們將教學重心轉移到實踐教學中來,確立了將“理論實踐并重”轉變?yōu)椤耙詫嵺`教學為核心,理論教學服務于工程實踐”的原則,構建了獨立完整的實踐教學課程體系,課程由低級到高級,分布于8個學期,形成課程鏈,每一門實踐課程都有其相應的培養(yǎng)目標,層層遞進達到軟件工程專業(yè)人才培養(yǎng)目標,此原則體現在了廣東海洋大學軟件工程專業(yè)2019和2021人才培養(yǎng)方案中。
具體的實踐課程體系設置如表1所示。
表1 軟件工程專業(yè)實踐課程體系設置
表1中列出了廣東海洋大學軟件工程專業(yè)實踐課程體系的設置。該實踐體系主要分為兩部分:一部分是課程實驗,該部分與傳統(tǒng)的課程實驗類似,主要針對課程中的重要知識點進行設置;第二部分是綜合實踐類課程,從新生入學的第一個學期開始,每一個學期都安排了一門綜合實踐課程。每一門綜合實踐課程,都是針對本學期或者之前已經學過的課程,其對應如上表所示,綜合實訓任務都是讓學生完成一個完整系統(tǒng)的開發(fā),其任務由簡到繁、從淺入深,難度、知識點以及代碼量都呈現層層遞進的關系,以逐步強化學生的工程能力。
從表1中所示可知,在大學一年級上期,即新生入學后,安排了企業(yè)認知實踐課程。學生普遍對本專業(yè)的特點、學習方法和方向以及就業(yè)前景缺乏客觀的認知,本課程安排的企業(yè)認知實踐,通過“走出去、請進來”方式,即帶領學生參觀本地的龍頭IT企業(yè),同時請優(yōu)秀的企業(yè)家、工程師以及本行業(yè)杰出代表,甚至是本專業(yè)優(yōu)秀畢業(yè)生,來給新生講解本專業(yè)的學習、發(fā)展現狀與前景以及個人的職業(yè)規(guī)劃等。經過此次實訓,能夠在很大程度上解決學生的困惑,并極大提高學生的學習熱情。從大一下學期到大三下學期,所有的實踐都是針對所學的課程內容來進行綜合訓練,對學生進行中等復雜度系統(tǒng)開發(fā)訓練,最終是學生具有較強的代碼能力和動手能力。
經過以上訓練,學生已經具備了進行較強的開發(fā)能力,此過程主要由本系老師指導,在校內完成,此時的學生缺乏真實的企業(yè)案例開發(fā)經驗。因此最后大四兩個學期,重點加強學生的企業(yè)實戰(zhàn)能力。大四的整個學年,本專業(yè)安排了8周軟件項目開發(fā)企業(yè)實踐和4周畢業(yè)實習,這兩門實踐課程全部在企業(yè)完成,實踐內容為企業(yè)真實開發(fā)案例,由企業(yè)工程師和校內老師共同指導完成,接著15周的畢業(yè)設計,也全部在企業(yè)完成。經過長達一個學年的企業(yè)實戰(zhàn),學生已經具備很強的企業(yè)開發(fā)經驗,且能夠對復雜的系統(tǒng)進行分析和設計,在人才市場上具有一定的競爭力。
經過多年的建設與優(yōu)化,本專業(yè)的實踐教學體系日臻完善,為培養(yǎng)應用能力強的專業(yè)人才奠定了基礎。
隨著軟件開發(fā)技術的發(fā)展,傳統(tǒng)的單人單機的實驗模式,已經無法滿足團隊開發(fā)要求。為此,本專業(yè)建立了《軟件工程卓越智慧實驗教學云平臺》,該平臺采用了現代軟件企業(yè)廣泛使用的技術和管理辦法,再現了企業(yè)開發(fā)軟件的流程和場景,將廣東海洋大學軟件工程專業(yè)的實驗模式提升為開發(fā)平臺上統(tǒng)一管理,多人多機分工協(xié)作的軟件開發(fā)模式,為提升學生的工程實踐能力奠定了物質基礎。該平臺的應用,徹底轉變了傳統(tǒng)單人作戰(zhàn)的模式,轉而采用團體開發(fā)模式,學生利用此平臺,學生可以不再受限于在同一時間同一地點的團隊開發(fā)要求,可以及時在平臺上進行互動、溝通于聯調,同時有利于指導教師對學生的開發(fā)過程進行查看、答疑與考核,從而端正學生的學習態(tài)度,提高學生的學習興趣。
其次,本專業(yè)所有的實踐課程,均采用“三步教學法”來進行,即“學習、模仿、創(chuàng)新”。學習指的是在實踐開始階段,針對重點、難點的知識點,學習一個具有基本功能的案例,使學生更快地掌握開發(fā)方法和相關知識;模仿即在學習的基礎上,學生將上一案例進行二次開發(fā)、完善,鞏固所學知識;創(chuàng)新階段即教師提出了一個具有更高復雜度要求的系統(tǒng),或者學生通過自選題目,確定一個類似復雜度的系統(tǒng),按分組的方式進行團隊開發(fā),最終按項目作為考核項目,在該實踐課程結束后,現在進行演示答辯,并提交最終的開發(fā)報告。實踐課程考核采用依據學生提交的設計報告(40%)+報告人現場答辯(60%)的方式給出課程成績,做到了杜絕抄襲,鼓勵創(chuàng)新。
通過“三步教學法”的實踐課程學習,學生的實踐動手能力、對系統(tǒng)的分析應用能力、對知識的綜合應用能力以及對實際問題的解決能力,都得到了明顯的提升。此過程教師全程指導,及時解決同學在實踐中出現的各種問題,也提升了學生的學習效率和學習興趣。
課程建設是專業(yè)建設永恒的主題。本專業(yè)主要從爭取課程建設經費、組建課程建設團隊、改進課程教學方法、創(chuàng)新課程考核辦法、校企協(xié)同共建課程資源和實現課程資源共享6個方面開展了工作。
全部實踐教學課程都組建了課程團隊,最優(yōu)秀的教師擔任帶頭人,以團隊的方式進行課程資源建設并集體授課,最大限度發(fā)揮了集體的力量,保障了課程質量。本專業(yè)一共組件5個課程建設團隊,全部得到本校立項支助。團隊教師互相學習、互相幫助,共同完成各實踐課程項目的開發(fā),對于本課程系統(tǒng)的開展,尤其是實踐教學體系的順利開展,起到了至關重要的作用。
對于新開課程,如人工智能、大數據處理、云計算等難度較大且熱門的高新技術,教師團隊成員通過參加企業(yè)培訓、相互幫助學習以及經驗交流、資源共享等方式,可在盡量短的時間內成長為一名合格的任課教師,從而提高了教師的教學水平,擴大了知識面,獲得良好的教學質量。
最好的工程案例來自企業(yè),為此,我們采用購買企業(yè)服務的方式與企業(yè)協(xié)同共建課程資源,對于企業(yè)導師,采用“走出去,請進來”的方式,即將學生送入企業(yè)進行實習實訓,或者將企業(yè)導師請進學校,對學生開展相關的講座與培訓等方法,讓本專業(yè)的教師與企業(yè)一線工程師共同為學生授課,此方法有效提升了學生的工程實踐能力,取得了良好的教學效果,校內企業(yè)實訓即是最好的證明。
同時,為了適應教育信息化的需要,軟件工程專業(yè)的全部主要課程均已實現課程資源上網,實現了資源共享,內容涵蓋授課視頻、課后習題、小測驗等,學生可以在課外自主進行預習和復習,提高學習成績。
廣東海洋大學軟件工程專業(yè)的人才改革方案,經過四年的實踐,到目前為止2017級學生已經順利畢業(yè),對比近三年的畢業(yè)生就業(yè)和繼續(xù)深造情況,本屆畢業(yè)在各方面都有明顯的進步,具體見圖1所示。
圖1 歷屆畢業(yè)生指標數據對比圖
本專業(yè)每年的招生人數在150人左右,圖2中統(tǒng)計了近三年的往屆畢業(yè)生和目前待畢業(yè)2021屆學生的各項指標數據進行對比,以收集到的數據為準。本圖中的優(yōu)質就業(yè)指的是學生畢業(yè)前后,簽訂的第一份工作,月薪在一萬人民幣以上的就業(yè)情況,大創(chuàng)項目指獲校級及以上立項的大學生創(chuàng)新創(chuàng)業(yè)項目。從圖中,可以明顯看到,2019屆和2020屆學生在各項數據比2018屆僅有小幅度的提升,但2021屆待畢業(yè)學生的各項指標在前三屆基礎上有了大幅提高,各項指標都成倍增加,攻讀研究生人數達到歷史最高水平,競賽獲獎人次和層次都與往屆不可同日而語。這充分說明軟件工程專業(yè)的改革舉措,對人才培養(yǎng)質量提升的促進作用。
廣東海洋大學軟件工程專業(yè)通過人才培養(yǎng)模式的改革,建立了以“實踐教學為核心,理論教學服務于工程實踐”的教學體系,并通過改革實驗模式、組建教學團隊、共享教學資源的方式,極大地提高了本專業(yè)的人才培養(yǎng)質量,為社會提供了更多優(yōu)秀的軟件人才。地方院校數量眾多,如何提高軟件工程專業(yè)的人才培養(yǎng)質量,一直是各高校的重點難點,經實踐證明,本模式有效且可行,此外,廣東海洋大學是一所普通綜合類大學,因此本專業(yè)的改革模式,更具普適性,為其他高校的改革與實踐提供了一個可行的參考,具有重要意義。