介紹
畢業(yè)設(shè)計(jì)是本科教育的最后一個(gè)環(huán)節(jié),整個(gè)過程包括課題擬定與審核、師生雙選、開題報(bào)告、文檔審核、中期檢查、畢業(yè)答辯等多個(gè)環(huán)節(jié),是一項(xiàng)系統(tǒng)而復(fù)雜的工作。開發(fā)一個(gè)適合本校的畢業(yè)設(shè)計(jì)管理系統(tǒng),不僅能夠極大地減少教務(wù)管理人員的工作量,還能較大地提高學(xué)生和教師的效率。
本系統(tǒng)采用B/S模式,用到的編程語言有Java、JavaScript和JSP,數(shù)據(jù)庫采用MySQL 5.7,服務(wù)器則用的Apache Tomcat 9.0。前端頁面的編寫基于bootstrap,整個(gè)項(xiàng)目基于SSM框架。
軟件架構(gòu)
系統(tǒng)的組織架構(gòu)如圖所示,三種用戶根據(jù)自己不同的權(quán)限對(duì)課題、文檔、成績(jī)、公告、任務(wù)五種數(shù)據(jù)信息進(jìn)行處理,不同用戶角色再根據(jù)這些數(shù)據(jù)信息進(jìn)行交互通過課題進(jìn)行交互,并且圍繞著文檔進(jìn)行數(shù)據(jù)的傳遞和處理等。
系統(tǒng)的功能模塊如圖所示,每個(gè)模塊各有幾個(gè)子功能模塊。
本系統(tǒng)包含三種用戶:學(xué)生、教師和管理員。通過本系統(tǒng),學(xué)生可以獲取指導(dǎo)教師和管理員發(fā)布的相關(guān)教學(xué)信息和教學(xué)資源;教師可以進(jìn)行畢設(shè)進(jìn)度的日常管理,發(fā)布任務(wù)、上傳資料、審核文檔等;管理員可以進(jìn)行系統(tǒng)的管理和維護(hù),并對(duì)教師、學(xué)生、課題和文檔進(jìn)行管理,確保系統(tǒng)的正常運(yùn)行。系統(tǒng)總共分為3個(gè)模塊:
1.學(xué)生模塊
學(xué)生登錄系統(tǒng)后進(jìn)入該模塊,在該模塊中,學(xué)生能夠修改個(gè)人資料和登錄密碼,選擇感興趣的課題及導(dǎo)師,下載導(dǎo)師上傳的相關(guān)參考資料,上傳自己已經(jīng)完成的文檔,查看發(fā)布的公告、任務(wù)和自己的階段成績(jī)等。
2.教師模塊
教師登錄系統(tǒng)后進(jìn)入該模塊,在該模塊中,教師能夠修改個(gè)人資料和登錄密碼,選擇學(xué)生,上傳擬好的課題題目給管理員審核,發(fā)布階段任務(wù),上傳相關(guān)資料給學(xué)生參考,下載學(xué)生上傳的階段文檔并審核和打分,查看公告及發(fā)布新公告等。
3.管理員模塊
管理員登錄系統(tǒng)后進(jìn)入該模塊,在該模塊中,管理員可以增刪查改導(dǎo)師和學(xué)生的信息,審核教師上傳的課題,發(fā)布公告,查看各種信息,查看各種數(shù)據(jù)分析的結(jié)果和圖表。
數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)分析:
本系統(tǒng)的主要數(shù)據(jù)表為存儲(chǔ)學(xué)生、教師、文檔、課題數(shù)據(jù)集的四個(gè)表。其余表大多作為外鍵關(guān)聯(lián)用于完善四張表的信息。
概念設(shè)計(jì):
數(shù)據(jù)庫主要圍繞學(xué)生、教師、 課題、文檔4個(gè)實(shí)體進(jìn)行數(shù)據(jù)處理。即系統(tǒng)只要處理好這4個(gè)實(shí)體的數(shù)據(jù),就可以完成系統(tǒng)的絕大部分功能并讓畢業(yè)設(shè)計(jì)管理的整個(gè)流程順利進(jìn)行下去。其余的數(shù)據(jù)表則是圍繞這4個(gè)實(shí)體相應(yīng)展開,進(jìn)行一些擴(kuò)展和補(bǔ)充,以完善整個(gè)數(shù)據(jù)庫的結(jié)構(gòu)并加快數(shù)據(jù)庫對(duì)請(qǐng)求的響應(yīng)速度。
重要E-R圖:
數(shù)據(jù)庫文檔處理的E-R如圖所示
數(shù)據(jù)庫文檔處理的E-R如圖所示。
表列表:
數(shù)據(jù)庫中一共設(shè)計(jì)了15張表,和學(xué)生相關(guān)的表有6張(包括學(xué)生信息、開題報(bào)告、文檔成績(jī)、畢設(shè)進(jìn)度、學(xué)生疑問等),和教師相關(guān)的表有4張(包括教師信息、任務(wù)書、階段任務(wù)、課題申報(bào)等),文檔有1張表,課題涉及2張表,還有2張表屬于公共信息表,用于進(jìn)行一些補(bǔ)充以完善數(shù)據(jù)庫。數(shù)據(jù)庫的表清單如下表。
序號(hào) | 物理表名 | 中文名稱 |
---|---|---|
1 | t_announcement | 公告表 |
2 | t_department | 學(xué)院表 |
3 | t_doubt | 疑問表 |
4 | t_major | 專業(yè)表 |
5 | t_student | 學(xué)生表 |
6 | t_student_opening_report_task_book | 學(xué)生開題報(bào)告表 |
7 | t_student_progress | 學(xué)生進(jìn)度通知填寫表 |
8 | t_student_score | 學(xué)生成績(jī)表 |
9 | t_teacher | 教師表 |
10 | t_teacher_opening_report_task_book | 教師開題報(bào)告表 |
11 | t_teacher_progress_notification | 教師階段任務(wù)表 |
12 | t_thesis_information | 文檔提交表 |
13 | t_thesis_title | 教師提交課題表 |
14 | t_topic | 選題信息表 |
15 | t_user | 用戶表 |
功能模塊的設(shè)計(jì)與實(shí)現(xiàn)
本系統(tǒng)依據(jù)學(xué)生、導(dǎo)師、管理員三種不同用戶角色的需求,分為了三個(gè)大的功能模塊,三種用戶角色在各自的模塊進(jìn)行操作,可以通過課題進(jìn)行與其他兩種用戶角色之間的交互,并且圍繞著文檔進(jìn)行各種數(shù)據(jù)(用戶信息、文檔信息、課題信息)的傳遞和處理等,這就形成了系統(tǒng)的體系結(jié)構(gòu),管理員發(fā)布課題給學(xué)生,學(xué)生選擇課題呈現(xiàn)給導(dǎo)師,導(dǎo)師自擬課題向管理員申報(bào),如圖所示。
同時(shí)三種用戶可對(duì)五種數(shù)據(jù)信息進(jìn)行不同的處理(增刪查改的權(quán)限不同),表現(xiàn)在系統(tǒng)上就是擁有不同的功能模塊,所以分為三個(gè)大的模塊,每個(gè)模塊有相應(yīng)的小的功能模塊,系統(tǒng)的功能結(jié)構(gòu)如圖。
項(xiàng)目截圖
學(xué)生模塊部分頁面
教師模塊部分頁面
管理員模塊部分頁面
源碼地址
https://gitee.com/javanoteany/BSManager.git
-
JAVA
+關(guān)注
關(guān)注
19文章
2966瀏覽量
104700 -
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3794瀏覽量
64359 -
ssm
+關(guān)注
關(guān)注
0文章
21瀏覽量
11380
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論