陳 施, 劉 杰
(沈陽師范大學 科信軟件學院, 沈陽 110034)
?
基于VCT-EIS開發(fā)模式的教務(wù)管理系統(tǒng)的設(shè)計
陳 施, 劉 杰
(沈陽師范大學 科信軟件學院, 沈陽 110034)
提出了基于VCT-EIS開發(fā)模式的教務(wù)管理系統(tǒng)的設(shè)計思路,該模式由視圖層View、管理層CT及數(shù)據(jù)庫層EIS組成。根據(jù)VCT-EIS模式將系統(tǒng)分為表現(xiàn)層、業(yè)務(wù)邏輯管理層和數(shù)據(jù)庫層:表現(xiàn)層通過請求獲取并展示相關(guān)數(shù)據(jù),實現(xiàn)模塊的具體功能;業(yè)務(wù)邏輯管理層中采用功能編碼對應(yīng)SQL語句(或存儲過程)構(gòu)建配置文件,通過執(zhí)行不同的SQL語句(或存儲過程)獲得數(shù)據(jù)庫層的相關(guān)數(shù)據(jù),然后將這些數(shù)據(jù)封裝成JSON數(shù)據(jù)返回給表現(xiàn)層;數(shù)據(jù)庫層通過構(gòu)建中間表,設(shè)置觸發(fā)器,使用存儲過程等技術(shù)保證數(shù)據(jù)邏輯的正確性。這3層結(jié)構(gòu)彼此獨立,使得系統(tǒng)更容易被維護。通過使用該系統(tǒng),用戶能降低日常教務(wù)管理工作的復雜性,最終實現(xiàn)簡便、高效的信息化教務(wù)管理。
教務(wù)管理系統(tǒng); VCT-EIS開發(fā)模式; 功能編碼; SQL語句
從中學信息化[1]的發(fā)展來看,在經(jīng)過了第1階段(教學資源和方法的信息化改革)和第2階段(教學資源的網(wǎng)絡(luò)共享與互助)之后[2],在教學方面的信息化得到了人們的廣泛重視,并得到了長足的發(fā)展。但是在教務(wù)管理的方面,大多數(shù)學校還停留在原始的階段?,F(xiàn)有教務(wù)管理系統(tǒng)大多采用C/S結(jié)構(gòu)功能有限,與現(xiàn)行通用的網(wǎng)絡(luò)功能和數(shù)據(jù)集成性上存在較大差距。因此,教務(wù)管理系統(tǒng)的完善對于提高中學教務(wù)管理的工作效率具有非常重要的意義。教務(wù)管理系統(tǒng)能夠?qū)崿F(xiàn)教務(wù)教學工作的信息化、智能化和工作任務(wù)的按角色分解、異地操作等功能,實現(xiàn)信息共享,促進教學管理的自動化、規(guī)范化、科學化,促進學校教育管理水平和教學水平的提高,更好地為其教育教學及廣大學生、家長服務(wù)[3]。
1.1 系統(tǒng)需求分析
本文以中學各部門具體工作為切入點,進行需求分析。系統(tǒng)的設(shè)計了教務(wù)教學、校務(wù)校辦、德育管理、安全管理、總務(wù)后勤、科研管理等子系統(tǒng)。因為教師和學生是教務(wù)管理中主要的參與者,所以教務(wù)管理系統(tǒng)需要有對其基本信息及日常教務(wù)教學活動與其他信息進行管理的功能。因此教務(wù)管理系統(tǒng)中詳細的設(shè)計了如學生檔案、教師檔案、教學計劃、考試管理、學生成績等功能模塊。
1.2 系統(tǒng)功能結(jié)構(gòu)圖
本文根據(jù)系統(tǒng)的需求分析,設(shè)計了包括10個子系統(tǒng)的教務(wù)管理系統(tǒng),各個子系統(tǒng)下又包含了很多相關(guān)的功能模塊。系統(tǒng)功能結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)功能結(jié)構(gòu)圖
2.1 系統(tǒng)架構(gòu)設(shè)計
本文采用B/S軟件體系[4-5],類似于MCV技術(shù)[6],系統(tǒng)的架構(gòu)采用表現(xiàn)層、業(yè)務(wù)邏輯管理層、數(shù)據(jù)層。系統(tǒng)架構(gòu)圖如圖2所示。
圖2 系統(tǒng)架構(gòu)圖
各層的設(shè)計實現(xiàn)表述如下:
表現(xiàn)層View:接受數(shù)據(jù)請求并展示獲取到的相關(guān)數(shù)據(jù),實現(xiàn)需求所需前端界面形式,主要采用HTML[7]+JS、Ajax技術(shù)。
業(yè)務(wù)邏輯管理層CT:采用軟件總線技術(shù)[8]通過與前臺的接口獲得并解析前臺傳遞的參數(shù),得到對應(yīng)的功能編號。讀取數(shù)據(jù)接口協(xié)議即數(shù)據(jù)庫配置文件中該功能編號對應(yīng)的SQL語句(或者存儲過程[9]),調(diào)用具體的方法從數(shù)據(jù)庫端獲取該SQL語句(或者存儲過程)對應(yīng)的數(shù)據(jù),將字符集處理成JSON格式的數(shù)據(jù)[10]并封裝成Dict類型的數(shù)據(jù),返回給前端。
數(shù)據(jù)庫層:根據(jù)需求設(shè)計并創(chuàng)建數(shù)據(jù)庫表并存儲相關(guān)數(shù)據(jù),對某個功能涉及到的數(shù)據(jù)庫表進行操作。作為數(shù)據(jù)訪問層的配置文件(Config和Wrapdata)只負責與數(shù)據(jù)庫交互,并將返回的結(jié)果數(shù)據(jù)交給業(yè)務(wù)邏輯管理層,再經(jīng)過封裝返回給前端。這樣就保證了數(shù)據(jù)庫層不直接與表現(xiàn)層交互。
2.2 數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫技術(shù)可以有效管理和存取大量數(shù)據(jù)[11],提高系統(tǒng)的效率,方便維護系統(tǒng)。首先設(shè)計模塊ER圖,然后將各模塊ER圖綜合成系統(tǒng)ER圖,優(yōu)化后得到最終的系統(tǒng)ER圖。以教學計劃為例,設(shè)計教學計劃ER圖之前,要先確定學年、學期、年級、課程性質(zhì)的實體及實體間的對應(yīng)關(guān)系,確定是否生成中間表,如學年學期表、學年學期年級表、課程設(shè)置表與教學計劃表。最終得到教學計劃ER圖,如圖3所示。
圖3 教學計劃ER圖
以基礎(chǔ)設(shè)置子系統(tǒng)中教學計劃功能模塊為例,普通的用戶只能操作查詢按鈕,查看某學年、學期下的教學計劃。校務(wù)主任等其他權(quán)限級別更高的用戶,可以對教學計劃進行查詢、添加、編輯、刪除、導出、打印。教學計劃業(yè)務(wù)流程圖如圖4所示。
開始由用戶發(fā)出查看教學計劃請求,默認顯示當前學年、學期的教學計劃。如果當前學年、學期下沒有教學計劃,點擊添加按鈕可以添加當前學年、學期下的教學計劃,添加成功將該教學計劃顯示出來。選擇好學年、學期后,可以點擊查詢按鈕,查詢所選學年、學期下的教學計劃。如果需要修改、刪除、打印或?qū)С霎斍皩W年、學期教學計劃,點擊相應(yīng)按鈕修改、刪除、打印或?qū)С鼋虒W計劃信息,結(jié)束。
3.1 確定教學計劃界面與配置文件
首先根據(jù)需求確定前端界面View的表現(xiàn)形式及界面展示數(shù)據(jù)所需的數(shù)據(jù)結(jié)構(gòu)。前端采用HTML+JS技術(shù)展示得到的數(shù)據(jù)。數(shù)據(jù)庫EIS(企業(yè)信息管理Enterprise Information Supervise)按照需求設(shè)計并創(chuàng)建數(shù)據(jù)庫表,并按照具體業(yè)務(wù)要求操作相關(guān)表,處理好數(shù)據(jù)邏輯后將具體功能編碼與相應(yīng)的SQL語句(或者數(shù)據(jù)存儲過程),以數(shù)據(jù)庫配置文件sql_config.py的形式提供給后臺。如:
000601.SQLOperate=SELECT AcademicYearName,TermName,GradeName,CourseName,NumberOfWeekly FROM tea_erp.ser_teach_plan WHERE AcademicYearName=%s AND TermName=%s
000601.SQLParmsType=S,S
000601.SQLGetParmsType=S,S,S,S,D
3.2 確定界面展示所需的JSON數(shù)據(jù)格式
JSON作為一種輕量級的數(shù)據(jù)交換格式[12-13],可以直接用來編寫Web頁面的某些部分。按照需求確定教學計劃表單樣式與要展示的JSON數(shù)據(jù)。如:
{“Key”:[{“course”: “年級學科”,“grade1”:“五年級”,“grade2”:“六年級”,“grade3”:“七年級”,“grade4”:“八年級”,“grade5”:“九年級”,“remarks”:“備注”} ,
{“course”:“語文”,“grade1”:“6”,“grade2”:“6”,“grade3”:“6”,“grade4”:“5”,
“grade5”:“5”,“remarks”:“學科導論(國家課程)”},……]}
圖4 教學計劃業(yè)務(wù)流程圖
3.3 獲取正確的數(shù)據(jù)
后臺采用python語言構(gòu)建CT組件,CT組件由Core與Management組成。后臺接收前臺傳來的請求信息,按照管理文件views.py的規(guī)定,調(diào)用工具文件中的AnalyProperties.py解析出功能編碼、參數(shù)類型與返回數(shù)據(jù)的類型。然后通過工具文件中的CheckSQL.py中的SQL()方法,讀取數(shù)據(jù)接口協(xié)議文件sql_config.py中與該功能編碼對應(yīng)的SQL語句(或者數(shù)據(jù)存儲過程)。根據(jù)具體的SQL語句,調(diào)用WrapData中的不同方法,實現(xiàn)不同的SQL功能并獲得相應(yīng)的字符集。最后按照工具文件中的TranToString.py中的tcode()方法,對數(shù)據(jù)類型進行轉(zhuǎn)換,使其符合返回數(shù)據(jù)的類型要求。將數(shù)據(jù)封裝成一個數(shù)組對象,再將此結(jié)果集以響應(yīng)數(shù)據(jù)的形式返回給前端。
前端通過與后臺的接口調(diào)用數(shù)據(jù)傳遞方法management(request)傳遞參數(shù),后臺根據(jù)對參數(shù)的解析,得到功能編碼,然后讀取配置文件中相應(yīng)的SQL語句(或存儲過程),對得到的數(shù)據(jù)進行封裝,再返回給前端,前端將數(shù)據(jù)展示出來。
教務(wù)管理系統(tǒng)是中學信息化進程中一個關(guān)鍵的組成部分。他以學生為中心,一方面簡化管理人員的工作并提高工作效率[14],使其可以更加關(guān)注對學生的教育。另一方面家長可以使用該系統(tǒng),了解學生在學校的學習情況。教務(wù)管理系統(tǒng)以信息化的技術(shù),從兩級角度[15]服務(wù)并促進對學生的教學。在此基礎(chǔ)上進行了該教務(wù)管理系統(tǒng)的需求分析、總體設(shè)計、數(shù)據(jù)庫設(shè)計和詳細設(shè)計與實現(xiàn)。開發(fā)中采用了VCT-EIS模式和面向?qū)ο蠓治龅姆椒ā?/p>
使用該教務(wù)管理系統(tǒng)可以實現(xiàn)以下目標:1) 建立科學規(guī)范的教務(wù)管理體制和運行機制[16];2) 提升教育管理信息化水平。
[1]常亮.數(shù)字化校園背景下的高校網(wǎng)絡(luò)教務(wù)管理系統(tǒng)建設(shè)[J].藝術(shù)科技, 2014(1):308.
[2]陳陽.中小學校園網(wǎng)絡(luò)云計算建設(shè)調(diào)查[J].電子世界, 2012(18):15-16.
[3]張成文.基于Web的中小學綜合教學管理平臺的研究與實現(xiàn)[D].蘭州:蘭州大學, 2013.
[4]HOFMANN A, APFEL B, BARTH U, et al.The Building of Education Management System based on Web 2.0[J].Int E Edu Res, 2014(1):7-9.
[5]潘志康,孟曉辰,劉超.信息化技術(shù)在實驗教學管理中的應(yīng)用探索[J].中國電力教育, 2014(2):182-183.
[6]王進博,丁振國.MVC模式在高校教務(wù)管理系統(tǒng)中的應(yīng)用[J].電子科技, 2006(6):75-78.
[7]高波,戴連榮.基于動態(tài)HTML的科研檔案管理系統(tǒng)的設(shè)計與實現(xiàn)[J].遼寧師范大學學報:自然科學版, 2000,23(4):373-377.
[8]崔博,周傳生.基于MVC模式的Web應(yīng)用軟件系統(tǒng)架構(gòu)的研究[J].沈陽師范大學學報:自然科學版, 2006,24(3):310-314.
[9]汪維富,黃海于,陳娟,等.基于存儲過程的高性能數(shù)據(jù)庫應(yīng)用模型研究[J].計算機工程與設(shè)計, 2008(10):2573-2575.
[10]谷方舟,沈波.JSON數(shù)據(jù)交換格式在異構(gòu)系統(tǒng)集成中的應(yīng)用研究[J].鐵路計算機應(yīng)用, 2012(2):1-4.
[11]鐘文祥.基于Web的教務(wù)管理系統(tǒng)的設(shè)計與實現(xiàn)[J].信息與電腦:理論版, 2013(1):221-223.
[12]PROCHAZKA M, HOLUB P, HLADKA E.JSON:Network of Active Elements with Peer-to-Peer Control Plane[C]∥2009 Eighth International Conference on Networks, 2009:208.
[13]高靜,段會川.JSON數(shù)據(jù)傳輸效率研究[J].計算機工程與設(shè)計, 2011(7):2267-2270.
[14]高飛.中學教務(wù)管理系統(tǒng)設(shè)計與實現(xiàn)[J].教育教學論壇, 2013(42):16-17.
[15]閻威.校院兩級教務(wù)管理系統(tǒng)優(yōu)化研究與實踐[J].中國電力教育, 2013(28):64-65.
[16]林凱.民辦高校教務(wù)管理工作的現(xiàn)狀與對策[J].民營科技, 2014(1):111.
Designof educational administration system based on VCT-EIS development mode
CHENShi,LIUJie
(Software College, Shenyang Normal University, Shenyang 110034, China)
Aiming at Educational Administration System in digital campus, this paper presents a design idea based on VCT-EIS development mode of educational administration system, The model is made up of the view layer (V), management layer (CT) and database layer (EIS).This paper introduces the system’s main function module, the structure and main module realization process.In this paper, according to VCT-EIS model, system can be divided into the presentation layer, business logic management layer and database.The presentation layer can realize the function of specific modules by using the request to capture and display the data.The business logic management layer uses function code corresponding to the SQL statement or stored procedure to build configuration files, and obtains the data in the database layer by performing a different SQL statements or stored procedures, then encapsulates the data into a JSON data which is returned to the presentation layer finally.The database layer builds the middle table, sets up the trigger or uses stored procedures, to ensure the correctness of the data logic.The three layer structures are independent of each other, so that making the system easier to be maintained.By using this system, users can reduce the complexity of the daily educational administration work, and finally realize convenient and efficient information educational administration.
educational administration system; VCT-EIS development mode; function code; SQL statements
2014-10-27。
國家自然科學基金資助項目(60970112)。
陳 施(1987-),女,遼寧錦州人,沈陽師范大學碩士研究生; 劉 杰(1957-),男,遼寧本溪人,沈陽師范大學教授,碩士研究生導師。
1673-5862(2015)01-0091-05
TP311.52
A
10.3969/ j.issn.1673-5862.2015.01.020