呂友波,蘇曉東,秦相林,王華兵
(哈爾濱商業(yè)大學(xué),哈爾濱 150028)
工程教育認證要求通過認證的工程專業(yè)不僅要深入理解和把握復(fù)雜工程問題,更要按照國際實質(zhì)等效原則培養(yǎng)學(xué)生具有解決復(fù)雜工程問題的能力[1]。目前,針對計算機相關(guān)專業(yè)解決復(fù)雜工程問題能力培養(yǎng)的研究還處于探索階段。許智宏等人認為可采用半開放式項目驅(qū)動教學(xué)方法達成目標(biāo)[2];尚鳳軍提出課程群建設(shè)面向復(fù)雜工程設(shè)計的方案[3];黃永紅等人認為可增設(shè)綜合訓(xùn)練項目來達到培養(yǎng)目標(biāo)[4]。劉秀平等人提出了分層實施方案,從知識、實踐、設(shè)計的維度支撐了解決復(fù)雜工程問題的能力[5]。王宏宇等人提出了以學(xué)科競賽主題為對象,遵循工程邏輯設(shè)計開發(fā)過程的課程建設(shè)改革方法[6]。許多研究成果對于分解落實解決復(fù)雜工程問題能力的培養(yǎng)缺乏深入探索,對于如何優(yōu)化課程設(shè)計體系和內(nèi)容來提高學(xué)生解決復(fù)雜工程問題的能力方面也缺乏深入研究。
完備的實踐教學(xué)體系主要包括課程實驗、課程設(shè)計、實習(xí)、畢業(yè)設(shè)計(論文)等。通常,國內(nèi)高校都將畢業(yè)設(shè)計(論文)環(huán)節(jié)作為實現(xiàn)解決復(fù)雜工程問題的重要載體。但近年來,畢業(yè)設(shè)計期間應(yīng)聘、考研等擠占了學(xué)生很多時間和精力,設(shè)計內(nèi)容往往弱化甚至忽略難以處理的學(xué)科交叉問題和非技術(shù)因素,且畢業(yè)設(shè)計往往采取一人一題,很難達到個人與團隊的教學(xué)指標(biāo)。課程實驗往往隨理論授課逐周分散進行,受學(xué)時限制以及學(xué)生知識掌握處于積累階段等因素,一些深度型、探究型、綜合型的實驗往往很難開展。實習(xí)由于受到場地、經(jīng)費、管理難度、企業(yè)技術(shù)保密等限制,往往缺乏理論指導(dǎo)下的實踐。一些計算機類專業(yè)學(xué)生到實習(xí)單位后,只能接觸一些前端頁面或模塊代碼的機械性編寫,無法接觸軟件或硬件的具體設(shè)計過程,有些專業(yè)實習(xí)甚至畸變?yōu)槠髽I(yè)參觀?!队嬎銠C類專業(yè)教學(xué)質(zhì)量國家標(biāo)準(zhǔn)》要求計算機類專業(yè)學(xué)生4年的實驗當(dāng)量應(yīng)不少于2萬行代碼。在課程設(shè)計方面,要求至少完成兩個有一定規(guī)模和復(fù)雜度的系統(tǒng)的設(shè)計與開發(fā)。調(diào)研發(fā)現(xiàn),實踐教學(xué)體系中提高學(xué)生解決復(fù)雜工程問題的環(huán)節(jié)應(yīng)保證時間的集中性,內(nèi)容的規(guī)模和復(fù)雜度要達到國家標(biāo)準(zhǔn)中的要求,且應(yīng)在理論的指導(dǎo)下開展,課程設(shè)計比較符合這一要求,應(yīng)作為提升學(xué)生解決復(fù)雜工程問題能力培養(yǎng)的關(guān)鍵突破口。
第一,以培養(yǎng)學(xué)生解決復(fù)雜工程問題能力為主線,突出工程技術(shù)應(yīng)用能力的培養(yǎng),強調(diào)自主學(xué)習(xí)和終身學(xué)習(xí)意識培養(yǎng),全面提升學(xué)生的能力和素質(zhì)。第二,使學(xué)生能夠設(shè)計針對復(fù)雜工程問題的解決方案,在設(shè)計環(huán)節(jié)中體現(xiàn)創(chuàng)新意識,實現(xiàn)多方案分析與評價,從而全面提升實踐教學(xué)效果。第三,使學(xué)生深入掌握工程原理,結(jié)合工程實踐,體現(xiàn)綜合運用,提升解決復(fù)雜工程問題的能力。第四,分解落實解決復(fù)雜工程問題能力的培養(yǎng),課程設(shè)計的持續(xù)改進逆向推進課程體系的整體優(yōu)化。第五,構(gòu)建計算機專業(yè)完善的實踐教學(xué)體系和課程群體系,建立各項實踐教學(xué)活動的持續(xù)改進機制。
第一,調(diào)研法。采取調(diào)研問卷調(diào)查和訪談的方式,對目前已畢業(yè)學(xué)生、在校生(包括計算機類專業(yè)本科生、研究生)、教師(包括教學(xué)管理、教學(xué)一線、教輔等多層面)開展調(diào)研。同時走訪和調(diào)研部分高校、IT企業(yè)和專業(yè)培訓(xùn)機構(gòu)等。第二,逆向研究法。從實踐入手,逆向優(yōu)化專業(yè)類知識體系教學(xué)。第三,分析建模法。對調(diào)研數(shù)據(jù)、教學(xué)環(huán)節(jié)統(tǒng)計與考核數(shù)據(jù)、質(zhì)量保證監(jiān)控數(shù)據(jù)進行科學(xué)分析,借助人工智能手段進行建模優(yōu)化。第四,螺旋優(yōu)化、研以致用法。杜絕紙上談兵,形成的專業(yè)課程設(shè)計內(nèi)容設(shè)置實施方案(含教改方案、教學(xué)大綱、課程標(biāo)準(zhǔn)、考核標(biāo)準(zhǔn)等),直接實施于一線教學(xué)活動,并通過實施效果的反饋螺旋優(yōu)化后續(xù)方案。
課程設(shè)計計劃的實施要求指導(dǎo)教師明確課程設(shè)計對應(yīng)于工程教育認證標(biāo)準(zhǔn)具體的畢業(yè)要求指標(biāo)點,并要在課程設(shè)計過程中堅持實施。明晰課程設(shè)計對畢業(yè)要求指標(biāo)點的支撐作用,為合理安排課程設(shè)計的內(nèi)容明確了指導(dǎo)思想。
本校計算機科學(xué)與技術(shù)專業(yè)培養(yǎng)方案以工程教育專業(yè)認證為背景,共設(shè)置11門課程設(shè)計。一類課程設(shè)計在前5學(xué)期開設(shè),涉及專業(yè)類知識課程門數(shù)相對較少,具體包括以下7門課程設(shè)計:C語言程序設(shè)計課程設(shè)計、Java程序設(shè)計課程設(shè)計、數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計、數(shù)據(jù)庫原理課程設(shè)計、計算機網(wǎng)絡(luò)課程設(shè)計、C++程序設(shè)計課程設(shè)計、Java EE編程技術(shù)課程設(shè)計。以上課程設(shè)計以語言開發(fā)為主,是培養(yǎng)學(xué)生計算思維、軟件工程設(shè)計規(guī)范、計算機語言開發(fā)能力的基礎(chǔ)。指導(dǎo)教師面向解決復(fù)雜工程問題培養(yǎng),認真設(shè)定課程設(shè)計題目和內(nèi)容。以學(xué)生為中心,強調(diào)基礎(chǔ)性、技能性、應(yīng)用性、工程性和創(chuàng)新性,采用問題驅(qū)動和求解漸進化方式不斷提升學(xué)生解決復(fù)雜工程問題的能力。每門課程設(shè)計在具體實施中,指導(dǎo)教師始終探索課程設(shè)計如何解決承上(課程實驗)啟下(畢業(yè)設(shè)計和實習(xí)),并不斷思考和探索課程設(shè)計如何逆向優(yōu)化專業(yè)類知識課程的教學(xué)活動。
計算機科學(xué)與技術(shù)專業(yè)另一類課程設(shè)計在第6和第7學(xué)期設(shè)置,綜合性較強(在某些高?;?qū)I(yè)有時被稱為“綜合開發(fā)實訓(xùn)”或“綜合訓(xùn)練項目”等,但通常拘泥于一種開發(fā)語言或技術(shù))。綜合類課程設(shè)計有4門:A.體系結(jié)構(gòu)課程設(shè)計。專業(yè)類知識課程涉及體系結(jié)構(gòu)、計算機組成原理、編譯原理、匯編與接口技術(shù)、計算機網(wǎng)絡(luò)等硬件類和系統(tǒng)類課程。B.操作系統(tǒng)課程設(shè)計。專業(yè)類知識課程涉及操作系統(tǒng)、Linux系統(tǒng)等系統(tǒng)軟件類課程和部分高級語言類課程。C.軟件開發(fā)綜合課程設(shè)計。專業(yè)類知識課程涉及各種高級語言類課程(如Java、C、C++)、軟件工程、數(shù)據(jù)結(jié)構(gòu)與算法、數(shù)據(jù)庫原理等軟件開發(fā)類課程。D.Python與人工智能課程設(shè)計。專業(yè)類知識課程涉及各種高級語言類課程(如Python、Java、C、C++)、數(shù)據(jù)結(jié)構(gòu)與算法、人工智能導(dǎo)論等課程。
綜合類課程設(shè)計涉及大量通識類知識和學(xué)科基礎(chǔ)知識,具有較高的綜合性,包含多個相互關(guān)聯(lián)的子問題,體現(xiàn)問題和系統(tǒng)的規(guī)模、難度、復(fù)雜度、綜合性。課程設(shè)計更強調(diào)培養(yǎng)學(xué)生的系統(tǒng)觀,使學(xué)生能夠站在系統(tǒng)的高度,以系統(tǒng)的視角去看問題,去適應(yīng)錯綜復(fù)雜的應(yīng)用場景,最終實現(xiàn)問題的系統(tǒng)化、科學(xué)化求解?!败浖_發(fā)綜合課程設(shè)計”綜合了之前的.NET綜合課程設(shè)計、Java綜合課程設(shè)計等軟件開發(fā)類課程設(shè)計。根據(jù)工程教育專業(yè)認證要求,這門課程設(shè)計并不拘泥于某一種語言或技術(shù)要求,要求學(xué)生能夠針對復(fù)雜工程問題,選擇與使用恰當(dāng)?shù)募夹g(shù)、資源、現(xiàn)代工程工具和信息技術(shù)工具等設(shè)計開發(fā)一套軟件系統(tǒng),并通過對比得到有效結(jié)論?!癙ython與人工智能課程設(shè)計”以解決復(fù)雜工程問題入手,學(xué)生首先分析問題建立模型,然后給出解決方案和算法設(shè)計,通過Python語言及其擴展庫編程實現(xiàn)系統(tǒng),最后通過設(shè)計方案、模型、算法、開發(fā)語言等多個角度對比分析給出所設(shè)計系統(tǒng)的客觀性評價。在2017版培養(yǎng)方案中該課程設(shè)計為“Python程序設(shè)計課程設(shè)計”,設(shè)計內(nèi)容包含了軟件開發(fā)、大數(shù)據(jù)、人工智能、深度學(xué)習(xí)等。2019版培養(yǎng)方案中,專業(yè)增設(shè)了1門48學(xué)時的人工智能導(dǎo)論理論課,Python程序設(shè)計和人工智能導(dǎo)論合并為1門2周的“Python與人工智能課程設(shè)計”。“體系結(jié)構(gòu)課程設(shè)計”和“操作系統(tǒng)課程設(shè)計”是專業(yè)認真研究工程教育認證標(biāo)準(zhǔn)后于2019版人才培養(yǎng)方案中新設(shè)置的2門課程設(shè)計。在學(xué)時緊張的情況下,專業(yè)仍增設(shè)了這2門綜合類課程設(shè)計,力圖保證學(xué)生硬件系統(tǒng)、組成原理、體系結(jié)構(gòu)、操作系統(tǒng)方面的綜合設(shè)計能力培養(yǎng)質(zhì)量,保證人才培養(yǎng)的系統(tǒng)性和專業(yè)性。
課程設(shè)計具體實施過程中,指導(dǎo)教師以突破解決復(fù)雜工程問題能力培養(yǎng)為核心安排課程設(shè)計內(nèi)容,使學(xué)生的能力培養(yǎng)達到工程教育認證標(biāo)準(zhǔn)的培養(yǎng)要求,反復(fù)思考和嘗試解決以下關(guān)鍵問題:第一,課程設(shè)計內(nèi)容重點覆蓋了《華盛頓協(xié)議》7個特征中的哪些特征?課程設(shè)計的規(guī)模、難度、復(fù)雜度、綜合性是否能滿足工程教育認證背景下的解決復(fù)雜工程問題的要求?第二,課程設(shè)計中,如何運用深入的而不是淺顯的工程原理,經(jīng)過什么樣的分析,而不是直接套用原理、公式來解決設(shè)計目標(biāo)?第三,課程設(shè)計中學(xué)生在哪些理論指導(dǎo)下進行實踐?加深對哪些原理的理解?第四,為了突出復(fù)雜工程問題的解決,與課程設(shè)計相關(guān)的一門或多門相關(guān)課程的講授環(huán)節(jié)中,將對傳統(tǒng)的授課方式、方法和內(nèi)容采取哪些變化?與課程設(shè)計相關(guān)的理論知識講授和基本實驗環(huán)節(jié)能否為學(xué)生完成課程設(shè)計奠定扎實基礎(chǔ)?第五,課程設(shè)計是否要引入混合式教學(xué)?如果引入,混合式教學(xué)將如何提高課程設(shè)計效果?第六,從以學(xué)生為中心的角度分析學(xué)生如何通過課程設(shè)計和相關(guān)理論的學(xué)習(xí),實現(xiàn)從“學(xué)了”到“學(xué)會”再到“會應(yīng)用”?第七,課程設(shè)計“能力培養(yǎng)”如何量化考核,“復(fù)雜度”如何評價?以產(chǎn)出為導(dǎo)向,如何建立持續(xù)的人才培養(yǎng)改進機制?
通過指導(dǎo)教師的不斷思考和改革嘗試,使各門課程設(shè)計實現(xiàn)了設(shè)計理念的轉(zhuǎn)變、從簡單到綜合的轉(zhuǎn)變、從單一系統(tǒng)到增加對比分析、綜合評價等突破常規(guī)的轉(zhuǎn)變。
課程設(shè)計改革使計算機科學(xué)與技術(shù)專業(yè)逐步形成一套課程設(shè)計內(nèi)容設(shè)置實施方案(含教改方案、教學(xué)大綱、課程標(biāo)準(zhǔn)、形成性考核標(biāo)準(zhǔn)等),并直接實施于現(xiàn)有教學(xué)活動。通過培訓(xùn)和專家輔導(dǎo)講座等形式,指導(dǎo)教師深刻理解了工程教育認證的本質(zhì)和內(nèi)涵,改變了傳統(tǒng)的課程設(shè)計理念。以復(fù)雜工程問題的提出和解決為課程設(shè)計核心,突出產(chǎn)出導(dǎo)向,精心設(shè)計課程設(shè)計題目,優(yōu)化課程設(shè)計考核指標(biāo),建立了課程設(shè)計持續(xù)改進機制。
課程設(shè)計改革在人才培養(yǎng)方面取得了切實效果。第一,以培養(yǎng)學(xué)生解決復(fù)雜工程問題能力為主線,突出工程技術(shù)應(yīng)用能力的培養(yǎng),增強了學(xué)生自主學(xué)習(xí)和終身學(xué)習(xí)意識培養(yǎng),設(shè)計理念更符合學(xué)科發(fā)展趨勢。第二,使學(xué)生能夠設(shè)計針對復(fù)雜工程問題的解決方案,在設(shè)計環(huán)節(jié)中體現(xiàn)創(chuàng)新意識,養(yǎng)成了多方案分析、對比和評價的設(shè)計習(xí)慣。第三,使學(xué)生逐步掌握深入的工程原理,結(jié)合工程實踐,綜合運用,提升了解決復(fù)雜工程問題的能力。第四,以課程設(shè)計內(nèi)容設(shè)置為突破口,逆向推進課程體系設(shè)置整體優(yōu)化,使學(xué)生通過實踐逆向推動理論課學(xué)習(xí)的興趣和動力,學(xué)生的理論素質(zhì)進一步提升。
課程設(shè)計改革首先在省級一流本科專業(yè)“計算機科學(xué)與技術(shù)”專業(yè)實施,并推廣至軟件工程、數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)工程三個計算機類本科專業(yè)。與信息技術(shù)密切且相關(guān)的電子商務(wù)、電子信息工程、機器人工程等專業(yè)也逐步開展了面向復(fù)雜工程問題能力培養(yǎng)的課程設(shè)計改革,取得了切實有效的實施效果。
截至2018年,計算機類專業(yè)已達3 349個專業(yè)點,培養(yǎng)學(xué)生復(fù)雜工程問題的解決能力,是工程教育專業(yè)認證對工程類專業(yè)人才培養(yǎng)的核心要求,也是一流本科專業(yè)建設(shè)的核心目標(biāo)之一。隨著工程教育認證的普及開展,面向OBE理念,突出解決復(fù)雜工程問題能力培養(yǎng)的課程設(shè)計改革越發(fā)迫切和必要。只有不斷改革,建立持續(xù)改進機制,才能不斷優(yōu)化計算機教育教學(xué)工作,為信息技術(shù)產(chǎn)業(yè)培養(yǎng)更多優(yōu)秀人才,推動我國信息技術(shù)產(chǎn)業(yè)的蓬勃發(fā)展。