计算机学院学生信息管理系统概述.docx
《计算机学院学生信息管理系统概述.docx》由会员分享,可在线阅读,更多相关《计算机学院学生信息管理系统概述.docx(33页珍藏版)》请在冰豆网上搜索。
![计算机学院学生信息管理系统概述.docx](https://file1.bdocx.com/fileroot1/2023-2/1/5017e659-753f-4764-b46f-f0b4ee87277a/5017e659-753f-4764-b46f-f0b4ee87277a1.gif)
计算机学院学生信息管理系统概述
计算机学院学生信息管理系统
总
体
设
计
组长:
xx
组员:
xxx
时间:
2015年12月12日
1、架构设计和目标约束
学生信息管理系统是学生信息管理的必不可少的部分,本学生信息管理系统是基于B/S架构的设计的。
约束包括技术上的约束和运行环境上的约束。
1.1运行和开发环境
表1-1运行项目和开发环境
序号
项目
详细信息
1
后台软件环境
MicrosoftVisualStudio2008(vs2008)
2
编写语言
C#语言
3
前台软件环境
WindowsXP、Windows7 、Windows10
4
数据库
MicrosoftSQL Server 2008
2、设计思想
本系统采用采用三层架构的模式来设计,三层架构自下而上分别指的是业务表示层 UI) 、逻辑层(DDL)、数据访问层(DAL)。
表示层主要是由窗体和用户控件组成,该层是直接面向用户的, 要求设计美观大方、界面方便使用。
表示层中的业务逻辑都存储在业务逻辑层中,当用户操作界面发生请求时, 由表示层调用业务逻辑层中相应的方法来具体实现。
业务逻辑层是程序的核心部分,它主要是由各种函数构成,它们集中在该层有利于模块化管理和程序复用,且能够使程序结构清晰、提高可读性。
数据访问层负责接收来自业务层的数据调用请求,该层包含数据库访问链接字符串,负责访问数据库调用存储过程, 并将数据操作结果返回给业务逻辑层。
本系统采用ASP.NET来设计。
2.1本系统采用的三层架构模式
如图2-1所示
三层架构模式图2-1
2.2各层功能表
如图表2-2所示表2-2
名称
功能描述
表示层
主要是由窗体和用户控件组成,该层是直接面向用户的, 要求设计美观大方、界面方便使用。
表示层中的业务逻辑都存储在业务逻辑层中,当用户操作界面发生请求时, 由表示层调用业务逻辑层中相应的方法来具体实现。
逻辑层
业务逻辑层是程序的核心部分,它主要是由各种函数构成,它们集中在该层有利于模块化管理和程序复用,且能够使程序结构清晰、提高可读性。
数据访问层
负责接收来自业务层的数据调用请求,该层包含数据库访问链接字符串,负责访问数据库调用存储过程, 并将数据操作结果返回给业务逻辑层。
3、系统总体设计
系统提供了两种权限:
教师和系统管理员统一使用最高权限,享有系统提供的所有功能,如用户的添加、用户信息的修改、用户密码的修改,课程管理、成绩管理和班级管理等;学生享有权限包括个人信息的查询、选课、密码修改、个人成绩查询等。
管理员在登录后主界面显示学生信息模块,旁边导航栏中可以显示管理员可以使用的功能。
其中包括几个模块:
学生管理、班级管理、教师管理、课程管理、学生选课管理和成绩管理等。
学生在登录后,界面显示学生的基本信息。
旁边显示包括个人信息、成绩查询、课程查询、选课浏览和密码修改等。
3.1系统架构体系如表3-1和3-2所示
表3-1
表3-2
3.2系统设计:
根据计算机学院的现状和需求分析中的要求,我们小组在在本软件设计中,我们采用自顶向下的设计方法,从每个模块着手,分析系统的总体功能目标。
1、宿舍模块:
在计算机学院的宿舍管理中,管理员和宿舍管理员都有多计算机学院学生进行宿舍住宿安排的权利,因为计算机学院的每个年级的学生住宿都相对集中,很好管理,在管理时我们要根据实际情况。
在需求分析中,计算机学院宿舍管理模块的数据流图如图所示,从图中可以看出,数据沿着四条输入通路进入系统,沿着两条通路离开,没有明显的事务中心,因此可以认为这个信息流具有变换流的总特征。
根据前面需求分析中的数据流图,我们将确定流的边界图如图3-3所示:
具有边界的数据流图3-3
第一级分解:
根据上述变换流的情况,宿舍管理模块是在顶层宿舍管理的协调下进行分解。
其中分为输入控制,变换控制和输出控制,由此可以从上图分解得到如下图的结构。
每个控制模块的名字代表了它的控制功能。
宿舍管理系统的第一级分解3-4
第二级分解:
第二级分解中,在输入模块中,宿舍管理员或者系统管理员对宿舍中所住学生进行管理
进出该模块的信息:
未精化的输入结构3-5未精化的变换结构3-6
未精化的输出结构3-7
根据以上为未精化的结构,由于我们以上第一级分解已经分解的足够好,所有无需再进一步的加工,可以得修改够的软件结构如下图所示:
图3-8
2、课程/选课管理模块:
根据计算机学院的实际情况,课程管理模块按年级分类和专业分类,每个年级有都有相应的专业,每个专业有不同的课程,管理员根据年度,对每个专业进行课程的分配,不同的专业有有自己本专业的核心课程,也有部分课程与其他专业相同。
管理员具有对课程的添加、删除、修改的权限,课程分为基础课、专业课、选修课3中类型。
课程管理模块制约选课管理模块,管理员在课程管理模块中,添加课程信息后,学生才能进行选课。
分配课程主要是制定该课程的任课教师和授课班级(基础课才需要指定班级)。
1)实行课时分配。
对每一门课程进行课时分配,做到学习合理化,包括教师,课程名称,班级,年度信息。
2)添加新课。
管理员要根据实际需要,添加新的适应时代的课程其中添加的信息包括:
课程号,课程名,课时,学分,课程类型,专业年级以及课程简介等信息,在添加课程的时候,允许将信息重置,较少操作量。
3)可以显示授课信息,便于学生和教师的查看。
4)对现有的课程进行修改,修改内容有:
课程名,教师,班级,年度等信息。
5)可以对现有的但是不适应于现代社会的课程进行删除。
6)查看各门课程的教师任课表以及可教师的任课表。
在需求分析中,计算机学院课程管理\选课模块的数据流图如图所示,从图中可以看出,数据沿着四条输入通路进入系统,沿着两条通路离开,没有明显的事务中心,因此可以认为这个信息流具有变换流的总特征。
根据前面需求分析中的数据流图,我们将确定流的边界图如图所示:
图3-9
第一级分解:
根据上述变换流的情况,计算机学院课程管理\选课模块是在顶层宿舍管理的协调下进行分解。
其中分为输入控制,变换控制和输出控制,由此可以从上图分解得到如下图的结构。
每个控制模块的名字代表了它的控制功能。
图3-10
第二级分解:
第二级分解根据变换流的方法,从变换中心的边界开始映射,处理每一个模块,如图表示计算机学院课程管理\选课模块的二级分解过程:
未精化的输入结构3-11未精化的输出结构3-12
未精化的变换结构3-13
经过以上二级分解,将分解的合并为如下图所示:
图3-14
3、成绩管理模块:
管理员:
可以录入和统计学生成绩,学生可以查询所学课程的名称、学分、成绩。
当成绩不及格时,将无法获得本课程学分。
管理员录入成绩的基本录入信息:
学号、课程、年度、成绩等基本信息。
管理员在统计课程信息时要有一下几点:
统计范围(系别、院系、班级)未将来系统扩充做准备,具体范围,课号,具体内容(平均分、最高分、总人数、优秀人数:
上85分为优秀、不及格人数:
少于60分为不及格),年度等。
管理员查询成绩方面有几种查询方式:
按课程号】课程名、班级号,教师编号、学生学号查询成绩,也还有按年度模糊总体查询
学生:
学生进入成绩查询页面,输入查询年度和课程名,进行查询,结果显示在下面,显示信息有单科成绩,并且还有本学期必修课的总学分和本学期选修课的总学分这两项。
在需求分析中,计算机学院成绩模块的数据流图如图所示,从图中可以看出,数据沿着四条输入通路进入系统,沿着两条通路离开,没有明显的事务中心,因此可以认为这个信息流具有变换流的总特征。
根据前面需求分析中的数据流图,我们将确定流的边界图如图所示:
图3-15
第一级分解:
根据上述变换流的情况,计算机学院成绩模块是在顶层宿舍管理的协调下进行分解。
其中分为输入控制,变换控制和输出控制,由此可以从上图分解得到如下图的结构。
每个控制模块的名字代表了它的控制功能。
图3-16
第二级分解:
第二级分解根据变换流的方法,从变换中心的边界开始映射,处理每一个模块,如图表示计算机学院成绩模块的二级分解过程:
未精化的输入结构3-17未精化的变换结构3-18
未精化的输出结构3-19
从上图分解的结果来看,还可以做以下修改。
模块“成绩数据变换”中教师修改和修改可以合并为“成绩修改”
“数据存储”可以和“成绩存储”合并为“成绩存储”
经过以上述修改,将分解的合并为如下图所示:
图3-20
4、个人信息模块:
学生信息管理:
1)输入学生的学号或者姓名,点击查询按钮,直接查询要查询学生的基本信息。
2)选择要添加或者修改信息的学生,多学生信息进行修改更新
3)可以添加学生,并在添加学生是对学生的信息进行初步添加
4)在显示学生信息时,一键显示所有信息
教师信息管理:
1)输入教师的教师号或者姓名,点击查询按钮,直接查询要查询教师的基本信息。
2)选择要添加或者修改信息的教师,对教师信息进行修改更新
3)可以添加教师,并在添加教师时对教师的信息进行初步添加
4)在显示教师信息时,一键显示所有信息
5)管理员可以更改教师的个人密码
管理员:
管理员的ID号、管理员姓名、有最高权限,在整个系统中,都可以操作。
宿舍管理员:
宿舍管理员的ID号,姓名,管理权限为宿舍管理,包括宿舍学生的住宿,宿舍学生的考勤,寝室清洁等。
辅导员:
管理学生的生活,奖助等基本信息。
在需求分析中,计算机学院个人信息据流图如图所示,从图中可以看出,数据沿着四条输入通路进入系统,沿着两条通路离开,没有明显的事务中心,因此可以认为这个信息流具有变换流的总特征。
根据前面需求分析中的数据流图,我们将确定流的边界图如图所示:
图3-21
第一级分解:
根据上述变换流的情况,计算机学院个人信息模块是在顶层宿舍管理的协调下进行分解。
其中分为输入控制,变换控制和输出控制,由此可以从上图分解得到如下图的结构。
每个控制模块的名字代表了它的控制功能。
图3-22
第二级分解:
第二级分解根据变换流的方法,从变换中心的边界开始映射,处理每一个模块,如图表示计算机学院成绩模块的二级分解过程:
未精化的输入结构3-23未精化的变换结构3-24
未精化的输出结构3-25
经过以上二级分解,将分解的合并为如下图所示:
图3-26
5、奖学金模块:
在计算机学院,我们的奖学金、助学金、国家奖学金、国家励志奖学金等申请都要进过系统提交申请,申请后,由辅导员对申请进初步审核,检查申请是否符合要求,申请人是否有资格申请,检查完毕后,辅导员对申请同意,申请将进一步到管理员处进一步审核,只有管理员通过审核后,该申请才算作数,申请成功。
在需求分析中,计算机学院奖学金据流图如图所示,从图中可以看出,数据沿着四条输入通路进入系统,沿着两条通路离开,没有明显的事务中心,因此可以认为这个信息流具有变换流的总特征。
根据前面需求分析中的数据流图,我们将确定流的边界图如图所示:
图3-27
第一级分解:
根据上述变换流的情况,计算机学院个人信息模块是在顶层宿舍管理的协调下进行分解。
其中分为输入控制,变换控制和输出控制,由此可以从上图分解得到如下图的结构。
每个控制模块的名字代表了它的控制功能。
图3-28
第二级分解:
第二级分解根据变换流的方法,从变换中心的边界开始映射,处理每一个模块,如图表示计算机学院成绩模块的二级分解过程:
未精化的输入结构3-29未精化的变换结构3-30
图3-31
未精化的输出结构
经过以上二级分解,将分解的合并为如下图所示:
图3-32
4、数据库设计
4.1数据库分析
数据库需求分析:
·
用户分为管理员、教师、和学生。
其中管理员和教师属于相同权限等级的用户。
数据库实体联系:
●一个班级有多个学生,班级组成院系,班级与学生是1对多的关系
●一个年级有多个班级,每个班级只有一个年级,年级与班级是1对多的关系
●多个年级有一个学生会,他们是多对1的关系
●一个学生有多门课程,一门课程对应多个学生,学生对课程是多对多的关系
●一个教师可以教授多个课程,一个课程可以由多个教师教授,教师与课程之间是多对多的关系
●多个专业可以有相同一门课,一个专业有多门课程,专业与课程是多对多的关系
●一个学生可以学一个专业,一个专业可以由多个学生学习,专业与学生之间是1对多的关系
●一个辅导员指导多个班级,辅导员与班级的关系是1对多的关系
●一个教师有多个老师,一个老师可以交多个学生,教师与学生是多对多的关系
●一个学生可以住一间寝室,一间寝室可以住多个学生,寝室和学生是1对多的关系
●一个班级中可以有一个专业,一个专业可以有多个班级,他们是多对多的关系
4.2实体属性
经过对上述系统功能的分析和需求总结,设计如下数据项:
●用户信息:
用户ID、用户名、密码、权限
●班级信息:
班级ID、名称、所属年纪、所属班级、生活辅导员
●学生信息:
基本资料:
学生照片(1寸)、学号、姓名、籍贯、性别、民族、出生日期、政治面貌、身份证号码、户口所在地
学籍资料:
学号、校区、入学年纪、所在院系、所属年纪、专业、所在班级、教育类型、培养层次(本科/专科)、学制、备注
家庭资料:
是否独生子女、来源地、家庭情况、家庭月均收入、家庭联系电话、邮政编码、家庭详细地址
奖惩记录:
获奖记录、惩罚记录
本人联系方式:
手机号码、QQ、邮箱
●教师信息:
教师ID、姓名、所属院系
●辅导员信息:
辅导员ID、辅导员姓名、联系方式、邮箱
●课程信息:
课程ID、课程名称、专业、学时、学分、类型、描述
●专业信息:
专业ID、专业名、类型、描述
●公寓信息:
宿舍信息:
校区、宿舍片区、宿舍号、宿舍楼、单元、楼层、房间号、床位号、收费标准、寝室成员、备注
宿舍人员的基本信息:
姓名、学号、所属班级、所属专业、所诉院校、生活辅导员、生活辅导员联系方式
宿舍管理员信息:
姓名、员工号、联系方式
寝室成员异动记录的登记信息
来访纪录信息
物品寄存管理信息
物品出入记录信息
考勤违规记录信息
寝室卫生情况记录信息
假期留校情况记录信息
查看假期留校住宿信息
晚归记录信息
水电费记录信息
维修记录信息
公寓违纪记录信息
●学生会信息:
部门ID、部门名称、
指导教师信息:
教师ID、教师姓名、学院职务、联系电话、QQ、邮箱、备注
部长信息:
部长ID、姓名、联系电话、分管工作、备注
干事信息:
干事ID、姓名、学号、联系电话、备注
●奖学金信息:
照片(1寸)、学号、姓名、班级、身份证号码、政治面貌、曾获得荣誉称号、曾获奖励、申请奖学金的原因、班级审核小组的审核情况、生活辅导员的审核情况、学院的审核情况
●年级信息:
年级ID、年级名
4.3E-R图
根据以上分析,数据E-R图如下图所示:
4.4数据表设计:
用户表如表1所示,用于记录用户的用户名,密码及权限。
用户权限为0,1,2为管理员权限,0为学生权限,1位辅导员用户,2位教师用户,在页面中显示为“管理员”、“学生用户“、“教师用户”、“辅导员用户”。
具有管理员权限的用户默认密码与添加的用户名相同;之后用户可以自行修改密码。
表1ST_users(用户表)
序号
列名
字段类型
长度
描述
1
ST_User_id
Vcahr
50
用户名(主键)
2
ST_User_password
Vchar
50
用户密码
3
ST_User_power
int
4
用户权限
学生表如表2所示,用于记录学生信息
表2ST_student(学生表)
序号
p-id
列名
字段类型
长度
描述
1
ST_Student_basic_document
Varchar
50
基本资料
2
ST_Student_status
Varchar
50
学籍资料
3
ST_Student_family
Varchar
10
家庭资料
4
ST_Student_contact
Varchar
50
本人联系方式
5
ST_Student_reword_punish
Varchar
50
奖惩记录
基本资料
6
ST_Student_name
Varchar
50
学生姓名
7
ST_Student_photo
Varchar
50
学生照片
8
ST_Student_sex
Char
10
性别
9
ST_Student_nation
Char
10
民族
10
ST_Student_home
Varchar
50
籍贯
11
ST_Student_birthday
Datetime
8
出生日期
12
ST_Student_political_status
Varchar
50
政治面貌
13
ST_Student_id_number
Varchar
50
身份证号码
14
ST_Student_id_account
Varchar
50
户口所在地
学籍资料
15
ST_Student_id
Varchar
50
学号
16
ST_Student_campus
Varchar
50
校区
17
ST_Student_school_age
Varchar
50
入学年纪
18
ST_Student_school
Varchar
50
所在院系
19
ST_Student_stage
Varchar
50
所属年纪
20
ST_Student_profession
Varchar
50
专业类型
21
ST_Student_class
Varchar
50
所在班级
22
ST_Student_type
Varchar
50
教育类型
23
ST_Student_train_level
Varchar
50
培养层次
24
ST_Student_school_system
Char
5
学制
25
ST_Student_note
Varchar
100
备注
家庭资料
26
ST_Student_only_child
Varchar
20
是否独生子女
27
ST_Student_background
Varchar
50
家庭情况
28
ST_Student_income
Varchar
20
家庭月收入
29
ST_Student_home_tel
int
11
家庭联系电话
30
ST_Student_postcode
Int
6
邮政编码
31
ST_Student_home_address
Varchar
50s
家庭详细地址
奖惩记录
32
ST_Student_rewards
Varchar
50
获奖记录
33
ST_Student_punishment
Varchar
50
违规记录
本人联系方式
34
ST_Student_phone_num
int
11
手机号码
35
ST_Student_qq_num
int
20
QQ
36
ST_Student_emial
Varchar
20
邮箱
教师表入如表3所示,用于记录教师信息
表3ST_teacher(教师表)
序号
列名
字段类型
长度
描述
1
ST_Teacher_id
Vchar
50
教师编号,主键
2
ST_Teacher_name
Vcahr
50
教师姓名
3
ST_Teacher_collega
vcahr
50
教师所在院系
辅导员表如表4,用于记录辅导员信息。
表4ST_instructor(辅导员表)
序号
列名
字符类型
长度
描述
1
ST_Instructor_id
int
10
辅导员ID
2
ST_Instructor_name
Varchar
50
辅导员姓名
3
ST_Instructor_tel
int
20
联系方式
4
ST_Instructor_email
Varchar
20
邮箱
班级表如表5,用于记录班级信息。
表5ST_class(班级表)
序号
列名
字段类型
长度
描述
1
ST_Class_id
Vchar
50
班级编号,主键
2
ST_Class_stage
Vchar
50
班级所年纪
3
ST_Class_school
Vcahr
50
班级所在系
4
ST_Class_teacher
Vchar
50
辅导员,外键
5
ST_Class_name
Vchar
50
班级名称
课程表如表6所示,用于记录课程信息
表6ST_course(课程表)
序号
列名
字段类型
长度
描述
1
ST_Course_id
Vchar
50
课程编号
2
ST_Course_name
Vchar
50
课程名称
3
ST_Course_profession
Vchar
50
专业
4
ST_Course_period
Int
4
学时
5
ST_Course_credit
int
4
学分
6
ST_Course_kind
int
4
课程类型
7
ST_Course_describe
Vchar
50
描述
如表7所示为学生课程表,
表7ST_student_course(学生课程表)
序号
列名
字段类型
长度
描述
1
ST_ID
Bigint
8
自增主键
2
ST_Student_id
Varchar
50
学生ID,外键
3
ST_Course_id
Varchar
50
课程ID,外键
4
ST_Course_profession
Varchar
50
专业
5
ST_Student_grade
Int
4
成绩
6
ST_Course_year
Varchar
50
学期
如表8所示为教师课程表,
表8ST_teacher_course(教师课程表)
序号
列名
字段类型
长度
描述
1
ST_ID
Int
4
自增主键
2
ST_Teacher_id
Varchar
50
教师ID,外键
3
ST_Course_id
Varchar
50
课程ID,外键
4
ST_Course_prefession
Varchar
50
专业
5
ST_Class_id