图1 系统功能结构图
系统流程图如图2所示。
图2 系统流程图
4 数据库设计
4.1 数据库需求分析
根据系统的总体设计方案,考虑到学生信息管理系统的实际需要,该系统的数据库包括的数据表有:学生信息表(Student)、教师表(Teacher)、院系表(Department)、专业表(Speciality)、班级表(Class)、课程分类表(Coursetype)、课程表(Course)、成绩表(Grade)、管理员表(Admin)九个数据表。
学生信息表用来存储学生的基本信息,如学号、姓名、身份证号、所在班级编号等。教师表用来存储教师的信息,如工号、姓名等。院系表用来存储院系信息。专业表用来存储专业信息。班级表用来存储班级信息。课程表用来存储课程信息,如课程编号、课程名称等。成绩表用来存储学生成绩信息。管理员表用来存储管理员的信息,如管理员编号、管理员类型等。以上这些就是学生信息管理系统的数据库需求分析。
数据库设计中,我们通常使用E-R图对需求分析进行概念设计,形成实体、实体的属性、实体的标识码,并确定实体间的关系。以下为本系统中学生实体、班级实体、专业实体及院系实体间的关系。
图3 系统部分E-R图
4.2 数据库逻辑设计
该系统使用SQL Server 2008作为后台数据库,涉及到学生信息表、学生成绩表等九个数据表。数据表之间的关系如图4所示。
图4 数据库关系图
5 系统详细设计
该系统主要是管理学生相关信息,系统主要完成学生信息管理、教师信息管理、院系信息管理等基本功能。本章将分模块叙述本系统的详细设计方案,分为:用户登录模块、学生信息管理模块、教师信息管理模块、院系专业管理模块、课程管理模块、系统管理模块。
5.1 用户登录模块
用户登录过程是一个验证过程,包括用户名、密码及验证码验证。用户首先选择用户身份,输入用户名、密码和验证码。系统首先验证用户输入的验证码是否正确,若不正确提示错误信息重新输入,若正确则继续验证用户名和密码是否正确。系统根据用户选择的用户身份从相应的数据表检索数据,查找是否有该用户的信息,若没有则提示错误信息重新输入,若有则根据登陆身份进入相应的主操作界面。
5.2 学生信息管理模块
学生信息管理分为学生基本信息管理和学生成绩信息管理2个子模块。
5.2.1学生基本信息管理
(1)功能描述
管理员权限:管理员可以查看所有学生的基本信息,添加学生信息,修改学生信息或删除学生信息。管理员添加学生信息时,需首先选择班级名称,系统根据所选班级名称自动生成学生编号,然后填写其他信息。修改学生信息时,学号不能修改。删除学生信息时,应把学生成绩表里该学生的记录一起删除。
学生权限:学生可以浏览个人详细信息,修改个人信息。
(2)技术实现
系统在显示学生基本信息列表时首先调用方法GetPagecount()和GetStudentList(int pno,int pagesize)实现分页显示,同时可以按照学号、姓名或班级名称搜索相应学生的信息,搜索可以实现模糊查询。添加学生信息时,学生的密码默认是“123456“,经过MD5加密后存储到数据库,同时添加学生信息时使用正则表达式对输入的身份证号、邮箱进行格式验证。
学生信息管理流程图如图5所示。
图5 学生信息管理流程图
5.2.2学生成绩信息管理
管理员对学生成绩信息具有查看、添加、修改、删除权限,学生只有查看自己成绩的权限。 C#学生信息管理系统设计与实现+流程图(3):http://www.751com.cn/jisuanji/lunwen_960.html