陳承源+馮驪驍
摘 要:針對傳統C語言課程設計中存在的問題,為了激發學生的學習興趣,訓練學生的創新意識,提高學生的綜合應用及實踐能力,提出了以項目驅動方式和團隊合作形式為基礎的C語言課程設計實踐教學改革方法和具體的實施過程。研究表明,通過課程設計改革,培養了學生的工程設計能力、工程應用能力和團隊合作意識。
關鍵詞:C語言;課程設計;項目驅動;團隊合作
中圖分類號:TP311 文獻標識碼:A
Abstract:The C language curriculum design is an important link to enhance students' comprehensive application ability and practical ability.In order to solve the problems of the current C language curriculum design and improve students' comprehensive application ability and practical ability,the paper proposes the practical teaching reform methods based on project driven and teamwork,and concrete implementation process of the C language curriculum design.The research proves that the proposed curriculum design reform cultivates students' capabilities of engineering design and application,and teamwork spirit.
Keywords:C language;curriculum design;project driven;teamwork
1 引言(Introduction)
應用型大學是指以應用型為辦學定位的本科高等院校,其應用型本科重在“應用”,旨在培養有較強社會適應性和市場競爭力,較好創新思維和實踐能力的高素質應用型人才。要想從教學體系建設方面體現“應用”二字,實踐教學就是其核心環節。其中,作為本科教育中重要的綜合性實踐教學環節,課程設計具有綜合性強和實踐性高的特點[1,2]。課程設計要求學生綜合運用所學知識和理論,在教師指導下完成規定的課程設計任務。因此,課程設計既是專業課程教學效果的檢驗,也是進一步提升學生綜合素質的關鍵[3,4]。
目前,C語言作為計算機技術、信息技術和自動化技術的基礎,是計算機專業學生的程序設計入門和必修課?!禖語言程序設計》主要介紹編程的基本思想,基本方法和基本理念。《C語言程序設計課程設計》是一門獨立的實踐環節,是對C語言課程教學的延伸和補充,是對理論知識的綜合應用,其目的是加深學生對理論課程的認識,加強學生的編寫和調試程序的能力、綜合應用相關知識技能的能力,培養學生分析并解決實際問題的能力,激發學生的創造性,鍛煉學生的設計創新能力。因此,該課程的扎實訓練將有利于后續課程的學習,特別是高級程序語言課程,起到事半功倍的作用。
2 傳統課程設計中存在的不足(Drawbacks of
traditional curriculum design)
根據多年對我校計算機專業學生課程設計的指導經驗,傳統的C語言課程設計實踐教學中存在以下問題:
(1)課程設計題目實用性不強
許多設計題目僅僅是教材所涉及的理論知識的擴展、幾個編程例題的綜合,或者是功能簡單的信息管理系統的實現。這些題目基本與工程實踐脫節,缺乏實用性。
(2)課程設計內容重復
通常以10人左右為一組,每個分組的學生都是同一個題目。但由于一些題目已使用多年,部分甚至在上下屆中有重復,因此設計方案中雷同的現象較嚴重,很難避免學生間相互抄襲的情況[5]。
(3)課程設計任務缺少創新
對于課程設計的任務,指導教師一般會給出詳細的要求,這使得學生沒有太多自我發揮的余地。因此學生做設計時基本按照指導書做,但一定程度上影響了學生的創造性。
(4)課程設計方式單一
現有方式一般要求一個學生獨立完成一個題目,使得每個學生都得承擔分析、設計、編碼、調試、測試等工作。但在企業級軟件開發中,項目團隊一般會分工合作,協同工作。
總的來說,傳統的C語言課程設計無法加強學生對C語言基礎知識的認識和理解,不利于培養學生的創新精神和開拓意識,不利于鍛煉學生的團隊協作和工程設計能力。
3 項目驅動法和團隊合作法的特點(Characteristics
of project-driven and teamwork methods)
以建構主義理論為依據的項目驅動教學法也叫案例教學法[6]。學習本質上是一個積極主動的建構過程,而學生是學習活動的主體[7]。建構主義將學生的學習動力歸因于所解決的問題,教學所關注的重點是使學生達到一定程度。教師將需要解決的問題或需要完成的任務以項目或案例的形式交給學生,然后置學生于知識探索中,進而發揮出學生的潛能和創造力。通過教師的指導,學生間的討論來解決問題,最后在完成任務的同時,也達到了最終的教學目的[8]。
團隊合作學習教學法,即采用分組式的教學模式。教師按照學生特點對其進行合理的分組,使學生之間形成合作和激勵的機制。學生以團隊形式參與,每個團隊成員承擔不同的角色和分工,各團隊成員相互依賴、相互溝通、相互合作,協同完成所布置的設計任務[9]。該方法突破了以學生個體學習為主的原有課堂教學模式,引入了合作學習機制,提出了基于團隊的教學模式[10]。endprint
應用型本科以“應用”為主旨和特征來構建課程和教學的內容體系,著重培養學生的技術應用能力[11,12]。基于此,將項目驅動法應用于C語言課程設計實踐教學中,一方面能夠充分調動學生的學習興趣和自主學習意識,另一方面還能顯著提高學生的工程實踐能力,使之更加符合企業的需求。同時,培養學生的團隊合作精神,注重整體意識,強調團隊合力,協同合作,互補互助以達到團隊最大工作效率,為學生從事企業軟件項目開發工作奠定基礎。
4 改革的指導思想和實現目標(Guiding ideologies
and goals of the reform)
通過對C語言課程設計實踐教學的改革,提高學生整體設計水平和能力,充分發揮課程設計的作用,使學生能夠真正做到理論聯系實際,由學生逐漸向工程師過渡,最終成為適應社會需求的應用型人才。因此,從兩方面進行改革。
(1)解決課程設計題目與工程項目實踐脫節的問題
現有課程設計題目缺乏實用性,與企業生產實際脫節,無法培養學生的工程設計能力和工程應用能力。學生僅僅傾向于應試而淡化實際應用與開發,導致學生在學習過程中一味模仿教材上的實例,對系統開發認識模糊,無法形成軟件開發的整體概念。另外,現有課程設計內容重復,缺乏實用有效的設計題目資源庫,無法避免學生相互抄襲和雷同的現象。而且學生常常通過網絡、書籍等方式來查找相似題目的課程設計源代碼,草草修改了事,無法做到獨立思考、舉一反三,無法培養學生綜合運用所學理論知識分析、解決工程實際問題的能力,更無法訓練學生的創新思維。
(2)解決課程設計方式單一的問題
現有課程設計要求學生獨立完成設計工作,每個學生都得完成分析、設計、編碼、調試、測試等工作。但在企業級軟件開發中,項目團隊一般會分工合作,協同工作,現有方式無法培養學生的團隊合作,溝通協調,協同工作能力。這使得剛進入企業或公司的畢業生參與項目團隊的協同開發能力較弱,團隊成員之間相互溝通的意識或能力較差,往往需要一段時間的培訓才能適應并真正融入項目開發團隊,這嚴重影響了畢業生才智潛能的發揮。
5 改革的具體實施方案(Implementation plans of
the reform)
(1)課程設計題目的選擇
課程設計不同于理論課程中的實驗,也不同于畢業設計。因此,課程設計題目的選擇首先要符合C語言教學大綱的要求,使學生能夠運用C語言的基本知識,但又要有別于平時的實驗課,既要培養學生獨立分析和解決問題的能力,又要培養學生的工程實踐和創新能力。
(2)項目案例資源庫的構建
以培養工程實踐能力為目標,構建項目和案例資源庫,將知識點融入案例中。以實際工程項目作為案例樣本,并根據項目功能將其分解為若干子系統,每個子系統均具有完整的功能性需求。一個子系統為一個設計題目,要求運用軟件工程思想進行開發,且同一題目不超過三組學生選擇。案例資源庫中每一個案例均由五部分構成,其具體內容如圖1所示。
(3)協同分工模式的實施
針對每一個設計題目,根據各個學生的能力差異和組內分工搭配進行合理的分組劃分,每組4到5人,并結合軟件工程的開發特點,小組成員分別負責不同的任務,但是又互相配合,共同協作完成。該模式不僅能提高學生的自主學習能力,還能培養學生的團隊合作意識。團隊成員的角色及其分工情況如表1所示。
(4)考核評價方式的設置
每個小組以答辯和報告的形式進行課程設計成果的展示,由此,學生的最終成績由個人報告成績和團隊綜合成績兩部分組成,不僅要考查學生的個人能力,更要考查團隊的綜合實力。教師根據每個學生的答辯情況和每個小組以及每個學生在設計過程中的具體表現,綜合評定每個學生的成績。
6 改革的實施效果(Effect of the reform)
通過以上方法的改革,學生的設計水平得到了一定的提高。與之前傳統方式相比,學生在課程設計過程中表現得更加積極主動,參與度和出勤率都有提高,所以成績有了顯著的提升。另外,過去由于學生對部分題目缺乏設計興趣,常常需要分配才能確定。通過改革之后,學生自愿選擇題目和組建團隊的人數明顯增加,適當調整就能合理分配,這也反映出改革的成效。改革前后學生的成績分析比較如圖2所示。
7 結論(Conclusion)
參照應用型人才培養模式,結合我校計算機專業學生的實際情況,將項目驅動法和團隊合作法成功運用于C語言課程設計實踐教學中。一方面,充分調動學生的自主學習興趣,培養學生的工程素養,提高學生的工程實踐能力,使其更符合企業的實際需求。另一方面,在對各類用人單位對畢業生團隊協作能力需求進行調研與分析的基礎上,培養學生的團隊合作精神,注重整體意識,強調團隊合作,協同分工,為學生畢業后從事企業級軟件項目的開發工作奠定基礎。
課程設計是實踐教學的重要環節,對于培養學生的工程素養、項目實踐能力具有重要作用,而團隊合作模式是激發創新意識、提升創新能力的重要手段。因此,積極探索構建項目驅動式和團隊合作式的課程設計模式的思路和方法,對提高應用型大學的學生創新能力和人才培養質量具有重要意義。
參考文獻(References)
[1] Yi Kong,et al.A Size and Scale Framework for Guiding Curriculum Design and Assessment[J].Journal of Engineering Education,2017,106(3):431-453.
[2] Li C.E-commerce Curriculum Design Based on Distance Learning System[J].International Journal of Emerging Technologies in Learning,2015,10(3):52.
[3] Lee Y J,Shieh C J.Key success factors in the curriculum design of higher education in Taiwan[J].Journal of Interdisciplinary Mathematics,2015,18(6):857-867.
[4] 賀玲麗,白葉飛,許國強.實踐教學中課程設計方法的改革與研究[J].內蒙古農業大學學報(社會科學版),2011,13(5):150-151.
[5] 葛浩,林其斌.單片機課程設計教學改革與實踐[J].實驗技術與管理,2011,28(10):138-140.
[6] 毛雁明.項目驅動法在高級語言課程設計中的研究與實踐[J].開封教育學院學報,2015(4):118-119.
[7] 成江榮.“案例引導、項目驅動”模式下的計算機綜合實踐能力提升策略[J].軟件導刊,2015(2):190-192.
[8] 姜斌,周喜平.探討基于項目驅動的課程設計在Java語言教學中的應用[J].科技傳播,2010(7):204;117.
[9] 仉春華,等.團隊合作學習在課程設計中的應用與探索[J].中國電力教育,2013(10):154-155.
[10] 段桂江,徐世新.基于專業課程設計平臺提升學生團隊協作能力[J].高等工程教育研究,2012(1):138-143.
[11] 袁雙宏.淺談應用型本科人才培養模式[J].職業技術,2010
(12):70.
[12] 付俊龍,李金寶.應用本科院校師資觀念轉變[J].網友世界·云教育,2013(18):95.
作者簡介:
陳承源(1982-),男,博士,講師.研究領域:軟件工程,模糊推理.
馮驪驍(1980-),男,碩士,講師.研究領域:軟件開發,優化計算.endprint