張永恒,艾曉燕
(榆林學(xué)院 信息工程學(xué)院,陜西 榆林 719000)
CDIO工程教育模式體現(xiàn)了近年來國際工程教育改革的最新成果,也是我國高等教育改革向職業(yè)教育轉(zhuǎn)型過程中,培養(yǎng)應(yīng)用型和技能型人才的一個主流方向,“CDIO”代表構(gòu)思(Conceive)、 設(shè) 計 (Design)、 實 現(xiàn) (Implement) 和 運 作(Operate),是以“做中學(xué)”和“基于項目的學(xué)習(xí)”為核心基礎(chǔ)理念的教學(xué)模式。《Access數(shù)據(jù)庫程序設(shè)計》作為數(shù)據(jù)庫技術(shù)的入門課程,是諸多高校非計算機專業(yè)公共計算機教學(xué)第二層次的必修課程,也是部分高校計算機相關(guān)專業(yè)的必修課程,并且也是本校重點建設(shè)的校級精品資源共享課程,其教學(xué)目的主要是使學(xué)生掌握Access2010數(shù)據(jù)庫的操作,熟悉面向?qū)ο蟪绦蛟O(shè)計的基本方法,培養(yǎng)學(xué)生的計算思維和一定的數(shù)據(jù)庫設(shè)計能力,具備開發(fā)小型數(shù)據(jù)庫應(yīng)用系統(tǒng)以解決實際問題的能力,鍛煉其項目思維和動手實踐的職業(yè)技能,進而激發(fā)學(xué)生的創(chuàng)新意識。ACCESS課程的教學(xué)目標(biāo)與CDIO工程教育的目標(biāo)和理念相一致,而實驗教學(xué)不僅是ACCESS課程教學(xué)體系的重要組成,也是學(xué)生將所學(xué)知識轉(zhuǎn)化為能力的重要環(huán)節(jié),上機實驗教學(xué)的成效直接關(guān)乎學(xué)生掌握計算機知識的程度和動手能力的養(yǎng)成。
在ACCESS實驗教學(xué)中通過引入基于CDIO理念設(shè)計的ACCESS實驗系統(tǒng),構(gòu)建“教、學(xué)、做”一體的新型實驗教學(xué)模式,使CDIO與ACCESS實驗課程教學(xué)有機結(jié)合,加強了ACCESS課程學(xué)習(xí)與項目設(shè)計的相互聯(lián)系,學(xué)生在接近實際的項目實訓(xùn)過程中“做中學(xué),學(xué)中做”,實現(xiàn)了“從實踐出發(fā),上升至理論,再回到實際操作,創(chuàng)作出最終產(chǎn)品”的CDIO教育模式過程,不僅能夠有效促進學(xué)生掌握基礎(chǔ)知識,建立系統(tǒng)完整的知識體系,極大地提高其學(xué)習(xí)的積極性和主動性,而且能夠提高其自我學(xué)習(xí)能力、實踐能力、團隊協(xié)作與溝通能力,學(xué)生的職業(yè)技能也得以提升;另一方面還能夠提高實驗環(huán)節(jié)的教學(xué)質(zhì)量和管理效率。
文中結(jié)合本校實際情況,根據(jù)對Access數(shù)據(jù)庫程序設(shè)計課程上機實驗過程的深入分析,介紹了基于CDIO工程教育理念B/S程序開發(fā)結(jié)構(gòu)的上機實驗系統(tǒng)設(shè)計,及按照MVC模式開發(fā)的系統(tǒng)的實現(xiàn)過程。
ACCESS實驗系統(tǒng)在進行總體分析時,就要考慮將CDIO工程教育的理念融入到實驗教學(xué)過程,并體現(xiàn)在系統(tǒng)功能中,因此,將實驗過程分解為“學(xué)”、“做”、“測”以及綜合項目訓(xùn)練4個環(huán)節(jié)。
“學(xué)”的環(huán)節(jié)屬于基于知識點的設(shè)計性實驗案例學(xué)習(xí),教師按教材分章進行組織案例和實驗題目,學(xué)生可在校園網(wǎng)內(nèi)隨時隨地學(xué)習(xí)相關(guān)案例。在案例學(xué)習(xí)環(huán)節(jié)中,首先,由教師根據(jù)教學(xué)重點和教學(xué)難點提煉出知識點,并進行總結(jié)介紹;其次,精心設(shè)計案例,提出所要解決的實際問題,對其進行文字說明和圖片靜態(tài)展示;再次,給出思路分析和算法流程圖;之后,較為詳細地描述解決該問題的步驟與過程;最后,給出ACCESS數(shù)據(jù)庫文件,學(xué)生可演示運行示范工程項目,并從中進行知識點分析,總結(jié)知識體系,從而能舉一反三。
“做”的環(huán)節(jié)屬于課內(nèi)設(shè)計性實驗,在接受教學(xué)實例的學(xué)習(xí)引導(dǎo)后,要求學(xué)生在所有免費開放的機房或安裝有ACCESS環(huán)境的學(xué)生個人計算機上完成,也可以在相關(guān)實驗課上進行編程調(diào)試。對該部分實驗案例的成果,要求學(xué)生在規(guī)定時間內(nèi)進行提交并由教師進行成績評定,計入實驗作業(yè)成績。
在“做中學(xué)”的過程中,教師也要注重對學(xué)生進行“提出問題、分析問題、解決問題”的思維訓(xùn)練,學(xué)生要養(yǎng)成項目開發(fā)完整過程的系統(tǒng)思維能力,并逐步提高其個人能力與職業(yè)技能。
“測”的環(huán)節(jié)分為學(xué)生自測和統(tǒng)一的階段評測,對于學(xué)生自測沒有任何限制,學(xué)生可以隨意練習(xí),鞏固知識,而統(tǒng)一的階段評測則是由教師組題,學(xué)生在實驗課上當(dāng)堂提交,成績作為實驗成績的重要依據(jù)。
綜合項目訓(xùn)練環(huán)節(jié)則要求講授到一定階段后按專業(yè)班級選取不同類型的案例給學(xué)生布置,并進行小組劃分,學(xué)生自己安排團隊內(nèi)的分工,并將“構(gòu)思、設(shè)計、實現(xiàn)和運作”四階段融入到項目開發(fā)過程中,在項目完成后進行集體匯報,由教師進行評分并總結(jié),成績計入實驗成績。
根據(jù)系統(tǒng)的總體目標(biāo)和建設(shè)思想,ACCESS上機實驗系統(tǒng)的功能主要由基本信息管理、成績評定管理、用戶權(quán)限管理、分章實驗管理、綜合實驗管理5個部分組成?;拘畔⒐芾碛糜谠O(shè)置學(xué)生、班級、教師等基本信息,成績評定管理則是教師對實驗結(jié)果給予成績評定,用戶權(quán)限實現(xiàn)不同用戶訪問系統(tǒng)時的合法性控制,分章實驗管理完成教師進行案例項目、實驗項目、測試題庫等相關(guān)管理,以及學(xué)生進行案例學(xué)習(xí)、做實驗、上傳結(jié)果文件、課后隨機測驗等業(yè)務(wù)需求,綜合實驗管理完成對大項目實訓(xùn)的管理。系統(tǒng)應(yīng)具備的具體功能如圖1所示。
圖1 功能組成圖Fig.1 Functional components
在Access上機實驗教學(xué)活動中,各項業(yè)務(wù)活動主要圍繞著教師和學(xué)生這兩個角色(Actor)進行,也包括管理員這一角色(Actor),這三類角色在登錄后根據(jù)每個角色不同的權(quán)限分別進入不同的頁面,完成各自相應(yīng)的操作功能。管理員成功登錄后可以設(shè)置教師、學(xué)生、班級的信息。教師登錄后可修改密碼、進行案例定制管理、實訓(xùn)項目的增刪改查、學(xué)生實訓(xùn)成果文件查看和實驗成績評定。學(xué)生登錄后可修改密碼、選擇案例進行學(xué)習(xí),然后查看實驗項目,在做完實驗后提交實驗結(jié)果,也可以參與模擬測驗練習(xí)和進行統(tǒng)一組織的階段測試等。
根據(jù)以上流程分析,對系統(tǒng)的教師、學(xué)生和管理員3個角色進行用例圖設(shè)計,主要的系統(tǒng)用例圖如圖2所示。
圖2 系統(tǒng)用例圖Fig.2 Use Case diagram
軟件架構(gòu)設(shè)計是基于軟件需求分析下的一項基礎(chǔ)設(shè)計工作,在架構(gòu)設(shè)計時,一般要先確定系統(tǒng)的技術(shù)體系,ACCESS實驗系統(tǒng)確定采用B/S開發(fā)模式;再根據(jù)技術(shù)體系把業(yè)務(wù)模型部署到硬件設(shè)備上,形成物理模型,本系統(tǒng)部署校園網(wǎng)內(nèi),其物理模型如圖3所示。
圖3 系統(tǒng)物理模型圖Fig.3 System physicsmodeldiagram
依據(jù)分層設(shè)計理論,為提高軟件重用性,降低各部分之間的耦合,將系統(tǒng)劃分為表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)層。客戶端使用瀏覽器,并應(yīng)該安裝Access2010環(huán)境;表示層提供用戶WEB界面的顯示并實現(xiàn)和用戶交互操作;業(yè)務(wù)層封裝了上機實驗核心業(yè)務(wù)邏輯的處理;數(shù)據(jù)層則是用于提供與數(shù)據(jù)庫進行的交互。最終形成了本系統(tǒng)的系統(tǒng)模型,系統(tǒng)架構(gòu)模型如圖4所示。
圖4 系統(tǒng)架構(gòu)模型圖Fig.4 System architecturemodeldiagram
在進一步的設(shè)計過程中,確定系統(tǒng)基于JSP設(shè)計模式Ⅱ進行開發(fā),由于JSP模式Ⅱ是基于MVC架構(gòu)的設(shè)計模式,因此本系統(tǒng)嚴格遵循MVC設(shè)計模式,細化設(shè)計為“B”層、“V”層、“C”層、“M”層和“D”層,其分別表示瀏覽器、MVC 的視圖層、MVC的控制器層、MVC的模型層 (業(yè)務(wù)邏輯)、DAO數(shù)據(jù)持久層。其中,MVC的控制器僅完成轉(zhuǎn)發(fā),既不參與業(yè)務(wù)邏輯的任何實現(xiàn),也不允許對數(shù)據(jù)持久層進行訪問,這樣構(gòu)造的表現(xiàn)層層次清晰、耦合度降低、可讀性較好。
系統(tǒng)不同層次之間的數(shù)據(jù)交互和傳遞離不開業(yè)務(wù)實體,其在數(shù)據(jù)庫中的表現(xiàn)形式就是所謂的關(guān)系數(shù)據(jù)。通過深入分析,本實驗系統(tǒng)應(yīng)構(gòu)建8個業(yè)務(wù)實體,主要包括用戶基本信息、用戶權(quán)限信息、班級信息、章節(jié)信息、案例信息、實驗項目信息、學(xué)生實驗成果信息實體、學(xué)生實驗成績信息等,各實體模型具體的含義介紹如下:
1)用戶:主要屬性有編號、姓名、密碼、聯(lián)系電話、QQ號碼、用戶類別等。
2)權(quán)限:主要屬性有編號、模塊名稱、權(quán)限分配、權(quán)限類別。
3)班級:主要屬性有班級編號(取自類別為學(xué)生的用戶編號前6位)、班級名稱、所屬院系。
4)章節(jié):主要屬性有章節(jié)編號、章名稱等。
5)案例:主要屬性有案例編號、章節(jié)編號、知識點、案例名稱、案例描述、算法分析、操作指南、演示文件、附加圖片等。
6)任務(wù):主要屬性有任務(wù)編號、任務(wù)名稱、任務(wù)描述、所屬章節(jié)、相關(guān)知識點、類似案例。
7)成果:主要屬性有成果編號、用戶編號、任務(wù)編號、文件名稱、存儲路徑、提交時間等。
8)成績:主要屬性有用戶編號、任務(wù)編號、成績、日期等。
一個軟件系統(tǒng)是由功能“模塊”組成的,系統(tǒng)的每一個功能又往往最終可以歸結(jié)為在一定條件下的、對業(yè)務(wù)實體的“增刪改查”基本操作,如案例管理功能,就可以劃分為案例添加、案例刪除、案例修改、顯示全部案例、按章顯示案例、按條件查找案例等操作,這些操作就是“模塊”。實現(xiàn)每一個模塊,并將它們通過主界面集成為一體,業(yè)務(wù)系統(tǒng)就基本實現(xiàn)了。系統(tǒng)總體操作流程如圖5所示。
圖5 系統(tǒng)操作流程圖Fig.5 System operating processdiagram
本系統(tǒng)的各個模塊采用MVC模式實現(xiàn),每個模塊又由界面、控制器、邏輯處理、數(shù)據(jù)訪問、業(yè)務(wù)實體等組成,由JSP、Servlet、業(yè)務(wù)邏輯Javabean、DAO操作類、實體類等分別加以實現(xiàn),在實現(xiàn)過程中面向接口編程,將業(yè)務(wù)邏輯類、DAO類又分解為接口類和實現(xiàn)類分別實現(xiàn)。
不同用戶因為有不同的操作,因此可以有不同的主界面,這些主界面一般通過共同的登錄接口進行跳轉(zhuǎn)。在各自的主界面里,需要布局每個模塊的操作鏈接,并在操作結(jié)束之后根據(jù)需要返回各自的主界面。本系統(tǒng)各個主界面功能區(qū)域基本上劃分為兩個區(qū),左側(cè)布局為導(dǎo)航區(qū),實現(xiàn)章節(jié)和案例選擇導(dǎo)航、綜合項目導(dǎo)航,或者基本信息管理等操作,右側(cè)布局為對應(yīng)導(dǎo)航下的結(jié)果顯示區(qū),對于查詢結(jié)果則又添加了“增刪改”操作。學(xué)生用戶的主界面如圖6所示。
本系統(tǒng)基于JSP技術(shù)Model2開發(fā)模式開發(fā),在ACCESS實驗系統(tǒng)的分析設(shè)計中引入CDIO工程教育思想,使CDIO與ACCESS實驗課程教學(xué)有機結(jié)合,實現(xiàn)了用戶登錄模塊、修改密碼模塊,實現(xiàn)了學(xué)生學(xué)習(xí)案例、接受實驗任務(wù)、網(wǎng)絡(luò)測試、提交成果等模塊,以及教師管理案例、管理實訓(xùn)項目、查看并評價學(xué)生作品、查看學(xué)生成績等模塊。目前該系統(tǒng)已經(jīng)在實驗教學(xué)中得以應(yīng)用,學(xué)生在校園網(wǎng)內(nèi)即可完成“做中學(xué),學(xué)中做”的真實項目實訓(xùn)過程,幫助學(xué)生掌握基礎(chǔ)知識和知識體系,培養(yǎng)動手能力和項目分析設(shè)計能力,提升了個人職業(yè)素質(zhì),也促進了實驗教學(xué)信息化水平的提高。
[1]周志平.基于MVC架構(gòu)實驗教學(xué)系統(tǒng)的研究與實現(xiàn)[D].南京:南京理工大學(xué),2013.
[2]邱月,黃曉武.基于CDIO教育理念的數(shù)據(jù)庫課程實驗教學(xué)改革研究[J].電腦知識與技術(shù),2014(22):5255-5256,5264.
[3]Li Pi Su,Nolan M deMare G etc.Prognostics frame work soft ware design tool[C].Aerospace Conference Proceedings,2000(6):18-25.
[4]沙潔,徐子聞,朱琳玲.應(yīng)用型大學(xué)數(shù)據(jù)庫學(xué)科實踐教學(xué)體系探索[J].計算機教育,2014(5):90-93.
[5]盧磊,張峰.基于J2EE的高校資產(chǎn)管理系統(tǒng)的設(shè)計與實現(xiàn)[J].電子設(shè)計工程,2011(2):92-95,99.
[6]Zhang XJ.System Integration in Business Information Systems:Framework,Implementation and Case Study,2008 International Conference on Wireless Communications,Networking and Mobile Computing (WiCOM 2008),IEEE,p4681094:1-6,2009.
[7]王莉.ACCESS課程教學(xué)改革的探索與實踐[J].內(nèi)蒙古師范大學(xué)學(xué)報(教育科學(xué)版),2014(9):150-152.
[8]張永恒.《Access數(shù)據(jù)庫應(yīng)用基礎(chǔ)》教學(xué)改革探究[J].榆林學(xué)院學(xué)報,2012(6):42-44.
[9]莊科君,賀寶勛.基于云計算的高校計算機實驗教學(xué)系統(tǒng)設(shè)計研究[J].電腦知識與技術(shù),2013(2):306-309.
[10]謝延華,徐小亞.高校計算機程序設(shè)計類課程實驗教學(xué)改革與研究[J].電腦編程技巧與維護,2014(4):80-82.