母俐麗
摘要:針對我校軟件工程專業當前實際問題,從課程間協作改革入手,嘗試對軟件工程專業JAVA系列課程的課程設置及內容、教學模式等進行一系列的改革和探討,并在部分相關課程中進行了階段性實踐,旨在提高學生的系統識別、分析設計與系統實現能力,能用工程化的思想進行軟件開發。
關鍵詞:教學改革、系統能力、關聯性、軟件開發
一、問題提出
我校JAVA系列課程主要講授《JAVA程序設計》、《JSP》、《JAVA EE框架設計》,其教學方法主要是通過項目案例、程序設計講授語法、原理,最后實現一個應用軟件系統。從實踐結果看,實現過程缺乏工程化思想;考慮不到系統的安全性、可擴展性和易維護性;不能從系統的角度建立模型等。實際上這些知識在《系統分析與建模》、《軟件工程》、《數據庫原理》、《網絡安全》等課程中有講授,但這些課程的學習并沒有帶來學生計算機系統能力的全面提升,仍然停留在程序設計與實現的水平上。深入剖析這一現象,發現現存教學體系中存在以下問題:
1.各門課程在教學內容上獨立設置,缺乏一定的關聯性,造成各門課程之間出現知識點冗余和缺乏銜接等現象。
2.在教學方法上,各門課程注重分析單門課程的原理、講解基本概念,對軟件系統整體的分析設計講解不足。
3.在實驗環節缺乏各門課程之間的綜合設計性實驗。設置最多的是單門課程的驗證性實驗,缺乏綜合設計性實驗。
二、課程改革研究內容
我校在應用型本科教學進行了一系列的改革,取得了一定成果。尤其注重學生的工程實踐能力培養和企業聯合辦學等。由以往的教學經驗看,工程實踐方法仍然是培養計算機系統能力的重要途徑,但需在此基礎上進一步改革。
1.重新規劃課程設置
為了培養適應新技術的發展、具有系統能力識別、設計和應用的軟件人才,我們需要對軟件工程專業JAVA系列課程體系進行重新規劃。在課程設置中應充分考慮課程的銜接性、系統性和創新性。
2.統一規劃教學內容。
根據課程體系改革目標,首先調整相關課程組建新的課程群,查找相關課程群里面課程內容及知識點的不足,進行教學內容的調整和優化,使得各門課程的知識模塊能夠很好的銜接。
3.探索多樣的教學方法。
軟件工程專業課程的教學目標是使學生具備分析和設計功能完備的、結構合理的、具備一定在可擴展性和復用性的軟件系統。為了達成這一目標,各課程在修改和完善教學內容的基礎上,改進教學方法。依托軟件生命周期,綜合運用“項目教學法”、“基于MOOC的教學新模式”、“CDIO理念”等進行教學方式改革。
4.統一設計課程實驗體系。
實驗是將原理運用于實踐的途徑。而計算機系統能力的培養特別強調整體的觀念和系統的視角,需要圍繞教學改革制定各課程的子目標和課程實驗內容;按照軟件工程過程、工具和方法來設計課程群之間的綜合實驗,將各課程的實驗結果作為綜合實驗的一部分,從而完成一個完整的軟件系統的分析、設計與實現。
5.進一步更新考試觀念,改革學生考核形式。學生的成績不再單純地由卷面成績決定,重視實踐考核,制定更加合理的考核新標準。
三、教學改革應用:
以應用型人才培養目標,圍繞著以學生為中心、以教師為主導的教學理念,進行了深入思考,有了很多新的想法,嘗試了多方面的教學改革。在教學中,重點突出課程間協作,著重系統能力培養。
1.教學知識的劃分
為了充分體現以學生為中心,挖掘學生主觀能動性,將課程《java EE程序架構與程序設計》的知識點分為課前任務、課堂講授與課后自學三大部分。
課前任務部分,將和本課程緊密聯系的java語言和web開發模式等知識作為課前任務,要求學生復習。本課程涉及的開發工具和運行環境等內容也要以課前任務布置給學生,并結合例題讓學生課前完成。
課堂講授部分,以項目案例中的模塊為任務,完成課堂演示、答疑。隨著課堂的進度逐步培養學生完成一個中小型Web應用系統的設計、實現、部署和調試的能力。
課后自學部分,將設計模式等Web開發比較難理解的知識點通過課前、課后自學任務布置給學生。在自學過程中要求學生記錄學習筆記,形成良好的自學習慣。
2.課程之間的案例共享
從軟件開發的角度講,《軟件工程》與《java EE程序架構與程序設計》課程屬于一個軟件工程過程。所以在課程中著重從應用的角度讓學生按照工程過程完成一個系統的開發。
一個突破性的改進是將這兩門課的案例結合在一起教學,使用基于java的軟件工程與工程案例教學,圍繞一個完整的項目來組織學習項目分析設計、開發、管理,項目實踐帶動理論學習。在一門課程中對案例進行分析、設計、建模,在另一門課程中進行詳細設計、編碼實現。通過項目實踐,可以對技術原理更好的融會貫通,也可以通過項目更好的檢驗學習效果。
3.課程之間設置綜合性實驗
在大綱制定過程中,學時的分配要突出實踐學時,重點提高學生的實踐動手能力。課程綜合貫穿了軟件項目從分析到設計、實現和測試的完整過程。
本課程安排有綜合性實驗,該實驗以工程實踐案例為依據,建立能夠在兩門課程中共享使用的實驗項目內容。
在實施過程中,學生可以選同一個題目進行綜合性試驗,《軟件工程》課程主要收集需求、建模,撰寫文檔,《java EE程序架構與程序設計》主要是實現系統。從不同側面實踐,達到教學的連貫性和一體化。
從學生反饋和實際效果來看,學生專業能力的綜合應用得到很好的鍛煉。
4.單門課程實驗項目導向法
學生在教師引導下,用一個項目貫穿整個實驗教學,這與傳統實驗教學中各個實驗彼此獨立有很大的不同。《java EE程序架構與程序設計》課程的小實驗彼此關聯,以一個完整的項目貫穿實驗課程始終,每一個小實驗都是在之前實驗的基礎上進行迭代和完善,從而激勵和促進學生學生完成每一次實驗。
四.結論
教改在一定程度上取得了一些進步,但還有很多方面沒有展開實施,在現有工作的基礎上,從以下方面查缺補漏,進行深入改革:
1.建立單門課程知識點的聯系:按照工程化思想組織教學,將知識點包含到項目子任務中,隨著項目的完成,完成知識點的學習。
2.建立各課程的聯系:教學內容整合,使用同一個工程項目貫穿于相關課程之間,前一門課程項目結束作為后一門課程項目的開始。
3.建立各課程實驗的聯系:搭建統一的網絡實驗環境,聯合設置綜合實驗。
4.建立相關課程資源平臺:從學生的基礎和需求出發,增強課程及師生互動。
知識系統化,課程之間系統化,實踐創新系統化,資源平臺系統化探索學生系統能力培養。在教學實踐中,考慮課程間關聯性,優化和完善教學資源,全面調整相關課程設置和教學內容以更好地培養學生的系統能力。
參考文獻:
[1].王志英等.計算機專業學生系統能力培養和系統課程體系設置研究[J].計算機教育,2013.
[2].劉衛東等.面向系統能力培養的計算機專業課程體系建設實踐[J].中國大學教學,2014.
[3].馬殿富,高小鵬.基于系統能力培養的計算機專業課程建設報告[J].北京航空航天大學,2013.
[4].常瑞等.面向系統能力的計算機系統結構課程教學內容設計[J].計算機教育,2014 .
課題編號:北方國際大學聯盟第五期教育科研課題(20170501008)