资源描述
数据库课程设计报告
设计题目:教务辅助管理系统
学生姓名:
系 别:
专 业:
班 级:
学 号:
指引教师:
评阅意见:
参照意见见李靖
目 录
2、功能描述 3
3、数据流分析 4
3.1、数据流图 4
3.2、数据字典 6
4、概念模型设计 15
5. 逻辑模型设计和优化 16
6. 物理设计和实行 18
7、应用程序设计(前台) 18
8、课程设计心得体会 18
1、开发背景
随着学校发展,越来越多学生来学校求学,班级数量教师数量以及教室资源数量庞大给学校为班级手动排课带来了许多不便,为理解决该问题,咱们小组开发该教务辅助管理系统,可以用于自动排课以及教师工作量查询等用途。为以便在各种客户端使用该系统,故将该系统设计成网站形式,让各种顾客可以在不同地点试用。
2、功能描述
通过调研及分析,该教务辅助管理系统重要可以完毕如下功能:
1) 教师基本信息管理:重要完毕教师号,教师名,所专家课程等信息管理。
2) 课程信息管理:重要对课程名课程号进行管理。
3) 教室基本信息管理:管理某个教室在星期几第几节课与否有课信息。
4) 实现自动排课功能:依照教学筹划中某个班由各个教师专家各门课程等信息对该班进行排课。
5) 简朴计算工作量:依照课程表中信息对教师工作量进行记录。
6) 可以输出相应报表。
7) 具备数据备份和数据恢复功能。
3、数据流分析
3.1、数据流图
通过需求分析,得出教务辅助管理系统中,教师使用该系统时数据流如图1所示:
图1 教师使用系统时数据流图
以及管理员使用时数据流图如下所示:
图2管理员使用时数据流图1
图3管理员使用时数据流图2
3.2、数据字典
对图1中各项进行描述:
(1)数据流描述
数据流编号: D001
数据流名称: 教师登录信息
简 述:教师登录顾客信息
数据流来源:教师
数据流去向:教师信息判断
数据流构成:教师顾客名+密码
数据流编号: D002
数据流名称: 教师信息
简 述:教师顾客有关信息
数据流来源:教师信息判断
数据流去向:排课状态查询
数据流构成:教师号+教师名等
数据流编号: D003
数据流名称: 无排课信息
简 述:发现当前教师顾客未进行排学时提示信息
数据流来源:排课状态查询
数据流去向:教师
数据流构成:教师号+教师名等
数据流编号: D004
数据流名称: 教师工作量信息
简 述:当前教师工作量信息
数据流来源:工作量查询
数据流去向:教师
数据流构成:教师号+教师名+工作量等
数据流编号: D005
数据流名称: 课程表信息
简 述:当前教师课程表信息
数据流来源:课程表查询
数据流去向:教师
数据流构成:教师号+教师名+课程表等
(2) 解决逻辑描述
解决逻辑编号:P001
解决逻辑名称:教师信息判断
简 述:判断教师信息合法性
输入数据流:教师登陆信息
解决描述: 依照顾客提供教师信息,判断该信息与否对的,如果对的,则可以进行下一步操作,否则返回。
输出数据流: D003教师信息、D002无效提示信息
解决逻辑编号:P002
解决逻辑名称:排课状态查询
简 述:查询对当前教师顾客与否已进行排课
输入数据流:D003教师信息
解决描述:依照提供教师信息,查询该教师课程与否排课,有则可以进行查询,如没有则返回教师无排课信息。
输出数据流: D003教师信息+D004无排课信息
解决逻辑编号:P003
解决逻辑名称:工作量查询
简 述:查询当前教师工作量
输入数据流:D003教师信息
解决描述:依照提供教师信息,对该教师一周工作量进行查询
输出数据流: D005教师工作量信息
解决逻辑编号:P004
解决逻辑名称:课程表查询
简 述:查询当前教师课程表
输入数据流:D003教师信息
解决描述:依照提供教师信息,对该教师课程表进行查询
输出数据流: D006教师课程表信息
解决逻辑编号:P005
解决逻辑名称:生成报表
简 述:将教师查询信息生成报表
输入数据流:D003教师信息
解决描述:依照教师所需要信息,将该信息生成报表
输出数据流: 查询信息
(3) 数据存储描述
数据存储编号:F001
数据存储名称:教师信息
简 述:教师基本信息
数据存储构成:教师号+姓名+性别+学院+登录密码
核心字:教师号
有关联解决:P001
数据存储编号:F002
数据存储名称:课程信息
简 述:当前教师所专家课程安排信息
数据存储构成:教师号+课程安排
核心字:教师号
有关联解决:P003+P004
对图2中各项进行描述:
(1)数据流描述
数据流编号: D001
数据流名称: 管理员信息
简 述:管理员登录信息
数据流来源:管理员
数据流去向:管理员信息判断
数据流构成:管理员号+登录密码
数据流编号: D002
数据流名称: 未排课信息
简 述:提示有教师没有进行排课或者没有信息用来排课
数据流来源:排课状态查询
数据流去向:管理员
数据流构成:教师号等
数据流编号: D003
数据流名称: 教师信息
简 述:教师顾客有关信息
数据流来源:排课状态查询
数据流去向:录入教师信息
数据流构成:教师号+教师名等
数据流编号: D004
数据流名称: 课程信息
简 述:课程有关信息
数据流来源:排课状态查询
数据流去向:录入课程信息
数据流构成:课程号+课程名等
数据流编号: D005
数据流名称: 教室资源信息
简 述:教室资源使用有关信息
数据流来源:排课状态查询
数据流去向:录入教室资源信息
数据流构成:教室号+空闲时间
(2) 逻辑解决描述
解决逻辑编号:P001
解决逻辑名称:管理员信息判断
简 述:判断管理员信息合法性
输入数据流:管理员信息
解决描述: 依照管理员提供信息,判断对的与否,如果对的则可进行排课状态查询,否则返回。
输出数据流: D001管理员登陆信息
解决逻辑编号:P002
解决逻辑名称:排课状态查询
简 述:判断管理员对教师,课程,教室资源等信息与否已进行排课
输入数据流:管理员信息
解决描述: 通过管理员信息,查看教师课程以及教室资源表中信息,判断与否排课,若有信息而没排课则可进行排课,若没信息则提示输入信息。
输出数据流: D004教师信息、D005课程信息、D006教室资源信息
解决逻辑编号:P003
解决逻辑名称:录入教师信息
简 述:将管理员输入教师信息录入表中
输入数据流:教师信息
解决描述: 把教师信息录入表中。
输出数据流: D004教师信息
解决逻辑编号:P004
解决逻辑名称:录入课程信息
简 述:将管理员输入课程信息录入表中
输入数据流:课程信息
解决描述: 把课程信息录入表中。
输出数据流: D005课程信息
解决逻辑编号:P005
解决逻辑名称:录入教室资源信息
简 述:将管理员输入教室资源信息录入表中
输入数据流:教室资源信息
解决描述: 把教室资源信息录入表中。
输出数据流: D006教室资源信息
(3) 数据存储描述
数据存储编号:F001
数据存储名称:管理员表
简 述:管理员基本信息
数据存储构成:管理员号+姓名+性别+密码
核心字:管理员号
有关联解决:P001
数据存储编号:F002
数据存储名称:教师信息表
简述:教师基本信息
数据存储构成:教师号+姓名+身份证号+性别+学院
核心字:教师号
有关联解决:P003
数据存储编号:F003
数据存储名称:课程信息表
简 述:课程基本信息
数据存储构成:课程号+课程名
核心字:课程号
有关联解决:P004
数据存储编号:F004
数据存储名称:教室资源表
简 述:教室资源基本信息
数据存储构成:教室号+无空余时间
核心字:教室号
有关联解决:P005
数据存储编号:F003
数据存储名称:课程表
简 述 :各个课程任课教师和上课地点
数据存储构成:课程号+教师号+教室号+时间
核心字:课程号+教师号+教室号+时间
有关联解决:P004
对图3中各项进行描述:
(1)数据流描述
数据流编号: D001
数据流名称: 管理员信息
简 述:管理员登录信息
数据流来源:管理员
数据流去向:管理员信息判断
数据流构成:管理员号+登录密码
数据流编号: D002
数据流名称: 课程表信息
简 述:课程表内排课状况信息
数据流来源:查看课程表信息
数据流去向:数据记录
数据流构成:课程表内,管理员所需要信息
数据流编号: D003
数据流名称: 记录信息
简 述:管理员记录出来有关信息
数据流来源:数据记录
数据流去向:生成报表
数据流构成:课程表内,管理员所需要信息
(2)逻辑解决描述
解决逻辑编号:P001
解决逻辑名称:管理员信息判断
简 述:判断管理员信息合法性
输入数据流:管理员信息
解决描述: 依照管理员提供信息,判断对的与否,如果对的则可进行排课状态查询,否则返回。
输出数据流: D001管理员登陆信息
解决逻辑编号:P002
解决逻辑名称:查看课程表信息
简 述:查看课程表内信息
输入数据流:管理员信息
解决描述: 通过管理员信息,查看课程表中信息,判断与否有信息,若有信息则可以进行记录,若没信息则输出提示信息。
输出数据流: D002课程表信息
解决逻辑编号:P003
解决逻辑名称:进行记录
简 述:将管理员所需要信息记录出来
输入数据流:课程表信息
解决描述:将管理员所需要信息记录出来
输出数据流: D003记录信息
解决逻辑编号:P004
解决逻辑名称:生成报表
简 述:将管理员记录出来信息生成报表,输出
输入数据流:记录信息
解决描述: 将管理员记录出来信息生成报表,输出
输出数据流: D003记录信息
(4) 数据存储描述
数据存储编号:F001
数据存储名称:管理员表
简 述:管理员基本信息
数据存储构成:管理员号+姓名+性别+密码
核心字:管理员号
有关联解决:P001
数据存储编号:F002
数据存储名称:课程表
简 述:对所有班级教师课程进行安排后表
数据存储构成:教师号+课程号+班级+教室号+上学时间
核心字:教师号+课程号+班级+教室号+上学时间
有关联解决:P002+P003
4、概念模型设计
依照系统数据流图和数据字典,得出系统总体概念模型(E-R)如下图所示。
图4 教师关系ER图
图5管理员关系ER图
5. 逻辑模型设计和优化
依照系统总体概念设计模型、E-R图向关系模式转化规则和数据库范式理论,得到系统优化后逻辑模型,如下表所示。
表1 教师信息表
字段名
字符类型
长度
备注
tno
整型
教师号,主码
tname
字符
20
教师名,非空
tdept
字符
20
所属系别,非空
tcourse
字符
20
所教课程,非空
表2 课程信息表
字段名
字符类型
长度
备注
cno
整型
课程号,主码
cname
字符
20
课程名,非空
表3 教室资源表
字段名
字符类型
长度
备注
rno
整型
教室号,主码
rname
字符
20
教室名,非空
表4教室安排表
字段名
字符类型
长度
备注
section
整型
某一天第几节课,非空
week
整型
表达星期几,非空
status
整型
当前天当前节数与否被安排
表5班级信息表
字段名
字符类型
长度
备注
Classno
整型
班级号,非空
classname
字符
20
班级名,非空
表6顾客登录信息表
字段名
字符类型
长度
备注
userId
整型
主码
username
字符
20
非空
password
字符
20
非空
grade
整型
用于辨别顾客级别
表7 教学筹划表
字段名
字符类型
长度
备注
tno
整型
哪位教师课,非空
cno
整型
上什么课,非空
classno
整型
给哪个班上,非空
ctime
整型
所需要学时数,非空
表8教室安排规则表
字段名
字符类型
长度
备注
Section
整型
第几节课,非空
Week
整型
星期几,非空
Degress
整型
安排级别,非空
Status
整型
安排与否,非空
表9 总课程表
字段名
字符类型
长度
备注
tno
整型
哪位教师
rno
整型
在那个教室
classno
整型
给哪个班
cno
整型
上什么课
Section
整型
在一天哪节课
week
整型
在星期几
6. 物理设计和实行
数据库建立如上表所示,存储途径等均采用系统默认设立。
7、应用程序设计(前台)
我负责SQL Server上表设计和创立工作,还负责SQL语句设计。
下面为各表截图状况:
arrangementRule表
classInfo 表
courseInfo 表
roomInfo 表
roomStatus 表
syllabusInfo 表
teacherInfo 表
tplanInfo 表
Users 表
一下是某功能模块增删改查SQL语句:
select count(*) from roomInfo
insert into roomInfo values(rname)
select count(*) from roomInfo
select top pageSize from roomInfo where rno not in(select top pageSize*(pageNow-1) rno from roomInfo)
update roomInfo set rname=rname where rno=rno
select * from tableName where columnName=rno
delete from roomInfo where rno=rno
其她模块SQL语句类似。
8、课程设计心得体会
通过这次课程设计,让我发现了诸多,vc++难度,而难度并没有难道咱们,组长提建议说要用java完毕这次任务,而对于从前一无所知我面对这个重大任务还是做出了知难而进做法。我发现我所懂得专业知识还是太少,不懂得该如何面对后来路,而我觉得后来路还会更艰难,后来要学习还太多太多,宇宙是无限大,知识也是无限大,我还需要花更多时间去学习,去学习诸多东西,诸多有用,和自己感兴趣,有东西通过自己去理解去摸索,才会有更深印象,才会掌握更好,前景是美好,我是这样以为。
参照文献
[1] 李尊朝.Java语言程序设计(第二版).中华人民共和国铁道出版社.
[2] 钱雪忠.数据库原理及应用(第2版).北京邮电大学出版社.
展开阅读全文