壽周翔 胡則輝
摘? 要: 為加強(qiáng)學(xué)生Java應(yīng)用能力的培養(yǎng),分析了Java程序設(shè)計(jì)課程的教學(xué)現(xiàn)狀,結(jié)合課程的特點(diǎn),提出以校企共建課程為依托的“項(xiàng)目引領(lǐng)、任務(wù)驅(qū)動(dòng)、工學(xué)結(jié)合”分步迭代教學(xué)法,并從教學(xué)設(shè)計(jì)、課堂教學(xué)組織實(shí)施、教學(xué)效果評(píng)價(jià)三方面進(jìn)行了論述。教學(xué)實(shí)踐表明,分步迭代教學(xué)法的引入有效地促進(jìn)了學(xué)生項(xiàng)目開(kāi)發(fā)能力的培養(yǎng),提高了該課程的教學(xué)水平與教學(xué)質(zhì)量。
關(guān)鍵詞: 分步迭代; Java程序設(shè)計(jì); 校企共建; 教學(xué)設(shè)計(jì)
Abstract: In order to strengthen the cultivation of students' Java application ability, this paper analyzes the current teaching situation of Java programming course, and combining the characteristics of the course, puts forward the step-by-step iterative teaching method of "project leading, task driving, combination of work and learning" based on the course jointly built by school and enterprise. And the teaching design, classroom teaching organization and implementation, and teaching effect evaluation are discussed as well. Teaching practice shows that the introduction of step-by-step iterative teaching method effectively promotes the cultivation of students' project development ability, and improves the teaching level and teaching quality of the course.
Key words: step by step iteration; Java programming; school enterprise co construction; teaching design
0 引言
目前Java程序設(shè)計(jì)課程的教學(xué),一般是基于課程知識(shí)結(jié)構(gòu)體系,教師遵循其內(nèi)蘊(yùn)的邏輯,依次講授該課程知識(shí)點(diǎn),雖然大多數(shù)知識(shí)點(diǎn)輔以相應(yīng)的例子講解,但從學(xué)生的角度來(lái)看,由于這些例子與具體的工程應(yīng)用脫鉤,缺乏整體性和實(shí)戰(zhàn)性。這種教學(xué)方式主要存在的問(wèn)題[1]有以下幾方面。
⑴ 教師單方面的知識(shí)輸出,學(xué)生只是被動(dòng)地接受。教師與學(xué)生之間缺少一種媒介來(lái)推動(dòng)雙向交流,難以激發(fā)學(xué)生的學(xué)習(xí)興趣,導(dǎo)致學(xué)生積極性、主動(dòng)性不足,一旦學(xué)生在學(xué)習(xí)過(guò)程中受挫,就容易產(chǎn)生畏難情緒,造成厭學(xué),甚至棄學(xué)。
⑵ 學(xué)生在學(xué)習(xí)過(guò)程中,看不到當(dāng)前所學(xué)知識(shí)的用處,在學(xué)習(xí)中分不清重點(diǎn),往往“胡子眉毛一把抓”,過(guò)分拘泥于一些語(yǔ)法細(xì)節(jié),甚至“撿了芝麻,丟了西瓜”。學(xué)生學(xué)得很累,但最后整個(gè)課程教學(xué)效果很不理想。
⑶ 學(xué)生學(xué)完該課程后,由于缺少實(shí)際項(xiàng)目訓(xùn)練這一過(guò)程,對(duì)整體知識(shí)結(jié)構(gòu)難以把握,所學(xué)知識(shí)是零碎的、孤立的,缺乏對(duì)一門(mén)課程的整體把握能力,難以在實(shí)際項(xiàng)目開(kāi)發(fā)中靈活應(yīng)用。
⑷ 采用知識(shí)結(jié)構(gòu)驅(qū)動(dòng)的教學(xué)法,嚴(yán)格按照教科書(shū)的編排順序組織教學(xué),雖然注重了教學(xué)的系統(tǒng)性和完整性,但培養(yǎng)出來(lái)的學(xué)生在理論深度上會(huì)顯不足,同時(shí)在實(shí)踐動(dòng)手能力上無(wú)法達(dá)到企業(yè)的崗位要求,造成應(yīng)屆畢業(yè)生就業(yè)困難。
基于上述情況分析,為了實(shí)現(xiàn)Java程序設(shè)計(jì)課程教學(xué)目標(biāo),培養(yǎng)學(xué)生軟件工程師職業(yè)崗位的能力,我們提出基于校企共建課程,“項(xiàng)目引領(lǐng)、任務(wù)驅(qū)動(dòng)、工學(xué)結(jié)合”的分步迭代教學(xué)法,目的是要尋求解決上述問(wèn)題的方法和途徑,以期根本性地提升Java程序設(shè)計(jì)課程的教學(xué)質(zhì)量,增強(qiáng)學(xué)生運(yùn)用Java編程語(yǔ)言進(jìn)行實(shí)際工程項(xiàng)目的開(kāi)發(fā)能力。
1 分步迭代教學(xué)法的基本思想
迭代法是用計(jì)算機(jī)解決問(wèn)題的一種基本方法,其基本思想是用前一次的結(jié)果作為下一次迭代的初始值,遞推出新的結(jié)果,不斷重復(fù)這一過(guò)程,從而逼近正確的結(jié)果。迭代法所內(nèi)蘊(yùn)的反饋性、修正性、進(jìn)步性正好符合教學(xué)過(guò)程的特點(diǎn)。我們提出的分步迭代教學(xué)法是指基于校企共建課程,通過(guò)“項(xiàng)目引領(lǐng)、任務(wù)驅(qū)動(dòng)、工學(xué)結(jié)合”的方式來(lái)開(kāi)展課程教學(xué)。每一個(gè)階段都是對(duì)學(xué)生編程開(kāi)發(fā)能力的不斷迭代,最終實(shí)現(xiàn)培養(yǎng)學(xué)生具有較強(qiáng)工程項(xiàng)目開(kāi)發(fā)能力的目標(biāo)。其中項(xiàng)目引領(lǐng)是指教師以一個(gè)完整的項(xiàng)目為載體,對(duì)遴選的教學(xué)內(nèi)容進(jìn)行整合、序化,通過(guò)示范來(lái)引導(dǎo)學(xué)生掌握基礎(chǔ)知識(shí),構(gòu)筑起課程知識(shí)的支架,然后運(yùn)用知識(shí)遷移、協(xié)作討論等方式完成對(duì)知識(shí)在感覺(jué)層上的意義構(gòu)建。任務(wù)驅(qū)動(dòng)是以項(xiàng)目任務(wù)為導(dǎo)向,以知識(shí)點(diǎn)為紐帶,將教學(xué)內(nèi)容設(shè)計(jì)成一個(gè)或多個(gè)具體的、可操作性強(qiáng)的任務(wù),并將任務(wù)劃分成多個(gè)子模塊,構(gòu)建模塊化課程結(jié)構(gòu)。學(xué)生緊密?chē)@任務(wù)活動(dòng),在教師的指導(dǎo)下,通過(guò)自主學(xué)習(xí)、合作探究,實(shí)現(xiàn)知識(shí)在感知層上的構(gòu)建。工學(xué)結(jié)合是以IT職業(yè)崗位活動(dòng)為導(dǎo)向,學(xué)生參與到實(shí)際工程項(xiàng)目開(kāi)發(fā)中去,教、學(xué)、做有機(jī)結(jié)合,從而實(shí)現(xiàn)知識(shí)在感悟?qū)由系臉?gòu)建[2]。
在分步迭代教學(xué)法中,項(xiàng)目、任務(wù)的設(shè)計(jì)在整個(gè)教學(xué)實(shí)施中起到非常關(guān)鍵的作用。所選擇的項(xiàng)目案例作為課程知識(shí)的載體應(yīng)具有一定的典型示范作用,既要覆蓋Java程序設(shè)計(jì)課程主要的教學(xué)內(nèi)容,又要讓學(xué)生對(duì)項(xiàng)目的需求容易理解和接受,并具備良好的擴(kuò)展性,方便學(xué)生以此項(xiàng)目為支架,為后續(xù)工程項(xiàng)目開(kāi)發(fā)作為參照。所以需要通過(guò)校企共建課程,邀請(qǐng)IT企業(yè)資深工程師、項(xiàng)目經(jīng)理和高校教師合作,對(duì)企業(yè)的實(shí)際項(xiàng)目進(jìn)行精心提練、適度分割、與教學(xué)知識(shí)點(diǎn)有機(jī)結(jié)合,真正起到讓學(xué)生通過(guò)項(xiàng)目開(kāi)發(fā)對(duì)課程知識(shí)“感覺(jué)、感知、感悟”。
2 教學(xué)設(shè)計(jì)
按照軟件工程的思想以企業(yè)軟件開(kāi)發(fā)項(xiàng)目為載體貫穿整個(gè)課程教學(xué),以企業(yè)項(xiàng)目的實(shí)現(xiàn)為目標(biāo),以項(xiàng)目的開(kāi)發(fā)過(guò)程為脈絡(luò)安排教學(xué)步驟,通過(guò)項(xiàng)目引領(lǐng)→任務(wù)驅(qū)動(dòng)→工學(xué)結(jié)合的分步迭代訓(xùn)練方式來(lái)組織教學(xué)過(guò)程。設(shè)置可遷移、可替代、可操作的學(xué)習(xí)情境,訓(xùn)練學(xué)生的項(xiàng)目開(kāi)發(fā)能力,提高學(xué)生溝通能力和團(tuán)隊(duì)協(xié)作精神。
2.1 校企共建課程
通過(guò)與本專(zhuān)業(yè)有長(zhǎng)期合作關(guān)系的IT企業(yè)資深項(xiàng)目經(jīng)理、軟件工程師合作,首先確定計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)面向的職業(yè)崗位群,梳理出各崗位對(duì)應(yīng)要求完成的工作任務(wù)以及應(yīng)具備的專(zhuān)項(xiàng)能力。在此基礎(chǔ)上,通過(guò)分解專(zhuān)項(xiàng)能力確定教學(xué)目標(biāo),組織教學(xué)內(nèi)容,結(jié)合分步迭代教學(xué)法,提高教學(xué)內(nèi)容的應(yīng)用性、以及與職業(yè)崗位能力培養(yǎng)的匹配性。
⑴ 分解專(zhuān)項(xiàng)能力
根據(jù)對(duì)IT職業(yè)崗位群進(jìn)行分析,分解出軟件開(kāi)發(fā)的專(zhuān)項(xiàng)能力以及應(yīng)達(dá)到的標(biāo)準(zhǔn),描述出每一專(zhuān)項(xiàng)能力所要求知識(shí)結(jié)構(gòu)和素質(zhì)結(jié)構(gòu),以及相應(yīng)的支撐課程。
⑵ 確定教學(xué)內(nèi)容
課程團(tuán)隊(duì)成員通過(guò)集體備課形式,討論將專(zhuān)項(xiàng)職業(yè)能力標(biāo)準(zhǔn)轉(zhuǎn)化為教學(xué)目標(biāo),并根據(jù)專(zhuān)項(xiàng)能力所要求的知識(shí)結(jié)構(gòu)劃分教學(xué)模塊。依照專(zhuān)項(xiàng)能力目標(biāo)要求,將課程知識(shí)進(jìn)行重構(gòu)、組合、序化,并結(jié)合工程項(xiàng)目來(lái)設(shè)計(jì)課程子模塊,確定各個(gè)子模塊的階段性目標(biāo)、教案設(shè)計(jì)、教學(xué)組織等。通過(guò)IT企業(yè)資深工程師、項(xiàng)目經(jīng)理和高校教師合作,對(duì)企業(yè)的實(shí)際項(xiàng)目進(jìn)行精心提練、適度分割,每個(gè)模塊對(duì)應(yīng)的知識(shí)點(diǎn)再分解成若干個(gè)教學(xué)單元,將書(shū)本上孤立知識(shí)點(diǎn)通過(guò)項(xiàng)目進(jìn)行串聯(lián),使教學(xué)目標(biāo)和內(nèi)容融入到實(shí)際項(xiàng)目的開(kāi)發(fā)和實(shí)踐中,與教學(xué)知識(shí)點(diǎn)有機(jī)結(jié)合,真正起到讓學(xué)生對(duì)項(xiàng)目開(kāi)發(fā)“感覺(jué)、感知、感悟”。我們選用了“教師業(yè)績(jī)管理系統(tǒng)”項(xiàng)目作為課內(nèi)教學(xué)案例,設(shè)計(jì)了“8個(gè)教學(xué)模塊和1個(gè)綜合模塊”,每一個(gè)教學(xué)模塊圍繞一個(gè)主題,將項(xiàng)目分解成若干模塊作為教學(xué)內(nèi)容的案例,覆蓋了教學(xué)大綱所有的內(nèi)容,見(jiàn)表1。
2.2 課堂教學(xué)組織實(shí)施
在“項(xiàng)目引領(lǐng)、任務(wù)驅(qū)動(dòng)、工學(xué)結(jié)合”三位一體教學(xué)模式中,學(xué)生是主體,教師是學(xué)習(xí)過(guò)程的指導(dǎo)者和組織者,教師根據(jù)IT崗位工作任務(wù)提供相應(yīng)的學(xué)習(xí)資源,編制模塊化課程的學(xué)習(xí)指南;按照“教、學(xué)、做”一體化原則,強(qiáng)化學(xué)生能力訓(xùn)練,采取項(xiàng)目引領(lǐng)→任務(wù)驅(qū)動(dòng)→工學(xué)結(jié)合分步迭代訓(xùn)練方式來(lái)組織教學(xué)過(guò)程。
⑴ 在項(xiàng)目引領(lǐng)階段,教師通過(guò)項(xiàng)目案例進(jìn)行教學(xué)示范與演示,講解相應(yīng)的知識(shí)點(diǎn),幫助學(xué)生建立起知識(shí)支架以及基本的項(xiàng)目開(kāi)發(fā)能力,通過(guò)這個(gè)階段的學(xué)習(xí),教師幫學(xué)生“扶上馬”,使學(xué)生初步對(duì)課程知識(shí)和項(xiàng)目開(kāi)發(fā)過(guò)程有了一定的感覺(jué);
⑵ 在任務(wù)驅(qū)動(dòng)階段,教師通過(guò)為學(xué)生分析項(xiàng)目案例功能需求及關(guān)鍵問(wèn)題,指出所需要用到的知識(shí)點(diǎn)。在項(xiàng)目任務(wù)開(kāi)發(fā)實(shí)踐教學(xué)環(huán)節(jié),考慮到學(xué)生個(gè)體之間存在的差異性,將不同層次的學(xué)生組成到同一個(gè)項(xiàng)目小組,采用協(xié)作學(xué)習(xí)的方式來(lái)進(jìn)行組織教學(xué)實(shí)施。每組設(shè)一名組長(zhǎng),各組在項(xiàng)目組長(zhǎng)的協(xié)調(diào)下共同去完成案例任務(wù),針對(duì)任務(wù)開(kāi)展研究討論、分工協(xié)作,提高團(tuán)隊(duì)合作能力。在學(xué)生開(kāi)發(fā)實(shí)踐過(guò)程中,教師要特別注意發(fā)揮協(xié)助和引導(dǎo)作用,為學(xué)生再“送一程”。通過(guò)這個(gè)階段的迭代,學(xué)生對(duì)課程知識(shí)進(jìn)一步理解和鞏固,解決實(shí)際問(wèn)題的能力進(jìn)一步提升,對(duì)課程知識(shí)及項(xiàng)目開(kāi)發(fā)達(dá)到了感知的程度。
⑶ 在工學(xué)結(jié)合階段,學(xué)生參與到合作企業(yè)的實(shí)際工程項(xiàng)目開(kāi)發(fā)中去,與企業(yè)員工一同完成系統(tǒng)總體結(jié)構(gòu)和邏輯設(shè)計(jì)、代碼編寫(xiě)、系統(tǒng)測(cè)試以及文檔整理等工作。對(duì)于開(kāi)發(fā)過(guò)程中需要用到的知識(shí),學(xué)生通過(guò)自主學(xué)習(xí)和知識(shí)遷移,實(shí)現(xiàn)對(duì)課程知識(shí)理解的升華與靈活運(yùn)用[3]。教師在這一環(huán)節(jié),主要起到監(jiān)督指導(dǎo)作用,給學(xué)生“壓擔(dān)子”,并會(huì)同企業(yè)對(duì)學(xué)生進(jìn)行學(xué)習(xí)效果的評(píng)價(jià)。通過(guò)這個(gè)階段的迭代,學(xué)生對(duì)知識(shí)與工程項(xiàng)目開(kāi)發(fā)的理解真正達(dá)到了感悟意義上的構(gòu)建。
3 教學(xué)效果評(píng)價(jià)
本課程在考核過(guò)程中采用基于過(guò)程、以成效為導(dǎo)向的教學(xué)質(zhì)量評(píng)價(jià)方法[4],即將傳統(tǒng)的考試機(jī)制與成效評(píng)價(jià)有機(jī)結(jié)合,綜合評(píng)定教學(xué)效果。學(xué)生成績(jī)由理論筆試成績(jī)和成效評(píng)價(jià)成績(jī)二部分組成,理論筆試檢測(cè)學(xué)生對(duì)課程基礎(chǔ)概念、理論知識(shí)的掌握情況,成績(jī)占整個(gè)評(píng)價(jià)結(jié)果的45%;而成效評(píng)價(jià)則貫穿整個(gè)學(xué)習(xí)過(guò)程,重點(diǎn)考核的是學(xué)生的學(xué)習(xí)態(tài)度、團(tuán)隊(duì)協(xié)作精神、項(xiàng)目開(kāi)發(fā)能力以及創(chuàng)新能力,其成績(jī)占整個(gè)評(píng)價(jià)結(jié)果的55%。由于成效評(píng)價(jià)需要結(jié)合項(xiàng)目任務(wù)開(kāi)發(fā)的實(shí)踐過(guò)程,所以把成效評(píng)價(jià)分為過(guò)程評(píng)價(jià)和成果評(píng)價(jià)兩個(gè)方面[5]。
過(guò)程評(píng)價(jià)是根據(jù)學(xué)生在項(xiàng)目開(kāi)發(fā)過(guò)程中的表現(xiàn)情況,包括到課率、回答問(wèn)題、參與討論發(fā)言等,評(píng)定結(jié)果反映的是該學(xué)生平時(shí)的學(xué)習(xí)態(tài)度,可占總成績(jī)的15%。
成果評(píng)價(jià)則是在項(xiàng)目完成后根據(jù)學(xué)生完成項(xiàng)目的作品、報(bào)告等多個(gè)方面來(lái)評(píng)價(jià)學(xué)生在項(xiàng)目實(shí)踐過(guò)程中的開(kāi)發(fā)能力、學(xué)習(xí)能力、創(chuàng)新能力、組織協(xié)作能力等綜合能力。由于成果評(píng)價(jià)相對(duì)主觀性比較強(qiáng),為了更加客觀公正地進(jìn)行成果評(píng)價(jià),應(yīng)引入第三方合作企業(yè)參與到這一環(huán)節(jié)。這部分評(píng)價(jià)的是學(xué)生應(yīng)用知識(shí)的能力,重點(diǎn)考察的是學(xué)生的綜合素質(zhì),可占總成績(jī)的30%。這兩部分成績(jī)的合計(jì)基本反映出了學(xué)生對(duì)這門(mén)課程的綜合運(yùn)用情況。
4 結(jié)束語(yǔ)
我們?cè)贘ava程序設(shè)計(jì)課程教學(xué)中引入分步迭代教學(xué)法,經(jīng)過(guò)三輪的教學(xué)實(shí)踐,學(xué)生的學(xué)習(xí)目標(biāo)更明確,學(xué)習(xí)主動(dòng)性增強(qiáng),對(duì)于課程知識(shí)的系統(tǒng)性應(yīng)用能力以及項(xiàng)目開(kāi)發(fā)能力均有了大幅度的提升,教師的主導(dǎo)作用和學(xué)生主體地位都得以體現(xiàn)。實(shí)踐證明,在程序設(shè)計(jì)類(lèi)課程中應(yīng)用分步迭代教學(xué)法是可行的。但在分步迭代教學(xué)法組織和實(shí)施過(guò)程中,對(duì)教師的教學(xué)技能也是一個(gè)大的挑戰(zhàn),需要運(yùn)用新的教學(xué)策略幫助學(xué)生完成知識(shí)構(gòu)建,教師需要投入更多的精力和時(shí)間來(lái)準(zhǔn)備課前課中的教學(xué)設(shè)計(jì)。另外,分步迭代教學(xué)法實(shí)施過(guò)程中也要求學(xué)生有較高的自我約束能力及溝通表達(dá)能力,這些問(wèn)題需要在今后的教學(xué)中不斷反思與改進(jìn)[6]。
參考文獻(xiàn)(References):
[1] 周運(yùn).Java EE框架課程教學(xué)方法改革與實(shí)踐[J].高師理科學(xué)刊,2012.2(32)99-102
[2] 鐘原,劉忠慧.基于CDIO以面向?qū)ο蟪绦蛟O(shè)計(jì)思維為導(dǎo)向的教學(xué)研究與實(shí)踐[J].軟件工程,2019.22(11):45-47
[3] 謝凱,李靚,馮文祥.項(xiàng)目驅(qū)動(dòng)模式下的面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)改革研究[J].電腦知識(shí)與技術(shù),2019.15(15):208-209
[4] 黃鈺,王建勇.JAVA語(yǔ)言程序設(shè)計(jì)的新三段式教學(xué)[J].計(jì)算機(jī)教育,2011.7(14)55-58
[5] 譚火彬,林廣艷.培養(yǎng)軟件工程思想的面向?qū)ο蟪绦蛟O(shè)計(jì)課程改革與實(shí)踐[J].計(jì)算機(jī)教育,2018.8:53-58
[6] 壽周翔,王李冬,李文娟,胡克用.翻轉(zhuǎn)課堂教學(xué)模式在Java程序設(shè)計(jì)課中的應(yīng)用研究[J].計(jì)算機(jī)時(shí)代,2016.10(292):83-86