賈宗維 張超群
摘 要:《Java Web程序設(shè)計》是一門技術(shù)知識涵蓋廣泛的課程。文章將Web技術(shù)知識遞進分層設(shè)計,組合不同的技術(shù)設(shè)計階段子項目并依據(jù)CDIO教育理念進行教學實施。這種技術(shù)知識遞進、項目驅(qū)動的教學方式,使得學生的系統(tǒng)設(shè)計思維能力、編程能力、團隊合作能力都有顯著的提升,增強了學生的實踐動手能力,為學生的高薪就業(yè)奠定了基礎(chǔ)。
關(guān)鍵詞:CDIO;技術(shù)遞進;項目驅(qū)動;Java Web
中圖分類號:G434 文獻標志碼:B 文章編號:1673-8454(2018)22-0070-03
一、引言
《Java Web程序設(shè)計》是計算機科學與技術(shù)專業(yè)的一門核心課程,通常在高年級開設(shè),其先導課程涉及《數(shù)據(jù)結(jié)構(gòu)》《數(shù)據(jù)庫》《軟件工程》等多門課程,主要針對企業(yè)級應(yīng)用需求,運用Java語言和Web技術(shù)開發(fā)Web應(yīng)用程序。該課程相關(guān)的理論基礎(chǔ)較多,專業(yè)技術(shù)層次鮮明,綜合實踐性強,是培養(yǎng)學生程序設(shè)計思維能力、編程能力、團隊協(xié)作能力的一門難度較大的專業(yè)課程。通過該課程的學習,學生能夠具備運用HTML、CSS、JSP、Servlet、JavaBean、JDBC等層次遞進Web技術(shù)開發(fā)具有MVC或DAO設(shè)計模式的Web應(yīng)用系統(tǒng)的能力,為未來采用不同設(shè)計框架的企業(yè)級Java EE項目開發(fā)奠定基礎(chǔ)。
CDIO工程教育模式是近年來國際工程教育改革的最新成果,由麻省理工學院和瑞典皇家工學院等四所大學共同創(chuàng)造[1]。CDIO代表構(gòu)思(Conceive)、設(shè)計(Design)、實現(xiàn)(Implement)和運作(Operate),它以產(chǎn)品研發(fā)到產(chǎn)品運行的生命周期為載體,讓學生以主動的、實踐的、課程之間有機聯(lián)系的方式學習工程[2]?;贑DIO教育模式對Java Web程序設(shè)計課程進行教學改革,就是以企業(yè)項目需求驅(qū)動為主線,Web技術(shù)遞進的知識體系為基礎(chǔ),實踐動手能力培養(yǎng)為本位,企業(yè)高薪就業(yè)為導向,進行一系列的教學內(nèi)容的設(shè)計。
二、Java Web程序設(shè)計課程教學現(xiàn)狀
《Java Web程序設(shè)計》課程的學習是通過理論與實踐相結(jié)合的方式培養(yǎng)學生具有開發(fā)Web程序的能力。大多數(shù)院校傳統(tǒng)授課過程中多由教師占據(jù)主導地位,學生被動學習,極大地制約了學生的主動思考及動手能力,雖然部分教師就此問題進行了諸如項目驅(qū)動法[3]、案例法[4]的教學改革,讓學生很好地理解知識點,但培養(yǎng)出的學生在工程能力方面大多與企業(yè)需求不一致,往往得不到企業(yè)的認可。
1.編程能力不足
編程能力是衡量學生對本門課程掌握程度的重要指標,它和教師的教學環(huán)節(jié)的執(zhí)行方式有著直接的關(guān)系。傳統(tǒng)課堂教學,教師大多采用PPT進行“說教”式的教學,實驗教學在教師指導下完成簡單的驗證或設(shè)計實驗。雖然學生對單個理論知識得到了充分的掌握,但對于企業(yè)所需的實際編程能力還是缺乏針對性的鍛煉。
2.工程能力缺乏
教師雖然通過項目驅(qū)動、案例驅(qū)動等教學改革對學生的編程能力進行了一定的鍛煉,學生也可以通過編程解決諸如數(shù)據(jù)庫連接、接口、排序等小問題,但大多數(shù)學生沒有進行過系統(tǒng)全面的企業(yè)項目需求訓練,缺乏大規(guī)模系統(tǒng)開發(fā)和團隊協(xié)作的工程能力。
三、基于CDIO的《Java Web程序設(shè)計》教學改革
《Java Web程序設(shè)計》課程涵蓋技術(shù)知識點廣且層次逐步遞進,各技術(shù)知識在企業(yè)項目中往往都是綜合運用。如何鍛煉學生Web技術(shù)綜合運用的能力、團隊協(xié)作能力以及工程系統(tǒng)能力,成為本門課程改革的重要目標。
1.技術(shù)知識層次遞進的教學內(nèi)容改革
《Java Web程序設(shè)計》課程涵蓋了網(wǎng)頁開發(fā)技術(shù)、設(shè)計框架技術(shù)、數(shù)據(jù)庫及服務(wù)器技術(shù)和集成開發(fā)平臺技術(shù)等。這些技術(shù)之間存在先后和相互支撐的關(guān)系。筆者所在的教研團隊在近年來教學研究的基礎(chǔ)上,對課程知識內(nèi)容進行了重新梳理,設(shè)計了各技術(shù)知識遞進關(guān)系圖,如圖1所示,相應(yīng)的教學內(nèi)容也按照此路線圖執(zhí)行。
Java Web課程的最終目標就是學生實踐編程能力的顯著提高,我們在教學內(nèi)容、教學方法、教學實施等方面,打破傳統(tǒng)教學實施中以知識傳授為主的授課模式,根據(jù) CDIO工程教育理念,以企業(yè)項目開發(fā)過程為主線,Web技術(shù)知識逐層遞進培養(yǎng)為基礎(chǔ),綜合實踐編程能力培養(yǎng)為本位,學生高薪就業(yè)為導向,進行了大范圍的教學改革。結(jié)合執(zhí)業(yè)崗位需求、技術(shù)知識前后銜接設(shè)置以及軟件行業(yè)發(fā)展趨勢,選用企業(yè)真實項目為載體,以CDIO理念貫穿實施整個教學環(huán)節(jié)。
2.企業(yè)項目驅(qū)動的教學組織形式的改革
CDIO教育理念在《Java Web程序設(shè)計》課程中標志性地體現(xiàn)以企業(yè)項目驅(qū)動為主線,將Java Web課程所涵蓋的技術(shù)知識、應(yīng)達到的工程能力、應(yīng)具備的素質(zhì)等培養(yǎng)目標融入項目,由此可見項目的選取在課程教學改革中占有極其重要的地位。對項目的難易度、技術(shù)知識的涵蓋廣度均進行了深入的研究和甄選。通過綜合評估,我們決定采用“農(nóng)資公司W(wǎng)eb管理系統(tǒng)”作為課程教學項目。它是針對企業(yè)開發(fā)的綜合信息管理系統(tǒng),包括公司組織管理、OA辦公子系統(tǒng)、新聞公告管理、設(shè)備資產(chǎn)管理、日志管理等功能模塊。
選擇“農(nóng)資公司W(wǎng)eb管理系統(tǒng)”項目作為CDIO教育理念教學方法實施驅(qū)動項目的原因在于:①項目是從企業(yè)實際需求出發(fā),滿足了教學內(nèi)容與社會需求的無縫對接;②項目所需的技術(shù)難度適中,能夠體現(xiàn)對學生分析問題和解決問題能力提升的目標;③項目可依據(jù)Web技術(shù)層次分解為若干個簡單的子項目,培養(yǎng)學生建立解決復雜科學問題的編程思維;④項目開發(fā)采用業(yè)界廣泛使用的開發(fā)框架和集成開發(fā)平臺,便于學生實習或就業(yè)時更快融入企業(yè)團隊。
四、CDIO教育模式的企業(yè)項目驅(qū)動、技術(shù)遞進的教學設(shè)計
教學設(shè)計過程依據(jù)CDIO教育理念,分別在構(gòu)思、設(shè)計、實現(xiàn)和運作四個階段進行詳細設(shè)計。CDIO教育模式是以企業(yè)項目研發(fā)到產(chǎn)品運行的生命周期為載體,讓學生以主動的、實踐的、技術(shù)知識綜合運用的方式進行教學實施的學習模式。在Web前端設(shè)計、數(shù)據(jù)庫設(shè)計、集成框架配置、編寫代碼、測試維護等工程實踐能力方面進行整體設(shè)計,逐步提升學生自我學習、團隊協(xié)作和創(chuàng)新實踐的能力[5]。
1.CDIO教育理念教學設(shè)計
構(gòu)思階段: ①學生分組,按照Web技術(shù)知識側(cè)重,將學生進行分組并對項目初步分工,指定實踐動手能力較高、組織協(xié)調(diào)能力較強的成員擔任組長。②確定課題,組內(nèi)成員通過討論分析、查閱資料、教師指導等途徑確立階段項目課題。③需求分析,圍繞實際問題和用戶需求進行分析,組員共同討論編制項目需求分析報告書。
設(shè)計階段:①功能設(shè)計,遵照軟件工程理論方法,組員在教師的指導下,根據(jù)項目需求報告,協(xié)商分析、不斷完善,確立階段項目的功能框架。②數(shù)據(jù)庫設(shè)計,學生通過對Access、MySql、SQLServer等數(shù)據(jù)庫技術(shù)的學習,選定階段項目所采用的后臺數(shù)據(jù)庫并進行相應(yīng)的數(shù)據(jù)模型構(gòu)建。③原型設(shè)計,通過JSP技術(shù)、CSS技術(shù)、JQuery UI技術(shù)及SSM框架技術(shù)的學習,在項目的整體架構(gòu)、前端頁面展現(xiàn)、文字及顏色樣式設(shè)置等方面進行原型設(shè)計。
實現(xiàn)階段: ①數(shù)據(jù)庫設(shè)計實現(xiàn),選用適當?shù)臄?shù)據(jù)庫管理平臺設(shè)計實現(xiàn)階段項目需求的數(shù)據(jù)庫,包括數(shù)據(jù)表、索引、關(guān)鍵字、觸發(fā)器等的創(chuàng)建。②原型實現(xiàn),利用NotePad、Eclipse等開發(fā)工具進行Web系統(tǒng)前端頁面的制作,包括首頁、導航、模板頁的制作,綜合運用HTML+DIV/JS+CSS技術(shù)對頁面文字、顏色的搭配等模板內(nèi)容進行實現(xiàn)。③代碼實現(xiàn),利用集成開發(fā)平臺,依據(jù)功能設(shè)計報告,統(tǒng)一進行開發(fā)框架的配置訓練,然后按照組內(nèi)任務(wù)分工逐一實現(xiàn)各項功能的代碼編制。④測試維護,小組負責人協(xié)調(diào)各組員將各自開發(fā)的子系統(tǒng)統(tǒng)一起來,按照事先設(shè)計的接口規(guī)范進行整合。
運作階段: ①系統(tǒng)測試,在系統(tǒng)整合上線之前,對系統(tǒng)各部分功能進行測試,通過不斷調(diào)試優(yōu)化,直至系統(tǒng)達到預期目標并穩(wěn)定上線運行。②撰寫項目報告,學生根據(jù)軟件工程的開發(fā)規(guī)范進行項目報告的編寫,并對自我的階段項目開發(fā)過程進行總結(jié)分析歸納。③考核評價,教師根據(jù)學生平時考勤、任務(wù)完成進度、組內(nèi)互評、項目答辯、期末考核確定學生的課程最終成績。
2.技術(shù)遞進的階段項目設(shè)計
按照技術(shù)遞進路線圖設(shè)計農(nóng)資公司W(wǎng)eb管理系統(tǒng),階段項目及遞進技術(shù)的分解和組合詳見表1。
技術(shù)遞進的階段項目設(shè)計,將課程知識內(nèi)容按照不同的難易程度進行組合并分散在不同的子項目中,各項目間又相互聯(lián)系,便于學生更自由地進行拓展訓練。各階段項目實施過程依據(jù)CDIO能力培養(yǎng)目標進行詳細設(shè)計。
3.考核評價設(shè)計
CDIO教育理念遵從的評價方式是不同能力應(yīng)有相應(yīng)的評價考核方式,我們通過Java Web技術(shù)遞進階段子任務(wù)進行考核,分別在學生的專業(yè)知識能力、編碼規(guī)范能力、解決問題能力、團隊協(xié)作能力、創(chuàng)新能力等方面進行考核評價,這種多元化的考核方式更能全面地反映一個學生對這門課程的掌握程度,評價結(jié)果更加客觀公正。
CDIO教育理念在《Java Web程序設(shè)計》課程的成功引入,在技術(shù)遞進、企業(yè)項目驅(qū)動的分階段實施下,學生在分析解決問題、代碼編制、團隊協(xié)作、技術(shù)創(chuàng)新等方面都顯著提升。學生在整個教學實施的過程中不但拓寬了程序開發(fā)的知識面,同時對軟件工程、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫原理等方面知識有了更進一步的理解和掌握。通過引入企業(yè)項目的“學中做”“做中學”“做學合一”的實踐教學方式,避免了技術(shù)理論與實際動手脫節(jié)現(xiàn)象的發(fā)生。學生親自設(shè)計、編碼、測試運行,自學能力和自信心得到極大的提升,同時也提高了系統(tǒng)設(shè)計思維能力、人際交往能力、協(xié)作創(chuàng)新能力。
參考文獻:
[1]胡志剛,任勝兵,陳志剛等.工程型本科人才培養(yǎng)方案及其優(yōu)化——基于CDIO-CMM的理念[J].高等工程教育研究,2010(6):20-28.
[2]曹樹坤,吳長忠,李國平等.以連續(xù)承辦省級創(chuàng)新大賽為抓手,促人才培養(yǎng)模式改革與質(zhì)量提升[J].課程教育研究,2018(17):240-241.
[3]沈維政,蘇中濱,趙潔.項目驅(qū)動教學法在Java語言程序設(shè)計教學中的應(yīng)用[J].東北農(nóng)業(yè)大學學報(社會科學版),2010,8(2):66-67.
[4]陳濤.基于案例教學的Java語言課程改革研究[J].教育研究與實驗,2009(s3):59-60+63.
[5]廖堅.CDIO工程教育模式在《Web應(yīng)用開發(fā)實訓》教學中的應(yīng)用[J].亞太教育,2015(28):162.
(編輯:魯利瑞)