王 龍,魏麗娟,馬艷娥,武 堯
(1.山西農(nóng)業(yè)大學(xué)信息學(xué)院,山西 太谷 030800;2.山西農(nóng)業(yè)大學(xué)信息科學(xué)與工程學(xué)院)
基于CDIO“軟件工程”課程教學(xué)模式改革與實(shí)踐*
王 龍1,魏麗娟1,馬艷娥1,武 堯2
(1.山西農(nóng)業(yè)大學(xué)信息學(xué)院,山西 太谷 030800;2.山西農(nóng)業(yè)大學(xué)信息科學(xué)與工程學(xué)院)
文章研究了CDIO的教學(xué)模式和方法,通過實(shí)踐對(duì)CDIO教學(xué)模式進(jìn)行體系構(gòu)建。實(shí)踐證明,CDIO教學(xué)模式可以切實(shí)加強(qiáng)對(duì)學(xué)生實(shí)踐能力的培養(yǎng),幫助學(xué)生在現(xiàn)代化的團(tuán)隊(duì)模式中進(jìn)行構(gòu)思和設(shè)計(jì)。一套完整的考核標(biāo)準(zhǔn)和處罰措施可以促進(jìn)學(xué)生的學(xué)習(xí)積極性。真正滿足時(shí)代發(fā)展提出的新要求。
CDIO;軟件工程;課程教學(xué)模式;改革與實(shí)踐
軟件工程教育最根本的目標(biāo)是將學(xué)生真正培養(yǎng)成具有實(shí)踐能力的工程師,簡(jiǎn)而言之,就是通過教育使得學(xué)生具備較高的職業(yè)素養(yǎng),同時(shí)理論知識(shí)達(dá)到較高的水平。為了實(shí)現(xiàn)這一目標(biāo),教育者需不斷對(duì)本科軟件工程的教學(xué)方法進(jìn)行創(chuàng)新和改革,以提高教育質(zhì)量。
CDIO教學(xué)模式的出現(xiàn),從一定程度上能夠?qū)崿F(xiàn)軟件工程教學(xué)的改革。本文主要對(duì)該模式下的實(shí)踐方式進(jìn)行探討。
CDIO教學(xué)模式下的培養(yǎng)標(biāo)準(zhǔn)可以劃分為很多層次,具體來說,可以分為三個(gè)級(jí)別。一共有四個(gè)一級(jí)指標(biāo),其中每個(gè)一級(jí)指標(biāo)之下還設(shè)有若干個(gè)二級(jí)指標(biāo)及三級(jí)指標(biāo)[1]。我們根據(jù)CDIO教學(xué)模式提出培養(yǎng)標(biāo)準(zhǔn),并與成都信息工程大學(xué)該專業(yè)具體的培養(yǎng)目標(biāo)進(jìn)行結(jié)合,對(duì)軟件工程具體的培養(yǎng)標(biāo)準(zhǔn)進(jìn)行了詳細(xì)的制定,其內(nèi)容見表1。
為了讓CDIO教學(xué)模式作用完全發(fā)揮,必須對(duì)軟件工程專業(yè)的課程體系進(jìn)行改革創(chuàng)新和重建。其中主要涉及到四門學(xué)科,這四門學(xué)科名稱和學(xué)時(shí)學(xué)分情況見表2。這四門課程在授課學(xué)期和培養(yǎng)標(biāo)準(zhǔn)上都有一些差異,但是學(xué)時(shí)都保持在32學(xué)時(shí),每門課程的學(xué)分也都是2學(xué)分[2]。四門課程的人才培養(yǎng)標(biāo)準(zhǔn)和培養(yǎng)能力指標(biāo)均按表1實(shí)施。
表1 CDIO教學(xué)模式下的培養(yǎng)標(biāo)準(zhǔn)
表2 學(xué)時(shí)學(xué)分標(biāo)準(zhǔn)
對(duì)軟件工程專業(yè)的實(shí)踐類課程群進(jìn)行構(gòu)建時(shí),要遵循以下的構(gòu)建思想:一是學(xué)生要能夠通過實(shí)踐類課程的具體學(xué)習(xí),滿足表1中提出的各種能力需求;二是軟件工程專業(yè)的實(shí)踐課程群應(yīng)按照從底部向頂部的模式進(jìn)行,須遵守循序漸進(jìn)原則。具體來說就是,第三學(xué)期之初開設(shè)的是工程實(shí)踐I課程,教學(xué)的目標(biāo)是實(shí)現(xiàn)學(xué)生基礎(chǔ)編程能力的培養(yǎng),實(shí)現(xiàn)學(xué)生對(duì)C語言等一系列基礎(chǔ)程序的熟練運(yùn)用,并可以利用這一部分專業(yè)的軟件解決實(shí)際問題,提高學(xué)生動(dòng)手編程能力。該門課程是所有課程中最先開設(shè)的課程,可為之后三門實(shí)踐課程的開展提供必要的基礎(chǔ)條件[3]。
學(xué)校在第四學(xué)期開設(shè)工程實(shí)踐II課程,主要是培養(yǎng)學(xué)生的Web編程能力,涉及數(shù)據(jù)庫等若干軟件,可以提高學(xué)生軟件設(shè)計(jì)能力,培養(yǎng)學(xué)生的軟件需求分析能力,提升閱讀和理解設(shè)計(jì)文檔的能力。
學(xué)校第五學(xué)期開設(shè)工程實(shí)踐III課程,主要是培養(yǎng)學(xué)生對(duì)軟件工程測(cè)試計(jì)劃進(jìn)行制定的能力,需通過設(shè)計(jì)測(cè)試實(shí)例開展教學(xué)。要培養(yǎng)學(xué)生對(duì)測(cè)試方案實(shí)施的基本技能,在課程的最終階段須對(duì)學(xué)生進(jìn)行具體技能方面的考核,只有滿足考核的學(xué)生才能具有雄厚的實(shí)踐基礎(chǔ),為日后的工作奠定堅(jiān)實(shí)的基礎(chǔ)。
第六學(xué)期進(jìn)入工程實(shí)踐IV課程的學(xué)習(xí),主要教學(xué)設(shè)想是利用具體的中型軟件工程項(xiàng)目作為實(shí)例,讓學(xué)生參與整個(gè)項(xiàng)目的全過程,從需求分析到進(jìn)行概要設(shè)計(jì),再到程序編程、測(cè)試,直至實(shí)現(xiàn)最后的系統(tǒng)集成和運(yùn)行[4]。在參與整個(gè)項(xiàng)目之后,學(xué)生可以加強(qiáng)構(gòu)思能力和設(shè)計(jì)能力,并且可以實(shí)現(xiàn)在企業(yè)環(huán)境和社會(huì)大背景下的一次歷練,有助于提高學(xué)生的實(shí)踐能力。
軟件工程專業(yè)的所有教學(xué)和實(shí)踐課程都應(yīng)圍繞著人才培養(yǎng)的最終目標(biāo)來進(jìn)行,教學(xué)的具體內(nèi)容必須覆蓋表1中提到的三級(jí)指標(biāo),只有這樣,才能真正培養(yǎng)出社會(huì)所需要的專業(yè)人才。
在具體教學(xué)方法上,所有工程實(shí)踐課程都應(yīng)該堅(jiān)持驅(qū)動(dòng)式的教學(xué)方法,教師通過一套案例的引用和講解來進(jìn)行教學(xué)活動(dòng)的開展,學(xué)生在進(jìn)行基礎(chǔ)知識(shí)學(xué)習(xí)后參照教師引用的案例模板進(jìn)行模仿學(xué)習(xí),完成自己的軟件工程項(xiàng)目,同時(shí)要注意必須堅(jiān)持科學(xué)的流程。
除第三學(xué)期開展的工程實(shí)踐課程I之外,其他三門實(shí)踐課程都應(yīng)該堅(jiān)持小組學(xué)習(xí)和實(shí)踐的方式,小組學(xué)習(xí)是4-6個(gè)人組成學(xué)習(xí)小組,進(jìn)行相關(guān)的學(xué)習(xí)和完成作業(yè)。工程實(shí)踐的每門課程都需要小組進(jìn)行答辯,每個(gè)人都要參加,在答辯后,要對(duì)學(xué)生在項(xiàng)目實(shí)施中作出的努力和成就進(jìn)行評(píng)析,這樣既有利于實(shí)現(xiàn)科學(xué)公平的考核,也有利于提高學(xué)生的口頭表達(dá)能力[5]。一般情況每個(gè)實(shí)踐課程的項(xiàng)目答辯都是在課程的最后進(jìn)行,需要花費(fèi)8-12學(xué)時(shí),下面對(duì)四門課程的主要教學(xué)內(nèi)容進(jìn)行介紹。
工程實(shí)踐I也稱編碼訓(xùn)練,主要的教學(xué)過程:要求每個(gè)學(xué)生都根據(jù)自愿的原則選擇一個(gè)小型的軟件項(xiàng)目,針對(duì)該項(xiàng)目制定出具體的開發(fā)計(jì)劃;在制定計(jì)劃的基礎(chǔ)上進(jìn)行初步的需求分析和設(shè)計(jì),完成程序設(shè)計(jì)文檔的撰寫工作。課程要求學(xué)生學(xué)習(xí)程序編碼的規(guī)范,實(shí)現(xiàn)規(guī)范編碼。在項(xiàng)目投入使用之后進(jìn)行程序的測(cè)試,并在總結(jié)成果的基礎(chǔ)上完成項(xiàng)目的答辯工作,提交項(xiàng)目的總結(jié)報(bào)告和成果。
工程實(shí)踐 II課程又稱軟件技術(shù),主要的教學(xué)過程:教師為學(xué)生提供大量資料,資料種類包括信息管理系統(tǒng)的軟件需求、功能結(jié)構(gòu)、數(shù)據(jù)庫等;學(xué)生小組在對(duì)資料進(jìn)行整理分析后選擇合適的項(xiàng)目跟進(jìn),在規(guī)定的時(shí)間內(nèi)對(duì)項(xiàng)目的原型進(jìn)行設(shè)計(jì)并提交中間成果,主要包括功能設(shè)計(jì)文檔和系統(tǒng)原型。小組成員還需要根據(jù)項(xiàng)目文檔提出的原型進(jìn)行編碼設(shè)計(jì),并實(shí)現(xiàn)編碼,這需要小組成員進(jìn)行分工合作,每個(gè)人認(rèn)領(lǐng)一部分任務(wù),同時(shí)每個(gè)人還必須要在組長(zhǎng)的統(tǒng)一指揮下進(jìn)行系統(tǒng)協(xié)調(diào)的工作,每個(gè)人都要完成相對(duì)完整的模塊,并在項(xiàng)目結(jié)束時(shí)對(duì)自己完成的工作進(jìn)行展示,進(jìn)而完成個(gè)人答辯。
工程實(shí)踐III課程也稱軟件測(cè)試,教師交給學(xué)生待測(cè)試軟件的相關(guān)文檔,包括需求文檔、設(shè)計(jì)文檔和源代碼,要求學(xué)生分組對(duì)這三種文檔資料進(jìn)行分析和理解,編寫出自己小組的軟件測(cè)試計(jì)劃書,在計(jì)劃書的指引下,設(shè)計(jì)測(cè)試用例并執(zhí)行,記錄下相關(guān)的結(jié)果;學(xué)生在對(duì)結(jié)果進(jìn)行分析的基礎(chǔ)上做出總結(jié)報(bào)告并提交,學(xué)生根據(jù)結(jié)果進(jìn)行項(xiàng)目答辯。
工程實(shí)踐IV課程又稱綜合訓(xùn)練,該項(xiàng)目要求學(xué)生分小組進(jìn)行,以小組為單位選擇一個(gè)中型軟件項(xiàng)目,或者由老師指定命題,小組確定選題后進(jìn)行資料的收集,并完成規(guī)格說明書和設(shè)計(jì)說明書的撰寫。每位學(xué)生應(yīng)該有明確分工,學(xué)生獨(dú)立完成說明書的設(shè)計(jì)和編碼編寫,并進(jìn)行測(cè)試,記錄測(cè)量結(jié)果。在每個(gè)人完成自己任務(wù)的基礎(chǔ)上,學(xué)生團(tuán)隊(duì)進(jìn)行項(xiàng)目的整合和源代碼的提交,并在現(xiàn)場(chǎng)進(jìn)行展示和答辯。
過程化考核方式是實(shí)現(xiàn)對(duì)軟件工程相關(guān)實(shí)踐課程進(jìn)行考核的最佳方式。學(xué)生的課堂到課率、小課堂表現(xiàn)和小組展示的情況都應(yīng)納入考核。此外還應(yīng)該包括諸多環(huán)節(jié),如在項(xiàng)目進(jìn)行的中間環(huán)節(jié)要求每個(gè)學(xué)生提交成果,項(xiàng)目結(jié)束之后每個(gè)人都要進(jìn)行答辯。因而最終成績(jī)應(yīng)該由平時(shí)成績(jī)加上中間成果,再加上項(xiàng)目的最終答辯三部分構(gòu)成。其中中間成果物應(yīng)該由滿足三組或以上的數(shù)目需求,不同課程對(duì)中間成果的要求存在差異,但是每一門課程的考核環(huán)節(jié)都必須要實(shí)現(xiàn)培養(yǎng)指標(biāo)的全面覆蓋,這是在考核中必須要實(shí)現(xiàn)的目標(biāo)[6]。
本文闡述采用CDIO工程教育改革理念實(shí)現(xiàn)軟件工程專業(yè)課程教學(xué)模式的構(gòu)建,目的是切實(shí)加強(qiáng)對(duì)學(xué)生實(shí)踐能力的培養(yǎng)。經(jīng)實(shí)踐證明,CDIO的教學(xué)模式可以實(shí)現(xiàn)軟件工程專業(yè)學(xué)生綜合能力的提升,在長(zhǎng)達(dá)四年的教學(xué)實(shí)踐中,該模式的運(yùn)用確實(shí)完成了較佳的課程改革效果,不僅到達(dá)了學(xué)生自身素質(zhì)水平的提高,還滿足了企業(yè)對(duì)軟件工程專業(yè)提出的各種需要,為軟件工程專業(yè)學(xué)生就業(yè)打下扎實(shí)的專業(yè)基礎(chǔ)。這種教學(xué)模式現(xiàn)階段仍然存在一定的弊端,需要根據(jù)社會(huì)發(fā)展的現(xiàn)狀進(jìn)行不斷的健全,根據(jù)不同機(jī)制反饋的多種信息進(jìn)行完善,這也將是軟件行業(yè)下一步研究的方向。
[1]駱斌,葛季棟,丁二玉等.軟件工程專業(yè)課程體系的研究與創(chuàng)新實(shí)踐[J].計(jì)機(jī)教育,2010.23:9-13
[2]陳澎,熊耀華,周慧.基于CDIO模式的軟件工程實(shí)踐教學(xué)課程建設(shè)的研究[J].軟件工程,2016.1:1-3
[3]厲小軍,謝波.軟件工程實(shí)踐課程教學(xué)改革探索[J].計(jì)算機(jī)教育,2012.3:106-110
[4]岳希,李超,李蕊等.軟件工程綜合實(shí)訓(xùn)建設(shè)與實(shí)施[J].計(jì)算機(jī)教育,2010.8:143-145
[5]韓立華,周穎,胡暢霞等.CDIO理念下工程項(xiàng)目教學(xué)案例開發(fā)與應(yīng)用實(shí)踐[J].計(jì)算機(jī)教育,2015.24:139-143
[6]姜大志,孫浩軍.基于CDIO的主動(dòng)式項(xiàng)目驅(qū)動(dòng)學(xué)習(xí)方法研究——以Java類課程教學(xué)改革為例[J].高等工程教育研究,2012.4:159-164
Reform and practice of the course of“Software Engineering”based on CDIO teaching mode
Wang Long1,Wei Lijuan1,Ma Yan'e1,Wu Yao2
(1.College of Information,Shanxi Agriculture University,Taigu,Shanxi 030800,China;2.College of Information Science and Engineering,Shanxi Agricultural University)
This paper focuses on the teaching mode and method of CDIO,and constructs the system of CDIO teaching mode through practice.Practice has proved that CDIO teaching mode can strengthen the cultivation of students'practical ability,and help students conceiving and designing in the modern team mode.A complete set of evaluation criterion and punishment measures can promote students'enthusiasm in study,which really meet the new requirements of the times.
CDIO;software engineering;course teaching mode;reform and practice
TP311.5
A
1006-8228(2017)10-56-03
2017-08-17
2016年山西省高等學(xué)校教學(xué)改革創(chuàng)新項(xiàng)目“基于CMM3軟件認(rèn)證標(biāo)準(zhǔn)的軟件專業(yè)項(xiàng)目實(shí)訓(xùn)過程控制與質(zhì)量評(píng)價(jià)體系研究與實(shí)踐”(J2016146)
王龍(1988-),男,山西孝義人,碩士,講師,主要研究方向:軟件工程。
10.16644/j.cnki.cn33-1094/tp.2017.10.017