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