杜春濤 康守沖 白帆
關(guān)鍵詞:課程思政;建構(gòu)主義;SSM框架;資源管理平臺(tái);設(shè)計(jì)與實(shí)現(xiàn)
1引言
教育部關(guān)于印發(fā)《高等學(xué)校課程思政建設(shè)指導(dǎo)綱要》的通知指出:課程思政建設(shè)工作要圍繞全面提高人才培養(yǎng)能力這個(gè)核心點(diǎn),在全國所有高校、所有學(xué)科專業(yè)全面推進(jìn)。目前,全國各級(jí)各類高校都在積極開展課程思政教學(xué)工作,但由于專業(yè)課教師往往缺少思政背景,思政課教師又往往不理解專業(yè)知識(shí),因此找到與專業(yè)知識(shí)點(diǎn)比較融合的思政案例、素材等思政資源是目前思政教學(xué)面臨的瓶頸問題。由于缺少與知識(shí)點(diǎn)精準(zhǔn)匹配的思政資源,很多教師在教學(xué)過程中往往使用一些比較籠統(tǒng)和流行的思政素材,從而導(dǎo)致同一個(gè)班級(jí)多門課程教師講授同一思政資源情況,這不僅不利于思政教學(xué),而且還可能會(huì)對(duì)專業(yè)知識(shí)講授造成不良影響。
針對(duì)上述問題,基于構(gòu)建主義學(xué)習(xí)理論,文章開發(fā)了一個(gè)課程思政資源管理平臺(tái),利用該平臺(tái)可以實(shí)現(xiàn)思政案例、素材和話題的分類發(fā)布、查詢、瀏覽、點(diǎn)贊、評(píng)論、討論等功能,實(shí)現(xiàn)了對(duì)思政資源的平臺(tái)管理和共建共享,為課程思政教學(xué)提供了技術(shù)支持。
2平臺(tái)總體設(shè)計(jì)
2.1平臺(tái)功能設(shè)計(jì)
建構(gòu)主義學(xué)習(xí)理論強(qiáng)調(diào)發(fā)揮學(xué)習(xí)者在學(xué)習(xí)過程中的主觀能動(dòng)性[1],其主要教學(xué)設(shè)計(jì)原則包括以學(xué)習(xí)者為中心、鼓勵(lì)自主學(xué)習(xí)與協(xié)作學(xué)習(xí)等[2]?;诮?gòu)主義的知識(shí)觀、學(xué)習(xí)觀,平臺(tái)為用戶設(shè)計(jì)的主要功能如下。
(1)案例與素材瀏覽。建構(gòu)主義知識(shí)觀強(qiáng)調(diào)知識(shí)的動(dòng)態(tài)性,認(rèn)為學(xué)習(xí)者不應(yīng)照搬現(xiàn)有的知識(shí),而是需要根據(jù)實(shí)際情況進(jìn)行再創(chuàng)造。平臺(tái)為用戶提供了課程思政教學(xué)案例資源和素材資源,用戶可以通過課程思政教學(xué)案例學(xué)習(xí)課程思政教學(xué)設(shè)計(jì)的經(jīng)驗(yàn)、方法,通過思政相關(guān)素材資源豐富自己的知識(shí)儲(chǔ)備,從而設(shè)計(jì)出獨(dú)特、新穎的課程思政教學(xué)方案。
(2)話題討論。建構(gòu)主義學(xué)習(xí)觀強(qiáng)調(diào)學(xué)習(xí)的情境性,認(rèn)為知識(shí)不應(yīng)脫離現(xiàn)實(shí)而抽象存在,應(yīng)該與現(xiàn)實(shí)情境相結(jié)合。平臺(tái)為用戶提供了課程思政相關(guān)話題的討論與交流渠道,用戶可以發(fā)表自己的活題,也可以加入其他用戶的話題,分享自己的見解,學(xué)習(xí)他人的經(jīng)驗(yàn),共同學(xué)習(xí)、共同進(jìn)步。
(3)資源分享。建構(gòu)主義學(xué)習(xí)觀強(qiáng)調(diào)學(xué)習(xí)的主動(dòng)建構(gòu)性,認(rèn)為學(xué)習(xí)者不應(yīng)該被動(dòng)地吸收信息,而是要主動(dòng)地建構(gòu)信息。平臺(tái)為用戶提供了課程思政案例的分享渠道,用戶可以將自己的課程思政教學(xué)案例上傳到平臺(tái),以便其他用戶進(jìn)行瀏覽、學(xué)習(xí),同時(shí)為上傳者提供后臺(tái)統(tǒng)一管理功能,方便用戶對(duì)自己發(fā)布的案例進(jìn)行管理。
為了實(shí)現(xiàn)上述功能,平臺(tái)設(shè)計(jì)了三大模塊(如圖1所示),即用戶模塊、資源模塊和管理員模塊。用戶模塊提供教師用戶的注冊(cè)、登錄、登錄狀態(tài)保持、個(gè)人信息修改、個(gè)人資源管理等功能。資源模塊分為案例專區(qū)、素材專區(qū)、話題討論專區(qū)三個(gè)板塊,案例專區(qū)和素材專區(qū)根據(jù)一級(jí)學(xué)科分類,分別為教師提供思政教學(xué)案例和素材,話題討論專區(qū)則為教師提供課程思政教學(xué)話題的討論和交流渠道。管理員模塊為平臺(tái)管理者提供管理維護(hù)功能,如用戶管理、通知管理、案例管理、素材管理、話題管理等。
在未登錄的情況下,教師可以瀏覽案例專區(qū)、素材專區(qū)和話題討論內(nèi)容,但無法進(jìn)行發(fā)布、點(diǎn)贊、評(píng)論等操作。注冊(cè)登錄后,在個(gè)人資料未完善的情況下可以對(duì)案例/素材/話題進(jìn)行瀏覽、點(diǎn)贊和評(píng)論,但無法發(fā)布新的案例、素材和話題。只有當(dāng)教師登錄并完善了個(gè)人資料后,才擁有對(duì)平臺(tái)資源的完全訪問權(quán)限,包括瀏覽、點(diǎn)贊、評(píng)論和發(fā)布新的資源等。管理員由平臺(tái)管理者指定,負(fù)責(zé)審核平臺(tái)內(nèi)容、管理用戶通知,以及處理違規(guī)用戶等。
2.2平臺(tái)結(jié)構(gòu)設(shè)計(jì)
平臺(tái)采用基于瀏覽器/服務(wù)器的B/S架構(gòu),使用SSM框架進(jìn)行分層設(shè)計(jì)開發(fā)。SSM是一個(gè)典型的MVC框架[3],由Spring,SpringMVC和MyBatis共同組成,該框架為系統(tǒng)開發(fā)提供切面編程、解耦容器、中央調(diào)度、分層設(shè)計(jì)等多種支持。本平臺(tái)開發(fā)遵循SSM框架設(shè)計(jì)規(guī)范和MVC框架模式,主要包括四個(gè)層級(jí),即視圖層、調(diào)度層、服務(wù)層和數(shù)據(jù)訪問層,如圖2所示。
視圖層:負(fù)責(zé)將服務(wù)器返回的結(jié)果呈現(xiàn)給用戶,通過用戶交互向服務(wù)器發(fā)起業(yè)務(wù)請(qǐng)求。
調(diào)度層:負(fù)責(zé)審查視圖層發(fā)來的業(yè)務(wù)請(qǐng)求,根據(jù)實(shí)際情況將業(yè)務(wù)請(qǐng)求提交給服務(wù)層進(jìn)行處理,并向視圖層返回業(yè)務(wù)的處理結(jié)果。
服務(wù)層:負(fù)責(zé)處理調(diào)度層發(fā)來的業(yè)務(wù)請(qǐng)求,通過調(diào)用數(shù)據(jù)訪問層提供的接口功能對(duì)業(yè)務(wù)請(qǐng)求進(jìn)行處理,并將處理結(jié)果返回給調(diào)度層。
數(shù)據(jù)訪問層:負(fù)責(zé)數(shù)據(jù)庫的增刪改查操作。
視圖層實(shí)現(xiàn)了MVC的視圖功能,包括與用戶交互的頁面和組件。采用Lavui框架,基于JSP,iQuery技術(shù)進(jìn)行開發(fā),與調(diào)度層通過請(qǐng)求作用域和響應(yīng)體進(jìn)行數(shù)據(jù)交換。
調(diào)度層實(shí)現(xiàn)了MVC中的控制器功能,包括對(duì)視圖層請(qǐng)求進(jìn)行預(yù)處理的Interceptor類和處理視圖層請(qǐng)求的Controller類。采用SpringMVC框架進(jìn)行開發(fā),通過基于注解的依賴注入在SpringMVC容器中創(chuàng)建控制器對(duì)象和攔截器對(duì)象,攔截器會(huì)對(duì)視圖層的業(yè)務(wù)請(qǐng)求進(jìn)行預(yù)處理,檢查其有效性、合法性,之后通過SpringMVC的請(qǐng)求映射將視圖層的請(qǐng)求映射到不同控制器進(jìn)行業(yè)務(wù)處理,處理結(jié)果以ModelAndView格式通過響應(yīng)體返回給視圖層。
服務(wù)層和數(shù)據(jù)訪問層共同實(shí)現(xiàn)MVC中的業(yè)務(wù)模型功能,包含對(duì)調(diào)度層請(qǐng)求進(jìn)行業(yè)務(wù)處理的Service類、提供后端數(shù)據(jù)庫訪問功能的Dao接口和實(shí)現(xiàn)數(shù)據(jù)庫操作的Mapper文件。采用Spring,MyBatis框架進(jìn)行開發(fā),使用MyBatis的動(dòng)態(tài)代理創(chuàng)建Dao接口的實(shí)現(xiàn)類對(duì)象來執(zhí)行soL語句,通過基于注解的依賴注入在Spring容器中創(chuàng)建Service對(duì)象,在Service對(duì)象中調(diào)用Dao接口實(shí)現(xiàn)類對(duì)象對(duì)業(yè)務(wù)的處理,處理結(jié)果以函數(shù)返回值的形式返回給調(diào)度層的Controller。
2.3數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫的設(shè)計(jì)對(duì)平臺(tái)功能實(shí)現(xiàn)起著至關(guān)重要的作用,在綜合考慮性能、成本、開發(fā)難度之后,選用MySQL數(shù)據(jù)庫作為平臺(tái)后端數(shù)據(jù)庫。針對(duì)平臺(tái)功能,數(shù)據(jù)庫需要分別存儲(chǔ)用戶的登錄信息、用戶的個(gè)人資料、案例資源、素材資源、話題資源、點(diǎn)贊信息、評(píng)論信息、管理員信息、公告信息和用戶通知。
用戶注冊(cè)后,用戶信息將存人用戶登錄信息表中,此表僅存儲(chǔ)少量的用戶登錄信息。用戶完善個(gè)人信息后,用戶信息將存人用戶資料表中,作為登錄信息表的補(bǔ)充。案例資源、素材資源、話題資源分別存儲(chǔ)于案例表、素材表和話題表中,其中除了自動(dòng)生成的id外,還包括發(fā)布該資源的用戶名、資源標(biāo)題、內(nèi)容、創(chuàng)建時(shí)間、修改時(shí)間、訪問數(shù)、點(diǎn)贊數(shù)、評(píng)論數(shù)等。平臺(tái)的首頁、專區(qū)頁面、資源詳情頁面等都將從對(duì)應(yīng)的資源表中根據(jù)指定規(guī)則加載資源列表,并呈現(xiàn)給用戶。資源的點(diǎn)贊與評(píng)論信息分別存儲(chǔ)于單獨(dú)的表中,用戶的每次點(diǎn)贊、評(píng)論操作都會(huì)在表中生成一條記錄,該記錄包括用戶名、資源id、操作時(shí)間等信息,以便用戶在個(gè)人中心頁面管理個(gè)人的點(diǎn)贊和評(píng)論記錄。管理員表記錄了管理員的用戶信息,包含管理員id、用戶id、用戶名和權(quán)限等級(jí)。用戶登錄時(shí),后端服務(wù)器將根據(jù)用戶名、用戶id去管理員表中進(jìn)行查詢操作,判斷當(dāng)前用戶權(quán)限,從而做出不同響應(yīng)。公告信息表用于存儲(chǔ)由管理員發(fā)布的公告信息,公告在平臺(tái)的各個(gè)板塊均會(huì)展示。管理員可以從管理中心向用戶發(fā)送通知信息,通知信息由用戶通知表存儲(chǔ),其中包括通知標(biāo)題、通知內(nèi)容、管理員信息、用戶信息、發(fā)送時(shí)間、是否已讀等,用戶可以在個(gè)人中心頁面查看收到的通知。數(shù)據(jù)庫E-R圖如圖3所示。
3平臺(tái)功能實(shí)現(xiàn)
本平臺(tái)主要包含用戶模塊、資源模塊和管理員模塊,平臺(tái)首頁如圖4所示。
3.1用戶模塊功能實(shí)現(xiàn)
用戶模塊主要包括用戶注冊(cè)、登錄和個(gè)人中心三部分。當(dāng)用戶請(qǐng)求訪問個(gè)人中心時(shí),調(diào)度層的攔截器會(huì)首先查驗(yàn)用戶的登錄狀態(tài),若用戶未登錄,則將用戶導(dǎo)向登陸頁面。登錄頁中提供了注冊(cè)入口,用戶提供用戶名、郵箱和密碼即可完成注冊(cè),注冊(cè)后用戶既可以通過用戶名登錄,也可以通過郵箱登錄。用戶可以在個(gè)人中心修改個(gè)人資料、管理上傳的資源,以及查看收到的通知。
調(diào)度層的用戶控制器會(huì)處理用戶模塊相關(guān)業(yè)務(wù)請(qǐng)求,控制器內(nèi)部包含多個(gè)用戶控制器方法,每個(gè)控制器方法都對(duì)應(yīng)著具體的業(yè)務(wù)請(qǐng)求。根據(jù)用戶模塊實(shí)際業(yè)務(wù)請(qǐng)求,SpringMVC將從用戶控制器中動(dòng)態(tài)調(diào)用不同的控制器方法來實(shí)現(xiàn)用戶模塊功能。以用戶登錄功能為例,用戶在注冊(cè)成功后可以通過用戶登錄頁面進(jìn)行登錄,當(dāng)用戶發(fā)起登錄請(qǐng)求時(shí),后端調(diào)度層的用戶登錄控制器會(huì)接收到用戶登錄請(qǐng)求,并交給服務(wù)層的用戶業(yè)務(wù)對(duì)象執(zhí)行用戶登錄業(yè)務(wù)。用戶業(yè)務(wù)對(duì)象將通過數(shù)據(jù)訪問層的數(shù)據(jù)庫訪問對(duì)象檢索用戶表,核驗(yàn)用戶登錄信息是否正確。在用戶登錄業(yè)務(wù)成功執(zhí)行后,用戶登錄控制器會(huì)調(diào)用JWT工具類為當(dāng)前用戶生成一個(gè)Token,其中包含用戶的登錄信息、簽名算法以及服務(wù)器加密后的簽名信息,最后將Token封裝成Cookie通過響應(yīng)體返回給視圖層。之后,用戶的每次請(qǐng)求都將附帶這個(gè)Cookie,調(diào)度層攔截器會(huì)根據(jù)后端的密鑰對(duì)Cookie中的Token進(jìn)行校驗(yàn),實(shí)現(xiàn)登錄狀態(tài)保持。
3.2資源模塊功能實(shí)現(xiàn)
資源模塊包括案例資源、素材資源和話題資源,用戶可以對(duì)這些資源進(jìn)行發(fā)布、瀏覽、查看、點(diǎn)贊、評(píng)論等操作。用戶登錄后可以對(duì)喜歡的資源進(jìn)行點(diǎn)贊和評(píng)論,在完善個(gè)人資料后,還可以在個(gè)人中心的資源發(fā)布頁面發(fā)布新的案例、素材、話題資源,發(fā)布后的資源會(huì)存儲(chǔ)到服務(wù)器的數(shù)據(jù)庫中,并在資源類型對(duì)應(yīng)的專區(qū)首頁展示。
調(diào)度層的多個(gè)資源控制器會(huì)分別處理對(duì)應(yīng)資源的相關(guān)業(yè)務(wù)請(qǐng)求,以資源發(fā)布為例,資源發(fā)布頁面為用戶提供了多個(gè)可以編輯的內(nèi)容,分別是標(biāo)題、內(nèi)容、學(xué)科分類,以及案例資源獨(dú)有的評(píng)論區(qū)開關(guān)。其中,內(nèi)容組件為富文本編輯器,除了基本的加粗、斜體、下劃線、對(duì)齊格式外,還提供了插入鏈接、添加表情、插入圖片的功能。當(dāng)用戶發(fā)起資源發(fā)布請(qǐng)求時(shí),請(qǐng)求將攜帶用戶輸入的資源信息發(fā)送到調(diào)度層,調(diào)度層攔截器在驗(yàn)證用戶登錄狀態(tài)無誤后,請(qǐng)求將到達(dá)調(diào)度層對(duì)應(yīng)的資源控制器,控制器從請(qǐng)求作用域中獲取用戶輸入的資源信息,將其封裝成資源對(duì)象后調(diào)用業(yè)務(wù)層的資源上傳業(yè)務(wù)對(duì)象進(jìn)行上傳,從而實(shí)現(xiàn)案例發(fā)布功能。
3.3管理員模塊實(shí)現(xiàn)
管理員模塊包括管理員登錄、權(quán)限驗(yàn)證、通知管理、內(nèi)容管理。管理員由平臺(tái)實(shí)際管理者指定,擁有對(duì)平臺(tái)資源、平臺(tái)公告、平臺(tái)通知的管理權(quán)限。管理員可以使用管理員賬號(hào)通過登錄頁面登錄到后臺(tái)管理中心。
調(diào)度層的管理員控制器會(huì)處理管理員相關(guān)的業(yè)務(wù)請(qǐng)求,以發(fā)送平臺(tái)通知為例,管理員可以從管理中心的通知管理頁面給用戶發(fā)送通知或警告消息。當(dāng)管理員發(fā)起通知請(qǐng)求時(shí),后端調(diào)度層的管理員控制器將從請(qǐng)求作用域中獲取當(dāng)前要發(fā)送通知的標(biāo)題、內(nèi)容和要通知的用戶等信息,隨后控制器將通知封裝成對(duì)象交給業(yè)務(wù)層的通知業(yè)務(wù)對(duì)象進(jìn)行處理。業(yè)務(wù)對(duì)象在收到通知對(duì)象后會(huì)對(duì)通知對(duì)象的屬性值進(jìn)行解析,并通過數(shù)據(jù)訪問層的數(shù)據(jù)訪問對(duì)象將當(dāng)前通知以一條記錄的形式存人數(shù)據(jù)庫的通知表中。通知對(duì)象包含了通知標(biāo)題、內(nèi)容、時(shí)間、是否已讀、發(fā)送者和接收者。若該記錄插入成功,則表示用戶通知業(yè)務(wù)執(zhí)行成功。同時(shí),管理員執(zhí)行的所有管理請(qǐng)求都將先通過調(diào)度層的管理攔截器進(jìn)行審核,攔截器會(huì)從請(qǐng)求作用域中找到key值為“token”的Cookie,通過調(diào)用編寫的JWT靜態(tài)工具類從token中解析用戶名,隨后根據(jù)用戶名去數(shù)據(jù)庫中檢索記錄,從而確認(rèn)用戶的管理員身份。
4平臺(tái)功能測(cè)試
軟件測(cè)試是軟件開發(fā)中不可或缺的部分,也是軟件工程方法中的重要環(huán)節(jié)。通過為各個(gè)模塊的業(yè)務(wù)功能編寫詳細(xì)的測(cè)試用例來驗(yàn)證平臺(tái)的功能是否與預(yù)期的功能性需求一致。平臺(tái)功能測(cè)試分別從用戶模塊、資源模塊、管理員模塊三個(gè)方面進(jìn)行。
(1)用戶模塊包括用戶注冊(cè)、用戶登錄、登錄保持、退出登錄、修改個(gè)人資料等功能,其功能測(cè)試用例如表1所列。
(2)資源模塊由于案例資源、素材資源、話題資源具有高度相似性,這里僅以案例資源作為資源模塊的展示,包括案例瀏覽、案例查看、案例發(fā)布、案例點(diǎn)贊、案例評(píng)論、案例管理等功能,其功能測(cè)試用例如表2所列。
(3)管理員模塊包括管理員登錄、通知管理和資源管理,資源管理可以對(duì)案例資源、素材資源、話題和回答資源進(jìn)行刪除操作,這里以案例資源為例進(jìn)行測(cè)試,其功能測(cè)試用例如表3所列。
5結(jié)束語
平臺(tái)實(shí)現(xiàn)了課程思政資源的分類、管理、共建和共享,為豐富課程思政資源和實(shí)現(xiàn)精準(zhǔn)思政教學(xué)奠定了堅(jiān)實(shí)基礎(chǔ)。未來該平臺(tái)將繼續(xù)優(yōu)化,如通過整合分布式數(shù)據(jù)庫加強(qiáng)平臺(tái)的并發(fā)處理能力,通過整合權(quán)限管理框架完善平臺(tái)的管理機(jī)制,通過部署推薦算法為不同的用戶推薦其更感興趣的資源等。隨著平臺(tái)功能的改良,用戶數(shù)量的增長將會(huì)使思政資源越來越豐富,從而為其他教師進(jìn)行思政教學(xué)提供有力保障和支持。