田會(huì)峰,周 瑜,趙 麗
(江蘇科技大學(xué)電氣與信息工程學(xué)院,江蘇張家港215600)
目前,在我國高等工科院校中,已普遍開設(shè)了“單片機(jī)”及其相關(guān)課程。畢業(yè)生是否具有單片機(jī)開發(fā)能力,已成為許多公司招聘電子、測控、自動(dòng)化和通信等工科專業(yè)學(xué)生的衡量標(biāo)準(zhǔn),同時(shí)也成為他們尋找理想工作的必備技能之一[1,2]。
“單片機(jī)”作為實(shí)踐性很強(qiáng)的一門專業(yè)課程,傳統(tǒng)的教學(xué)方法已經(jīng)不能適應(yīng)培養(yǎng)工程應(yīng)用型人才的需求。因此,對課程進(jìn)行改革已迫在眉睫。
1)課程設(shè)置的問題
一般工科院校在開設(shè)“單片機(jī)”課程之前,先安排“微機(jī)原理與接口技術(shù)”課程。以我校電氣工程及其自動(dòng)化專業(yè)為例,“微機(jī)原理與接口技術(shù)”課程為72學(xué)時(shí),“單片機(jī)”課程為48學(xué)時(shí)。而我校非電類專業(yè)(如機(jī)械電子工程專業(yè)),沒有開設(shè)“微機(jī)原理與接口技術(shù)”課程,因此,這些專業(yè)的“單片機(jī)原理及應(yīng)用”課程為72學(xué)時(shí)。這些課時(shí)中實(shí)驗(yàn)課時(shí)只占理論課時(shí)的1/2,甚至更少,實(shí)踐學(xué)時(shí)不能滿足學(xué)生實(shí)踐能力的培養(yǎng)的需求[3]。
2)教學(xué)方法的問題
單片機(jī)的傳統(tǒng)教學(xué)方式是課程理論教學(xué)與實(shí)踐教學(xué)分開,課堂教學(xué)以理論為主。實(shí)踐教學(xué)一般采用單片機(jī)實(shí)驗(yàn)箱進(jìn)行簡單的驗(yàn)證性實(shí)驗(yàn)[4]。
3)實(shí)驗(yàn)設(shè)計(jì)的問題
目前的單片機(jī)實(shí)驗(yàn),學(xué)時(shí)較少。實(shí)驗(yàn)設(shè)備一般是實(shí)驗(yàn)箱或開發(fā)板,而這些都帶有源程序。學(xué)生做實(shí)驗(yàn)時(shí)基本不需要自己獨(dú)立編程,只是簡單的用導(dǎo)線把硬件連接起來,然后將源程序下載到單片機(jī)內(nèi),運(yùn)行調(diào)試后查看結(jié)果即可。
筆者針對“單片機(jī)”課時(shí)較少的電類專業(yè),提出了基于敏捷開發(fā)和CDIO理念相結(jié)合的教學(xué)方法。
敏捷開發(fā)是一種以人為核心,完成迭代和循序漸進(jìn)的開發(fā)方法。在敏捷開發(fā)中,一個(gè)系統(tǒng)項(xiàng)目被切分成多個(gè)子項(xiàng)目,各個(gè)子項(xiàng)目都具備集成和可運(yùn)行的特征。換言之,就是把一個(gè)大項(xiàng)目分為多個(gè)相互聯(lián)系,但也可以獨(dú)立運(yùn)行的小項(xiàng)目后分別完成[5]。
CDIO工程教育培養(yǎng)大綱將工程畢業(yè)生的能力分為工程基礎(chǔ)知識(shí)、個(gè)人能力、人際團(tuán)隊(duì)能力和工程系統(tǒng)能力四個(gè)層面,大綱要求以綜合的培養(yǎng)方式使學(xué)生在這四個(gè)層面達(dá)到預(yù)定目標(biāo)[6]。
我們將敏捷開發(fā)和CDIO理念相結(jié)合,引入到“單片機(jī)”的教學(xué)中。假設(shè)每個(gè)班級(jí)以40人計(jì)算,劃分成10個(gè)“敏捷開發(fā)島”,每個(gè)“敏捷開發(fā)島”由4人組成,負(fù)責(zé)完成一個(gè)獨(dú)立的項(xiàng)目課題。每個(gè)敏捷島的團(tuán)隊(duì)4人分別承擔(dān)項(xiàng)目經(jīng)理、硬件工程師、軟件工程師和技術(shù)支持等職務(wù)。圖1所示的是“敏捷開發(fā)島”的構(gòu)成。
圖1 敏捷開發(fā)島的構(gòu)成
(1)項(xiàng)目經(jīng)理崗位適合于不僅動(dòng)手能力較強(qiáng),而且組織協(xié)調(diào)能力也好的學(xué)生。主要負(fù)責(zé)整個(gè)團(tuán)隊(duì)的管理、協(xié)調(diào)和正常運(yùn)作。除此之外,還有負(fù)責(zé)整個(gè)系統(tǒng)的軟件仿真,驗(yàn)證系統(tǒng)設(shè)計(jì)方案的合理性,這個(gè)軟件仿真主要由Proteus軟件完成。
(2)硬件工程師崗位適合對硬件電路設(shè)計(jì)能力比較強(qiáng)的學(xué)生,要用Protel繪圖軟件設(shè)計(jì)系統(tǒng)原理圖,制作PCB電路板,焊接電子元器件,并調(diào)試系統(tǒng)硬件。
(3)軟件工程師崗位適合編程能力較強(qiáng)的學(xué)生,要使用C語言或匯編語言編寫系統(tǒng)程序,并調(diào)試系統(tǒng)軟件,優(yōu)化系統(tǒng)功能。
(4)技術(shù)支持崗位適合整理文檔能力較強(qiáng)的學(xué)生。主要負(fù)責(zé)整個(gè)系統(tǒng)的文檔資料整理,包括系統(tǒng)的方案論證、元器件選型、硬件設(shè)計(jì)、軟件設(shè)計(jì)、系統(tǒng)調(diào)試以及系統(tǒng)升級(jí)等。
項(xiàng)目的技術(shù)文檔包括:用戶說明書、量產(chǎn)技術(shù)說明、產(chǎn)品升級(jí)說明三個(gè)部分。用戶說明書是指詳細(xì)告訴用戶如何使用該產(chǎn)品。量產(chǎn)說明書是指小批量生產(chǎn),是給生產(chǎn)人員使用的。產(chǎn)品升級(jí)說明書是指硬件設(shè)計(jì)原理圖和軟件設(shè)計(jì)源程序等。
通過撰寫和整理技術(shù)文檔,使學(xué)生提前熟悉企業(yè)產(chǎn)品設(shè)計(jì)和生產(chǎn)流程,并能提前發(fā)現(xiàn)自己知識(shí)和能力方面的不足,充分利用在校的學(xué)習(xí)時(shí)間,為今后的工作而儲(chǔ)備知識(shí)和積極實(shí)踐經(jīng)驗(yàn)。
“單片機(jī)”作為一門實(shí)踐性很強(qiáng)的課程,將敏捷開發(fā)引入教學(xué),就要結(jié)合科研項(xiàng)目,把所要講授的各項(xiàng)理論知識(shí)和實(shí)踐技能分解到具有明確應(yīng)用目標(biāo)的任務(wù)中,讓學(xué)生在規(guī)定時(shí)間內(nèi)完成任務(wù)[7]。
因此,“單片機(jī)”課程中適用于CDIO的項(xiàng)目要由教師仔細(xì)設(shè)計(jì)和甄選,項(xiàng)目來源于具有實(shí)際意義和應(yīng)用價(jià)值的企業(yè)項(xiàng)目和教學(xué)科研項(xiàng)目。這些項(xiàng)目與生產(chǎn)實(shí)踐相結(jié)合,能夠激發(fā)學(xué)生的學(xué)習(xí)動(dòng)力。
(1)布置課題—教師布置10個(gè)項(xiàng)目課題,并講解每個(gè)項(xiàng)目所要完成的工作和所需的專業(yè)知識(shí),以及如何學(xué)習(xí)這些專業(yè)知識(shí)去獨(dú)立完成項(xiàng)目。
(2)學(xué)生分組—學(xué)生根據(jù)自己的專長組建“敏捷開發(fā)島”。
(3)課題分析—教師根據(jù)每個(gè)“敏捷開發(fā)島”選擇的課題情況,對課題進(jìn)行詳細(xì)分析。
(4)系統(tǒng)分解—每個(gè)“敏捷開發(fā)島”由項(xiàng)目經(jīng)理負(fù)責(zé)討論項(xiàng)目系統(tǒng)設(shè)計(jì)方案,并將系統(tǒng)分解成若干個(gè)模塊,成員分工完成每個(gè)模塊,并將討論結(jié)果與教師交流。教師根據(jù)討論結(jié)果后提出修改建議。
(5)模塊設(shè)計(jì)—每個(gè)“敏捷開發(fā)島”的成員根據(jù)自己的任務(wù)設(shè)計(jì)子模塊,邊做邊學(xué)。設(shè)計(jì)完成后,交給教師檢查。
(6)知識(shí)講解—教師針對學(xué)生模塊設(shè)計(jì)中遇到的問題進(jìn)行統(tǒng)一講解,并幫助學(xué)生解決設(shè)計(jì)過程中遇到的困難和問題。
(7)驗(yàn)收模塊—教師檢查學(xué)生完成的子模塊。學(xué)生完成任務(wù)時(shí)可以繼續(xù)設(shè)計(jì)其它子模塊;若設(shè)計(jì)不正確或存在缺陷,讓學(xué)生重新設(shè)計(jì)完成任務(wù)。
(8)系統(tǒng)調(diào)試—每個(gè)項(xiàng)目組將各子模塊組合起來調(diào)試,項(xiàng)目經(jīng)理根據(jù)自己完成的軟件仿真結(jié)果與項(xiàng)目實(shí)物調(diào)試結(jié)果對照,是否一致。
(9)課題驗(yàn)收—教師對每個(gè)單片機(jī)項(xiàng)目進(jìn)行逐一驗(yàn)收,并讓每個(gè)項(xiàng)目組成員回答教師的問題。教師根據(jù)每個(gè)學(xué)生的答辯情況和項(xiàng)目實(shí)際的成果,給出每個(gè)學(xué)生的課程成績。
(10)課程總結(jié)—學(xué)生總結(jié)學(xué)習(xí)知識(shí)和完成項(xiàng)目中的經(jīng)驗(yàn)和不足之處;教師也根據(jù)各個(gè)項(xiàng)目的整體完成情況,對此次單片機(jī)課程教學(xué)進(jìn)行總結(jié)。
通過敏捷開發(fā)項(xiàng)目對學(xué)生的鍛煉,將傳統(tǒng)以教師為中心改為以學(xué)生為中心的教學(xué)方式。這種方式不但能提高學(xué)生的積極性,還能鍛煉其綜合能力。經(jīng)過幾門課的訓(xùn)練,學(xué)生更加積極地參加校內(nèi)第二課堂的大學(xué)生科技創(chuàng)新計(jì)劃和國家、省級(jí)的學(xué)科競賽,均取得了優(yōu)異的成績。
為了更好地驗(yàn)證敏捷開發(fā)流程的有效性和實(shí)用性,我們特意咨詢了相關(guān)企業(yè),了解他們在產(chǎn)品設(shè)計(jì)開發(fā)過程中的具體流程,通過將兩者進(jìn)行對比來說明敏捷開發(fā)訓(xùn)練的重要性。
表1顯示了兩者的對比情況。
表1 非敏捷開發(fā)與企業(yè)情況對比
表中所示的10個(gè)環(huán)節(jié)中,有7個(gè)一致,2個(gè)基本一致,1個(gè)不一致。但是敏捷開發(fā)的第8個(gè)環(huán)節(jié)的“系統(tǒng)調(diào)試”與企業(yè)情況中第6環(huán)節(jié)的“系統(tǒng)測試”是一致的。敏捷開發(fā)中多了一個(gè)“知識(shí)講解”,而企業(yè)情況中多了一個(gè)“系統(tǒng)整改”。由此可見,基于敏捷開發(fā)的教學(xué),與企業(yè)實(shí)際項(xiàng)目開發(fā)是基本一致的,符合實(shí)際項(xiàng)目開發(fā)流程。這對學(xué)生就業(yè)和實(shí)踐能力提升都有很大的幫助。
本文提出了一種基于敏捷開發(fā)與CDIO理念相結(jié)合的教學(xué)方法,該方法對教師和學(xué)生都提出了更高的要求。對于教師,要有豐富的單片機(jī)系統(tǒng)設(shè)計(jì)經(jīng)驗(yàn),包括硬件設(shè)計(jì)、軟件設(shè)計(jì)和軟件仿真等,要能及時(shí)解決學(xué)生遇到的問題。對于學(xué)生而言,采取任務(wù)驅(qū)動(dòng)“單片機(jī)”課程學(xué)習(xí)的方式,不僅增強(qiáng)了學(xué)習(xí)能力,還鍛煉了團(tuán)隊(duì)合作精神和獨(dú)立解決問題的能力,而這些往往是學(xué)生畢業(yè)后最需具備的能力。使“單片機(jī)”課程實(shí)踐環(huán)節(jié)擯棄了課內(nèi)實(shí)驗(yàn)或課程設(shè)計(jì)的傳統(tǒng)模式??头私虒W(xué)內(nèi)容單一、工程背景不強(qiáng)和綜合訓(xùn)練程度不夠的問題。
用本文提出的方法進(jìn)行單片機(jī)課程教學(xué)改革與實(shí)踐,起到了預(yù)期的效果。這對其他實(shí)踐性較強(qiáng)的課程,比如PLC、DSP或嵌入式系統(tǒng)等都具有較好的參考價(jià)值。
[1]張宏偉,閻有運(yùn),王新.單片機(jī)實(shí)踐教學(xué)改革的探索與實(shí)踐[J].上海:實(shí)驗(yàn)室研究與探索,2009,28(4):206-208.
[2]陳亮.單片機(jī)課程的教學(xué)改革[J].上海:實(shí)驗(yàn)室研究與探索,2008,27(9):121-123.
[3]唐煒.基于“項(xiàng)目驅(qū)動(dòng)”的單片機(jī)類課程實(shí)踐教學(xué)改革[J].上海:實(shí)驗(yàn)室研究與探索,2010,29(5):130-132.
[4]張迎輝.任務(wù)驅(qū)動(dòng)項(xiàng)目教學(xué)法在“單片機(jī)應(yīng)用技術(shù)”教學(xué)中的運(yùn)用[J].廣州:教育探索,2013,(6):264-265.
[5]閆帥,許朋翔.基于瀑布模型與敏捷開發(fā)相結(jié)合的項(xiàng)目管理方法探討[J].北京:電子技術(shù)與軟件工程,2013,(18):67.
[6]崔貫勛,王勇,王柯柯,等.基于CDIO的物聯(lián)網(wǎng)工程專業(yè)實(shí)踐教學(xué)體系的研究與實(shí)踐[J].北京:實(shí)驗(yàn)技術(shù)與管,2013,30(5):111-114.
[7]胡敬朋,王聰.單片機(jī)項(xiàng)目教學(xué)研究及實(shí)踐[J].南京:電氣與電子教學(xué)學(xué)報(bào),2009,31(5):82-84.