吳 云,郭健輝,王安平
(東北電力大學,吉林 吉林 132012)
隨著現代信息技術的快速崛起,信息量呈現爆炸式增長,知識更新的速度越來越快,社會也對研究生的綜合素質提出了更高的要求。研究生在學習方面的特點是不拘泥于課堂上的知識,有更多獨立的科研項目,經常要查找與研究方向相關的專業知識,注重知識的時效性。另外,研究生作為推動我國成為創新型國家的主力軍,需要具備相關信息的檢索能力,及時地了解專業發展的前沿技術,通過不斷地實驗與分析,做出更多的創新型研究。研究生學習階段是學習道路上的黃金時期,對于個人的提升、社會的需求以及國家的發展都至關重要。
本文設計并研發出一種基于知識圖譜的知識管理平臺,對收集到的數據信息進行整合,實現論文管理、筆記資料管理、科技競賽管理、文件管理和可視化展示等功能,通過知識圖譜可視化就可以簡單直觀的展示知識的核心結構,讓知識成體系,幫助研究生快速地獲取相應的知識,提升學習效率。
本系統基于B/S架構模式進行開發,是一種基于瀏覽器載體的框架,主要包括瀏覽器、Web服務器和數據庫服務器3個部分[1]。其中,瀏覽器處理小部分的事務邏輯,通過網址就能輕松訪問,面向的是用戶群體,界面設計應清晰簡潔。Web服務器主要用于信息傳送。當用戶使用系統點擊相應的功能時,就會先向Web服務器發出請求,再將頁面的各種提示信息編譯成前端代碼傳回給用戶瀏覽器,實現人機交互。數據庫服務器通過相應的編程接口對數據庫進行具體的增刪改查操作[2]。本系統采用B/S架構的好處在于,便于編程人員進行開發設計,能面對廣大用戶實現信息傳播共享;數據信息都集中放在數據庫服務器中,保證數據的完整性;系統擴展性強,只需增加業務擴展的頁面即可,不需要編寫大量的代碼。
根據具體的需求分析并結合項目本身的特點,本系統在軟件架構方面采用Django框架[3],通過MVT的設計模式進行開發。M指的是模型層,主要負責業務對象與數據庫對象的業務操作。V指的是視圖層,負責基于用戶的請求從數據庫讀取數據、指定向用戶展示數據的方式(網頁或json數據)。另外,對于用戶提交的數據信息,可以選定渲染模板進行處理。T指的是模板層,主要用來呈現視圖層傳來的數據信息,同時也決定了用戶界面的美觀程度。另外,模板層中還含有表單,可以通過這種方式整理輸入的數據信息。此外,Django中的URL分發器會將很多個頁面請求發送給不同的視圖層進行處理,視圖層再調用模型層和模板層,各層次分工明確,相互配合,提高了系統的使用效率[4]。
系統的總體架構圖是從系統開發的角度出發,把系統按功能逐次分割成層次結構,也就是說將待開發的復雜軟件系統分解為多種小組件,及確定這些組件之間關系的設計[5]。本系統主要按照界面層、展示層、視圖層、應用層及數據層對軟件系統進行層次分割,讓編程人員的開發思路更加清晰,便于后期高效地進行系統開發。系統的總體架構如圖1所示。

圖1 系統總體架構
本知識管理平臺共設計了7個功能模塊,分別是登錄注冊模塊、知識圖譜管理模塊、論文管理模塊、筆記資料管理模塊、科技競賽管理模塊、文件管理模塊、可視化展示模塊。系統的總體功能設計如圖2所示。

圖2 研究生知識管理平臺總體功能
登錄注冊模塊用于進行用戶登錄和注冊,當未注冊的用戶登錄系統時會先進入用戶注冊界面,根據系統提示信息完成用戶注冊;當注冊信息填寫正確時,系統會進行用戶唯一性驗證,再輸入注冊過的用戶名和密碼成功登錄系統進行具體操作。
知識圖譜管理模塊用于完成知識圖譜基本信息的管理功能。用戶擁有多個知識圖譜,可以對這些知識圖譜進行添加、刪除、更新和檢索。
論文管理模塊用于管理研究生學習到的論文信息。當用戶進入該模塊時,會顯示一個下拉子菜單,包含論文分類、論文發表情況統計和論文檢索3個子功能。該模塊記錄論文的研究方向、級別、作者、發表時間、題目、關鍵詞以及來源等字段信息。論文分類功能主要是按照研究方向的不同對論文進行分類,選擇某個研究方向,會將該方向下的所有論文以知識圖譜的形式展現出來。論文發表情況統計功能是按照這些論文的發刊級別進行統計,以柱狀圖的形式呈現出來。論文的檢索功能可以對論文的各個信息字段進行模糊查詢,并以知識圖譜的形式展示。點擊圖譜中的某個結點會將該論文的概要信息以表格的形式呈現出來。
筆記資料管理模塊用于對研究生的個人學習筆記信息進行管理。當用戶進入該模塊后,可以進行筆記的添加。通過在系統上輸入標題、標簽和詳情信息完成筆記的錄入。系統內的所有筆記信息會以表格的形式分頁顯示出來,可以對表格里的筆記信息進行修改和刪除。另外,該模塊還可以對筆記進行檢索,選擇對應的標簽,輸入相應的標題[6],最后以知識圖譜的形式展示查詢到的筆記信息。
科技競賽管理模塊用于管理研究生科技競賽活動信息。當用戶進入該模塊后,會顯示一個下拉子菜單,包含科技競賽分類、科技競賽類型統計和科技競賽檢索3個子功能。該模塊記錄了科技競賽的名稱、類型、等級、涉及學科知識以及成果展示等字段信息。科技競賽分類功能主要是按競賽活動的內容進行分類,選擇某個競賽類型,會將該類型下的所有科技競賽活動以知識圖譜的形式展現出來。科技競賽類型統計主要是通過柱狀圖的形式呈現。科技競賽的檢索功能可以對競賽活動的各個信息字段進行模糊查詢,以知識圖譜的形式展示,點擊圖譜中的某個結點,會將該科技競賽活動的全部信息以表格的方式呈現出來。
文件管理模塊用于對研究生在讀期間涉及的重要文件的管理,主要包括學院的一些規章制度、各門課程的培養計劃及有關研究生畢業和學位要求的相關文件信息。當用戶進入該模塊后,有文件分類和文件檢索兩個子功能。該模塊記錄了文件的名稱、類型和內容等字段信息。文件分類功能主要是對文件的內容信息進行分類,選擇某個文件類型,會將該類型下的所有文件以知識圖譜的形式展現出來。文件的檢索功能可以對文件的各個信息字段進行模糊查詢,以知識圖譜的形式展示,點擊圖譜中的某個結點,會將該文件的全部內容以表格的方式呈現。另外,檢索出來的文件帶有文件地址,點擊后可以查看pdf形式的具體文件。
可視化展示模塊用于為用戶更直觀地展示知識圖譜的內在結構。知識圖譜技術是本系統的核心,當錄入的數據信息達到一定數量時,若不對知識圖譜的內在結構進行適當調整,會導致知識圖譜的結點過于密集,結構雜亂無章。通過本模塊實現知識圖譜比例調整、自動布局和結點移動等功能,使知識圖譜更加清晰明了。另外,本系統通過引用可視化分析工具BizCharts將數據與圖表相結合,利用圖表的展現方式清楚地看到數據的發展趨勢,極大地提升了用戶體驗。
E-R圖也稱為實體-聯系圖,提供了表示實體類型、屬性和聯系的方法。本系統共有5個實體,分別是:用戶信息實體、論文信息實體、筆記資料信息實體、科技競賽信息實體以及文件信息實體。如圖3所示為本系統的E-R圖。

圖3 系統E-R圖
為了實現各部分功能,系統利用Vue框架來實現,使用Python語言在PyCharm編譯器中編寫程序,基于Django框架為頁面提供數據支持,并通過Neo4j圖形數據庫進行數據存儲,最終完成基于知識圖譜的知識管理平臺的設計。
本系統以知識圖譜技術為核心,集用戶登錄注冊、知識圖譜管理、論文管理、筆記資料管理、科技競賽管理、文件管理以及可視化展示等功能為一體,設計并實現了基于B/S架構的研究生知識管理平臺。通過對知識進行信息化的統一處理,減輕了研究生在知識整理方面的負擔,明顯提高了研究生的學習效率,同時也便于研究生進行科學研究,形成更有價值的科研成果。