張政 唐杰 袁鍵 任勝兵
摘? 要: 本科畢業(yè)設(shè)計(jì)是本科生人才培養(yǎng)的關(guān)鍵階段,由于管理工作的繁瑣復(fù)雜,目前仍缺乏有效的監(jiān)督管理。本文采用輕量級(jí)Flask Web應(yīng)用開(kāi)發(fā)框架,提出了基于MVT架構(gòu)的設(shè)計(jì)方案。系統(tǒng)采用flask-security進(jìn)行權(quán)限控制,提高系統(tǒng)的安全性。論文詳細(xì)闡述了畢業(yè)設(shè)計(jì)流程中信息錄入、選題管理、任務(wù)書(shū)管理、日志管理、任務(wù)管理、文件管理、成績(jī)分析和賬號(hào)管理等八大功能模塊的設(shè)計(jì)與實(shí)現(xiàn)關(guān)鍵技術(shù)和理念需求。系統(tǒng)測(cè)試與應(yīng)用表明,本科畢業(yè)設(shè)計(jì)協(xié)同監(jiān)管系統(tǒng)能夠明顯提高畢業(yè)設(shè)計(jì)的管理效率,有利于提高人才培養(yǎng)質(zhì)量。系統(tǒng)實(shí)現(xiàn)了在線管理畢業(yè)設(shè)計(jì)整個(gè)流程,避免工作重復(fù),明顯簡(jiǎn)化管理和提高效率,同時(shí)在后期也可以對(duì)學(xué)生數(shù)據(jù)進(jìn)行分析自動(dòng)形成評(píng)價(jià)報(bào)告供指導(dǎo)老師參考。
關(guān)鍵詞: 畢業(yè)設(shè)計(jì);在線管理;協(xié)同監(jiān)管;分析評(píng)價(jià)
中圖分類號(hào): TP315? ? 文獻(xiàn)標(biāo)識(shí)碼: A? ? DOI:10.3969/j.issn.1003-6970.2020.10.014
本文著錄格式:張政,唐杰,袁鍵,等. 本科畢業(yè)設(shè)計(jì)協(xié)同監(jiān)管系統(tǒng)研究與開(kāi)發(fā)[J]. 軟件,2020,41(10):5558+69
【Abstract】: Undergraduate graduation design is the key stage of undergraduate talent training. Due to the complexity of management, there is still a lack of effective supervision and management. In this paper, a lightweight Flask Web application development framework is adopted to propose a design scheme based on MVT architecture. The system adopts flask-security for permission control to improve the security of the system. This paper describes in detail the design and realization of eight functional modules in the process of graduation design, such as information input, topic management, task book management, log management, task management, document management, performance analysis and account management. The system test and application show that the collaborative supervision system can significantly improve the management efficiency of graduation design and the quality of talent cultivation. The system realizes the whole process of the online management of graduation project, avoids the repetition of work, significantly simplifies the management and improves the efficiency. At the same time, it can also analyze the student data and automatically form the evaluation report for the reference of the instructor.
【Key words】: Graduation project; On-line management; Synergy regulation; Analysis evaluation
0? 引言
本科畢業(yè)設(shè)計(jì)是本科生人才培養(yǎng)的關(guān)鍵階段。本科生畢業(yè)設(shè)計(jì)旨在培養(yǎng)學(xué)生綜合應(yīng)用所學(xué)知識(shí)解決實(shí)際工程問(wèn)題,培養(yǎng)正確的系統(tǒng)設(shè)計(jì)思想,進(jìn)一步提升學(xué)生調(diào)查研究、查閱文獻(xiàn)和使用技術(shù)等各方面能力[1]。它不僅是對(duì)大學(xué)四年的專業(yè)知識(shí)的全面考核,也是一次對(duì)本科生實(shí)踐能力、創(chuàng)新能力和綜合素質(zhì)的訓(xùn)練。但是現(xiàn)有的畢業(yè)設(shè)計(jì)管理還存在一些弊端,導(dǎo)致許多學(xué)生最終完成的畢業(yè)設(shè)計(jì)論文存在質(zhì)量欠缺等一些問(wèn)題[2-5]。近年來(lái),教育部也在努力深化本科教育教學(xué)改革,提出要嚴(yán)把本科生畢業(yè)出口關(guān),本科生畢業(yè)設(shè)計(jì)也正是其中關(guān)鍵階段。提高本科畢業(yè)設(shè)計(jì)的質(zhì)量、完善本科畢業(yè)設(shè)計(jì)過(guò)程的問(wèn)題迫在眉睫。
1? 畢業(yè)設(shè)計(jì)監(jiān)管問(wèn)題分析
1.1? 研究現(xiàn)狀
通過(guò)對(duì)最新的國(guó)內(nèi)和國(guó)外研究文獻(xiàn)進(jìn)行調(diào)研發(fā)現(xiàn),國(guó)內(nèi)的許多高校依舊沿用傳統(tǒng)的方法來(lái)進(jìn)行畢業(yè)設(shè)計(jì)管理,大多數(shù)的學(xué)校教務(wù)系統(tǒng)也缺乏一個(gè)完整的畢業(yè)設(shè)計(jì)監(jiān)督系統(tǒng),仍然采用人工的線下管理模式,不僅效率低、缺乏有效的監(jiān)督,還加深了導(dǎo)師的負(fù)擔(dān)。而在國(guó)外,由于大學(xué)管理制度的不同,例如在美國(guó),由于平時(shí)對(duì)論文訓(xùn)練的比較多,平時(shí)監(jiān)管就比較嚴(yán)格,在畢業(yè)的時(shí)候,大多數(shù)大學(xué)反而不需要提交畢業(yè)設(shè)計(jì)論文。在另一些國(guó)家,例如日本,則需要花一年的時(shí)間完成畢業(yè)設(shè)計(jì)論文,在論文實(shí)施期間,會(huì)安排小答辯并且還會(huì)有平時(shí)的研討會(huì)考核。雖然國(guó)外的大學(xué)畢業(yè)設(shè)計(jì)實(shí)施方針不同,但其實(shí)都反映了一個(gè)重要的問(wèn)題,那就是本科畢業(yè)設(shè)計(jì)過(guò)程需要實(shí)現(xiàn)過(guò)程監(jiān)督。只有平時(shí)的實(shí)施過(guò)程質(zhì)量提高了,最終學(xué)生提交的論文質(zhì)量更有效得到提高。這也正是我們畢業(yè)設(shè)計(jì)協(xié)同監(jiān)管系統(tǒng)的核心主旨,通過(guò)設(shè)計(jì)和實(shí)現(xiàn)對(duì)學(xué)生的畢設(shè)過(guò)程協(xié)同監(jiān)督,提高學(xué)生畢業(yè)設(shè)計(jì)的質(zhì)量[6]。
1.2? 當(dāng)前畢業(yè)設(shè)計(jì)過(guò)程中待解決的問(wèn)題
學(xué)生的畢業(yè)設(shè)計(jì)實(shí)施階段缺乏有效的監(jiān)督,許多學(xué)生往往到了實(shí)施后期才匆匆忙忙開(kāi)始畢業(yè)設(shè)計(jì)的真正實(shí)施,亦或是在實(shí)習(xí)或考研復(fù)習(xí),未將心思放在畢業(yè)設(shè)計(jì)上面,最后導(dǎo)致畢業(yè)設(shè)計(jì)質(zhì)量低下,更有甚者還未完成[7]。在調(diào)查和分析的過(guò)程中,許多學(xué)生認(rèn)為有必要設(shè)置關(guān)于論文(設(shè)計(jì))進(jìn)度的調(diào)查。畢業(yè)設(shè)計(jì)實(shí)施過(guò)程文件紛多繁雜,師生之間的文件交流往往存在諸多的問(wèn)題,也沒(méi)有對(duì)文件進(jìn)行統(tǒng)一的管理。在文件歸檔階段,需要提交的文件很多,提交信息也比較繁雜,這個(gè)時(shí)候,也急需一個(gè)統(tǒng)一分文件提交和管理平臺(tái)。學(xué)生和指導(dǎo)教師之間缺乏溝通,許多學(xué)生到畢業(yè)設(shè)計(jì)實(shí)施完成后期也沒(méi)與指導(dǎo)教師進(jìn)行平時(shí)工作的溝通,造成了指導(dǎo)老師無(wú)法了解學(xué)生進(jìn)度、學(xué)生不找指導(dǎo)老師問(wèn)畢業(yè)設(shè)計(jì)過(guò)程中遇到問(wèn)題[8-9]。在畢業(yè)設(shè)計(jì)完成后,老師無(wú)法對(duì)學(xué)生的畢業(yè)設(shè)計(jì)情況進(jìn)行直觀有效的評(píng)估,在最后的階段,往往只能通過(guò)印象,來(lái)對(duì)學(xué)生的表現(xiàn)進(jìn)行評(píng)分,缺乏有力的評(píng)估材料。整個(gè)畢設(shè)流程信息龐雜,缺乏一個(gè)平臺(tái)對(duì)整個(gè)流程的信息、文件進(jìn)行統(tǒng)一直觀的管理。
2? 基于MVT的畢業(yè)設(shè)計(jì)協(xié)同監(jiān)管架構(gòu)設(shè)計(jì)
2.1? 系統(tǒng)功能
系統(tǒng)功能方面主要包含八大模塊,分別是錄入人員、選題管理、畢業(yè)設(shè)計(jì)任務(wù)書(shū)管理、日志管理、任務(wù)管理、文件管理、成績(jī)分析和賬號(hào)管理,其系統(tǒng)用例圖見(jiàn)圖1。
基于上述背景和現(xiàn)狀,本系統(tǒng)為本科生畢業(yè)設(shè)計(jì)協(xié)同監(jiān)管與評(píng)價(jià)系統(tǒng)(以下簡(jiǎn)稱本系統(tǒng))。本系統(tǒng)有以下幾個(gè)重要特點(diǎn)。
2.2? 系統(tǒng)特色
(1)統(tǒng)一的畢業(yè)設(shè)計(jì)信息管理平臺(tái)
本系統(tǒng)可以實(shí)現(xiàn)從選題到畢業(yè)設(shè)計(jì)結(jié)束的所有過(guò)程管理[10-11],默認(rèn)設(shè)置選題管理、畢業(yè)設(shè)計(jì)任務(wù)書(shū)管理、日志管理、文件管理。文件管理可以對(duì)學(xué)生和指導(dǎo)老師在畢業(yè)設(shè)計(jì)過(guò)程中所有的文件進(jìn)行保存和管理。對(duì)于未設(shè)定的功能,設(shè)置了的任務(wù)機(jī)制,指導(dǎo)老師可以隨時(shí)給學(xué)生發(fā)布任務(wù)[12],學(xué)生通過(guò)任務(wù)提交教師所需的文件,從而規(guī)范了學(xué)生上傳文件的入口,并且通過(guò)任務(wù)機(jī)制,也便于教師下載、對(duì)不符合要求的文件進(jìn)行打回重做、評(píng)閱等。并且實(shí)現(xiàn)了統(tǒng)一的文件管理系統(tǒng),教師可以去文件管理統(tǒng)一下載、查找學(xué)生文件、自己上傳的文件、并且增刪自己的文件和對(duì)文件權(quán)限進(jìn)行管理。
(2)利用日志管理對(duì)學(xué)生行為進(jìn)行監(jiān)督管理
本系統(tǒng)中設(shè)計(jì)了日志管理功能,從而實(shí)現(xiàn)對(duì)學(xué)生的過(guò)程監(jiān)督。從指導(dǎo)老師下發(fā)畢業(yè)設(shè)計(jì)任務(wù)書(shū)開(kāi)始,學(xué)生需每日填寫(xiě)日志,日志內(nèi)容主要為今日完成的工作、遇到的問(wèn)題和接下來(lái)的安排。這樣不僅能讓指導(dǎo)老師了解學(xué)生每日的完成情況,同時(shí)也可間接地督促學(xué)生完成每日的工作。在完成日志的同時(shí),日志系統(tǒng)還為教師提供了回復(fù)的功能,教師可以根據(jù)學(xué)生的完成情況進(jìn)行督促、在完成畢設(shè)過(guò)程中遇到的問(wèn)題提出自己的意見(jiàn),從而達(dá)到加強(qiáng)師生交流的效果。并且,日志也作為指導(dǎo)教師評(píng)估學(xué)生畢設(shè)完成的一大數(shù)據(jù)來(lái)源,指導(dǎo)教師通過(guò)對(duì)批閱的每篇日志進(jìn)行評(píng)分,最終成績(jī)?cè)u(píng)估進(jìn)行匯總,從而來(lái)對(duì)學(xué)生整個(gè)畢設(shè)流程進(jìn)行評(píng)判。
(3)設(shè)計(jì)學(xué)生自選題和指導(dǎo)老師批閱
在畢業(yè)設(shè)計(jì)選題階段,指導(dǎo)老師可以發(fā)布選題,學(xué)生可以進(jìn)行選題,每題僅限個(gè)人選擇。倘若沒(méi)有學(xué)生合適的題目,學(xué)生可以發(fā)布自選題,之后指導(dǎo)老師進(jìn)行查看批閱[3]。如果通過(guò)則可以選擇,未通過(guò)可以參考指導(dǎo)老師的批閱意見(jiàn)重新發(fā)布自選題。對(duì)于未通過(guò)的選題,教師可以給出不通過(guò)的理由與自己的意見(jiàn),用以幫助學(xué)生進(jìn)行更好的選題,這樣就實(shí)現(xiàn)了選題的多元化和自主化。
(4)畢業(yè)設(shè)計(jì)的任務(wù)書(shū)由師生共同完成
在選題階段結(jié)束后,學(xué)生可以根據(jù)自身的能力、時(shí)間等各種情況制定自定義的畢業(yè)設(shè)計(jì)任務(wù)書(shū),之后上傳給指導(dǎo)老師。指導(dǎo)老師接下來(lái)就可以參考學(xué)生的自規(guī)劃再結(jié)合自己對(duì)學(xué)生的能力等各方面情況確定最終的畢業(yè)設(shè)計(jì)任務(wù)書(shū),達(dá)到人盡其才的目標(biāo)。這樣既能使得畢業(yè)設(shè)計(jì)任務(wù)書(shū)在學(xué)生能力范圍之內(nèi),又能充分展示指導(dǎo)老師對(duì)學(xué)生的能力評(píng)估,最終達(dá)到學(xué)生在畢業(yè)設(shè)計(jì)中充分體現(xiàn)個(gè)人能力和綜合素質(zhì)的目標(biāo)。
(5)基于大數(shù)據(jù)的自動(dòng)化成績(jī)分析
本系統(tǒng)將根據(jù)學(xué)生在畢業(yè)設(shè)計(jì)開(kāi)始到結(jié)束期間所有的日志、指導(dǎo)老師對(duì)日志的滿意度評(píng)價(jià)、學(xué)生任務(wù)完成的情況和指導(dǎo)老師對(duì)學(xué)生任務(wù)完成情況的評(píng)價(jià)等各類數(shù)據(jù)自動(dòng)生成學(xué)生最終的評(píng)價(jià)分析圖表、評(píng)分和數(shù)據(jù)信息,這些信息可以充分展示學(xué)生在畢業(yè)設(shè)計(jì)階段的表現(xiàn),作為指導(dǎo)老師評(píng)價(jià)學(xué)生的參考。詳細(xì)頁(yè)面信息見(jiàn)圖2。
3? 系統(tǒng)功能模塊設(shè)計(jì)與實(shí)現(xiàn)
3.1? 系統(tǒng)技術(shù)實(shí)現(xiàn)
本系統(tǒng)利用Python語(yǔ)言技術(shù)進(jìn)行開(kāi)發(fā),采用B/S設(shè)計(jì)模式[11],以及輕量級(jí)易擴(kuò)展的Flask框架,其中Flask的結(jié)構(gòu)圖見(jiàn)圖3。既能實(shí)現(xiàn)快速開(kāi)發(fā),也方便以后對(duì)系統(tǒng)的擴(kuò)展。不同的用戶角色采用flask-security進(jìn)行權(quán)限控制,使用藍(lán)圖進(jìn)行項(xiàng)目結(jié)構(gòu)的劃分,根據(jù)用戶劃分設(shè)置不同的blue進(jìn)行函數(shù)調(diào)用。數(shù)據(jù)庫(kù)設(shè)計(jì)采用ORM技術(shù)的flask-sqlalchemy插件進(jìn)行處理。對(duì)于不同的業(yè)務(wù)邏輯編寫(xiě)不同的函數(shù)及頁(yè)面進(jìn)行處理。用戶在調(diào)用對(duì)應(yīng)的頁(yè)面展示時(shí)會(huì)先經(jīng)過(guò)jinja2渲染,然后調(diào)用對(duì)應(yīng)的blue中的函數(shù)處理后再顯示給用戶。通過(guò)ORM進(jìn)行數(shù)據(jù)操作,從而方便并確保了數(shù)據(jù)的一致性和完整性。
本系統(tǒng)采用了面向流程的設(shè)計(jì)思想、MVT設(shè)計(jì)模塊,從邏輯上將系統(tǒng)分為模型、視圖和模板三層,使得系統(tǒng)易擴(kuò)展、易維護(hù)[13]。其中模型層使用與Flask適配良好的SqlAlchemy數(shù)據(jù)庫(kù)工具,主要是負(fù)責(zé)與數(shù)據(jù)庫(kù)的相關(guān)交互;視圖層是用python語(yǔ)言以及Flask框架實(shí)現(xiàn)服務(wù)器端業(yè)務(wù)邏輯,進(jìn)行數(shù)據(jù)處理;模板層則是將處理結(jié)果和頁(yè)面內(nèi)容展示給用戶,使用了HTML、CSS、JavaScript、JQuery、BootStrap框架技術(shù)以及jinja2模板引擎,同時(shí)利用Ajax異常技術(shù)提高了頁(yè)面響應(yīng)速度。