宋和平

摘 要: 為適應新時期的教學需要,作者在分析當前學生基礎學習需求和學習能力的基礎上,提出一種引導學生自主學習、教師案例教學交叉進行的教學新方法,并結合江蘇大學計算機學院原有教學大綱的實際,應用該方法連續實施兩學年教學實踐,通過對兩批次學生的反饋及實際調查,學生的學習興趣和實踐動手能力均顯著提高。
關鍵詞: 軟件體系結構 自主式學習 案例教學法
隨著軟件產業日益成為國民經濟的重要組成部分,越來越需要專門的軟件設計高級人才。培養軟件設計專業人才是當前高校的職責。軟件體系結構也稱軟件架構設計(Software Architecture),是IEEE/ACM計算課程體系軟件工程專業軟件設計的核心課程。目前,軟件體系結構是我國大多數高校軟件工程專業本科生的一門專業必修課程,一般在大三下學期開設。該課程主要介紹架構模式和架構設計方法,側重架構設計思想的實踐應用。為了提高軟件體系結構課程的教學質量,不少高校總結了一些比較好的教學經驗、教學方法[1-3]。但軟件體系結構知識點分散和強調實踐應用的特點,對課程教學提出了挑戰。從我校軟件體系結構課程教學實際出發,筆者分析了近年來學生在學習意愿、學習能力、學習目的上的諸多變化,提出了一種“自主式學習交叉案例教學”的教學新方法。該方法連續在2009、2010級本科生的教學中應用,從課堂響應、課程考核及調查反饋等指標來看,該方法能較好地激發學生的學習意愿,提高理論知識及案例分析能力。
1.實施本教學法的必要性
近年來,軟件體系結構課程教學存在一些問題,主要表現在以下幾個方面。
1.1學生學習缺乏主動性
軟件體系結構涉及知識多而廣,內容比較抽象,理論性比較強。學生缺乏項目開發實踐經驗,對架構設計在軟件工程中的應用缺乏了解,進而對這門課程的學習興趣不大。學生普遍覺得該課程沒有實際的技術價值,體會不到架構設計在軟件行業的重要性,沒有意識到架構設計在提高軟件生產率和后期軟件維護上的巨大價值,無法真正理解架構設計在整個軟件工程中的重要性,從而對該課程缺乏自主學習的積極性。
1.2教學方法單調
采用傳統教學方法課堂教學以教師填鴨式講解為主,學生被動地學習,學習過程枯燥乏味,很難激起學生學習的興趣進而主動學習。在引入新教學法后仍存在教師學生間缺乏互動交流的問題。
1.3教材問題
教材是教師教學的主要參考,在軟件體系結構教學過程中,當前一般主要采用單一教材教學,這樣往往不能滿足教學需要。比如我校教學大綱安排軟件體系結構32個學時,在這么短的課時內參考單本教材不能很好地傳授架構設計的知識。另外,現在教材往往更新緩慢、知識落后,不能激起學生學習的意愿。架構設計本身是實踐性很強的知識,教材往往很難結合最新應用實際反映當前的研究成果。
2.教學大綱及其教學過程
從我校軟件體系結構課程教學實際出發,分析了近年來學生在學習意愿及學習期望上的諸多變化,提出了一種引導學生自主學習、教師案例教學交叉進行的教學新方法。該方法連續在2009、2010級本科生的教學中應用,從課堂響應、課程考核及調查反饋等指標來看,該方法能較大程度地激發學生的學習意愿,提高綜合利用所學知識分析案例及實踐動手能力。
2.1江蘇大學軟件體系結構教學大綱
在闡述自主式學習交叉案例教學方法之前,先介紹我校現行的軟件體系結構教學大綱,見下表。該教學大綱適應于我校計算機學院軟件體系結構課程,全校理工科研究生也可選修。
2.2自主式學習交叉案例教學法教學過程
在實施本教學方法前,學生被動地接受教師講述的課程知識,對課程內容的掌握完全局限于教師講授的內容,而自主式學習交叉案例教學法強調以教師布置的自主式學習作為引導,學生在完成自主學習的過程中主動學習知識,教師在整個教學過程中的作用不再局限于對知識的講解,更是對學生知識總結歸納能力的培養。同時教師對課程內容及時點評糾正,并輔以更為具體的案例,以便加深學生對所學知識的掌握和應用。
案例交叉教學法總體分為兩個階段:課前學生自主式學習和課堂學生報告與教師點評及案例交叉教學。
第一階段:課前學生的自主式學習。教師布置學生自主式學習任務,在上課前將自主式學習任務通過交流渠道(如QQ群等)布置給學生。學生以學號為序分為若干組,每組負責指定章節內容的學習,并通過小組討論學習后提交課堂報告PPT。
第二階段:課堂學生報告與教師點評及案例交叉教學。學生分組組長演示自主式學習報告PPT。教師對學生的自主式學習報告作點評,對學生對課程知識的理解進行綜述,重點講解本章內容中學生理解不全、偏頗甚至錯誤的地方。最后是案例教學部分,圍繞一個特定的案例把所學知識應用到軟件設計上,比如第9章,按照概念架構設計的要領逐步分析PMSuite案例的概念架構設計。
2.3教學實施要點
自主式學習交叉案例教學法關鍵在于“自主”和“案例”兩個方面,以下是討論實施中的一些要點:
2.3.1自主式學習強調發揮學生的主觀能動性,體現在學生分組合作完成報告PPT。學生分組學習討論有利于集思廣益、取長補短地完成報告PPT,培養學生的團隊協作能力。教師要給出一個示例報告PPT,引導學生自主學習。訓練學生查找文獻資料及總結、歸納的能力,同時給學生一個報告展示的機會,引導學生如何做好PPT,如何更好地展示知識。在課堂前期學生匯報過程中,教師要記錄學生報告在展示能力和內容兩方面的表現,并在學生結束報告后作細致點評。根據課程知識點,教師要補充和完善學生報告的遺漏甚至錯誤理解,對重點內容要重復加深理解。
2.3.2在案例教學部分,選擇一套項目管理系統PMSuite案例貫穿全部教學要點。案例教學過程中緊緊圍繞設計PMSuite軟件系統中怎么應用所學知識,分析過程中采用循序漸進、逐步推進、由簡入繁等策略。在案例講解過程中淡化具體功能的實現,而是作為架構設計采用的策略。引導學生分析案例設計時采用規定的步驟或程序,培養學生綜合分析問題、解決問題的能力。通過自主式學習和案例教學相結合,加強學生對軟件架構的概念和設計思想的理解,讓學生牢固掌握所學知識。
3.教學效果分析
到目前為止,我們已在本專業的2009、2010級學生當中實施本教學法。在課程結束后對學生進行了問卷調查,同時結合學生平時和考試的情況,總結出以下幾方面的成果。
3.1提高學生的學習意愿
在以往的教學中,學生多是被動地接受教師傳授知識,許多學生慢慢地習慣了懶散沒有進取的學習心態,特別是對軟件體系結構這么一門理論與實踐聯系比較緊密的課程,學生大多存在畏懼心理。實施本教學法后,學生普遍能積極主動地查找資料,特別是對能在課堂上報告表示出強烈的興趣。同時,通過具體實際的案例教學,給學生以活學活用的感覺,不再認為上課是那么枯燥乏味。
3.2豐富課堂教學形式
自主式學習不僅給了學生一個培養自己在查找資料,歸納、總結完成PPT的能力,而且給了學生一個充分展現自己的口頭表達能力的機會。從問卷調查反饋信息來看,PPT展示過程是學生收獲最多的過程。同時,這種由學生自己做報告的教學形式新穎活潑,活躍了課堂教學氛圍,釋放了學生的自由,創造了展示自己的機會,從而培養學生獨立思考、臨場應變的能力,為他們以后走向工作崗位奠定基礎。
3.3培養學生的團隊合作精神
自主式學習是分小組進行的,而且是以學號為序的沒有特別安排的小組,這樣可以培養學生隨機組團合作的能力。以小組為單位討論學習完成總結報告PPT,培養學生團隊合作的能力,發揮各自所長,取長補短。
3.4提高學生的綜合實踐能力
由于課時的限制,對很多知識點設法作展開講解,本教學法在課堂前給予學生自主式學習時間,學生主動涉獵比較廣的知識范圍,在教師點評過程中對學生自主式學習進行強調和補充。在案例教學過程中再一次升華學生應用所學解決實際問題的能力。
3.5提高教師的授課綜合能力
本教學法對教師備課和講解提出了更高要求。學生自主式學習完成后要求教師對學生的報告過程進行點評,要求教師在學生的口頭表達和內容展示上有細致的觀察,給學生提高報告展示的建議和意見,同時要求教師把握學生學習的效果是否滿足教學要求并及時補充和完善。案例教學要求教師收集案例,認真分析推敲并應用所學解決實際問題。
4.結語
近年來,隨著信息產業的規模化、產業化、正規化及國際化步伐的加快,國內外越來越需要大批的高級軟件設計人才,這給我國大中專院校帶來了新的挑戰和機遇。軟件體系結構課程是當前軟件工程專業學習軟件設計的專業必修課程。為適應新時期的教學要求,本文提出了一種緊密結合自主式學習、案例教學交叉進行的教學新方法。該教學法綜合考慮學生的學習意愿、學習能力等諸多因素,以培養學生的學習興趣為出發點,以培養學生實踐能力為目標進行教學。通過課程考核及課后調查表明,絕大部分學生認為課程的教學使他們掌握了軟件架構設計的基本方法及案例分析能力,特別是學會了自主學習解決實踐問題的能力。
參考文獻:
[1]陳長清.軟件體系結構課程教學探討[J].計算機教育,2008(22):134-135.
[2]路綱,劉侍剛.軟件體系架構案例教學:連珠軟件開發[J].計算機教育,2011(16):81-85.
[3]朱鵬程,管致錦.基于能力本位的“軟件體系結構”實踐教學環節[J].計算機教育,2011(17):39-42.