劉杰 陽小華 徐卓然 劉志明
(南華大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖南 衡陽 421001)
摘 要:為了培養(yǎng)優(yōu)秀的軟件工程型人才,迎接以“互聯(lián)網(wǎng)+”為特征的新工業(yè)革命的到來。我們以CDIO工程教學(xué)模式為指導(dǎo),在工程過程、軟件工程知識(shí)域、能力培養(yǎng)規(guī)律和學(xué)校學(xué)制等約束條件下,通過分析軟件企業(yè)核心崗位職責(zé)挖掘能力需求和知識(shí)需求,提出基于崗位職責(zé)的增量式軟件工程專業(yè)課程體系設(shè)計(jì)方案,并給出了課程體系的教學(xué)設(shè)計(jì)作為支撐,從而實(shí)現(xiàn)學(xué)生軟件工程的深度職業(yè)技能培養(yǎng)。
關(guān)鍵詞:CDIO教育模式;崗位職責(zé);軟件工程專業(yè)課程;課程體系
中圖分類號(hào):G642 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2096-000X(2017)15-0095-03
Abstract: In order to cultivate outstanding software engineering talents and welcome the arrival of the new industrial revolution characterized by "Internet plus", guided by the CDIO engineering education pattern, under the constraints of engineering process, software engineering knowledge domain, ability training rule and school system, we put forward curriculum system designs of incremental software engineering courses based on position responsibility by analyzing capacity demand and knowledge demand of core-position responsibility in software enterprises. And the teaching design of curriculum system is given as a support, thus realizing the deep vocational skills training of students in software engineering.
Keywords: CDIO education mode; position responsibility; software engineering courses; curriculum system
一、背景
培養(yǎng)大量?jī)?yōu)秀工程型人才是實(shí)施《中國(guó)制造2025》強(qiáng)國(guó)發(fā)展戰(zhàn)略,迎接以“互聯(lián)網(wǎng)+”為特征的新的工業(yè)革命的人員保障。優(yōu)秀工程型人才除了應(yīng)掌握扎實(shí)的工程基礎(chǔ)理論和專業(yè)知識(shí)外,還應(yīng)具備在工程應(yīng)用背景下的團(tuán)隊(duì)協(xié)作能力、批判性思考能力及綜合性思考能力,從而能夠通過團(tuán)隊(duì)協(xié)作、問題分解等方式解決工程性問題。
近年來就如何在本科教育中開展工程教育培養(yǎng)滿足社會(huì)所需要的工程型人才,國(guó)內(nèi)教育界已經(jīng)展開了廣泛的研討。普遍認(rèn)為工程教育應(yīng)由過去強(qiáng)調(diào)科學(xué)和理論分析向工程實(shí)踐和工程設(shè)計(jì)上轉(zhuǎn)變,將工程教育“回歸工程實(shí)踐”。改變以往所培養(yǎng)的學(xué)生只掌握扎實(shí)的數(shù)理和專業(yè)基礎(chǔ)知識(shí),具有較強(qiáng)的邏輯思維能力,但是欠缺工程思維能力和知識(shí)綜合應(yīng)用能力,而且在團(tuán)隊(duì)合作、溝通協(xié)調(diào)能力方面也較弱,不能高效完成工程項(xiàng)目的情況。具有代表性的方案是采用CDIO的工程教學(xué)模式。CDIO工程教學(xué)模式是以產(chǎn)品從構(gòu)思、設(shè)計(jì)、實(shí)施、運(yùn)作等生產(chǎn)流程為載體,通過系統(tǒng)的教學(xué)體系設(shè)計(jì)讓學(xué)生掌握專業(yè)技術(shù)知識(shí)、提升個(gè)人能力和職業(yè)能力、學(xué)會(huì)團(tuán)隊(duì)相互協(xié)同工作,培養(yǎng)學(xué)生具備在企業(yè)和社會(huì)環(huán)境下進(jìn)行研發(fā)的能力。
CDIO教育模式只是一個(gè)指導(dǎo)性的教育范式,給出了能力大綱和12條標(biāo)準(zhǔn)指導(dǎo)實(shí)施,如何將CDIO教育模式和學(xué)科專業(yè)領(lǐng)域相結(jié)合,把工程教育理念貫徹到整個(gè)教育體系中值得深入研究。高等學(xué)校人才培養(yǎng)主要通過課程體系實(shí)施。在課程體系的設(shè)計(jì)中融入教育思想和教育理念,實(shí)現(xiàn)教育教學(xué)目標(biāo)所規(guī)定的知識(shí)、能力和素質(zhì)方面的要求。它決定了教育目標(biāo)得以實(shí)現(xiàn)。所以實(shí)施CDIO教育模式的核心問題是課程體系的設(shè)計(jì)。
二、課程體系設(shè)計(jì)約束
基于CDIO教育模式軟件工程課程體系設(shè)計(jì)是將軟件工程教育的目標(biāo)根據(jù)CDIO教育模式的指導(dǎo)原則,遵循學(xué)生的能力培養(yǎng)規(guī)律,課程間的邏輯關(guān)系,在學(xué)制要求下,分解到若干課程組中,這些課程組構(gòu)成軟件工程的課程體系。因此它有如下四個(gè)設(shè)計(jì)約束條件。
(一)課程設(shè)計(jì)目標(biāo)
課程設(shè)計(jì)的目標(biāo)是希望通過一系列課程的設(shè)計(jì),通過教學(xué)活動(dòng)使學(xué)生具備相關(guān)能力。因此從軟件工程項(xiàng)目實(shí)踐需要能力出發(fā),軟件工程課程設(shè)計(jì)的目標(biāo)是培養(yǎng)學(xué)生具有扎實(shí)基礎(chǔ)和專業(yè)知識(shí),為解決工程問題提供知識(shí)保障;掌握溝通協(xié)調(diào)技巧,能夠通過團(tuán)隊(duì)合作解決工程問題;強(qiáng)化系統(tǒng)化思維能力,能夠針對(duì)工程問題提出系統(tǒng)化的解決方案;提升書面交流能力,能為工程問題撰寫研究報(bào)告和技術(shù)方案。
(二)軟件工程學(xué)科知識(shí)體系
一個(gè)學(xué)科都會(huì)有國(guó)家教學(xué)指導(dǎo)委員會(huì)或者專業(yè)學(xué)術(shù)團(tuán)隊(duì)給出科學(xué)合理的知識(shí)體系,為教學(xué)、培訓(xùn)和職業(yè)認(rèn)證提供依據(jù)。SWEBOK(Software Engineering Body of Knowledge)是為大家所廣為接受的軟件工程知識(shí)體系。到2014 年 2 月止,IEEE計(jì)算機(jī)協(xié)會(huì)已經(jīng)發(fā)布該知識(shí)體系的第3個(gè)版本。在第3個(gè)版本中,SWEBOK提供了15個(gè)知識(shí)域,而其中11個(gè)軟件工程實(shí)踐知識(shí)域,如表1所示,分別是軟件需求、軟件設(shè)計(jì)、軟件構(gòu)造、軟件測(cè)試、軟件維護(hù)、軟件配置管理、軟件工程管理、軟件工程過程、軟件工程模型和方法、軟件質(zhì)量、軟件工程職業(yè)實(shí)踐。
(三)能力培養(yǎng)規(guī)律
應(yīng)遵循學(xué)生的能力培養(yǎng)的客觀規(guī)律構(gòu)建課程體系,保證教學(xué)過程符合客觀實(shí)際,取得預(yù)期的教學(xué)目的。人的能力提升過程遵循著由簡(jiǎn)單到復(fù)雜,從特殊到一般的認(rèn)知規(guī)律過程。一個(gè)理想的培養(yǎng)過程應(yīng)該是先參照案例學(xué)習(xí),掌握一般方法;運(yùn)用方法解決簡(jiǎn)單的工程問題;再綜合運(yùn)用各種方法,解決復(fù)雜問題。這一過程涉及工程問題的深度和廣度逐漸加強(qiáng),能力逐漸提高。
軟件工程能力所需要解決的工程問題分布在工程實(shí)踐過程中的構(gòu)思、設(shè)計(jì)、實(shí)現(xiàn)、運(yùn)行、回收等五個(gè)階段。因此,在能力培養(yǎng)設(shè)計(jì)時(shí),每次學(xué)習(xí)都應(yīng)該包含構(gòu)思、設(shè)計(jì)、實(shí)現(xiàn)、運(yùn)行、回收五個(gè)階段,這樣工程生命周期的每一個(gè)階段就可以得到多次學(xué)習(xí)。但是,每一次學(xué)習(xí)都不是簡(jiǎn)單的重復(fù)性學(xué)習(xí),而是問題難度和涉及內(nèi)容都更加復(fù)雜和更加深入,體現(xiàn)了循序漸進(jìn)、增量式添加的能力提升規(guī)律。
(四)學(xué)校本科學(xué)制安排限制
南華大學(xué)的軟件工程按照計(jì)算機(jī)信息類大類招生。課程結(jié)構(gòu)整體采用層次課程結(jié)構(gòu),分為通識(shí)課程和專業(yè)課程。第一、二學(xué)年完成公共課和基礎(chǔ)課等通識(shí)課程學(xué)習(xí)。第三、四學(xué)年完成專業(yè)基礎(chǔ)和專業(yè)課程學(xué)習(xí)。軟件工程實(shí)踐知識(shí)域要在大學(xué)三、四年完成。在實(shí)施CDIO教育模式需要考慮到與第一、二學(xué)年課程教學(xué)的承接關(guān)系。
三、基于崗位職責(zé)軟件工程專業(yè)課程體系設(shè)計(jì)
因此實(shí)施CDIO教育模式專業(yè)課程體系設(shè)計(jì)是綜合考慮軟件實(shí)現(xiàn)的工程過程、學(xué)科知識(shí)體系、人的能力培養(yǎng)規(guī)律和學(xué)校的學(xué)制特點(diǎn)等因素。形成一個(gè)增量式上升的課程體系,既要反映人類工程規(guī)律,也要尊重學(xué)習(xí)者本身能力提升的客觀現(xiàn)實(shí),實(shí)現(xiàn)工程型的軟件人才培養(yǎng)。軟件工程專業(yè)課程體系設(shè)計(jì)分成如下幾個(gè)步驟。
(一)崗位職責(zé)分析
軟件企業(yè)的技術(shù)崗位職業(yè)角色的發(fā)展分為初級(jí)、中級(jí)和高級(jí)。通過對(duì)51job等求職網(wǎng)站對(duì)職業(yè)角色的要求分析。每個(gè)層級(jí)工作內(nèi)容都涉及到整個(gè)軟件工程過程的各個(gè)階段。只是層級(jí)不同,工作重點(diǎn)不同,需要的知識(shí)內(nèi)容不同。如初級(jí)層次程序員角色重點(diǎn)關(guān)注開發(fā)軟件實(shí)現(xiàn),但是他也需要讀懂中級(jí)設(shè)計(jì)師提供的設(shè)計(jì)文檔和基礎(chǔ)技術(shù)架構(gòu)。下層的任務(wù)單一側(cè)重實(shí)現(xiàn),而越往上涉及的問題復(fù)雜度越高、系統(tǒng)性越強(qiáng),對(duì)軟件系統(tǒng)的重要性也越高,他們掌握核心決策權(quán)力或關(guān)鍵技術(shù)能力。同時(shí)層級(jí)間也存在知識(shí)和技術(shù)遞進(jìn)關(guān)系,工程師的個(gè)人職業(yè)發(fā)展也是經(jīng)歷了初級(jí)歷練,然后經(jīng)過中級(jí)再到高級(jí)。圍繞崗位職責(zé)要求,根據(jù)軟件企業(yè)核心崗位進(jìn)行典型工作任務(wù)分析,目的是從大量的工作任務(wù)之中篩選出各層級(jí)在軟件過程中的關(guān)鍵任務(wù)職責(zé)。我們可以按照軟件工程過程,采用知識(shí)增量的課程體系設(shè)計(jì)(見表2)。
(二)知識(shí)域歸納
即根據(jù)崗位職責(zé)要求,按照程序員、系統(tǒng)分析師、項(xiàng)目組長(zhǎng)崗位角色在軟件工程生命周期中所承擔(dān)的任務(wù)對(duì)知識(shí)域進(jìn)行分解。實(shí)現(xiàn)課程體系整體對(duì)SWEBOK知識(shí)域的覆蓋(見表3)。
(三)學(xué)習(xí)域轉(zhuǎn)換
教學(xué)目標(biāo)的實(shí)現(xiàn)最終都需要依靠課程的教學(xué)完成。因此需要完成知識(shí)域課程體系的轉(zhuǎn)換。專業(yè)課程體系設(shè)計(jì)如表4。
四、教學(xué)設(shè)計(jì)
采用職業(yè)團(tuán)隊(duì)式教學(xué)組織教學(xué)方法。設(shè)置基于項(xiàng)目的課程,按照實(shí)際案例組織課程和教學(xué)內(nèi)容,采取職業(yè)團(tuán)隊(duì)組織教學(xué),學(xué)生直接參與項(xiàng)目的設(shè)計(jì)、分析、構(gòu)造和測(cè)試;減少課堂教學(xué)學(xué)時(shí),增加課外自主學(xué)習(xí)和小組合作學(xué)習(xí)時(shí)間。
針對(duì)增量式課程體系設(shè)計(jì)多層次循環(huán)實(shí)踐教學(xué)。每個(gè)循環(huán)都安排有一個(gè)綜合性專業(yè)實(shí)踐環(huán)節(jié)。建立“實(shí)驗(yàn)-課程設(shè)計(jì)-綜合實(shí)踐-校內(nèi)實(shí)訓(xùn)-企業(yè)頂崗實(shí)習(xí)-畢業(yè)設(shè)計(jì)”的實(shí)踐教學(xué)體系。待解決的問題由良構(gòu)過渡到劣構(gòu),項(xiàng)目類型從封閉發(fā)展為開放,引導(dǎo)學(xué)生平穩(wěn)過渡“旁觀者-模仿者-實(shí)踐者-示范者”的發(fā)展歷程,初期實(shí)踐以案例庫(kù)為主,學(xué)生用來進(jìn)行模仿;然后過渡到第二階段,引入企業(yè)授課,成為實(shí)際項(xiàng)目的實(shí)踐者;最后階段,實(shí)踐組織學(xué)生參加挑戰(zhàn)杯、湖南省應(yīng)用開發(fā)競(jìng)賽、中國(guó)軟件杯競(jìng)賽,進(jìn)行創(chuàng)新性、挑戰(zhàn)性實(shí)踐項(xiàng)目訓(xùn)練。項(xiàng)目的完成需要學(xué)生發(fā)揮自身主觀能動(dòng)性,綜合運(yùn)用所學(xué)知識(shí)和能力,團(tuán)隊(duì)協(xié)作最終完成學(xué)生到職業(yè)人的身份蛻變。
五、結(jié)束語
傳統(tǒng)的高等教育課程體系規(guī)劃是以學(xué)科內(nèi)容為中心,對(duì)學(xué)生專業(yè)技能和職業(yè)崗位技能的培養(yǎng)不足,與社會(huì)職業(yè)崗位對(duì)人才的要求存在一定的差距。因此,改革學(xué)科制的課程體系,以培養(yǎng)高素質(zhì)的工程型人才為目標(biāo),針對(duì)職業(yè)崗位對(duì)人才的需求,構(gòu)建軟件工程專業(yè)的面向職業(yè)能力培養(yǎng)的課程體系,培養(yǎng)學(xué)生基于軟件過程的深度職業(yè)技能。以提升職業(yè)能力為目標(biāo)指引來構(gòu)建軟件工程專業(yè)課程體系,解決了高校畢業(yè)生還需去IT培訓(xùn)機(jī)構(gòu)進(jìn)行培訓(xùn)提升項(xiàng)目能力的問題,又保證了軟件企業(yè)工程項(xiàng)目的績(jī)效,是為IT企業(yè)輸送高素質(zhì)軟件人才的有效途徑。
參考文獻(xiàn):
[1]顧佩華,包能勝,康全禮,等.CDIO在中國(guó)(上)[J].高等工程教育研究,2012(3):24-40.
[2]顧佩華,包能勝,康全禮,等.CDIO在中國(guó)(下)[J].高等工程教育研究,2012(5):24-40.
[3]王剛.CDIO工程教育模式的解讀與思考[J].中國(guó)高教研究,2009(5):86-87.
[4]吳源俊.軟件工程知識(shí)結(jié)構(gòu)[J].信息技術(shù)與標(biāo)準(zhǔn)化,2002(5):31-41.
[5]沈備軍.解讀軟件工程知識(shí)體系SWEBOKV3[J].計(jì)算機(jī)教育,2014,211(7):1-2.
[6]崔穎.高校課程體系的構(gòu)建研究[J].高教探索,2009(3):88-90.
[7]林健.面向“卓越工程師”培養(yǎng)的課程體系和教學(xué)內(nèi)容改革[J].高等工程教育研究,2011(5):9-9.
[8]郭軍,張斌.契合軟件企業(yè)職業(yè)角色發(fā)展架構(gòu)的軟件工程課群及實(shí)踐體系[J].現(xiàn)代教育管理,2008(5):70-72.
[9]李茂國(guó),朱正偉.面向工程過程的課程體系研究[J].高等工程教育研究,2014(4):58-59.