- 相關推薦
軟件工程多模式融合教學路徑分析論文
摘要:針對軟件工程課程的特點和軟件人才培養(yǎng)的要求,融合多種先進的教學模式和理念,開展多模式課堂教學策略研究,以Workshop&Teamwork教學法為學生開展學習活動的基礎。實行任務驅(qū)動下的案例項目主線教學,在課堂中引入情境教學方式,并借鑒翻轉課堂的做法提高課內(nèi)學時的效率,文章詳細介紹了教學的總體規(guī)劃、教學過程的實施策略和評價手段,以推動軟件工程教學改革。
關鍵詞:多模式融合;軟件工程;翻轉課堂
1本項教學改革背景
軟件技術和產(chǎn)業(yè)的飛速發(fā)展進步,為我國經(jīng)濟注入了強大的推動力量,信息產(chǎn)業(yè)的人才需求量也在逐年擴大。據(jù)有關部門統(tǒng)計,未來五年,我國信息化人才總需求量高達1500—2000萬人,其中“軟件開發(fā)”、“網(wǎng)絡工程”等人才的缺口最為突出[1]。以軟件開發(fā)為例,職位數(shù)排名前五的職位依次是:軟件工程師,高級軟件工程師,網(wǎng)頁設計,互聯(lián)網(wǎng)軟件開發(fā)工程師和網(wǎng)絡推廣專員。高校作為社會所需人才的培養(yǎng)基地,承擔著培養(yǎng)大批合格軟件人才的職責,滿足軟件產(chǎn)業(yè)發(fā)展和市場需求。為此,很多高校開設了多門軟件技術方法課程,其中的核心課程包括軟件工程,這門課程訓練學生從工程化的角度認識軟件開發(fā)和維護,通過實踐理解和運用工程化的軟件開發(fā)原理、技術和方法,在軟件課程體系中具有重要地位。軟件工程課程的特點是知識體系龐大,內(nèi)容豐富,同時又與產(chǎn)業(yè)和應用聯(lián)系密切,實踐性很強。目前,大部分高校采用理論講授上機練習的形式開展該課程,課程結構設置傾向于教師講授,未給實踐教學以足夠的重視,學生參與軟件工程項目機會很少[2]。即便是課堂講授,有限的學時也難以展開或深入。大部分學生雖然學習過幾門程序語言和一些軟件專業(yè)課程,但基本上都沒有經(jīng)歷過軟件項目開發(fā),普遍感到軟件工程籠統(tǒng)抽象,很難真正理解其中的精髓。因此,如何改變軟件工程課程的教學模式教學方法,提高教學水平和質(zhì)量,切實培養(yǎng)學生的工程設計開發(fā)軟件系統(tǒng)的能力,已經(jīng)成為高校軟件專業(yè)教改的重點熱點之一。在多年的教學實踐探索中,我們學習借鑒了多種新型教學方法的優(yōu)點,包括Workshop&Teamwork教學法[3]、任務驅(qū)動的項目案例教學法[4,5]、情境教學法[6]、翻轉課堂法[7]等,展開深入研究,將它們進行融合和合理改進,應用到軟件工程教學中,提出了多模式融合的軟件工程教學策略,結果表明,該教學模式收到了好的效果。
2多模式融合的軟件工程教學策略
2.1多種新型教學方法融合應用
2.1.1Workshop&TeamworkWorkshop直譯為工作坊、創(chuàng)作室、專題研討會或?qū)嶒灠,是一種由幾個人組成小組(Teamwork),進行密集討論的集會,運用群體壓力和有效的指導來完成復雜而具有挑戰(zhàn)性的工作[2]。Workshop&Teamwork教學法以教師引領啟發(fā)、學生分組學習和共同探討問題為核心,通過充分的溝通交流實現(xiàn)思維能力、自學能力的培養(yǎng),對于理解、領悟軟件工程中抽象的理論及框架等概念模型具有一定的應用價值。它偏重于短期強化的專業(yè)訓練,適合軟件工程這樣的短學制理論課程部分,通過充分調(diào)動參與者的積極性,在短期內(nèi)高效率地完成教學任務。
2.1.2任務驅(qū)動的案例項目任務驅(qū)動教學法將以往以傳授知識為主的傳統(tǒng)教學理念,轉變?yōu)橐越鉀Q問題、完成任務為主的多維互動式的教學理念;將再現(xiàn)式教學轉變?yōu)樘骄渴綄W習,使學生處于積極的學習狀態(tài)[3]。任務驅(qū)動法中的任務可以表現(xiàn)為案例(Case)或項目(Project)的形式。案例通常是能夠突出體現(xiàn)一個或多個知識點、技能點的范例,在例子中設置問題或困難的情境,沒有特定的解決之道,教師扮演設計者和激勵者的角色,鼓勵學生積極參與討論,以求得解決方案。項目往往是綜合性的案例,涉及本課程的大量知識技能點甚至融合了多門課程的知識。學生在老師的指導下獨立處理項目,自我組織信息收集、方案的設計、項目實施、過程管理和最終評價,了解并把握整個過程。
2.1.3情境教學情境教學法的主要理論依據(jù)是情感和認知相互作用和認識的直觀原理,通過在教學過程中引起學生積極的、健康的情感體驗,直接提高學生對學習的積極性,使學習活動成為學生主動進行的、快樂的事情[6]。在教學過程中,教師有目的地引入或創(chuàng)設具有一定情緒色彩的、以形象為主體的生動具體的場景,以引起學生一定的態(tài)度體驗,幫助學生理解學習內(nèi)容,并使學生的心理機能得到發(fā)展。
2.1.4翻轉課堂法翻轉課堂是指重新調(diào)整課堂內(nèi)外的時間,將學習的決定權從教師轉移給學生。教師不再占用課堂的時間來講授信息,這些信息學生在課后通過觀看課程視頻、電子書、與他人討論、查閱參考資料等自主學習活動來掌握。課堂內(nèi)的寶貴時間,學生能夠更專注于主動的基于項目的學習,共同研究解決面臨的問題,從而獲得更深層次的理解。教師也能有更多的時間與每個學生交流,掌握學生的進度和缺欠,以便更有針對性地對學生指導和輔導[7]。
2.2課程規(guī)劃
軟件工程課程系統(tǒng)地介紹軟件開發(fā)的過程、方法和工具的基本概念及需求分析、軟件設計、編碼風格、軟件測試的工程化方法,涉及計算機科學、數(shù)學、經(jīng)濟學、法學、管理學、心理學等多學科,具有理論深、涉及面廣、實踐性強的特點。針對這些特點,我們設計了以Workshop&Teamwork為基本組織形式,采取翻轉課堂的部分做法,將學習內(nèi)容分解為課外自學部分和課內(nèi)學習部分,課前由學生獨立或以小組為單位進行知識的自我獲取和掌握,課堂上開展任務驅(qū)動下的案例/項目的互動分析討論,經(jīng)常引入模擬工作場景的情境學習,課后學生在教師的指導下進行總結歸納提高,答疑解惑,并開展綜合實驗。在課程開始時即規(guī)定考核方式,最終成績由四部分組成:課前自學+練習占20%,課堂學習占30%,綜合項目(含開展過程和最終答辯)占20%,期末筆試占30%。前三項均為過程性評價,占最終成績的70%,體現(xiàn)了對實踐環(huán)節(jié)和參與度的重視。在過程性評價中采取個人自評(20%)、小組互評(20%)和教師評分(60%),含多個評估項目如學習態(tài)度、參與積極度、任務完成程度、創(chuàng)新性等,能夠較為全面和充分地反映學生的個體能力、合作能力和整體表現(xiàn)情況,激勵和督促學生平時積極學習,避免了以往僅考筆試的臨時沖刺,或者團隊中的平均主義現(xiàn)象,真正達到了學習過程就是學習結果的目的。
2.3小組活動的組織和實施
根據(jù)Workshop&Teamwork教學法中對案例及情境的需要,我們對軟件工程課程教學計劃進行總體規(guī)劃和任務分解。通過收集整理具有代表性軟件工程實例,創(chuàng)建若干對應課程相關章節(jié)內(nèi)容的相應工程教學項目及工作情境,內(nèi)容包括任務的名稱、目的、需要解決的問題、項目需求的背景等相關資料。這些工作資料的收集和準備,是實現(xiàn)小組學習的關鍵。課堂任務的設計與選取強調(diào)以下幾點:任務的相對獨立性和開放性;任務是某項知識的學習和應用;將各子任務的完成貫穿到教學的各個階段;每個具體任務既要覆蓋一定范圍的相關知識的運用,題目又不應過大,應相對獨立,便于項目學習的實施。將學生分成小組,每個團隊5-7人,選出一名團隊負責人,教學活動將以小組形式,在負責人的主持下,在課內(nèi)外展開和完成。每名學生在團隊中有明確分工,不再是一個旁觀者,而是分別擔任客戶、項目經(jīng)理、系統(tǒng)分析員、程序員、測試員和評審人員角色等不同角色,完成特定任務,在不同的任務中,實行角色輪換,保證每個成員對所有角色有所體驗。小組學習的基本流程是:呈現(xiàn)任務→分析任務→完成任務→總結評價,四個步驟所包含的具體環(huán)節(jié)如下:呈現(xiàn)任務:創(chuàng)設情節(jié)、引起注意、提出任務;分析任務:針對問題、明確思路、提示重點;完成任務:自主探索、領會意圖、解決任務;總結評價:檢查結果、發(fā)現(xiàn)不足、總結經(jīng)驗。在課堂上,教師提出一個待解決的案例問題,每個團隊獨立提出問題解決方案,各團隊對多種解決途徑進行討論,改進不足。在課外,每個團隊自由選擇或由教師給出一個要開發(fā)的實際項目作為案例。團隊成員分別扮演各種角色分工,討論問題解決方案。以案例為核心,圍繞需解決的問題展開討論及工作。小組中的每個人都應當暢所欲言,充分交流,團隊負責人負責活動的開展,人員的組織和激勵,要求每個成員認真努力,主動參與,及時糾正和避免“南郭先生”現(xiàn)象。教師對學員的實際表現(xiàn)進行考察、點評以便有針對性地提供咨詢意見。
2.4案例項目的開展
近年來,軟件工程學科發(fā)生了巨大變化,從傳統(tǒng)的結構化技術到面向?qū)ο蠹夹g,繼而發(fā)展到基于構件和面向服務的技術;出現(xiàn)了平臺網(wǎng)絡化、方法對象化、系統(tǒng)構件化、開發(fā)工程化、過程規(guī)范化、生產(chǎn)規(guī);膽B(tài)勢;軟件開發(fā)過程、工具和方法等方面有了重要的發(fā)展。為了及時反映技術和理論的進展,在案例和項目的來源方面,我們改變了以往主要由教師設計的做法,通過學院與廣州、深圳、佛山等多家技術企業(yè)和技術機構的校企合作機制,從企業(yè)引入了大量的實際產(chǎn)品和項目,根據(jù)課程內(nèi)容和進度,分解和改變成多個小案例和小、中、大型實訓項目。為順應移動互聯(lián)網(wǎng)發(fā)展潮流,我們精選了移動互聯(lián)網(wǎng)和游戲開發(fā)技術中的軟件工程實踐案例,在課程中介紹這些項目的設計和開發(fā)經(jīng)驗,鼓勵學生探索;精準醫(yī)療是目前醫(yī)療發(fā)展的新方向,精準軟件的設計和開發(fā)與云計算、大數(shù)據(jù)分析等新興技術密切相關,我們就把紛繁的資源整理成較為系統(tǒng)的格式,提供給學生課外學習,從而使得課程內(nèi)容緊緊貼合蓬勃發(fā)展的醫(yī)療應用實際。這些做法不僅解決了案例項目來源單一、數(shù)量不足的問題,而且避免了閉門造車,使得學生能夠接觸到一手的軟件產(chǎn)品的分析、設計中的問題,具有很強的實用價值和崗位情境價值,激發(fā)了學生的探索欲和表現(xiàn)欲。軟件工程中的案例為小例子,較容易為學生接受和理解,能夠在15分鐘左右的時段內(nèi)獲得結果,不僅在流程上相對完整,而且在課時上便于掌控。項目則更加復雜,綜合性更強,往往在學習完軟件工程的一個獨立階段之后提出,檢驗學生綜合運用原理和方法的能力,涉及的時間段也比較長,教師在課堂出提出項目要求,學生開展分析,獲得初步的需求規(guī)格說明,而項目的設計、分工實現(xiàn)和測試、維護等主要放在課外展開,以獲得充分的時間保證。在課程結束時,學生課內(nèi)外產(chǎn)生的設計和分析成果就構成一個完整的項目工程,利于總結、比較和提高。隨著軟件工程的案例項目數(shù)量不斷增加,內(nèi)容不斷豐富,為了便于管理、檢索和更新,目前已經(jīng)建立了教學案例項目庫,包括課堂案例50多個,各類實踐項目30多個,使得課堂內(nèi)容和訓練內(nèi)容得到大大充實,訓練素材和學習過程的質(zhì)量也明顯提高。
2.5真實情境的教學運用
在軟件工程課堂上,我們組織學生以小組(Teamwork)形式討論案例和項目中的疑難,提出案例和項目的解決之道并加以迭代修正,獲得最終解決方案,組織軟件開發(fā)和實施過程,就是對軟件工程崗位的情境模擬,在其中引入了討論情境、辯論情境、商議情境、多種媒體表現(xiàn)情境等,給學生以耳目一新的感受,活躍的課堂氣氛,競爭與合作并存,使得學生全力投入,有效地促進學生思維的活動。例如,在開展學校醫(yī)藥費管理系統(tǒng)項目的需求分析時,教師提出問題:哪些干系人參與該項目的需求獲取?學生小組經(jīng)過討論,給出了各自的結果。大多數(shù)小組認為,編程人員應當作為干系人參加需求分析活動,只有編寫程序的人才知道某些功能是否能夠?qū)崿F(xiàn)。而實際情況則是,技術團隊在前面的可行性分析中就已經(jīng)證實了技術可行性,不必重復可行性分析。經(jīng)過比較討論,同學們強化了需求分析重要性的意識。又如,在軟件測試環(huán)節(jié),很多學生認為單元測試是編程者個人的事情,無需其他技術人員測試。為了驗證同學們的想法,我們設置了如下情境:編寫一個方法A,輸入任意日期,輸出該日期所對應的星期幾,然后分別由編寫團隊和其他團隊來測試代碼有無bug;在學生已經(jīng)完成的學校醫(yī)藥費管理系統(tǒng)1.0版本中隨機選出了幾個模塊(編號為B1-B4),分別由編寫團隊和其他團隊來進行測試。經(jīng)過20分鐘的測試,所獲得結果如下表。雖然以上只是小樣本實驗結果,但學生已經(jīng)在情境學習中深刻認識到了單元測試中其他技術人員介入的必要性,同時還驗證了一個測試原理:檢出錯誤的代碼段比其他代碼段更容易發(fā)現(xiàn)新的錯誤。學生對相關內(nèi)容有了更深的領悟。
2.6翻轉課堂向課外延伸
軟件工程教學要想充分利用課內(nèi)時間,使得學生在有限的學時中消化案例,理解項目,很有必要借用翻轉課堂的課前自學普及型知識、課上討論關鍵性要點、課后自我訓練升華提高的策略。
2.6.1課前布置任務:教師鋪路學生自學要實現(xiàn)學生的課前自學,前提是教師充分重視課前準備工作。教師首先根據(jù)課程總體教學目標劃分一系列的單元子目標,再根據(jù)子目標細化成具體任務。具體任務要適應學習者的水平,符合其課外自主學習的特點,任務難度適中,學生能夠獨立完成,或以小組形式自學完成。教師根據(jù)細化的任務和學習者的實際情況,制作相應的學習資料,以滿足學習者的基礎知識儲備。例如,在總體設計環(huán)節(jié),我們將學習內(nèi)容分解為5個小單元,包括軟件總體設計的概念和目標、軟件體系結構與風格、總體設計的原則、總體設計的方法和工具、總體設計的應用,每個小單元里包括PPT、案例、思考題、閱讀鏈接。學生在完成了這5個小單元的自學后,初步掌握了總體設計的基原理方法,未能解決的疑問將作為上課時集中討論的主題。
2.6.2課堂教學活動:解決疑難重點問題教師在課堂上組織學生進行任務完成情況的匯報、測評以及后續(xù)任務的布置等教學活動。通過組內(nèi)交流和組間答疑,盡量使更多的問題由學生自行解決。例如,在總體設計學習中,A小組提出,設計軟件時沒有必要先確定體系結構風格,應當順其自然。B小組發(fā)表了反對的意見,認為很多項目開發(fā)符合特定類型,事先設計好體系風格,有助于采用成熟的方案進行設計,少走彎路。通過討論大家認識到:復雜系統(tǒng)采用面向?qū)ο蠓绞皆O計比傳統(tǒng)結構能夠更準備地表示數(shù)據(jù)之間的關系,提高重用性和可維護性;過濾器類型的軟件不必考慮交互性,可以采用管道風格設計;如果業(yè)務處理以數(shù)據(jù)為中心,則可以采用倉庫體系結構,等等。教師對學生課堂表現(xiàn)進行考評,綜合前期任務的實施情況,制定后續(xù)任務。
2.6.3課后自我訓練:鞏固歸納升華提高教師根據(jù)本堂課的學習目標和知識要點,設計課后小練習,交給學生個人獨立完成,設計課后綜合性練習,交給學生以小組形式獨立完成。學生可以將自己的練習結果和思路發(fā)布到網(wǎng)絡群組中共享,分享經(jīng)驗,共享發(fā)現(xiàn)的新工具、新技術,互相幫助攻克困難。需要教師及時關注跟進,了解學生的練習情況,并及時進行輔導、提示和解答,從而保證學生在課后能夠及時進行鞏固練習,復習歸納。另一方面,學生中涌現(xiàn)的新點子、新材料,產(chǎn)出的優(yōu)秀作品,教師可以及時收入素材庫,作為今后教學的輔助材料。
3結語
近幾年來,我們不斷摸索嘗試以小組為單位的任務驅(qū)動下的案例/項目教學新模式,在合適的環(huán)節(jié)開展情境教學,吸收翻轉課堂的優(yōu)點做法,以實際案例和項目為主題,以實現(xiàn)任務為模塊學習目標,學生課外自學、開展小組活動、探索解決問題的方案、團隊合作與競爭等,完全改變了傳統(tǒng)的以教師為主體的講授方式,使抽象的概念和工程原理經(jīng)過學生的主動學習和實踐而變得實際起來,取得了很好的教學效果,主要表現(xiàn)在:充分調(diào)動了學生的主動性和積極性,課程由原來干癟無味變得鮮活生動,學生們戲稱“軟工課堂熱,發(fā)言搶答忙”,學習觀念得以改變,學生的自學能力、查閱文獻的能力、分析軟件系統(tǒng)和設計系統(tǒng)的能力、編程和測試的實戰(zhàn)能力都得到了較大提高。學生通過大量案例和項目的實踐學習,感受到了軟件工程課程的指導意義和實用價值,提高了運用軟件工程先進思想和方法設計開發(fā)軟件項目的信心和愿望。對于教師來說,開發(fā)具有新技術、新思想的教學案例,才可能教好學生,因此,新的教學模式既給予了教師適度的壓力,又提高了教師學習運用軟件工程思想方法和技術的動力。運用新教學模式時我們也看到了存在的一些問題:隨著軟件工程技術和思想的發(fā)展,學習內(nèi)容越來越龐大,如何在保留經(jīng)典和引入新潮之間做好平衡,如何有效地過濾相對過時的內(nèi)容,尚未有一個明確的原則和解決思路;軟件類部分課程具有一定的重疊性,相關的課程是否可以合并,減少重復環(huán)節(jié)?我們將不斷學習,不斷實踐,改進和完善軟件工程教學模式,切實培養(yǎng)學生的思考能力、動手能力,為社會培養(yǎng)更多合格的軟件工程人才。
參考文獻:
[1]全面解析我國2015年IT行業(yè)發(fā)展與就業(yè)前景.
[2]毛燕琴.軟件工程專業(yè)案例啟發(fā)式教學實踐框架研究[J].計算機教育,2015(7):22-24.
[3]吳建斌,陳中育,葉榮華,等.軟件工程類課程教學模式改革探索[J].中國信息技術教育,2013(5):119-121.
[4]熊祥光.項目驅(qū)動的校企合作及做中學教改實踐[J].計算機教育,2015(14):49-51.
[5]王文發(fā),武忠遠,許淳.地方高校軟件工程專業(yè)校企合作實踐教學的探索與實踐——以延安大學為例[J].高等理科教育,2016(12):114-119.
[6]陳經(jīng)優(yōu).芻議情境教學在軟件開發(fā)教學中的實施方式及作用[J].網(wǎng)絡安全技術與應用,2014(8):204-205.
【軟件工程多模式融合教學路徑分析論文】相關文章:
實踐教育論文教學模式論文05-01
媒介融合時代大學英語教學模式初探05-02
多源監(jiān)測信息融合仿生復眼型系統(tǒng)模式及感知計算機理04-26
多源監(jiān)測信息融合仿生復眼型系統(tǒng)模式及感知計算機理04-26
軟件工程論文發(fā)表的論文04-29