王曉曄, 溫顯斌, 肖迎元
(天津理工大學 計算機與通信工程學院 天津市智能計算及軟件新技術重點實驗室, 天津 300384)
在培養高等院校學生的動手能力和創新能力中,實踐教學是一個非常重要的手段,近幾年來,各高校以“卓越工程師教育培養計劃”為教學目標,改革工程人才培養的傳統模式,以適應日益發展的工程型人才的需求。
計算機接口課程群是電子信息類專業非常重要的課程[1],主要包括“接口技術與匯編語言”、“計算機控制技術”、“微機原理與接口技術”、“單片機”、“嵌入式”等課程以及若干實踐環節,根據各高校的培養計劃不同,所選課程略有差別。這些課程的應用性和實踐性很強,是培養學生工程素質和創新能力的一個重要載體。但是目前傳統的教學模式教學內容單一,工程背景不強,綜合訓練程度不夠,造成學生對計算機接口類技術理解不透徹,實踐動手能力普遍較弱,難于符合“卓越工程師教育培養計劃”的培養目標[2-4]。如何激發學生學習興趣,強化接口類課程的工程應用能力,成為當前計算機接口類課程實踐教學改革中一個亟待解決的問題。
目前計算機接口類課程在實踐教學中存在的問題主要有:① 計算機接口類課程內容繁多,概念抽象,傳統的教學方法偏重于知識的傳授,學生被動接收知識,大腦容易疲勞,學習效率低下,達不到“培養學生的動手能力和創新能力”的教學目的,必須進行改革。② 實踐教學所用的實驗平臺硬件線路比較固定,設計方案針對性強,實驗內容受硬件設計的制約[5],實驗內容的擴展很受局限,如果要開設自主性、開放性和綜合性的實驗項目,需要進行很大的硬件投入和實驗器件的消耗,對實驗經費的需求量比較大。③ 當前計算機相關專業的教學中普遍存在“重軟輕硬”的現象,軟件教學只需要一臺電腦和相關軟件,就可以完成各種教學需求,對硬件的需求低,設備使用周期長,實踐教學實施起來相對容易。而硬件知識的信息存儲和傳遞都是在設備內部完成的,不直觀,老師講述起來比較抽象。造成目前計算機專業教育普遍存在重視軟件輕視硬件的急功近利的傾向。
這些問題抑制了學生學習計算機接口課程群的主動性,如果將所學知識與其在實際工作當中的應用相結合,使學生提前了解生產過程中的真實需求,及時參與企業的實習,不但能夠激發學生的學習興趣,而且能夠使學生在學習中有的放矢。實際上,日常生活及生產中涉及到微機接口應用的方面很多,如農業自動化、公共汽車收費系統、智能儀器儀表等應用不勝枚舉,通過科學的選擇和設計相關的應用項目,以項目為驅動講授課程,將會大大激發學生對課程的學習興趣,參與實際項目的經驗也會在學生的求職過程中起到重要的支撐作用[6-8]。
通過“項目驅動”教學法的研究和探索,從本質上改變傳統教學方法中忽視實踐環節、內容單一、工程背景不強等缺點,在學校課堂上就能夠滿足企業在招聘中經常開出的 “參與過項目開發”的條件,增加了學生的工程應用背景,為學生的就業打好基礎[9]。
為了激發學生的學習興趣,項目驅動法的實踐教學體系循序漸進地設計實驗項目,實踐項目涉及專業認識實習、課內實驗、綜合實訓、開放選修實驗等多個教學環節。表1列出了微機接口類課程的實踐教學體系。

表1 微機接口類課程的實踐教學體系
1.3.1項目設置
為了提高學生的工程背景知識,需要安排有效的實際開發項目,這就需要授課教師多與企業接觸合作,設計出簡化的但仍具有實際意義的項目,同時這些項目又具有一定的趣味性,從而提高學生的學習熱情。
在“項目驅動”的教學中,項目是整個課程的核心內容[10-14],因此項目設計是要解決的關鍵問題,項目的合理與否將直接影響到最終教學效果,項目的設計應該緊扣教學內容,以培養學生的動手能力為出發點,根據所講授內容的深度,擬定出切實可行的項目。
在傳統的計算機接口課程群的教學中,由于要解決的實驗問題比較簡單,學生經常忽視項目的開發過程,總是直接畫電路圖和寫代碼,然后再補充文檔甚至不寫文檔,因此如何規范學生的項目開發流程是做好“項目驅動”教學的關鍵。
因此我們設定一個項目開發流程(見圖1),用以支持項目開發過程,這一框架在較高的層面列舉了相關的活動內容,它包括了項目相關的領域知識、啟發式的開發策略、控制策略和學習策略等[4,15]。所有項目按照此流程框架開發設計,可以大大降低教師的工作量。
1.3.2項目設計的目標
項目主要培養以下幾方面的工程訓練能力:① 專業理論知識的掌握與運用。② 專業技術資料的收集、閱讀、綜述整理能力。③ 計算機接口課程群的軟硬件系統設計和調試能力。④ 使學生對自己將要從事的工作過程有詳細的了解。⑤ 了解實際項目的開發流程,熟悉常用的開發工具和相關的儀器儀表,使學生充分體驗從產品設計到成品的全過程。⑥ 提高學生之間的技術交流、團隊合作和撰寫技術文檔等的技能。

1.3.3項目設計原則
由于當前大學生普遍存在動手能力差、合作意識不強等弱點,因此項目的設計要采取循序漸進的原則,從最初的單人項目、雙人項目到團隊項目,逐漸增強學生的動手能力和合作意識,不能急于求成。
單人項目主要進行專業認識實習和課內實驗,測試用例程序或電路設計,實踐初級的項目管理工具和操作流程。
雙人項目主要合作完成一些綜合性實踐活動,練習各種功能模塊的軟硬件設計,主要達到提高交流和合作能力的目的。涉及內容包括結對編程、不同模塊之間的接口設計、電路和代碼的審查、人機界面的設計等,使得學生能夠有機會了解不同層次的編程語言和硬件電路的設計實現。
有雙人項目的合作基礎后,可進行團隊項目設計,采用工業界普遍使用的項目小組開發模式,要求學生6~8人分成小組。項目開始階段,教師起主導作用,通過與學生充分的交流和探討幫助他們完成早期的調研和總體方案的確定;項目的中期階段,教師的作用逐漸變成小組內部的協調和引導;進入項目的后期,教師主要檢查項目的進展情況,針對項目開發過程中的難點問題進行指導和解答,幫助學生共同尋找答案。
1.3.4項目評估體系
項目的評估是關系到“項目驅動”教學質量的關鍵。因此設計出一套行之有效的項目評估體系,使得評估結果即能夠體現項目的完成質量,又能夠體現學生的知識積累情況和學生之間的協作精神。
項目的評估體系同企業的評估方式類似,包括客觀評估和主觀評估兩部分內容,主觀評估根據每個階段的工作效果進行評估,評估內容主要包括:需求分析與調研、系統總體方案設計、硬件電路調試、軟件編程與調試、系統聯調和資料歸檔等階段的工作。主觀評估主要包括小組內部的協作開發能力、每個小組成員的參與程度、項目開發成果的評定,通過項目評估實現對實際開發項目的模擬跟蹤。
為了更好地實現項目的開發,課題組設計了開放式的接口課程群的實驗平臺,采用大規模可編程器件,探索性設計了一套基于EDA技術的低成本的計算機接口實驗統一平臺,實驗平臺能完成微機原理、計算機控制、單片機、嵌入式等課程的項目開發實驗內容。
傳統的實驗裝置通常采用的是中小規模的集成電路器件,器件相對固定,可調整性差,而通過EDA工具軟件可以設計各種規模的數字電子系統,通過硬件描述語言進行邏輯設計,經過在計算機上進行仿真后,下載到可編程邏輯器件中測試。這類開放性實驗對設計方案沒有限制,實現起來更加靈活。
通過EDA 和CPLD/FPGA仿真器能完成計算機硬件接口類課程群的各類項目開發實驗。我們采用了模塊化結構來設計實驗平臺,如圖2所示。該裝置使用Xilinx 公司Spartan-3系列FPGA 芯片,通過擴充板可以滿足大部分的項目模型開發要求。

平臺整體分為軟硬件兩個部分。軟件部分主要在實驗PC上運行,實現對硬件實驗系統的監控;硬件部分主要是實驗平臺。實驗PC 與硬件實驗平臺通過USB 串口連接,根據通信接口協議實現實驗PC 對硬件實驗系統的動態監控。軟件部分按照模塊化設計分為界面、通信、監控調試、下載以及內嵌的編譯解釋器等模塊。硬件部分分為板上公共邏輯模組,實驗模組以及對應各個實驗課程的微機接口輔助模組、微機控制輔助模組和單片機輔助模組。這里各個實驗課程輔助模組之間不是完全分離的,我們通過相互比較采用了一定的重疊復用,提高了硬件利用率,大大提高了整體硬件平臺的利用率。
課題組為了進行教學成果的分析和比較,選取天津理工大學計算機專業2009級兩個不同教學班的“微型計算機原理與接口技術”和“計算機控制”課程作為實驗樣本,“微型計算機原理與接口技術”為前期專業基礎課程,“計算機控制”為后續專業課。教學實驗從不同的角度進行教學成果分析,其中A班采用項目驅動的實踐教學方法,在“微型計算機原理與接口技術”課程開始的時候,老師就布置了項目的任務,但是在開始階段是單人和雙人項目,學生可以自由的選擇合作對象,當進入后續專業課程時,再重新選擇組成團隊,這樣能夠督促學生主動的寫好文檔,并且能提高學生看電路圖和讀代碼的能力。B班采用傳統的實踐教學方法,以2個自然教學學期作為實驗周期。
對兩個班的學生進行問卷調查分析,由于兩個對照班的教學模式不同,所以設計的問卷內容也有不同,但是都反映了學生對學習任務的完成情況和學生對課程的滿意度,對調查表的總結情況如表2和表3所示。

表2 A班34人(項目驅動)問卷調查結果

表3 B班34人(傳統教學)問卷調查結果
通過對上述兩個表格以及授課教師的教學反饋,兩種教學模式的教學成果分析如表4所示。
通過對學生和授課教師的調查結果分析可知,學生對于基于項目驅動的教學模式產生了較好的反響,學生的滿意度較高,能夠自主、積極地完成教學過程中的各項任務,學生感到受益很多,尤其對于項目開發的實際過程有了一個很深入的體驗,加強了學生的動手能力和團隊合作能力。同時由于各組的設計方案不盡相同,因此在各種文檔的書寫過程中有效的避免了抄襲現象的產生。

表4 教學成果分析
對于傳統組的調查結果所反映的問題,也正是我們為什么要提出改革的原因所在,實驗內容死板,抽象,學生的參與度較低,實驗報告千篇一律,實驗結果的評價體系過于簡單,造成了上述問題的存在。
“項目驅動”的教學方式是一種全新的教學模式,將實際項目導入到專業教學當中,使學生充分參與到項目開發的各個階段,從而優化了接口類課程群的教學體系和知識結構,全面培養了學生的實踐動手能力、解決問題的能力和團隊協作能力,在天津理工大學計算機學院的實施結果表明,學生的工程素質和創新能力得到較明顯的提高。
[1] 吳衛江,趙建輝,華 巍.計算機接口技術課程實驗教學探索[J].計算機教育,2011(6):95-98.
Wu Weijiang, Zhao Jianhui, Hua Wei.Experiment Teaching Exploring In Computer Interface Technology Course[J].Computer Education,2011(6):95-98.
[2] 陳 飛.技術本科卓越工程師培養的生態體系—基于德國經驗的思考[J].職業技術教育,2011,13(32):32-35.
Chen Fei. Ecological Systems of Training on Technical Undergraduate Excellent Engineer—Thinking Based on German Experience[J]. Vocational and Technical Education, 2011,13(32):32-35.
[3] 鄭 萍.以“卓越工程師培養計劃”為導向的計算機專業課程體系及教學內容改革探索[J].科技創新,2011(5):127-128.
Zheng Ping. Computer Specialty Curriculum System and Teaching Content Reform Oriented by "Excellent Engineer Training Program"[J]. Technology Innovation, 2011(5):127-128.
[4] 張安富,劉興鳳.實施“卓越工程師教育培養計劃”的思考[J].高等工程教育研究,2010(4):56-59.
Zhang Anfu, Liu Xingfeng. Thinking in Implying "Excellent Engineer Training Program"[J].Higher Education Project Research, 2010(4):56-59.
[5] 紀 浩.計算機硬件知識體系的結構框架[J].數字技術與應用,2012(6):122-123.
[6] 關莉莉.項目驅動在高校計算機基礎教學中的應用[J].科技通報,2009,5(25):700-704.
[7] 焦 瑞.項目驅動法初探[J].中國科教創新導刊,2010,13:36.
Jiao Rui. Preliminary in Project-driven Method[J]. China Education Innovation Herald, 2010,13:36.
[8] 陳坤健,李海燕.“計算機基礎”項目化教學模式改革與探索[J].中國電化教育,2012(3):116-119.
Chen Kunjian, Li Haiyan. Project Teaching Mode Reform and Exploration in "Computer Basics"[J]. China Educational Technology, 2012(3):116-119.
[9] 于 旭.以項目驅動教學法改革軟件技術專業課程體系[J].遼寧高職學報,2008,10(3):53-54.
Yu Xu. Reforming Software Technology Curriculum System with Project-driven Pedagogy[J]. Vocational Technical Institute, 2008,10(3):53-54.
[10] 王 荻.項目驅動教學探索[J].中國職業技術教育,2007,12(292):17-18.
Wang Di. Project-driven Teaching Exploring[J]. Chinese Vocational and Technical Education, 2007,12(292):17-18.
[11] 張 哲,陳桂生.在Java語言教學中實施“項目驅動”教學法的實踐探索[J].教育與職業,2007,18:160-161.
Zhang Ze, Chen Guisheng. Practical and Exploring of Implementation "Project-driven" Method in the Java language teaching[J]. Education and Career, 2007,18:160-161.
[12] 王 爽.基于Java課程的項目驅動式立體化教學資源體系建設[J].教育與職業,2013,27:138-140.
Wang Shuang. Project-driven Three-dimensional Teaching Resources System Construction Based on Java Curriculum[J]. Education and Career, 2013,27:138-140.
[13] 樊開陽,陸明州.項目驅動的計算機組成原理課程群實驗教學實踐[J].高校實驗室工作研究,2013(3):48-50.
Fan Kaiyang, Lu Mingzhou. Computer Architecture Course Group Experiment Teaching Practice of Project-driven[J]. Work Research of University Laboratory, 2013(3):48-50.
[14] 劉 超,胡彩萍,胡全連.計算機硬件知識體系的結構框架研究[J].電氣電子教學學報,2009(5):44-45.
Liu Chao, Hu Caiping, Hu Quanlian. Framework Structure of Computer Hardware Knowledge Systems[J]. Electrical & Electronic Education, 2009(5):44-45.
[15] 姚江濤, 張志軍.芻議項目驅動在高校計算機基礎教學中的具體運用[J].計算機光盤軟件與應用,2013,14:209-210.
Yan Jiangtao, Zhang Zhijun. Discussion on Concrete Application Of Project-driven in the Universitiy Computer-based Teaching[J]. Computer CD Software and Applications, 2013,14:209-210.