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