聶艷明+張陽+劉全中
摘 要:文章基于“Java EE應用開發技術”課程的工程特點(實踐性、項目驅動性和知識整合性)、學生的差異化現狀和多樣性需求以及業界對綜合性的Java EE應用軟件開發人才的訴求,從課程知識體系、課程群統籌、綜合實踐、師資以及資源建設等方面對Java EE開發能力分類培養模式進行了探索和實踐,力求達到“因材施教”和“因需施教”。自從Java EE應用開發能力分類培養模式實施以來,學生的就業率、就業質量以及課程滿意度都得到了較大提升。
關鍵詞:Java EE應用開發技術;分類培養;軟件工程
中圖分類號:G640 文獻標識碼:A 文章編號:1002-4107(2017)11-0050-03
一、Java EE應用開發能力培養背景
“Java EE應用開發技術”作為一門高年級專業必修課程,其目的是讓學生具備基于Java EE技術進行企業級軟件開發的高級專業技能,具有極強的工程實踐性;作為教授一種主流的企業級應用開發技術,該課程所涉及技術及其整合的示例需來自更有說服力和針對性的業界第一線項目,具有明顯的項目驅動性;課程涉及的基礎包括Web頁面設計、Java等編程基本技能,數據庫、網絡、組件及中間件等基本原理,面向對象、設計模式、軟件體系結構等基本思想,具有顯著的知識整合性。因而,課程教學必須圍繞該課程的以上三個特性來進行。
當前Java EE應用開發能力培養仍存在如下問題:(1)由于課程涉及的知識點多但同時規劃課時少,很多技術不能講解,整個知識體系的學習不夠完整,于是造成了“講快點,聽不懂;講慢點,講不完”的現狀;(2)課程的教學理念仍過于局限于Java EE 技術本身,沒有在觀念上進行“先架構、后編程”的創新;(3)Java EE開發能力培養很難按照語言程序設計類基礎課程書本上的案例進行理論和實踐的授課,而目前缺乏來源于業界一線應用的綜合性的項目以及設計體系;(4)針對具有不同發展規劃的高年級學生對于該課程的期望不一(如進入職場和考研深造),教師授課的熱情投入與學生學習的冷漠應付(即“一頭熱”)和計劃就業學生的異常期待與規劃讀研深造學生的無比煩惱(即“部分熱”)的矛盾亟待解決。(5)課程教學中授課和實踐環節與社會需求還存在鴻溝(即“社會的重實踐能力需求與學校的學院氣教學方式之間的鴻溝”)。因此,Java EE應用開發的能力培養過程也需要在實踐教學體系和師資團隊建設等方面進行深入的實質性創新。
二、Java EE應用開發能力培養現狀
目前,國內絕大多數示范性軟件學院以及其他院校的軟件工程專業都開設了“Java應用開發技術”課程。作為IBM精品課程,同濟大學軟件學院的“J2EE企業級開發”課程在項目實訓及代碼訓練強化等方面頗具特色[1]。哈爾濱理工大學計算機科學與技術學院的謝怡寧等提出了諸如任務驅動等有針對性的“Java應用開發技術”課程教學改革方案[2]。浙江大學城市學院計算機系的陳觀林等探討了“Java應用開發技術”課程教學模式改革的思路[3],提出了采用實例化教學方式和引入課程設計環節以改進教學手段和考核方法。北京石油化工學院經濟管理學院的張幸以J2EE 編程實訓課程教學改革為例闡述了如何在編程技術的學習中掌握管理知識的方法[4]。濱州學院的馮君將整個教學過程劃分為三個大的階段[5]:夯實基礎知識的階段、培養個人實踐動手能力的階段、培養團隊合作能力的階段。內蒙古工業大學的馬志強等通過分析企業對Java EE開發崗位的知識需求[6],裁減了Java EE技術規范,形成了Java核心、Java Web和輕量級框架的三層知識體系;按照“先實踐、再理論、后綜合”的原則。西北農林科技大學的聶艷明等鑒于“Java應用開發技術”課程具有的工程實踐性、項目驅動性和知識整合性[7-8],提出了基于主流開發模型/框架(即經典MVC模型、SSH輕量級框架以及基于EJB的Java EE重量級框架)對比的“Java應用開發技術”課程教學方法。以上關于“Java應用開發技術”課程教學改革的研究,都從某一個或幾個側面進行了有益探索,但缺乏系統性。文獻則對高校計算機相關專業人才分類培養進行了有益的探索[9-12],這為Java EE應用開發能力分類培養的探索與實踐提供了借鑒。
三、Java EE應用開發能力分類培養探索與實踐
自2010年西北農林科技大學開設“Java應用開發技術”課程以來,基于該課程的特點、學生的多樣性需求和差異化現狀以及社會對Java EE應用軟件開發人才的綜合性的能力需求,課程組從課程知識體系、課程群統籌、綜合實踐、師資建設及資源建設等方面對西北農林科技大學的Java EE應用開發能力分類培養模式進行探索和實踐,力求達到“因需施教”和“因材施教”目標。
(一)分類型的知識體系
“Java應用開發技術”課程涵蓋的知識非常廣泛,包括Java語言程序設計、Web設計、數據庫原理、計算機網絡、OOAD、軟件工程、設計模式、中間件技術和軟件體系架構等。在Java EE應用開發能力分類培養模式探索與實踐中,我們將“Java應用開發技術”課程知識體系主要地劃分為可針對不同培養類型(即初級入門型、中級就業型、高級就業型、專業研究型和學術研究型)進行自由組合的幾大知識模塊,如應用模型、支撐技術、基礎MVC(即JSP+Servlet+JavaBean)、輕量框架SSH(即Struts+Spring+Hibernate)、經典Java EE框架(即JSF+EJB+JPA)以及開發技能共七大知識模塊,不同培養類型對于上述知識模塊的涉及還可以區分為全面掌握、部分了解以及不做涉及(如表1)。
對于一般學生,推薦以基于MVC的Java Web開發基礎模型部分為主,輔以其他兩個框架的概念介紹;對于稍有基礎的,建議重點講解基于SSH 的輕量級框架部分;對于學有余力的,增加經典Java EE框架部分的內容;對于計劃在軟件相關學術領域繼續深造的學生,則聚焦于如數據庫原理等關聯知識。endprint
(二)重統籌的課程群組
“Java應用開發技術”課程旨在培養高年級學生綜合運用所學基礎知識和技能解決基于Java EE的軟件開發過程中遇到的實際問題,更強調相關知識的融合。因而,課程教學過程中需與前導基礎課程進行密切呼應和系統統籌。西北農林科技大學“Java應用開發技術”課程群是以“Java應用開發技術”課程為主體,包括“Java 語言程序設計”、“數據庫原理”、“計算機網絡”、“Web程序設計”、“中間件技術”、“面向對象分析與設計”、“軟件工程”與“軟件測試”等課程,圍繞西北農林科技大學Java EE應用開發能力的培養目標,根據當前“Java應用開發技術”課程的教學發展、社會對Java EE人才的能力需求及西北農林科技大學的實際基礎和發展需要而構建的關系密切的課程體系。
西北農林科技大學“Java應用開發技術”課程群的各相關課程教學除自身的要求外,重視對Java EE關聯知識與技能的強調(如“Java語言程序設計”中的JDBC、“數據庫原理”中關系與對象之間的鴻溝、“計算機網絡”中的B/S架構和HTTP協議、“Web程序設計”中的超鏈接和表單、“中間件技術”中的EJB和Corba、“面向對象分析與設計”中的面向對象理念和用例驅動面向對象軟件開發范型、“軟件工程”和“軟件測試”中的面向對象軟件相關開發和測試方法等)。“Java應用開發技術”課程教學則采用兼顧知識融合的教學方法,在自身的理論與實踐教學環節中注重各相關課程的關聯知識點的聚焦和提升。
(三)立體化的綜合實踐
對于學生Java EE應用開發能力培養,采用立體化、多途徑、開放性的綜合實踐模式,主要方式包括院企聯合實訓、深入國內實習基地和輸出國外實習基地。“以實際業務項目為開發對象、以企業實際運行的RUP剪裁流程為軟件項目開發過程、以企業模擬辦公場景為開發工作環境”的為期一個月的Java EE院企聯合實訓,旨在鞏固課堂學習的理論知識,構建學生綜合軟件初步開發能力并加強團隊合作意識的培養,進而為學生畢業后順利適應工作奠定了堅實的基礎。為期16周的實踐環節提供三種可選的執行方式,即國內企業開發實踐、海外企業開發實踐和校內教師研究實踐。對于稍長周期的實習,學生結合自己的職業規劃,可以有選擇性地進行不同程度的實戰訓練。如致力于考研的學生可以選擇由院內教師指導的實際訓練,畢業后去軟件公司的學生可以選擇去國內公司或海外企業進行實習。
(四)多渠道的師資建設
為了應對Java EE應用開發能力分類培養模式的實施,師資建設方面遵從“多元化”和“雙師型”的基本原則。應對Java EE的多學科知識融合的特性,師資建設上采用課程群組的方式,教學團隊中人員具有不同的專業背景、不同的研究方向、不同的特長,為Java EE 應用開發能力分類培養模式的順利實施提供了豐富的人力資源和基本的師資保障。由于Java EE應用開發技術實踐性強,技術更新快,除組成具有水平多層次、領域互補、經歷多樣的師資隊伍外,還派送教師赴企業進行相關實訓。與此同時,引入國內軟件開發和培訓企業、海外軟件開發企業等外方師資進行充實。
(五)支撐性的資源建設
為了有力支撐Java EE應用開發能力分類培養模式的有效實施,我們從教材組織編寫、基本課程資源和輔助教學資源建設等方面進行建設,已獲批2014年陜西省級精品資源課程建設項目——“Java EE技術”。Java EE課題組編著的教材《Java EE開發技術與實踐教程》由機械工業出版社“以高等教育規劃教材”出版,從三個技術/框架(即基于MVC的Java Web開發基礎模型、基于SSH輕量級框架和基于經典Java EE框架)進行內容組織,不同基礎的學生可以側重不同技術方向進行學習。對于一般基礎的學生,推薦以基于MVC的Java Web開發基礎模型部分為主,輔以介紹其他兩個框架的概念;對于稍有一點基礎的,建議重點講解基于SSH 的輕量級框架部分;對于學有余力的,作為挑戰增加經典Java EE框架部分的內容。結合不同專業的實際情況,針對Java EE中的三種技術路線,選擇適合本專業的某種技術路線為主,其他兩個技術路線為輔,進行有重點的講授課程。對于每章的實驗,學生可以選用采用三種技術路線之一的實現,不同專業的學生選擇適合自己專業的技術路線完成每次實驗。考試過程中,設置每一個考題時,要考慮不同專業學生的實際情況,讓學生靈活地選擇適合本專業的技術路線完成考試。另外,提供微課/微視頻,覆蓋課程重點、難點以及未涉及但相對較為重要的內容,力求對課堂授課進行補充。
四、總結與展望
基于該課程特點(即工程實踐性、項目驅動性和知識整合性)、學生差異化現狀和多樣性需求(即就業型和學術型)及社會對綜合性Java EE應用軟件開發人才的訴求,課程組從課程知識體系、教學運行、綜合實踐、師資建設、資源建設以及課程群統籌等方面對我院的Java EE應用開發能力分類培養模式進行探索和實踐,力求達到“因需施教”和“因材施教”。自從實施Java EE應用開發能力分類培養模式以來,學生的就業率和就業質量都得到大幅度提高,學生對課程的滿意度也逐年上升,并一致認為“Java應用開發技術”課程對求職及考研幫助都很大。同時,通過探索與實踐Java EE應用開發能力分類培養模式,課組教學改革方面的研究能力也得到了極大提升。
參考文獻:
[1]同濟大學軟件學院.IBM精品課程——J2EE企業級開發[EB/OL].[0000-00-00].http://sse.tongji.edu.cn/j2ee/,2008.
[2]謝怡寧,羅智勇,王莉莉.J2EE課程教學改革的探索與實踐[J].江蘇教育學院學報:自然科學版,2010,(1).
[3]陳觀林,翁文勇.《J2EE架構與應用開發》課程的教學改革與實踐[J].計算機時代,2008,(4).
[4]張幸.應用型本科信息管理專業基于J2EE編程實訓的探索[C]//第十一屆全國經濟管理院校工業技術學研究會,西安:2012-09-27.
[5]馮君.基于三階段教學模式的Java EE框架技術教學改革[J].大學教育,2013,(17).
[6]馬志強,李雷孝,邢紅梅等.Java EE軟件開發方向知識體系的研究與構建[J].內蒙古農業大學學報:社會科學版,2014,(4).
[7]聶艷明,劉全中,李宏利等.基于開發模型對比的Java EE課程教學方法研究[J].中國信息技術教育,2015,(18).
[8]李宏利,聶艷明,鄒青.“Java EE技術”課程教學改革探究[J].黑龍江教育:高教研究與評估,2015,(10).
[9]馬金嶺.地方高師院校實施人才分類培養模式探析[J].鄭州大學學報:哲學社會科學版,2010,(5).
[10]王潛平,殷兆麟.計算機專業人才分類培養與語言教學改革思考[J].合肥工業大學學報:社會科學版,2008,(5).
[11]任榮,保文星,楊春野.軟件工程特色專業建設及人才分類培養模式創新與實踐[J].教育教學論壇,2014,(32).
[12]吳長增,許志紅,鞠志宇.本科人才分類培養模式的構建與實踐[J].創新與創業教育,2015,(6).endprint