王碩,肖磊,鄭曉東
(齊齊哈爾大學 計算機與控制工程學院,黑龍江 齊齊哈爾 161006)
畢業(yè)達成評定系統(tǒng)面向學院與教師,通過科學的評價機制,對學生的畢業(yè)要求達成情況進行合理評價,幫助校方分析學生學習情況和教師授課情況。目前比較常見的畢業(yè)要求達成度評定方法是將畢業(yè)要求和課程進行關聯(lián),以學生在課程中獲得的成績?yōu)閰⒖?,來評定畢業(yè)要求是否完成。在實際情況中,我們發(fā)現(xiàn)部分畢業(yè)要求只與課程中的部分成績關聯(lián)。這導致評價機制不夠客觀,不能對學生課程學習情況以及教師授課情況做出合理,全面的評價等問題。
針對上述問題,張迪等在課程目標及畢業(yè)要求指標點達成度的研究中提出一個計算課程目標和畢業(yè)要求指標點達成度的方法,宋江等在“機械制造工藝學”課程達成度評價與教學改進一文中指出課程達成度評價為課程體系的持續(xù)改進提供了最直接有效的方向。鄭銀環(huán)等認為通過建立畢業(yè)要求指標點與課程目標之間的支撐關系,確定課程目標的達成途徑和達成度評價方法,可以發(fā)現(xiàn)學生對課程內(nèi)容及課程目標的掌握程度和教學中存在的不足,為后續(xù)課程教學的持續(xù)改進指明方向。
在實踐上,楊勇等則提出了面向工程教育專業(yè)認證的課程目標達成評價機制與方法,得到了課程教師的認可并在校內(nèi)認證專業(yè)中得到了推廣應用。同時李川等在食品營養(yǎng)學課程達成度評價與持續(xù)改進一文中也進行了課程達成度評價的實際應用,吳桂義等則以運籌學課程為例,將課程達成度評價機制應用到采礦工程專業(yè)大類中,并認為對采礦工程專業(yè)大類(必修)課程要求達成度進行評價是可行的。
在對本校課程方案進行研究后,本文設計了一個以前后端分離技術為基礎,指標點評價機制為核心的畢業(yè)達成評定系統(tǒng)。
基于指標點評價方法的畢業(yè)達成評定系統(tǒng),以指標點為中間概念,銜接畢業(yè)要求與課程,將學生的傳統(tǒng)課程成績拆分為多個指標點成績,并以指標點成績與指標點目標分數(shù)之比,來展現(xiàn)學生學習情況以及教師授課情況。指標點評價方法主要優(yōu)點包括避免畢業(yè)要求與課程之間出現(xiàn)大量復雜、重復的關聯(lián),同時可以更方便建立畢業(yè)達成度評定系統(tǒng)。
在指標點評價方法中,學生是否能夠畢業(yè),取決于多個畢業(yè)要求是否達到標準。畢業(yè)目標與畢業(yè)要求之間的關系如圖1所示。
圖1 畢業(yè)要求與畢業(yè)目標的關系
每個畢業(yè)要求被分割為多個指標點,由指標點為畢業(yè)要求的評定做基礎參考。畢業(yè)要求與指標點之間的關系如圖2所示。
圖2 畢業(yè)要求與指標點之間的關系
指標點與課程相關,一個指標點通常包含多個課程,由不同課程的成績通過與設定好的權重計算的結果,來支撐指標點的評定。同時,一門課程也會對多個指標點產(chǎn)生影響。指標點與課程之間的關系如圖3所示。
圖3 指標點與課程的關系
傳統(tǒng)的課程成績通常由多個考核部分組成,教師會對考核部分按實際情況設定不同,各個考核部分在課程成績中占比之和為100。舉例,某一門課程中,設有四個考核,分別為課時作業(yè)、綜合項目、考勤、期末測試。這四個部分在課程成績中的分值分別為30、40、10、20。
如果只使用傳統(tǒng)的課程成績對畢業(yè)目標達成進行評定,會出現(xiàn)評定結果過于單一化的情況。因此,通過引入指標點的概念,將畢業(yè)目標達成的評定提供了更多豐富的可能性。
在本評定系統(tǒng)中,指標點由多門課程進行支撐,在一門課程中,各部分考核成績將對課程所支撐的指標點產(chǎn)生不同的影響,指標點在每個考核部分中都有一個目標分數(shù),該目標分數(shù)由教師設定。
指標點在考核部分中的目標分數(shù)按如下方法計算。
假設課程中考核為={,,,…,a},其中a為第個考核,=1,2,3,…,。
假設課程中指標點為={,,,…,b},其中b為第個指標點,=1,2,3,…,。
構造考核與指標點權重的關系矩陣W為:
令第個指標點在某課程的目標分數(shù)為c,第個考核在該課程中的分值為k,那么目標分數(shù)計算公式為:
舉例:課程“C++程序設計”對指標點1-2、2-3、3-4、4-1進行支撐,其課程成績由課時作業(yè)、綜合項目、期末測試三個考核部分組成。這三部分在課程中的分值分別為課時作業(yè)占30分,綜合項目占40分,期末測試占30分,總分為100分。
本課程授課教師設定四個指標點在每個考核部分里的權重如表1所示。
表1 指標點權重
結合目標分數(shù)計算公式,可以得到具體目標分數(shù)如表2所示。
表2 目標分數(shù)
指標點的目標分數(shù)將用于與學生的實際得分進行計算,得到指標點評價值。
學生在課程中的指標點實際得分計算方法為:令學生第個考核實際得分為P,那么學生在第個指標點的實際得分為:
假設某學生在課程“C++程序設計”中,三個考核實際得分分別為課時作業(yè)得28分,綜合項目得39分,期末考試得18分。那么該學生的指標點實際得分如表3所示。
表3 實際得分
指標點評定的一個重要參考為指標點評價值。指標點評價值通過指標點下的課程成績計算得到。
舉例:軟件工程專業(yè)的畢業(yè)要求1中有一個指標點1-2,支撐該指標點的課程有“C++程序設計”“數(shù)據(jù)結構與算法”“編譯原理”“計算機組成原理”,共四門課程。這四門課程對指標點的影響權重分別為0.2、0.2、0.3、0.3。根據(jù)學生指標點評價值計算公式,可以得到學生A在四門課程中指標點1-2評價值。計算公式為:
指標點考核評價值=實際得分/目標分數(shù)
指標點1-2評價值如表4所示。
表4 學生A的指標點1-2評價值
?
在得到學生A的指標點1-2下的四門課程的評價值后,將每門課程的評價值乘于對應的權重并求和,可以計算出指標點1-2的指標點達成度。指標點達成度計算公式為:
指標點達成度=∑課程評價值×權重
指標點1-2的指標點達成度如表5所示。
表5 指標點1-2的指標點達成度
按照公式對指標點1-2的指標點達成度進行計算,可以得0.85×0.2+0.75×0.2+0.82×0.3+0.88×0.3=0.83
對于畢業(yè)要求的達成情況評定,計算方式是取畢業(yè)要求下所有指標點的指標點達成度的最小值,與達成標準度進行比較,大于等于達成度標準,則評定為達成畢業(yè)要求。舉例:軟件工程專業(yè)中畢業(yè)目標有一個畢業(yè)要求1,有四個指標點,分別為1-1、1-2、1-3、1-4。1-1的指標點達成度為0.93,1-2的指標點達成度為0.83,1-3的指標點達成度為0.88,1-4的指標點達成度為0.83。畢業(yè)要求1的達成情況評定如表6所示。
表6 畢業(yè)要求1的達成情況評定
只有當學生所有畢業(yè)要求的評定情況都達到標準時,那么可以判定學生完成了畢業(yè)目標。
系統(tǒng)分為前端、后端,以及數(shù)據(jù)庫三部分。前端指瀏覽器頁面,利用瀏覽器上較好的JavaScript生態(tài),將數(shù)據(jù)展示以及一些業(yè)務操作放在瀏覽器上。后端指運行在服務器上的應用程序,負責處理前端發(fā)起的請求。將前端需要的數(shù)據(jù)返回給前端。數(shù)據(jù)庫指存放數(shù)據(jù)的數(shù)據(jù)庫。
基于這種前后端分離的結構,前端只負責數(shù)據(jù)展示以及可視化的業(yè)務操作,后端負責處理實際的業(yè)務邏輯。后端會根據(jù)前端發(fā)起的請求,從數(shù)據(jù)庫中獲取相關數(shù)據(jù),通過邏輯處理以后,以特定形式返回給前端。同時也可以將前端發(fā)來的數(shù)據(jù)進行處理后存放在數(shù)據(jù)庫中。
在這種結構下,頁面的渲染操作在客戶的瀏覽器上進行,數(shù)據(jù)的邏輯處理在服務器上進行。前端和后端之間只存在數(shù)據(jù)上的交互,大大減少了服務器的工作量,增加了前端頁面顯示速度以及后端邏輯處理速度。
通過走訪多位老師,進行反復交流和研究,確定了系統(tǒng)整體功能需求。畢業(yè)達成評定系統(tǒng)需要有以下四個基本功能,一是支持通過Excel表格或手動輸入兩種方式導入課程方案;二是具有查詢功能,教師可以查詢單門課程的達成情況,也可以查詢單個學生或整個班級的課程達成情況;三是支持手動輸入或使用Excel表格導入學生成績;四是管理員可以在后臺對整個系統(tǒng)進行管理,比如修改已導入的課程方案或學生成績。
參照交流結果,可以將系統(tǒng)對數(shù)據(jù)的操作劃分為導入、導出、查詢、修改。需要進行導入操作的數(shù)據(jù)有學生成績、課程方案。課程方案中包含指標點。需要進行導出操作的數(shù)據(jù)有學生畢業(yè)達成情況、單門課程達成情況。需要進行查詢操作的數(shù)據(jù)有學生畢業(yè)達成情況、學生單門課程目標達成情況。需要進行修改操作的數(shù)據(jù)有學生成績、課程方案,以及課程目標達成評定標準。
系統(tǒng)功能結構如圖4所示。
圖4 系統(tǒng)功能結構
除了角色對數(shù)據(jù)的操作,系統(tǒng)還有一個登錄功能,可以通過教職工號進行登錄,并識別其角色與權限。當使用者使用教職工號登錄系統(tǒng)時,系統(tǒng)會從數(shù)據(jù)庫中獲取響應的教職工信息,并根據(jù)預先設計的角色,給予使用者對應的角色標志,在得到對應身份標志后,前端發(fā)起的數(shù)據(jù)請求都將帶上標志,后端會通過標志判定數(shù)據(jù)請求是否合法。
經(jīng)過功能設計后,可以確定三個重要的數(shù)據(jù)庫,分別是課程方案表、課程表以及教師身份表。下文將通過表7、表8介紹課程方案表、課程表的設計。
表7 課程方案表
表8 課程表
在課程方案表中的Data字段,其數(shù)據(jù)類型為JSON,其含義為課程方案數(shù)據(jù)。使用JSON格式來存放數(shù)據(jù)的一個主要原因是,課程方案與學院相關,甚至在同一學院里,不同專業(yè)的課程方案也不大相同。因此出現(xiàn)了一個問題,那就是對于不同的課程方案,在為其設計數(shù)據(jù)庫表時,表的字段數(shù)可能不相同。為了避免這一個問題,我們采用JSON數(shù)據(jù)來存放實際的課程方案,因此在設計數(shù)據(jù)庫表時就無須考慮不同課程方案所需字段數(shù)的差異。
在課程表中,字段GradeComposition是指課程成績組成方式,因為每門課程的成績組成方式并不相同,所以采用JSON格式來存儲數(shù)據(jù)。字段IndicatorPoint存放指標點相關的數(shù)據(jù),對于一門課程,其關聯(lián)的指標點可能有多個,并且不同課程的指標點數(shù)量不一定相同。因此也采用JSON格式來存儲數(shù)據(jù)。字段StuGrade是指學生成績,不同課程中的學生數(shù)量不同,單獨設計表格存放成績不方便,因此與上面兩個字段一樣,采用JSON格式來存放學生的成績。此外,考慮到在課程中學生的實際成績由多個指標點評價值組成,因此使用JSON格式來存儲成績更為合理,可以免去一些設計上的彎路。
系統(tǒng)采用Vue+SpringBoot框架進行開發(fā),前端采用Vue框架實現(xiàn)。Vue框架是一款基于JavaScript的優(yōu)秀前端框架,特點是模塊化、有活躍的中文社區(qū)、資料豐富、易上手。利用Vue編寫前端,可以為用戶提供良好的交互體驗。
后端采用SpringBoot框架開發(fā),SpringBoot可以提供高效的RESTful api服務,使得后端應用程序的開發(fā)變得簡潔高效。
用戶使用Vue開發(fā)的前端頁面與后端應用程序進行交互。在頁面上,用戶可以執(zhí)行各種交互操作,由Vue框架的Ajax程序向后端應用程序發(fā)起請求,獲取交互操作所需的數(shù)據(jù)。后端應用在接收前端發(fā)起的數(shù)據(jù)請求后,會根據(jù)API進行對應的邏輯處理,從數(shù)據(jù)庫獲取數(shù)據(jù)進行處理,然后以JSON格式將數(shù)據(jù)返回給前端。
2.5.1 后端應用API測試
篇幅有限,這里只對后端應用API中的/api/GetStudnetStatus和/api/GetPointStatus進行測試。
在瀏覽器中訪問/api/GetStudnetStatus?stu No=2018001001,即可查詢學號為2018001001的學生的整體畢業(yè)達成情況。如圖5所示。
圖5 學生畢業(yè)達成情況
在瀏覽器中訪問/api/GetPointStatus?courseNo=123123&point=1,即可查詢課程號為123123的課程中指標點1的平均達成度如圖6所示。
圖6 課程號為123123的課程中指標點1的平均達成度
2.5.2 前端Web頁面交互測試
在前端Web頁面中,測試了學生畢業(yè)達成度評定情況的顯示功能,如圖7所示。
圖7 學生畢業(yè)達成度評定情況
畢業(yè)達成度評定系統(tǒng)采用前后端分離的理念進行設計與編程,這是目前主流的技術理念。在本系統(tǒng)中,前端采用優(yōu)秀的JS框架Vue進行編碼,利用Vue優(yōu)秀的組件設計出易用,美觀的前端UI界面,后端采用Spring Boot框架實現(xiàn)前端的業(yè)務邏輯。基于這兩種優(yōu)秀的框架,畢業(yè)達成度評定系統(tǒng)可以為教師提供合理的數(shù)據(jù),用于對學生的學習情況進行追蹤了解,并結合實際情況對授課方式進行合理科學地調(diào)整。