随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,就需要有学生教务信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
学校为方便教务管理,需开发一个教务管理系统。为便于学生,老师,教务管理人员信息查询,注册以及信息修改,学校把学生的信息,包括姓名、性别、年龄,成绩等信息输入教务管理系统的数据库,然后在管理终端可以对数据进行查询和修改操作。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求系统界面要简单明了,易于操作,程序利于维护。
一、信息分析:
(1)学校教务管理的数据库,包含以下信息:
学校有若干个系,每个系有若干名教师和学生,每个教师可以担任若干门课程,并参加多个项目,每个学生可以同时选修多门课程,每门课程每学期可能有多名教师教授,课程分为必修、选修、任选三种。
(2)学校的教务管理的信息包括:
学生姓名、学号、班级、性别、班号,籍贯、出生日期、所属系编号、所属系名称、系主任,教师编号,教师姓名,教师职称,教师所授课程、课程编号,课程名,课程学分,项目编号,项目名称,项目负责人,学生选修课程及成绩。学生如果课程及格,可以取得该课程的学分。学生的各类型课程学分和总学分累计到一定程度,学生可以毕业。根据成绩高低,可以计算学分积。及格学生的学分积公式:课程学分积=(该课程成绩-50)/10×该课程学分。
二、功能分析:
(1)用户能够使用友好的图形用户界面实现对系、班级、学生、教师、课程、选课等内容进行增、删、改,以及对信息的
查询。对于查询要实现比较强大的功能,包括精确查询、
模糊查询以及统计查询。
(2)具体查询在数据库中要实现以下的功能:
1)所有来自某省的男生
2)所有某课程成绩>90的同学
3)教授某课程的老师
4)某班年龄最大的5名同学
5)某年以后出生的男同学
6)选修某课程的学生及其成绩
7)没有授课的教师
8)某学生所选课程的总学分
9)教授某学生必修课程的老师情况
10)某学生选修了哪些系的课程
11)某系学生所学的所有课程
12)按总学分找出某系学习最好的5名同学
13)按总学分积找出某系学习最好的5名同学
14)可以毕业的学生
三、软、硬件配置
程序运行的环境:
具体运行环境为软件方面,操作系统为windows2000/XP,并且系统装有SQLServer2000数据库管理系统。
硬件方面,CPU主频500MHz以上,内存128M或更高。硬盘剩余空间不能少于30M。
工程预算:由于程序本身并不十分复杂,实现起来软硬件需求都不算高,具体花费在此就不计算了。
⑥学生成绩表:
列名数据类型约束
学号Char(7)与课程号联合做主键、参照其它表
课程号Char(2)与学号联合做主键、参照其它表
成绩Numeric(4,1)>=0and<=100
学分Smallint----
⑦教师授课信息表:
教师编号Char(7)联合主键、参照其它表
课程号Char(2)联合主键、参照其它表开设该课程的班级号Clno(7)联合主键、参照其它表
II.详细设计方案:
一、概念设计:
1、总体功能概念结构图:
2、查找所给问题的实体
系统中涉及到的实体:班级,学生,教师,课程,学院中的各个系。
2.1查找实体的关联
①班级、学生之间是一对多关系;
②学生、课程之间是多对多关系;
③系、班级、教师之间是一对多关系;
④教师、课程、班级之间是多对多关系;
2.2查找实体关键字
①班级的关键字----班级号;
②学生的关键字----学号;
③教师的关键字---教师编号;
④课程的关键字----课程号;
⑤系的关键字----系号。
2.3设计E-R图:
1)总体功能流程图
2)学生E-R图:
3)班级E-R图:
4)课程E-R图:
5)教师E-R图:
6)全局E-R图:教师
所授课程编号
教师编号所在系号
教师姓名
二、逻辑设计:
1、将E―R模型转换为等价的关系模式。
教师(教师编号,教师姓名,教师职称,教师所授课程,教师所属系号);
学生(姓名、学号、班级、性别、班号,籍贯、出生日期、所属系编号);
班级(班级号,所在系号,班级名称);
课程(课程号,课程名,学分,学时,类型);
系(系号,系名称,班级数,系主任);
成绩(学号,课程号,成绩,学分);
教师授课(教师编号,课程号,班级号)。
2、按需要对关系模式进行规范化。
再经分析,概念模型E-R图中所涉及的表都能满足第三范式的要求
3、对规范化后的模式进行评价。
经过上一步的调整之后,模式已经基本符合题目要求,可以直接