前言:想要寫出一篇引人入勝的文章?我們特意為您整理了職校畢業論文在線編輯與管理系統范文,希望能給你帶來靈感和參考,敬請閱讀。
引言
近些年來,國家對于高等職業教育的重視程度越來越高,特別是以“職教20條”,職業教育法重新修訂等事件為代表,表明了國家大力發展高等職業教育的決心與信心。而職業院校本身也在不斷探索的過程中,努力提升自身的教學能力水平。教學過程信息化則是職業院校人才培養能力提升的一個重要抓手。目前職業院校的信息化建設,主要集中在教學管理與信息化課堂建設上,為此學校投入了大量的人力、物力與資金,并取得了很好的成效。伴隨著信息化建設的不斷深入推進,就要求信息化建設要從宏觀的教學管理層面向微觀的教學實施層面滲透。而畢業論文作為檢驗學生學習成果和職業院校人才培養效果的終末環節,事項繁多,持續時間較長。具體而言,典型畢業論文流程可以分為:論文選題、論文開題、任務書下達、中期檢查、論文撰寫、論文修改、論文評閱、論文查重、論文答辯等環節。整個畢業論文環節跨越兩個學期,涉及的教學與教務管理人員眾多,但到目前為止,其信息化程度較低。這就導致了學生在完成畢業論文時,往往花費了過多的時間與精力在不必要的流程處理當中。為了改善學生與教師在畢業論文環節所遇到的困難,同時也為了使教學信息化建設進一步的深入推進,本文設計了職業院校畢業論文在線編輯與管理系統。通過該系統,可以將畢業論文所有流程的推進及管控遷移到線上進行,而不需要學生與指導教師花費過多的時間與精力來跟蹤,管控論文流程的進度,從而可以使學生和教師將更多的精力放在畢業論文的設計與撰寫上,使得畢業論文的質量得到大的提升。
一、功能需求分析
在畢業論文階段,會涉及到學生、指導教師和教務管理部門三方的聯動。學生作為畢業論文的直接執行人,將會在此階段內頻繁接收到各種類型的通知,例如論文啟動、題目選定、指導教師選擇、撰寫開題報告、提交中期論文檢查、提交論文初稿、多輪次論文修訂、提交終稿、校內審查、校外查重、提交終稿、論文答辯等。上述教學通知不僅事務繁雜,而且信息量較大,在沒有信息化系統輔助的情況下,很容易發生流程上的錯誤,從而影響畢業論文的正常進度。而教務管理部門,作為教學情況的直接管理者,每年都需要向眾多的畢業年級學生發布各種教務通知,而此時又恰好是畢業年級學生進行校外實習的階段,很多學生并未在校,這就導致教務管理部門往往對教務通知的送達情況難以有一個較為準確的掌握。而指導教師作為畢業論文的指導者,在完成本職教科研任務的同時,還需要對其所指導的學生進行論文設計、撰寫等方面的交流。而每名學生由于自身時間安排的不同,無法集中時間與教師進行面對面的交流。這就導致指導教師無法充分的與學生進行深入的溝通,這就使得畢業論文的技術深度與廣度無法得到很好的保障。基于上述情況,本文所提在線系統將著重解決畢業論文環節中的信息流通難、消息反饋慢、交流時間嚴重碎片化的問題。首先,為了解決信息流通難的問題,文中系統內置了信息工作流引擎(workflowengine)。將所有教務通知都定義為了信息節點(informationnode),并以可配置的方式進行信息傳遞流程設置。每個信息節點均可以維持自身狀態,并定時向上下游節點發送消息。系統會在信息節點狀態發生變化時進行數據讀取操作,并向所有注冊該工作流的用戶發送消息,從而保證所有注冊該工作流的用戶都可以接收事件消息。其次,本文系統內構建了用戶業務監聽引擎(processingengine),對在線狀態下的用戶進行業務監聽,當用戶完成了某項工作后,會觸發系統的業務監聽引擎,并向所有注冊監聽該動作的用戶發送事件廣播(broadcast),進而保證所有監聽用戶能夠及時收到反饋信息。最后,為了解決交流時間碎片化的問題,文中系統遵循了“移動優先”的策略,整個系統均以RESTFull的形式向外提供業務服務,從而與前端系統徹底解耦,極大的增強了系統的靈活性與可擴展性。同時,本文所提系統為終端用戶還提供了小程序應用,所有業務流程均可通過移動設備進行操作。這樣就保證了終端用戶可以通過移動設備,利用碎片化時間來查看信息或進行相關流程的操作。同時,可以利用系統所提供的小程序,使學生與指導教師通過線上聊天室,在線音視頻通訊等方式進行實時的線上溝通與指導,這樣就極大提高了師生間的溝通效率,進而間接提高了畢業論文的撰寫質量。
二、功能模塊設計與實現
通過對業務需求的梳理與分析,將本文所提系統劃分為了以下幾個模塊:1.工作流引擎模塊;2.業務監聽引擎模塊;3.格式化文檔生成引擎模塊;4.用戶管理模塊;5.小程序GUI接口模塊。現就上述功能模塊分別進行介紹。
2.1工作流引擎模塊
為了使用該系統的學生、指導教師和教務管理人員可以流暢、精準的接收和發送各類消息,本文系統設計并實現了一個基于FastAPI框架的快速工作流引擎。該工作流引擎首先會將系統中設置好的工作節點抽象為具有統一結構的信息節點(InformationNode),該節點具有如下屬性:1.信息流上下文(InformationFlowContext),該屬性的作用是保存信息節點的運行時環境,在該運行時環境中包含了對該信息節點狀態的監聽器對象,當信息節點的狀態發生變化時,會激活該監聽器對象,并通過該對象向外發送廣播消息(Broadcasting)。2.節點ID,該屬性的作用是為每一個信息節點對象賦予一個唯一的編號,從而可以使系統能夠在信息節點樹中快速找到該節點。3.消息發送回調函數(Message_Sent_Handler),該屬性中保存了一個回調函數,當信息節點向外發送信息后,工作流引擎實例便會調用該函數執行相對應的操作。默認情況下會自動執行日志記錄操作。4.消息接收回調函數(Message_Received_Handler),該屬性中保存了一個回調函數,當信息節點接收到上下游節點發送來的消息時,工作流引擎實例便會調用該函數執行相應的操作。默認情況下會自動執行日志記錄操作。5前序節點指針(Pre_Node),該屬性中保存了當前節點的前序節點。6.后接節點指針(After_Node),該屬性中保存了當前節點的后接節點。在完成了所有節點的實例化操作后,本文系統將依據用戶提供的配置文件(config.yml)來初始化工作流實例,在該工作流實例中,所有信息節點將會按照配置文件依次添加到工作流中,同時該工作流實例將會維持信息節點間的前后連接順序,以及信息節點之間的消息流轉。當所有用戶配置文件所對應的工作流實例完成初始化后,將會被注冊到工作流引擎中,工作流引擎會在整個系統運行過程中定時掃描已注冊的實例,當實例完成所有信息節點的消息流轉后,引擎將會發送任務完成廣播,通知監聽該工作流的用戶來進行進一步的處理。流程示意圖如圖1所示:
2.2業務監聽引擎模塊
本文系統中的業務監聽引擎,主要作用是對用戶進行動作監聽,當用戶完成了一步操作后,會觸發監聽引擎實例,該實例會向所有注冊監聽該動作的工作流實例發送事件廣播(broadcast),進而保證所有被注冊到工作流實例中的用戶能夠及時收到信息,并做出反饋。監聽引擎對象包含以下屬性:1.工作流對象池(Work_Flows_Pool),該屬性用來保存所有處于激活狀態的工作流對象,監聽引擎會對上述工作流狀態進行掃描,當工作流狀態處于結束狀態時,引擎將該工作流移出對象池。2.注冊用戶對象池(Users_Pool),該屬性用來保存所有活躍用戶,當用戶產生操作完成廣播事件后,監聽引擎將會通知響應的工作流來更新信息節點的狀態,同時更新消息的流轉狀態。3.關系映射表(User_Flow_Mapping),該屬性用來保存用戶與工作流實例之間的映射關系,當監聽引擎偵測到用戶廣播后,將會按照該映射表中所存儲的關聯關系,向相關的工作流發送狀態更新通知。具體示意圖,如圖2所示:
2.3格式化文檔生成引擎模塊
該模塊的作用是將學生用戶所撰寫的論文按照標準論文模版的格式,生成符合學術規范的畢業論文。為了實現上述功能,本系統基于latex引擎內核,開發了快速學術文檔生成引擎(FADFS,FastAcademicDocFormatSystem)。該引擎在latex引擎內核的基礎上,按照“約定優于配置”(conventionoverconfiguration)的規則,按照普遍的學術規范,定義了大量約定規則,并在引擎中實現了上述約定規則的默認實現,使得用戶只需要關注論文內容的撰寫,而不需要維護文檔格式的正確,從而大幅簡化了論文的撰寫難度。格式化文檔生成引擎,具體可以分為以下幾個組成部分:1.引擎內核層。該引擎內核使用了XeTex,該內核作為一種標準的,支持Unicode編碼規則的排版引擎,可以幫助用戶利用其所提供的宏命令來快速生成具有特定格式的文檔內容。2.格式轉化中間層。由于單純的XeTex文檔引擎只提供了基本的排版宏命令,這就導致用戶需要自行定義文檔的整體排版格式,且只能通過編寫程序的方式來進行,這就為用戶的使用增加了極大的難度,不僅文檔排版所消耗時間變長,而且由于用戶并非專業領域人員,并不完全熟悉XeTex宏命令的使用方法,從而導致運行時錯誤增多。為此,本文系統在內核基礎上添加了數據中間層,該層的作用是接收用戶文檔數據,按照約定規則,將文檔數據按照不同的文檔內容類型,調用不同的XeTex宏命令來分別進行編譯,并最終將所有編譯好的文檔塊按順序整合成完整文檔。3.應用程序編程接口層。該層的主要作用是將格式轉化層中的程序,按照封裝簡化的原則,抽象定義出一系列的應用程序接口來對外發布,供外部系統使用。在該層中,屏蔽了所有的技術實現細節,只保留了程序功能入口點函數。這樣就進一步降低了用戶的使用難度。
2.4用戶管理模塊
由于學生在進行畢業作品設計與畢業論文撰寫的過程中,需要涉及到多個校內教學與行政部門,而且每個部門的工作任務與系統操作權限都不盡相同,因此需要在系統中設計一個統一的功能模塊來對不同的用戶及角色進行管理。在該系統中,所有用戶均可以依據自身情況被設置為具有一定角色的模型實體。同時不同角色的實體,可以分配不同的系統操作權限。本系統中默認內置了以下幾種角色模型:1.學生。該角色將作為論文設計與撰寫的主體,默認具有文檔編寫、修改、刪除、上傳、查重等權限。2.指導教師。該角色作為學生的指導者,默認具有文檔修改、批注、退回、查重、中期檢查、定稿等權限。教務管理員。該角色作為教務管理者,默認具有導入學生、導入教師、導入畢設題目、任務下達、開題報告管理、中期檢查報告管理、終稿管理、存檔備份、打印等權限。3.系統管理員。該角色作為整個系統的維護人員,默認具有導入教務人員、導入學校編碼、編輯教務人員、編輯學校編碼、打印系統日志等權限。4.超級管理員。該角色作為整個系統的最高權限維護人員,默認具有導入教務人員、導入學校編碼、編輯教務人員、編輯學校編碼、刪除教務人員、刪除學校代碼、打印系統日志等權限。同時,在使用超級管理員時,系統要求使用加密狗硬件進行硬加密操作。
2.5小程序GUI接口模塊
為了解決交流時間碎片化的問題,文中系統遵循了“移動優先”的策略,整個系統均以RESTFull的形式向外提供業務服務,從而與前端系統徹底解耦,為了使用戶能夠方便的使用該系統,系統內置了小程序GUI接口,用戶可以通過該小程序快速的登錄本系統進行操作。如果用戶為在校學生或指導教師,且已經被教務管理員導入進系統,則可以直接通過學號或工號進行登錄,如果未被導入系統,則在使用該小程序前,需要先進行用戶注冊,待管理員審核后方可使用。如果用戶為教務管理員,則需要通知系統管理員進行后臺導入操作。
三、實踐與總結
本系統為了快速部署與便于擴容的目的,使用Docker容器作為整個系統的部署與運行環境。借助于Docker容器的快速部署與擴容特性,使得該系統具有較好的快速部署與擴容能力。本系統作為職業院校教學信息化建設深入課堂教學層面的一次探索,目前已被某職業院校二級分院所采用,并上線試運行。在運行過程中,文中系統很好的解決了該學院所面臨的教學痛點問題:1.解決了學生因漏接教務通知而導致論文進程受阻的問題;2.學生無需關注畢業論文格式的修改,大大加快了畢業論文定稿的速度;3.教務管理做到了一事一反饋,能夠明確知曉各個學生目前畢業論文的進展情況,便于精確管理;4.指導教師可以利用碎片時間和學生進行溝通與指導,極大節省了時間成本,同時也使學生畢業論文的技術深度與廣度得到了進一步的提升。但通過一段時間的運行后,本文系統也暴露出一些問題與不足,主要表現在:1.系統界面的交互邏輯有待優化,在某些流程中存在著操作步驟較多,交互邏輯不清晰等問題。2.本文系統在進行動態擴容的過程中,會出現5~10分鐘的服務停止現象,在此時間段內,用戶無法進行正常的業務操作,降低了用戶體驗度。3.系統在用戶操作的峰值時間段內,服務器承載壓力較大,導致服務器的平均響應時間延長。針對上述情況,本文所提系統將在后期更新過程中逐一進行解決。雖然該系統目前還存在著一定的問題,但是總體效果達到了設計要求,是一次對教學信息化建設的有益探索。隨著職業院校信息化建設的不斷推進,各院校的教學水平與能力都將會得到較大的提升。但是需要注意的是,在教學信息化建設過程當中,需要注意平衡教學過程中所涉及的多方角色之間的關注程度,只有將教學過程視為一個整體,均衡發展,平穩推進,才能借由信息化建設來提升學校整體水平。
作者:彭淑燕 劉思聰 單位:江蘇經貿職業技術學院 智能工程技術學院