1 引言
1.1 目的
本系統設計報告是為了開發學生信息管理系統而編寫。通過本系統,管理老師可以錄入、修改、查找學生成績;學生可以根據姓名學號查詢學年各科成績。
1.2 背景:
項目名稱:學生成績管理信息系統
2 總體設計
2.1 系統權限分配
根據需求分析,本系統將面向三種用戶對象:系統管理員、各任課老師、在校學生。對於不同的用戶,系統將分配不同的用戶權限。
管理員擁有的權限如下:
-
對學生信息進行添加、刪除、修改、查詢
-
對教師信息進行添加、刪除、修改、查詢
-
對課程信息進行添加、刪除、修改、查詢
-
查看學生與老師信息並進行修改
-
查看學生選課信息、學生的各科成績
-
對學生的選課信息進行添加、刪除等操作
教師擁有的權限如下:
-
查看個人賬戶信息並修改登錄密碼
-
對學生成績添加、修改、查詢,查看學生個人信息與成績排名
學生擁有的權限如下:
-
修改個人登錄密碼
-
查看自己的課表
-
進行選課
-
查詢個人成績
2.2 子系統設計
本系統可以細分成學生信息管理、教師信息管理、管理員信息管理這三個子系統。
學生信息系統
-
查詢:
學生可以通過系統對課表和各科成績進行查詢
-
密碼管理:
學生通過密碼驗證后可以修改登錄密碼
-
選課:
學生可以通過系統進行選課並查詢選課信息
教師信息系統
-
基本信息查詢:
老師可以通過該系統進行教師基本信息的查詢
-
密碼管理:
通過密碼驗證后可以修改登錄密碼
-
學生信息查詢:
教師可以通過系統查詢學生個人信息和學生成績,並且可以通過系統按學生專業或課程進行排名查詢。
-
學生成績管理:
教師可以通過系統對學生的成績進行添加與更改
管理員信息系統
-
學生信息管理:
管理員可以通過系統查詢、添加、修改、刪除學生個人信息,查詢學生個人成績與選課情況
-
教師信息管理:
管理員可以通過系統查詢、添加、修改、刪除教師信息
-
課程管理:
管理員可以通過系統查詢、添加、修改、刪除課程信息,為學生進行選課
2.3 軟件結構
本系統是基於傳統MVC(Model View Controller 模型-視圖-控制器)結構設計創建的Web應用程序。具體使用JSP+JavaBean+Servlet結構具體編寫系統:其中JSP相當於視圖,用於實現建立動態網站所需要的功能,接受與響應客戶端;JavaBean相當於模型, 用於配合JSP和Servlet來完成用戶的請求;Servlet相當於控制器,通過JSP接受用戶請求,調用以及初始化JavaBean來完成程序的功能,再通過JSP把結果顯示在客戶端。
數據庫端
數據庫方面使用關系型數據庫MySQL來實現數據的存儲與管理。
服務器端
服務器使用Tomcat Web應用服務器,用於支持JSP頁面和Servlet的運行。
2.3.1 體系結構圖
2.3.2 系統結構圖:
2.4 外部接口
2.4.1 用戶接口
該系統通過Web瀏覽器與用戶接口,所有輸入輸出界面樣式均為Web頁面,通過文本框輸入,輸出形式一般為文本框或者通過表格形式顯示。
2.4.2 軟件接口
本系統同其他系統之間沒有特殊的公共接口、數據通信協議等。
3 模塊設計
3.1 學生信息系統設計
3.1.1 功能
完成學生查詢選課等各項功能。
3.1.2 性能
系統應能准確快速的根據提供學號查找相應的學生成績或學生的個人課表,在大量的數據訪問時也可以准確無誤的完成選課功能。
3.1.3 內部接口
- 課表與成績查詢
- 課表查詢
相關頁面Showstucou.jsp
輸入說明:
學號:由0至9的數字組成的11位字符串,前四位是入學時間,接下來的三位是專業代碼,后面三位是專業班級,最后兩位是個人學號。如:2013級編導系二班一號就是20132110201。
輸出說明:
系統通過學號進行選課查詢,在同頁面以表格形式顯示課程號、課程名、學分信息等。
與該模塊相關的數據庫表有:course, studentcourse, student
- 成績查詢
相關頁面Searchmyself.jsp, Searchoneself.jsp, Searchothers.jsp
輸入說明:
學號:由0至9的數字組成的11位字符串,前四位是入學時間,接下來的三位是專業代碼,后面三位是專業班級,最后兩位是個人學號。
輸出說明:
系統通過登錄信息或他人學號進行本人或他人成績查詢,在跳轉頁面以表格形式顯示課程號,課程名,平時成績,期末成績,成績,學分績點。
與該模塊相關的數據庫表有:course, studentcourse, score, rank
- 個人密碼管理
相關頁面updateSpassword.jsp
輸入說明:
原始密碼:輸入現用密碼,可以是大小寫字母、數字、符號。
新密碼:輸入想要使用的密碼,可以是大小寫字母、數字、符號。
確認密碼:再次輸入在新密碼中輸入的密碼,確保兩次密碼輸入一致。
與該模塊相關的數據庫表有:student
- 學生選課
相關頁面selectcourse.jsp
輸入說明:
在每個可選課程后有“選定”按鈕,單擊該按鈕便可選定該課程。
輸出說明:
系統在頁面上以表格形式輸出課程號,課程名,學分,課容量,選課按鈕。
與該模塊有關的數據庫表有:student, course, studentcourse
3.2 教師信息系統設計
3.2.1 功能
完成教師查看個人信息、學生信息,修改密碼等功能。
3.2.2 性能
系統應能准確快速的完成查詢功能,並提供對查詢結果更改的存儲。系統應提供數據的錄入功能,以便教師可以進行成績錄入。
3.2.3 內部接口
- 基本信息查詢
相關頁面showTinfo.jsp
本頁面無輸入內容。
輸出說明:
系統在頁面上以表格形式輸出教工號、教師名。
與該模塊有關的數據庫表有:teacher
- 個人密碼管理
相關頁面updateTpasswork
輸入說明:
原始密碼:輸入現用密碼,可以是大小寫字母、數字、符號。
新密碼:輸入想要使用的密碼,可以是大小寫字母、數字、符號。
確認密碼:再次輸入在新密碼中輸入的密碼,確保兩次密碼輸入一致。
與該模塊相關的數據庫表有:teacher
- 學生成績管理
相關頁面Searchonescore.jsp, updatescroe.jsp
輸入說明:
平時成績:輸入該學生平時的課業成績。
期末成績:輸入該學生的期末考試成績。
提交:提交表單,錄入成績至數據庫。
重置:清空已填表格。
輸出說明:
系統以表格形式顯示課程號,課程名,平時成績,期末成績,成績,學分績點。在最后以按鈕形式提供教師修改成績的跳轉頁面。
與該模塊相關的數據庫表有:student, course, score
- 學生信息查詢
相關頁面Showstuent.jsp, Rankcourse.jsp, Rankcourse2.jsp, Rankmajor.jsp, Rankmajor2.jsp
輸入說明:
課程號:輸入想查詢學生排名的課程的課程編號。
專業號:輸入想查詢學生排名的專業的專業編號。
輸出說明:
系統以表格形式輸出所有學生名單,包括學號,姓名,專業,班級。在最后以按鈕形式提供教師查詢成績的跳轉頁面。
系統以表格形式按提供的課程編號或專業編號輸出學生成績與相關排名。
與該模塊相關的數據庫表有:student,score
3.3 管理員信息系統
3.3.1 功能
完成管理員的相關功能
3.3.2 性能
系統應能准確快速的完成學生與教師信息的管理。能夠快速便捷的進行課程管理。
3.3.3 內部接口
- 教師信息管理
- 添加教師:
相關頁面addteacher.jsp
輸入內容:
教師工號:手動添加新教師的工號。
教師姓名:手動添加新教師的姓名。
教師密碼:為新教師手動添加登錄密碼。
本頁面無輸出內容
與該模塊相關的數據庫表有:teacher
- 顯示教師信息
相關頁面Showteacher.jsp
本頁面無輸入內容。
輸出內容:
系統在頁面上以表格形式輸出教工號、教師名,並提供更改與刪除按鈕對每個教師進行編輯。
與該模塊相關的數據庫有:teacher
- 修改教師信息
相關頁面Showteacher.jsp, Updateteacher.jsp
輸入內容:
工號:手動修改教師的工號。
姓名:手動修改教師的姓名。
初始密碼:為教師修改初始密碼。
本頁面無輸出內容。
與該模塊相關的數據庫有:teacher
- 學生信息管理
- 添加學生:
相關頁面addstudent.jsp
輸入內容:
學號:手動添加新學生的學號。
姓名:手動添加新學生的姓名。
密碼:為新學生手動添加登錄密碼。
班級:手動添加新學生所在班級。
專業:手動添加新學生所在專業。
本頁面無輸出內容
與該模塊相關的數據庫表有:student
- 顯示教師信息
相關頁面Showstudent.jsp
本頁面無輸入內容。
輸出內容:
系統在頁面上以表格形式輸出學生學號,姓名,班級,專業,並提供修改與刪除按鈕對每個學生進行編輯,同時提供課程與成績按鈕可以通過跳轉頁面手動為學生選課與錄入成績。
與該模塊相關的數據庫有:student, course, studentcourse, score
- 修改學生信息
相關頁面Showstudent.jsp, Updatestudent.jsp
輸入內容:
學號:手動修改學生的工號。
姓名:手動修改學生的姓名。
初始密碼:為學生修改初始密碼。
班級:手動修改新學生所在班級。
專業:手動修改新學生所在專業。
本頁面無輸出內容。
與該模塊相關的數據庫有:student
- 課程管理
- 添加課程:
相關頁面addcourse.jsp
輸入內容:
課程號:手動添加新課程的編號。
課程名:手動添加新課程的名字。
教學班號:為新課程手動添加上課教室。
學分:手動添加新課程所占學分。
課容量:手動添加新課程的學時。
本頁面無輸出內容
與該模塊相關的數據庫表有:course
- 顯示課程信息
相關頁面Showcourse.jsp
本頁面無輸入內容。
輸出內容:
系統在頁面上以表格形式輸出課程號、課程名,並提供更改與刪除按鈕對每個課程進行編輯。
與該模塊相關的數據庫有:course, studentcourse
- 修改教師信息
相關頁面Showcourse.jsp, Updatecourse.jsp
輸入內容:
課程號:手動修改課程的編號。
課程名:手動修改課程的名字。
教學班號:為課程手動修改上課教室。
學分:手動修改課程所占學分。
課容量:手動修改課程的學時。
本頁面無輸出內容。
與該模塊相關的數據庫有:course, studentcourse
4 數據庫構成
數據庫是由7張表組成,使用MySQL作為DBMS軟件,各表的結構如下:
●manager管理員信息表
● student教師信息表
●course課程信息表
●studentcourse學生選課信息表
●score學生成績表
●rank學生平均學分積點表