劉 爽,李錫祚,常洪強(qiáng)
(大連民族學(xué)院 計(jì)算機(jī)科學(xué)與工程學(xué)院,吉林 大連 116600)
軟件工程課程是我校計(jì)算機(jī)科學(xué)與工程學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)、網(wǎng)絡(luò)工程專(zhuān)業(yè)、軟件工程專(zhuān)業(yè)的專(zhuān)業(yè)必修課及2009培養(yǎng)方案中的通識(shí)課程[1],有效的雙語(yǔ)教學(xué)能及時(shí)提升學(xué)生的專(zhuān)業(yè)能力和語(yǔ)言能力,適應(yīng)應(yīng)用型、復(fù)合型的專(zhuān)業(yè)雙語(yǔ)國(guó)際性IT人才的培養(yǎng)需求[2]。但是課程內(nèi)容理論闡述較多,要求學(xué)生掌握的知識(shí)點(diǎn)較多,學(xué)生上課時(shí)感覺(jué)枯燥,采用雙語(yǔ)教學(xué)會(huì)進(jìn)一步增大課程的難度。為此在有限的課堂理論教學(xué)基礎(chǔ)上,必須借助網(wǎng)絡(luò)自主學(xué)習(xí)平臺(tái),提供集聲音、視頻、圖像、文字、動(dòng)畫(huà)于一體的課件和教學(xué)資料,激發(fā)學(xué)生自主學(xué)習(xí)的興趣,同時(shí)支持同步測(cè)試與在線(xiàn)或離線(xiàn)答疑,為師生提供溝通交流的平臺(tái),實(shí)現(xiàn)專(zhuān)業(yè)課程教學(xué)和雙語(yǔ)教學(xué)的最佳教學(xué)效果。
數(shù)字教學(xué)資源可以無(wú)損地任意復(fù)制和傳播,這給人們的學(xué)習(xí)生活帶來(lái)了極大的便利。然而,無(wú)償下載、任意復(fù)制和隨意傳播數(shù)字教學(xué)資源也使數(shù)字教學(xué)資源所有者的版權(quán)利益受到損害。這樣會(huì)挫傷版權(quán)所有者的積極性,使其不愿公開(kāi)數(shù)字教學(xué)資源,影響整個(gè)數(shù)字教學(xué)資源共享的發(fā)展,因此,在現(xiàn)代教育中迫切需要先進(jìn)的技術(shù)手段來(lái)保護(hù)數(shù)字教學(xué)資源的版權(quán)。
目前我校BB平臺(tái)[3]或精品課網(wǎng)站中大部分課件資源是ppt格式的課件,用戶(hù)下載后可以任意修改,在其他場(chǎng)合使用時(shí)可以不引著原作者,原作者的版權(quán)不能受到保護(hù)。
在課程平臺(tái)制作過(guò)程中開(kāi)發(fā)了教學(xué)資源格式轉(zhuǎn)換系統(tǒng),用戶(hù)可以上傳可編輯格式的ppt、word、excel之類(lèi)的數(shù)字教學(xué)資源文件,調(diào)用iSpring軟件[4]或是Macromedia Flash Paper軟件[5]轉(zhuǎn)換為不可編輯具有版權(quán)保護(hù)的flash格式文件,之后可以再發(fā)給學(xué)生或是共享資源。轉(zhuǎn)換完的flash格式文件較小,只需標(biāo)準(zhǔn)IE瀏覽器即可查看,不需要客戶(hù)端支持ppt播放或是word、excel辦公軟件。視頻課件部分可以采用屏幕錄播軟件,同時(shí)錄制音頻的方式生成,方便學(xué)生查看自學(xué)。
國(guó)際化技術(shù)簡(jiǎn)稱(chēng)為 I18N[6],來(lái)源為“internationlization”單詞的首末字符“i”和“n”之間的字符數(shù)為18。由于是雙語(yǔ)教學(xué)平臺(tái),因此需要開(kāi)發(fā)出支持至少兩種語(yǔ)言、國(guó)際化的教學(xué)網(wǎng)站。這里采用Struts2框架開(kāi)發(fā)實(shí)現(xiàn)應(yīng)用的國(guó)際化,即服務(wù)器端應(yīng)用程序在運(yùn)行時(shí)能夠根據(jù)客戶(hù)端請(qǐng)求的語(yǔ)言來(lái)選擇頁(yè)面顯示的語(yǔ)言及用戶(hù)提示、錯(cuò)誤信息提示等。Struts2對(duì)國(guó)際化的支持通過(guò)資源文件來(lái)實(shí)現(xiàn),本例中使用的資源文件包括:
1)中文資源文件:applicationResource_zh_CN.properties
2)英文資源文件:applicationResource_en.properties
中英文資源包中定義了所有的頁(yè)面顯示元素、驗(yàn)證信息、錯(cuò)誤提示等所有語(yǔ)言元素的鍵值對(duì)(key,value)內(nèi)容。由于資源文件中內(nèi)容較多,這里僅以用戶(hù)名、密碼為例說(shuō)明:
表1 中英文資源文件內(nèi)容Tab.1 Content of Chinese and English resource files
其中頁(yè)面元素的國(guó)際化采用如下代碼實(shí)現(xiàn):
驗(yàn)證信息在配置文件中實(shí)現(xiàn):
文中設(shè)計(jì)開(kāi)發(fā)的軟件工程雙語(yǔ)教學(xué)網(wǎng)絡(luò)平臺(tái)選擇XP操作系統(tǒng)下MyEclipse6.5作為開(kāi)發(fā)平臺(tái),使用iSpring軟件、Macromedia Flashpaper軟件、Camtasia Studio 6屏幕錄播軟件把各種教學(xué)資源進(jìn)行格式轉(zhuǎn)換,業(yè)務(wù)邏輯、后臺(tái)數(shù)據(jù)庫(kù)操作采用 Struts2[6]和 Hibernate[7]框架開(kāi)發(fā),前臺(tái)頁(yè)面采用 JSP、JavaScript、CSS等編寫(xiě)制作,開(kāi)發(fā)過(guò)程分層遵循JavaEE規(guī)范,靈活地提供聲音、圖像和動(dòng)畫(huà)來(lái)啟發(fā)學(xué)生的形象思維,迅速準(zhǔn)確地運(yùn)用多媒體技術(shù)來(lái)指導(dǎo)學(xué)生的抽象思維,使教學(xué)做到形、聲結(jié)合,使學(xué)生的知、情融為一體,更好地激發(fā)學(xué)生的自主學(xué)習(xí)。
制作基本過(guò)程如下:
1)素材準(zhǔn)備:課件資料、視頻資料均以提高學(xué)生學(xué)習(xí)興趣為出發(fā)點(diǎn),著重于知識(shí)點(diǎn)的講解,瀏覽學(xué)習(xí),界面美觀(guān),文字清晰,操作簡(jiǎn)單。內(nèi)容設(shè)計(jì)以章節(jié)為單元,以重要概念為知識(shí)點(diǎn),各章節(jié)知識(shí)節(jié)點(diǎn)被激活后,可以顯示相應(yīng)的課件信息或加入語(yǔ)音講解的課件內(nèi)容。所有課件資料均以falsh格式課件為主,不僅可以防止盜版侵權(quán),而且可以隨時(shí)控制課件的進(jìn)度,查看所需頁(yè)面內(nèi)容。對(duì)文本性資源,如教學(xué)日歷,教學(xué)大綱等直接轉(zhuǎn)換為Flashpaper即可。對(duì)實(shí)踐環(huán)節(jié)中的軟件操作,如使用Visio如何畫(huà)數(shù)據(jù)流圖,可以采用錄播軟件,捕獲屏幕操作輔助語(yǔ)音講解的方式,保存為任意可以播放的格式供學(xué)生查看。
2)服務(wù)器端應(yīng)用程序開(kāi)發(fā):采用Struts2框架和Hibernate3.5.6框架編寫(xiě)服務(wù)器端應(yīng)用程序,其中Struts框架主要處理業(yè)務(wù)邏輯,Hibernate框架完成和數(shù)據(jù)庫(kù)的相關(guān)操作。應(yīng)用服務(wù)器選擇開(kāi)源軟件Tomcat6.0。課件素材需要部署到服務(wù)器中發(fā)布,實(shí)現(xiàn)資源共享。其中的國(guó)際化部分基于Strtus2框架實(shí)現(xiàn),服務(wù)器根據(jù)學(xué)生客戶(hù)端瀏覽器的語(yǔ)言選項(xiàng),可以相應(yīng)調(diào)用中文學(xué)習(xí)界面或是英文學(xué)習(xí)界面,查看中英文教學(xué)資源文件。所有的教學(xué)資源可以在線(xiàn)查看,也可以下載到本地使用瀏覽器播放。
3)前臺(tái)客戶(hù)端頁(yè)面開(kāi)發(fā):借助Struts2標(biāo)簽庫(kù)及JavaScript、HTML、CSS、JSP 編寫(xiě)系統(tǒng)頁(yè)面,所有頁(yè)面均實(shí)現(xiàn)國(guó)際化功能,且參考國(guó)內(nèi)優(yōu)秀精品課程網(wǎng)站美化頁(yè)面。
4)客戶(hù)端訪(fǎng)問(wèn):工程部署完的服務(wù)器啟動(dòng)后,客戶(hù)端通過(guò)瀏覽器輸入服務(wù)器網(wǎng)址即可訪(fǎng)問(wèn)使用??梢栽O(shè)置瀏覽器的語(yǔ)言選項(xiàng)來(lái)訪(fǎng)問(wèn)不同語(yǔ)言的資源,也可以直接點(diǎn)擊前臺(tái)頁(yè)面的中英文語(yǔ)言超鏈接進(jìn)行頁(yè)面跳轉(zhuǎn)。
系統(tǒng)分層遵循JavaEE規(guī)范,該規(guī)范是由國(guó)際上最權(quán)威的Java標(biāo)準(zhǔn)組織JCP(Java Community Process)倡導(dǎo)制定的[8]。其主要思想是在企業(yè)應(yīng)用開(kāi)發(fā)中采用分層的形式進(jìn)行程序架構(gòu),以組件的形式來(lái)實(shí)現(xiàn)功能模塊,將各種不同的應(yīng)用組件分布在不同的層上。各層可以采用不同的技術(shù)和框架實(shí)現(xiàn),這里采用Struts2框架和Hibernate框架。其中,Struts2框架是實(shí)現(xiàn)MVC模式的一個(gè)廣泛應(yīng)用的框架,Hibernate是一種實(shí)現(xiàn)對(duì)象和關(guān)系之間映射(Object Relation Mapping)的框架,對(duì)JDBC進(jìn)行了輕量級(jí)的對(duì)象封裝,可以使用面向?qū)ο缶幊趟季S來(lái)操作關(guān)系數(shù)據(jù)庫(kù),為應(yīng)用程序提供數(shù)據(jù)持久化服務(wù)。本文系統(tǒng)分為4層,分別是:
1)客戶(hù)層:瀏覽器客戶(hù)端,用于與用戶(hù)交互;
2)表示層:接受客戶(hù)端請(qǐng)求,傳遞給業(yè)務(wù)邏輯層組件,再把服務(wù)器端處理完的結(jié)果提供給用戶(hù);
3)業(yè)務(wù)層:處理業(yè)務(wù)規(guī)則、數(shù)據(jù)訪(fǎng)問(wèn)、事務(wù)管理等。包含多個(gè)JavaBean組件,為用戶(hù)提供各種查詢(xún)、添加、修改、刪除的接口。接口具體實(shí)現(xiàn)通過(guò)調(diào)用持久層完成。
4)數(shù)據(jù)持久層:負(fù)責(zé)應(yīng)用到數(shù)據(jù)庫(kù)的數(shù)據(jù)存儲(chǔ)、檢索和更新,實(shí)現(xiàn)數(shù)據(jù)的持久化。
基于Struts2框架與Hibernate框架實(shí)現(xiàn)的系統(tǒng)架構(gòu)如圖1所示。
圖1 基于Struts2和Hibernate的系統(tǒng)框架圖Fig.1 System framework based on Struts2 and Hibernate
整個(gè)系統(tǒng)工作流程如下:
第1步,客戶(hù)端向服務(wù)器發(fā)送請(qǐng)求;
第2步,核心控制器FilterDispatcher根據(jù)請(qǐng)求決定調(diào)用合適的Action。
第3步,Struts2的攔截器鏈自動(dòng)對(duì)請(qǐng)求應(yīng)用通用功能,例如workflow、validation或文件上傳等功能。
第4步,回調(diào)Action的execute方法,該 execute方法先獲取用戶(hù)請(qǐng)求參數(shù),調(diào)用業(yè)務(wù)邏輯組件來(lái)處理用戶(hù)的請(qǐng)求。
第5步,業(yè)務(wù)邏輯類(lèi)根據(jù)需要調(diào)用持久化類(lèi)與數(shù)據(jù)訪(fǎng)問(wèn)類(lèi),執(zhí)行某種數(shù)據(jù)庫(kù)操作,既可以將數(shù)據(jù)保存到數(shù)據(jù)庫(kù),也可以從數(shù)據(jù)庫(kù)中檢索信息。
第6步,Action的execute方法處理結(jié)果信息作為響應(yīng)輸出到瀏覽器中,可以是HTML頁(yè)面、圖像,也可以是PDF文檔或者其他文檔。
本雙語(yǔ)教學(xué)網(wǎng)絡(luò)平臺(tái)為了方便學(xué)生學(xué)習(xí),分為8個(gè)模塊:課件資料、模版、課程信息(教案)、視頻資料(教程)、下載、在線(xiàn)測(cè)試(試題)、學(xué)生作品、教學(xué)參考,下面分別加以介紹。
課程信息模塊:課程信息模塊以文本表格形式提供與課程相關(guān)的信息,如課程簡(jiǎn)介和教學(xué)日歷、教學(xué)大綱。
課件資料模塊:課件資料模塊以提高學(xué)生學(xué)習(xí)興趣為出發(fā)點(diǎn),著重于知識(shí)點(diǎn)的講解,瀏覽學(xué)習(xí),界面美觀(guān),文字清晰,操作簡(jiǎn)單。該模塊結(jié)構(gòu)設(shè)計(jì)以章節(jié)為單元,以重要概念為知識(shí)點(diǎn),各章節(jié)知識(shí)節(jié)點(diǎn)被激活后,可以顯示相應(yīng)的課件信息或加入語(yǔ)音講解的課件內(nèi)容。本模塊中所有課件資料均為falsh格式課件,防止盜版侵權(quán),可以隨時(shí)控制課件的進(jìn)度,查看所需頁(yè)面內(nèi)容。所有課件內(nèi)容均為FlashPaper格式,僅需瀏覽器即可播放。
視頻資料模塊:查看導(dǎo)航欄中的“教程”或英文導(dǎo)航欄中的“Course”可以出現(xiàn)視頻課件分章節(jié)導(dǎo)航鏈接。視頻資料為iSpring轉(zhuǎn)換的加入音頻信息的flash格式課件或是屏幕錄播視頻形式視頻文件。
下載模塊:為了讓學(xué)生能大大提高自學(xué)興趣,而且在學(xué)習(xí)之余能夠充分放松心情,不至于感到乏味,本平臺(tái)設(shè)置了教學(xué)資源下載模塊加以補(bǔ)充,通過(guò)下載教學(xué)資料,學(xué)生可以在課余時(shí)間鞏固上課教學(xué)內(nèi)容,復(fù)習(xí)重點(diǎn)難點(diǎn),豐富知識(shí),可以有效地提高學(xué)習(xí)積極性。
在線(xiàn)測(cè)試模塊:在線(xiàn)測(cè)試模塊側(cè)重于對(duì)知識(shí)點(diǎn)的學(xué)習(xí)鞏固,制作了涵蓋課程內(nèi)容的題庫(kù),學(xué)生通過(guò)課堂教學(xué)對(duì)知識(shí)點(diǎn)的學(xué)習(xí),有機(jī)地進(jìn)行練習(xí)、復(fù)習(xí)、自我檢測(cè)。在每一章的學(xué)習(xí)結(jié)束時(shí),學(xué)生可以隨時(shí)從教學(xué)模塊切換到練習(xí)模塊,檢查自己能否靈活并綜合地運(yùn)用本章的知識(shí)。在該軟件中,選擇了填空題、選擇題、判斷題和綜合題4種類(lèi)型。提交答案后,系統(tǒng)會(huì)自動(dòng)給出參考答案信息。導(dǎo)航欄中的“試題”或英文導(dǎo)航欄中的“Questions”與之對(duì)應(yīng)。
學(xué)生作品模塊:該模塊提供優(yōu)秀學(xué)生作品文檔,可以直接查看,也可以下載到本地查看。學(xué)生查看優(yōu)秀學(xué)生作品文檔,可以學(xué)習(xí)軟件工程生命周期中各階段規(guī)范化文檔的撰寫(xiě),也可以查找自己的不足,提高撰寫(xiě)科技文檔的水平。導(dǎo)航條中的“學(xué)生作品”或英文導(dǎo)航條中的“S-work”與之對(duì)應(yīng)。
教學(xué)參考模塊:該模塊提供教學(xué)網(wǎng)站、教材及相應(yīng)的參考資料信息。
由于篇幅有限,這里節(jié)選英文課件中的一個(gè)課件顯示頁(yè)面和中文的章節(jié)信息導(dǎo)航頁(yè)面演示項(xiàng)目的實(shí)際運(yùn)行效果,如圖2和圖3所示。
圖2 英文課件顯示頁(yè)面Fig.2 Page display of English courseware
圖3 課程章節(jié)信息導(dǎo)航Fig.3 Chapter navigation for the course
為適應(yīng)網(wǎng)絡(luò)教學(xué)的需要,開(kāi)發(fā)設(shè)計(jì)了軟件工程雙語(yǔ)教學(xué)網(wǎng)絡(luò)平臺(tái),該平臺(tái)教學(xué)內(nèi)容科學(xué)規(guī)范、知識(shí)體系完整、邏輯性強(qiáng)、教學(xué)素材資源引用適當(dāng)。所有教學(xué)資源均采用iSpring軟件或Macromedia Flash Paper軟件轉(zhuǎn)換為Flash格式內(nèi)容,不僅可以防止盜版,而且更方便用戶(hù)查看瀏覽。同時(shí)采用國(guó)際化技術(shù)對(duì)雙語(yǔ)教學(xué)提供有力支持,服務(wù)器會(huì)根據(jù)客戶(hù)端環(huán)境不同選擇顯示相應(yīng)的資源信息。該網(wǎng)教平臺(tái)側(cè)重于學(xué)生自主學(xué)習(xí)能力的培養(yǎng),促進(jìn)雙語(yǔ)教學(xué)在專(zhuān)業(yè)課教學(xué)環(huán)節(jié)中的具體實(shí)施,探索了更為有效的軟件工程雙語(yǔ)教學(xué)模式。
[1]大連民族學(xué)院教務(wù)處.大連民族學(xué)院2009版培養(yǎng)方案[M].大連:大連民族學(xué)院,2009.
[2]SHUANG Liu, XI Zuo-Li, LI Zuo.Adopting communicative teaching method in computer major bilingual teaching[J].Theory and Practice in Language Studies, 2011, 1 (2):187-190.
[3]Dalian Nationalities University.Blackboard Academic Suite[EB/OL].(2009-03-03)[2011-05-10].http://bb.dlnu.edu.cn.
[4]iSpring Solutions,Inc.Download Powerpoint to flash and E-learning authoring tools free trials[EB/OL]. (2011-01-10)[2011-03-11].http://www.ispringsolutions.com/download.html.
[5]Adobe Systems Incorporated.Download FlashPaper2[EB/OL].(2010-10-03)[2011-03-15].https://www.adobe.com/c-fusion/tdrc/index.cfm?product=flashpaper.
[6]李剛.Struts 2.1權(quán)威指南—基于WebWork核心的MVC開(kāi)發(fā)[M].北京:電子工業(yè)出版社,2009.
[7]孫衛(wèi)琴.精通Hibernate:Java對(duì)象持久技術(shù)詳解 [M].北京:電子工業(yè)出版社,2008.
[8]Oracle Corporation.Java EE reference[EB/OL].(2009-12-11)[2010-12-15].http://www.oracle.com/technetwork/java/javaee/d-ocumentation/index.html.