目录
一、引言 (2)
二、需求分析 (2)
2.1 业务需求 (2)
2.2 功能需求 (3)
2.3 数据需求 (3)
2.3.1 实体数据需求 (3)
2.3.2 数据库系统设计 (4)
2.3.3逻辑设计 (4)
三、概要设计 (4)
3.1 系统结构与组成 (4)
3.2逻辑数据库设计 (5)
3.3 物理数据库实现 (7)
四、详细设计与实现 (8)
4.1 建立数据库数据表 (8)
4.1.1 建立数据库 (8)
4.1.2 建立数据表 (9)
4.2 主要功能模块实现 (10)
4.2.1 登陆模块 (10)
4.2.1 系统管理界面模块 (11)
4.2.3 查询模块 (11)
4.2.3 修改模块 (13)
4.2.4 删除模块 (14)
五、结束语 (16)
六、参考文献 (16)
一、引言
学生选课系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高管理的效率,也是学校的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套管理系统的子模块学生信息管理为例,叙述其开发过程和所涉及到的问题及解决方法。
二、需求分析
2.1 业务需求
在本系统中,有三类用户:系统管理员,教师和学生。三种不同的用户所具有的操作权限以及操作内容均不一样。
本选课系统给予教师很大的自主权,系统管理员只负责向系统中添加学生和教师的个人信息以及教学楼教室信息。系统管理员不参与开设课程、选择课程等,一切均由教师、学生登录网站自行完成。系统管理员设置一个选课时间段,在到达时间段以前,教师可以开设课程;到达时间段以后,学生可以选择课程。
教师用户后可以开设课程,为自己的课程编辑上课时间和地点,当系统中出现时间地点冲突的时候,系统向教师用户报告并推荐一个时间地点。每门课程可以是必修或则选修,教师为每门课程设置一个学分,并可以在课程结束后给予分数,如果学生及格,学生将获得该课程的学分。
对于学生用户,每个学生都可以用自己的学号和密码登入到选择系统中,至少还要选
择一门选修课程,学生也可以对自己课程情况进行查询,例如总学分,成绩,以及知道授课老师的信息。
根据上面的要求,从操作功能上可以分为两个类:一个是登入操作,主要实现用户的登录注销和修改密码等;另一种是为不同用户定制不同操作。
2.2 功能需求
系统管理员:录入学生与教师个人信息:通过此项功能可以实现对教师和学生的个人信息添加删除。
录入教学楼教室信息:通过此项功能可以把学校里所有的教学楼教室的信息录入到系统中,以便教师在开设课程时候设置上课的教室。
教师用户:显示和修改个人信息:教师用户登录系统后,可以查看和修改教师的个人信息,如姓名,电话,学号,学历,职称等。
开设课程:教师用户登录系统后,可以开设课程,可以设置该课程为必修课程或则选修课程,可以设置该课程的最大人数。教师还可以为该课程设置一个前导课程,若学生没有学习或则选择前导课程则不能选择该课程。
给学生分数:课程结束后,教师用户登录系统,可以为学过课程的学生给予相应的成绩,若及格,给予学生学分。
学生用户:显示和修改个人信息:学生登录系统后,可以查看和修改学生的个人信息,如姓名,性别,学号等。
查看所选课程情况:学生登录后,可以查看所有的必修课程。查看该课程的信息,上课时间地点,开课教师信息等。
查看最终选课信息:学生登录系统后,可列出已选择的课程,
查看学分和成绩:课程结束后,学生登录系统可查看自己学习课程的成绩和已获的学分。
2.3 数据需求
通过调查,总结出用户对数据的需求如下:
(1)学生信息:包括:学号,姓名,性别,年龄,院系等。
(2)课程信息:包括:课程号,课程名称,课程性质,学时数,学分等。
(3)教师信息:包括:教师编号,教师姓名,性别,职称,通信地址,电话,健康状况,毕业院校
(4)选课信息:包括:学号,学生姓名,课程号,课程名称,开课时间,成绩,学分等。
(5)登录信息:包括:学号,密码(第一次默认为学号)
(6)选课专业信息:包括:专业编号,专业名称,所属系,备注.
(7)教师任课信息:包括:教师编号,课程编号
2.3.1 实体数据需求
(1)基础数据录入:基础数据包括,课程数据,教师数据和学生选课数据和教室使用数据以及编码数据等.要求系统能录入这些数据,并且进行数据录入和修改时应该注意保持数据的参照完整性。
(2)查询:能够查询出,课程数据,教师数据以及学生选课数据,教室容纳的人数。
2.3.2 数据库系统设计
(1).项目设计:一个典型的数据库应用程序有数据结构,用户界面,查询选项和报表组成.在设计应用程序时,应仔细考虑每个组件将提供的功能以及与其他组件之间的关系。
数据库管理系统的优点和缺点
(2).数据库的设计:数据库设计的任务是确定系统所需的数据库.数据库是表的集合,通常一个系统只需一个数据库.数据库的设计一般可分为逻辑设计和物理设计两步.逻辑设计的任务是根据需求分析,确定数据库所包含的表及字段,表间的关系,物理设计就是具体确定表的结构,包括字段名,字段类型及宽度,需要的索引等.
2.3.3逻辑设计
根据对需求得到的数据结构进行分析,按数据输入输出的要求,确定表和表间的关系,并进行验证,调整,修改,完善,使其能够实现用户对数据和功能的要求,学生选课系统设置如下表:
(1)学生基本表:包括字段:学号,姓名,性别,年龄,院系,以学号为主键;
(2)教师基本表:包括字段:教师编号,教师姓名,性别,职称,电话,毕业院校,健康状况,所在院系以教师编号为主键;
(3)课程基本表:包括字段:课程编号,课程名称,课程性质,学时,学分,课程编号为主键;
(4)学生选课表:字段包括:学号,学生姓名,课程编号,课程名称,开课时间,成绩。学号,课程编号和开课时间共同做主键,通过学号和学生基本表建立关联,通过课程编号和课程基本表建立关联,开课时间和成绩用于做统计计算。
(5)教师任课表:包括字段:教师编号,课程编号。分别为教师编号和课程编号建立主键,通过教师编号和教师基本表建立关联,通过课程编号和课程基本表建立关联。
三、概要设计
3.1 系统结构与组成
本系统的数据库实体主要有“学生”、“教师”、“教室”、“课程”等。其中“教师”与“课程”存在“开设”联系,并且一个教师可以开设N门课程,即“教师”与“课程”之间是一对多的关系。同样“教学楼”与“教室”也存在一对多的关系。一个学生可以学习N 门课程,一门课程可以有M个学生学习,即“学生”与“课程”之间是多对多的关系。同样“课程”与“教室”之间也是多对多的关系。整个数据库可以用一个E-R图表示,如图所示:
图1 总体E-R 图
3.2逻辑数据库设计
E-R 图转换成系统的关系模型,并进行表结构的优化。
表11.1 student 字段名
类型 宽度 允许空 说明 s_no
char 8 学号 s_name
varchar 8 姓名 s_dept varchar 8 Y 系别 表12.2 classroom
字段名 类型 宽度 允许空 说明 学号 性别 学号
学分
性别 年龄
教师 课程 学生
选修 教学
授课 n
m m
n
性别 已选课情况
密码
课程学时 职称
教师名称 教师编号
学历 健康状况
毕业院校
成绩
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论