摘要:為了提高學(xué)生學(xué)習(xí)積極性,充分體現(xiàn)“以學(xué)生發(fā)展為本”的理念,提高教學(xué)質(zhì)量,增強教學(xué)效果,培養(yǎng)適應(yīng)時代和社會需求的軟件開發(fā)人才,提出了以任務(wù)為主線、教師為主導(dǎo)、學(xué)生為主體的教學(xué)模式——任務(wù)驅(qū)動教學(xué)法。對該教學(xué)法中的任務(wù)劃分與設(shè)計、課堂組織、任務(wù)驅(qū)動的實現(xiàn)過程及實施中應(yīng)注意的一些問題進行了闡述。結(jié)合教學(xué)實踐中的經(jīng)驗對該教學(xué)方法的各個環(huán)節(jié)進行了分析和總結(jié)。
關(guān)鍵詞:任務(wù)驅(qū)動教學(xué)法;任務(wù)設(shè)置;課堂組織;教學(xué)方法
0 引言
軟件工程課是學(xué)生難學(xué),教師難教的一門軟件工程專業(yè)的基礎(chǔ)課程,如何組織教學(xué)、提高教學(xué)質(zhì)量是個非常關(guān)鍵的問題。傳統(tǒng)教學(xué)采用按章組織教學(xué),循序漸進地從基本概念開始,更多強調(diào)的是理論。這種教學(xué)方法讓學(xué)生覺得難以接受,概念枯燥無味,與實際結(jié)合不夠貼切,因此教學(xué)效果不理想。教學(xué)實踐表明,采用任務(wù)教學(xué)驅(qū)動法能使學(xué)生變被動學(xué)習(xí)為主動學(xué)習(xí),一節(jié)課不是從枯燥的概念開始,而是始于一個任務(wù),先布置任務(wù),然后介紹完成任務(wù)需要具備的基礎(chǔ)知識,其余由學(xué)生完成,完成任務(wù)的過程中可以分組進行討論,或與教師交流。本文提出了任務(wù)教學(xué)方法的整體思路,同時對于軟件工程的任務(wù)劃分提出了自己的見解,旨在與同行交流,共同提高軟件工程課程的教學(xué)質(zhì)量,提高學(xué)生軟件開發(fā)的能力。
1 軟件工程課任務(wù)驅(qū)動教學(xué)法的概念與任務(wù)劃分
1.1 任務(wù)驅(qū)動法概念
軟件工程課任務(wù)驅(qū)動教學(xué)法是將軟件工程各階段的文檔作為任務(wù)展開教學(xué),將所要學(xué)習(xí)的知識隱含在一個或幾個任務(wù)中,學(xué)生通過對任務(wù)的分析、討論,明確它大體涉及哪些知識,并找出哪些是舊知識,哪些是新知識,在老師的指導(dǎo)、幫助下找出解決問題的方法。使用這種教學(xué)方法首先要為學(xué)生創(chuàng)建真實的情景,讓學(xué)生帶著任務(wù)去學(xué)習(xí),以激發(fā)學(xué)生的學(xué)習(xí)熱情,變被動學(xué)習(xí)為主動學(xué)習(xí)。在完成學(xué)習(xí)任務(wù)的過程中,教師引導(dǎo)學(xué)生從簡到繁,從易到難,循序漸進地學(xué)習(xí),從而讓學(xué)生得到清晰的思路、方法和系統(tǒng)的知識。
1.2 任務(wù)的劃分
我們學(xué)校軟件工程課程理論教學(xué)為四十五課時,每次課三節(jié)連續(xù),這樣就分成了十五個教學(xué)單元,每一教學(xué)單元要設(shè)計一個任務(wù),總共十五個任務(wù)。每個任務(wù)還要再進一步分解為更具體的任務(wù)。
任務(wù)1
可行性研究
任務(wù)2 需求分析之1—需求獲取
任務(wù)3
需求分析之2—需求建模
任務(wù)4
需求分析之3—需求描述
任務(wù)5
軟件設(shè)計之1—設(shè)計相關(guān)技術(shù)
任務(wù)6
軟件設(shè)計之2—總體設(shè)計
任務(wù)7
軟件設(shè)計之3—設(shè)計優(yōu)化
任務(wù)8
軟件設(shè)計之3—過程設(shè)計
任務(wù)9
編碼相關(guān)技術(shù)
任務(wù)10 軟件測試之1—黑盒測試法
任務(wù)11 軟件測試之2—白盒測試法
任務(wù)12 面向?qū)ο蠓治?/p>
任務(wù)13 面向?qū)ο笤O(shè)計
任務(wù)14 實例解析之1—可行性與需求分析
任務(wù)15 實例解析之2—軟件設(shè)計與測試
2 任務(wù)驅(qū)動教學(xué)法的教學(xué)過程
軟件工程任務(wù)驅(qū)動教學(xué)方法的教學(xué)過程大致可分為五個階段。第一階段是教師引導(dǎo),第二階段是學(xué)生操作應(yīng)用,第三階段是交流討論,第四階段是鞏固提高,第五個階段是總結(jié)。
第一階段,教師要在一次課結(jié)束前提出下一次課的具體任務(wù)和要求,并對如何完成這一任務(wù)作一些方法和工具上的闡述。然后給學(xué)生提供一些參考資料,并告訴學(xué)生從哪里入手做,要求學(xué)生在課后自己去做。這一階段的關(guān)鍵是教師引而不發(fā),充分調(diào)動學(xué)生的求知與操作欲望及好奇心。例如,上一個任務(wù)可行性分析完成后利用半節(jié)課左右的時間布置下一個任務(wù)需求分析:首先給出上一任務(wù),例如教材購銷系統(tǒng)的系統(tǒng)流程圖,再講清下一任務(wù)需求分析的工具和使用方法,然后要求學(xué)生根據(jù)這個題目建立分析模型。
第二階段,以學(xué)生具體操作為主。教師引導(dǎo)后,課后讓學(xué)生大膽去試驗,使他們在使用中體會、感受和領(lǐng)悟。在下次上課時可讓學(xué)生上講臺講解自己的文檔,在寫文檔的過程中學(xué)生可能會遇到一些問題,教師對學(xué)生存在的共性問題,集中解決,對學(xué)生的個別問題進行單獨輔導(dǎo)。這是學(xué)生消化和吸收知識的階段,是學(xué)生由不會到會、由初識到熟練掌握的階段,也是學(xué)生充分調(diào)動各種感官、發(fā)揮各種能力的階段。例如,在分析階段畫出的數(shù)據(jù)流圖,教師可根據(jù)學(xué)生實際完成的情況,歸納總結(jié)出畫數(shù)據(jù)流圖采用自頂向下的分析方法,要求學(xué)生從功能結(jié)構(gòu)圖入手,按功能分解畫分層的數(shù)據(jù)流圖,同時按自后向前的定義系統(tǒng)的數(shù)據(jù)和加工。
第三階段,交流討論期。主要由教師查缺補漏,講解一些共同的難點和重點,并給出大量應(yīng)用實例,進一步加深學(xué)生對所學(xué)知識的理解。這一階段以教師點評為輔,盡可能開展一些熱門問題的討論,還可以進行方法交流,教師可將做得比較好的文檔傳發(fā)給學(xué)生,讓學(xué)生在思路上得到一些啟發(fā),看一看其它同學(xué)是如何完成該任務(wù)的,在方法上和自己有什么不同。這一階段的特點是集思廣益,開拓思路,鼓勵創(chuàng)新。
第四階段,鞏固創(chuàng)新期。學(xué)生在看了別人的文檔或方法之后,又會涌起再度嘗試的欲望。在這一個階段,讓學(xué)生進一步鞏固所掌握的知識,進一步使掌握的知識得到熟練應(yīng)用,同時提高創(chuàng)作水平。
第五階段,總結(jié)期。采用任務(wù)驅(qū)動教學(xué)模式,由于教師主要是在方法上進行引導(dǎo),學(xué)生主要時間用在動手摸索上,這就使得學(xué)習(xí)能力不同的同學(xué),在同一節(jié)課內(nèi)所掌握的知識多少也不同,容易造成學(xué)生成績兩極分化和教學(xué)知識點的疏漏。針對這些問題,就要求教師在采用任務(wù)驅(qū)動模式進行教學(xué)的同時,要加強課堂小結(jié)和知識點的回顧,使學(xué)習(xí)能力差的同學(xué)或操作有疏漏的同學(xué)能通過教師的回顧和總結(jié),跟上教師的教學(xué)進度,全面掌握知識點,達到教師的教學(xué)要求。
3 合理設(shè)計“任務(wù)”
在“任務(wù)驅(qū)動教學(xué)”中,“任務(wù)”的提出是最重要的,它決定這節(jié)課學(xué)生能否主動學(xué)習(xí)。提出的任務(wù)首先要有綜合性,它應(yīng)該綜合學(xué)過的知識和即將要學(xué)的知識進去,這樣學(xué)生既學(xué)到了新知識又復(fù)習(xí)了舊知識,同時還學(xué)會了綜合運用知識;其次要具有實踐性,任務(wù)必須能夠通過實踐來完成,應(yīng)盡量避免抽象和完全理論化的任務(wù);再次要有吸引力,興趣對學(xué)生來說是最重要的,如果學(xué)生對提出的任務(wù)沒有興趣,任務(wù)就是失敗的;最后要有創(chuàng)新性,在設(shè)計任務(wù)的時候需要留給學(xué)生一定的創(chuàng)新空間,這樣才會有利于培養(yǎng)學(xué)生的創(chuàng)新意識??傊?,提出的任務(wù)要符合學(xué)生的認知規(guī)律,融教學(xué)內(nèi)容于開放平等的教學(xué)環(huán)境中,引導(dǎo)學(xué)生去探求知識、獲取知識、運用知識。
“任務(wù)”設(shè)計要注意分散重點、難點。“任務(wù)”設(shè)計時要考慮“任務(wù)”的大小、知識點的含量、前后的聯(lián)系等多方面的因素。
“任務(wù)”設(shè)計要有明確的目標(biāo),要求教師在學(xué)習(xí)總體目標(biāo)的框架上,把總目標(biāo)細分成一個個小目標(biāo),并把每一個學(xué)習(xí)模塊的內(nèi)容細化為一個個容易掌握的“任務(wù)”,通過這些小的“任務(wù)”來體現(xiàn)總的學(xué)習(xí)目標(biāo)。
4 任務(wù)驅(qū)動教學(xué)法需要注意的幾個問題
4.1 課堂教學(xué)用時分配
在任務(wù)驅(qū)動教學(xué)方法中共分成五個階段,如何分配教學(xué)用時是個關(guān)鍵問題。各階段所用時間不是平均的,所有任務(wù)各階段的用時分配也不是一成不變的,在分配過程中應(yīng)主要考慮各階段的難易程度來確定各階段的用時,同時在教學(xué)過程中還要根據(jù)學(xué)生的學(xué)習(xí)和掌握情況適當(dāng)加以調(diào)節(jié)。
4.2 任務(wù)要分層次
由于學(xué)生之間的差異和基礎(chǔ)的不同,我們在設(shè)計任務(wù)的時候要將任務(wù)分為不同的層次,力圖讓所有的學(xué)生在每次學(xué)習(xí)中都有所收獲,體驗到完成任務(wù)后的喜悅和成就感,以激發(fā)起學(xué)生的學(xué)習(xí)興趣和動力,使他們對自己有信心,從而一步步地提高。布置任務(wù)的時候最好能分為基礎(chǔ)和提高兩個任務(wù),大部分學(xué)生可以完成基礎(chǔ)任務(wù),學(xué)有余力的學(xué)生能夠做好提高任務(wù)。任務(wù)的分層是分層教學(xué)的一種形式。
4.3 任務(wù)要形成一個系統(tǒng)
任務(wù)的設(shè)置要注意各個知識點之間的聯(lián)系,讓學(xué)生的任務(wù)和知識形成一個系統(tǒng)?!败浖こ獭闭n的每一章都有其完整的教學(xué)內(nèi)容,如可行性分析、需求分析、軟件設(shè)計及軟件測試等,都能夠設(shè)計成一個系統(tǒng)的子任務(wù),而將這些子任務(wù)結(jié)合就能形成一個完整的系統(tǒng)的任務(wù)。教師在設(shè)計任務(wù)時要處理好局部和整體的關(guān)系,子任務(wù)服務(wù)于母任務(wù),這樣才能保證很好地實現(xiàn)最終的教學(xué)目標(biāo)。
4.4 教學(xué)組織
一堂課是否成功,其關(guān)鍵因素是課堂教學(xué)的組織。要將學(xué)生的積極性充分地調(diào)動起來,一方面取決于教師的教學(xué)功底,另一方面取決于課堂教學(xué)的組織策略。在課堂教學(xué)上要注意以下幾個方面。
(1)以“布置任務(wù)”的方式引入有關(guān)概念,展開教學(xué)內(nèi)容
在傳統(tǒng)的教法中,引入有關(guān)概念時,往往是按照“提出概念一解釋概念一舉例說明”的順序。在計算機教學(xué)中引入新概念、新知識時,應(yīng)以學(xué)生的認知規(guī)律為依據(jù),以“布置任務(wù)一介紹完成任務(wù)的方法一歸納結(jié)論”的順序引入有關(guān)概念,展開教學(xué)內(nèi)容。
(2)成立聯(lián)合學(xué)習(xí)小組
將不同層次的學(xué)生(3-5人)組成一個學(xué)習(xí)小組,共同去完成一個任務(wù),在合作學(xué)習(xí)中基礎(chǔ)好的同學(xué)幫助和輔導(dǎo)基礎(chǔ)一般的同學(xué),實現(xiàn)共同提高。讓輔導(dǎo)的學(xué)生在輔導(dǎo)過程中有新的發(fā)現(xiàn)和提高,而被輔導(dǎo)的學(xué)生也能跟上學(xué)習(xí)進度,體會到成功的感覺。
(3)創(chuàng)設(shè)調(diào)動學(xué)生積極性的情景
興趣是最好的老師。教師要從教學(xué)的內(nèi)容、學(xué)生身邊的實際和當(dāng)前的熱點問題出發(fā),去挖掘教材,創(chuàng)設(shè)一個好的教學(xué)的情景。注意問題的趣味性、參與性、競爭性。如在講解可行性研究時,可以假定一個情景是,給定一個軟件開發(fā)后每年可收到的利潤并給出貼現(xiàn)系統(tǒng),同時給定開發(fā)成本及動作成本,要求計算凈現(xiàn)值、投資回收期及投資回收率。這樣的教學(xué)非常的輕松活潑,可以使學(xué)生在學(xué)習(xí)過程中更加主動。
(4]處理好師生之間的角色關(guān)系
任務(wù)趨動的一個很重要的特點就是學(xué)生在完成任務(wù)這個目標(biāo)的趨動下去探索學(xué)習(xí)從而達到完成技能培養(yǎng)的目的。所以,在教學(xué)中教師起主導(dǎo)作用,學(xué)生是教學(xué)的主體;教師是任務(wù)的提出者、學(xué)生實踐任務(wù)的指導(dǎo)者,學(xué)生是任務(wù)的主人。
(5)任務(wù)的評價
為了檢驗和促進學(xué)生達到預(yù)期的目標(biāo),發(fā)現(xiàn)教學(xué)中的問題,要對學(xué)生的任務(wù)進行評價。評價的內(nèi)容包括:對新知識的理解、掌握和熟練應(yīng)用的程度;學(xué)生自主學(xué)習(xí)的能力;同學(xué)問相互協(xié)作的能力;創(chuàng)新的能力。評價應(yīng)以學(xué)生在完成任務(wù)的過程中是否能夠真正的掌握新的知識和技能,是否能對新的知識和技能深刻理解和熟練應(yīng)用為標(biāo)準。同時評價要特別注意激發(fā)學(xué)生的興奮點和成就感。
5 實例分析
銀行計算機儲蓄系統(tǒng)工作過程是:儲戶填寫存款單或取款單并由業(yè)務(wù)員鍵入系統(tǒng),如果是存款則系統(tǒng)記錄存款人姓名、住址或電話號碼、身份證號碼、存款類型、存款日期、到期日期、利率及密碼(可選)等信息,并打印存款單;儲戶是取款而且存款時留有密碼,則系統(tǒng)首先核對儲戶密碼,若密碼正確或存款時未留密碼,則系統(tǒng)計算利息并打印出利息清單給儲戶。
任務(wù)的劃分:
任務(wù)1 畫出功能結(jié)構(gòu)圖。
任務(wù)2 自頂向下畫出分層數(shù)據(jù)流圖。
任務(wù)3
自后向前建立數(shù)據(jù)字典和寫加工說明。
在布置任務(wù)3時,講解所需的分析工具,并給學(xué)生一些資料,讓學(xué)生自己在課后帶著問題去思考和建立系統(tǒng)分析模型。
在此后的上課時,首先讓學(xué)生展示一下各自的文檔,可以讓幾個學(xué)生演示一下自己的文檔,然后教師根據(jù)學(xué)生所做的組織討論,進行查缺補漏,最后做出總結(jié)。
6 結(jié)束語
所述教學(xué)方法通過引一試一做一看一創(chuàng)新的過程,使學(xué)生學(xué)習(xí)知識也經(jīng)歷了不會一會一熟練一鞏固一提高的過程。它在進度控制上遵循知識的連續(xù)性,令學(xué)生的學(xué)習(xí)有張有弛,符合學(xué)生生理和心理特點以及認識規(guī)律。這樣的教學(xué),學(xué)生學(xué)得快,學(xué)得牢,其教學(xué)容量也遠遠超出了傳統(tǒng)教學(xué)在同等時間內(nèi)的知識量,既實現(xiàn)了大綱的基本要求,又能使每個學(xué)生依據(jù)自身能力獲得最大收益,充分挖掘了不同層次學(xué)生的潛力,貫徹了因材施教的教學(xué)原則。
筆者通過多年教學(xué)的嘗試取得了較好的教學(xué)效果,使原本枯燥的課變得活潑,令學(xué)生原本不愿意學(xué)的課變得愿學(xué)、愛學(xué)、樂學(xué)。
教無定法,貴在得法。真正使學(xué)生掌握所學(xué)知識的教學(xué)方法很多,本文提供的教學(xué)方法只是其中的一種,旨在與同行交流,共同提高,以達到提高教學(xué)質(zhì)量的目的。