数据库原理课程大作业
- 格式:doc
- 大小:94.50 KB
- 文档页数:13
《数据库原理》课程大作业
数据库设计
课题名称: 网上选课系统数据库设计
学 号:
姓 名:
专业年级:
成 绩:
日 期:
目 录
1 绪论................................................................................................................................. 1
2 应用系统功能分析......................................................................................................... 1
2.1 业务操作流程...................................................................................................... 1
2.2 系统功能设计...................................................................................................... 1
3 数据库设计..................................................................................................................... 2
3.1 需求分析.............................................................................................................. 2
3.2 概念结构设计...................................................................................................... 5
3.3 逻辑结构设计...................................................................................................... 7
3.4 物理结构设计与实施.......................................................................................... 8
4 结束语............................................................................................................................. 9
4.1 收获和体会.......................................................................................................... 9
4.2 总结与展望........................................................................................................ 10
1 绪论
随着科学技术的发展,计算机已经运用到很多方面,网上选课在各个高校已经不可或缺。信息的自动处理以及网络式的信息交互方式已经被人们广泛应用,使的办公更加的方便快捷和人性化。网上选课系统种类繁多,只有一个稳定高效的选课系统才能真正的为我们带来方便。
教学计划必需随着社会和科技的不断地而进行修订,使得学校安排学生选课、排课的任务日趋繁琐、复杂。简化选课难度,提高选课质量势在必行。目前,各高校已相继建成了覆盖全校的高速校园网,并与Internet互联,具备了通过网络来管理教学的硬件环境。
传统的人工选课方法在流程上存在很多弊端,全部由人工完成,工作量太大,有时会出现错误。对学生来说选课不方便信息不灵活,可能会选错或者选课与上课时间有冲突,等都不利于选课的开展。而且老师对学生的录入,成绩管理发放更不方便。因此为了进一步提高学生选课管理的效率,保证学院学生选课工作的顺利有序进行,信息化和网络化的推行也是正被广泛应用并被实践证明是目前最有效的途径。
为了方便广大师生,我们需要运用所学自己设计一种网上选课系统数据库软件用来管理好选课信息。选课系统将使选课管理更加规范,提高信息管理的速度和准确性。
2 应用系统功能分析
本系统为三类用户使用:系统管理员,老师和学生。因此应当具有的功能:可让管理理员对学生信息,老师信息,课程信息,教室信息进行有效的管理,包括增加、删除、查询、修改等基本维护功能。可让管理员和教师对特定班级进行必修课的设定。可让学生在满足选修学分的情况下进行自由选课。可让教师对特定的班级及个人的科目进行评分。综合查询可让学生查看自己的选课情况,让老师查看教务安排。
2.1 业务操作流程
本系统管理员和所有者拥有最高权限。能对学生和老师的信息进行维护,所有教室、课程的信息维护有管理员完成,信息的维护包括增加,删除,查询,修改等功能。学生所选科目分必修和选修,必修课程可由教师及管理员设定,选修课由学生自己选。学生可查询自己的选课情况和学习情况,老师可以给学生的考试情况打分。进入系统需要身份验证,学生和老师可修改自己的密码,管理员拥有修改所有用户的权限。
2.2 系统功能设计
(1)系统管理员 维护学生与教师个人信息:通过此项功能可以实现对教师和学生的个人信息添加删除修改。
维护课程、教室信息:通过此项功能可以实现对课程,教室的综合信息进行增加删除修改。
(2)教师用户
1) 显示和修改个人信息:教师用户登录系统后,可以查看和修改教师的个人信息,如姓名,电话,E-mail地址、登陆密码等。
2) 给学生分数:课程结束后,教师用户登录系统,可以为学过课程的学生给予相应的成绩,若及格,给予学生学分。
3) 综合查询:查看部分教师的教务安排,包括上课时间,授课地点,所用教材等信息
(3)学生用户
1) 维护个人信息:学生登录系统后,可以查看和修改学生的个人信息,如姓名,性别,电话、账户密码等。
2) 查看自己选课信息:学生登录系统后通过综合查询能够查看自己的必修课和选修课的信息,包括查看学习成绩等
3) 选择自己的选修课程。
3 数据库设计
考虑数据库及其应用系统开发全过程,将数据库设计分为六个阶段包括:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实施和数据库运行与维护。通过对选课系统的管理最终需要实现的功能分析,构建数据字典,处理相应的数据,然后将数据抽象为具体的DBMS概念模型,画出全局ER模型,并分析各个实体之间的关系,将概念模型结构转化为数据模型,再进行适当的优化。选取合适的存储结构和存取方法,建立选课系统数据库。在对数据库进行试运行和维护,分析改善数据库,丙丁是的进行功能维护,使其能高效的运行,为广大的师生提供方便和服务。
3.1 需求分析
随着信息时代科技不断提高,学校规模不断扩大,教学质量不断提高,大学期间有许多公共选修课,以往的选修课方法是课堂报名或者纸上填写方式报名,这种方法虽然直接,但是造成选课的盲目性,而且学生选过课程后不好在更改查看,一方面浪费大量的人力,物力资源,另一方面浪费时间以及在认为统计过程中不可避免的出现差错的情况。这给广大的老师和学生带来诸多的不便,管理起来也相当困难。使用网上选课系统可以提前进行网上选课,并且选课以后学生还可以在查看和更改,随意选择各个老师的课程,老师管理起来也比较方便。鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单,具有人性化的网上选课系统。
通过对学生选课管理系统工作内容和相关数据流程分析,根据选课管理系统的需要,设计出满足各种用户(管理员,教师,学生)的实体,以及他们之间的关系,得到数据库的模型。
系别包括系别号与系别名。专业表包括专业号与专业名。学生表包括学号,姓名,年龄,性别,年纪,系别号,专业号等。教师表包括教师号,姓名,性别,系别号。课程表包括课程号,课程名,学分,学时,开课状态,已选人数,限选人数等。 选课结果表包括学号,课程号,成绩。授课表包括课程号,教师号。管理员表包括ID,用户名与密码。
(1)数据流图:
(1)数据字典:
①数据项:
学生学号={学生学号,char,10}
学生姓名={学生姓名,char,20}
学生班级={学生班级,char,20}
学生成绩={学生成绩,char,20}
老师工号={老师工号,char,10}
老师姓名={老师姓名,char,20}
课程号={课程号,char,10}
课程名={课程名,char,20}
教室号={教室号,char,10}
教课时间={教课时间,char,15}
学生
返回
课程选课
成绩查询 查询,更改选课
学生信息
教师 登陆
验证 申请课程 课程信息
教师信息 判分
管理员
(最高权限) 批准课程与否 管理员信息 登陆
验证
返回
②数据结构:
选课结果={选课结果,课程内容和信息,组成{老师工号,老师姓名,课程名,教课时间,教室号}}
教课信息={教课信息,教课内容和学生上课情况,组成{教课时间,教室号,课程号,学生姓名,学生学号,}}
学生成绩={学生成绩,上课表现状态,组成{学生学号,学生姓名,上课学时,课堂表现}}
③数据流:
选课结果数据流={选课结果数据流,查看选课的结果,老师,学生,教室号,课时,组成{选课结果}}
教课信息数据流={教课信息数据流,学生在课堂上的表现,学生,老师,组成{教课信息}}
学生成绩数据流={学生成绩数据流,学生学号,学生姓名,上课学时,课堂表现,组成{学生成绩}}
④数据存储:
选课结果存储={选课结果存储,选课结果数据流,教课信息数据流,组成{选课信息,教课信息}}
教课信息存储={教课信息存储,教课信息数据流,学生成绩数据流,组成{教课信息,学生成绩}}
学生成绩存储={学生成绩存储,学生成绩数据流,学生成绩数据流,组成{学生成绩}}
⑤处理过程:
学生选课结果={学生选课结果,输入:{学生结果数据流},输出:{教课信息数据流},处理:{学生进行选课}}
老师处理教课信息={老师处理教课信息,输入:{教课信息数据流},输出:{学生成绩数据流},处理:{老师对上课信息进行查看,并给出成绩}}
学生成绩录入={学生成绩录入,输入:{学生成绩数据流},输出:{学生成绩数据流},处理:{学生查看自己的成绩,老师也可浏览各个学生的成绩}}