黄山学院自动排课系统的数据库设计.docx
- 文档编号:28209422
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:33
- 大小:49.36KB
黄山学院自动排课系统的数据库设计.docx
《黄山学院自动排课系统的数据库设计.docx》由会员分享,可在线阅读,更多相关《黄山学院自动排课系统的数据库设计.docx(33页珍藏版)》请在冰豆网上搜索。
黄山学院自动排课系统的数据库设计
数据库原理课程设计
(2012级)
黄山学院自动排课系统的数据库设计
姓名:
李华阳
学号:
21206031023
指导教师:
丁丙胜
院系:
信息工程学院
专业:
计算机科学与技术
提交日期:
2014—06—12
目录
1.引言.................................................................3
2.系统需求分析........................................................4
2.1功能需求分析.....................................................4
2.1.1本系统的功能需求分析.........................................4
2.1.2排课的基本原则要求...........................................5
2.2数据流图.........................................................6
2.3数据字典........................................................7
2.3.1数据项.......................................................7
2.3.2数据结构......................................................10
2.3.3数据流........................................................10
2.3.4数据存储.....................................................11
2.3.5处理过程.....................................................12
3.系统功能设计.......................................................13
3.1系统功能描述.....................................................13
3.1系统模块分析.....................................................13
4.数据库概念模型概念.................................................14
4.1概念结构设计的方法..............................................14
4.2概念结构设计的步骤..............................................14
4.3数据抽象与局部视图设计..........................................15
4.4视图集成设计.....................................................15
5.数据库逻辑结构设计..................................................16
5.1数据概念模型的优化...............................................16
5.2数据逻辑设计.....................................................17
6.数据库物理结构设计..................................................19
结束语.................................................................21
参考文献...............................................................22
1.
引言
随着我国计算机技术、互联网行业的快速发展,计算机的开发应用已渗透到各个领域,成为各行各业必不可少的工具,而且日趋普及。
自动排课管理是学校日常工作中经常要面对的事情,传统的自动排课管理只能是通过手工、分散的管理方式,查找、复核困难,资源不能充分利用,造成资源浪费。
现在相当一部分学校在进行自动排课工作时仍沿用手工方式。
老师为了组织一次排课.不仅要应付课程需要的教师安排、自动排课、学生管理。
人工排课需要经过三个步骤.一是对课程班级人员的选择.二是对课程需求教室的选择,三是根据课程教室分配学生.这些工作浪费了大量的宝贵时间,同时安排位置的工作由于人员多.容易出错.而且安排不具有随机性.不够客观。
随着工作生活节奏的加快和计算机技术的日新月异。
自动排课系统实现了课程排位的智能化.不需要人工安排.直接使用该系统进行随机排位.从而使自动排课更趋于公证和客观.大大节约了时间和提高了质量.减轻了学校教职工的工作压力.节省了很多不必要的开支。
在学校,自动排课管理对教学工作的正常进行起着至关重要的作用,因此信息科管理人员对于课程信息查询、课程信息统计、课程信息管理等,需要有一个自动化的工具进行统筹管理,才能够及时、准确地反映学生信息状态。
针对这种情况,为了更好地适应当前学校管理的需求,避免手工管理存在的这些弊端,需要开发自动排课信息管理系统。
学校通过使用自动排课信息管理系统,可以实现自动排课信息综合查询、统计、系统的管理。
随着学校规模不断的扩大,日常生活中自动排课容量地日益增大,到目前已经出现了许多针对自动排课管理方面平台系统,并在教育行业得到了广泛的应用。
课表自动生成系统是学校管理系统的一个主要组成部分,其作用是对所有班级、老师、课程之间进行行之有效的管理。
本人在相关理论的指导下,在分析以往一些排课软件的基础上,提出一个高校通用排课系统的设计方法,并对一些具体的问题给出相应解决方案。
本系统阐述了系统的设计思路和设计方法,并对系统中可能遇到的问题及应用前景作了阐述。
本系统界面较好,操作简单,比较实用,适合高校对新老学生进行排课的需求。
通过本系统我们可以做到以下方面:
一、可以进行对班级、老师、课程进行快速、高效的更优化排课管理工作。
二、可以对各班级信息、各个老师信息进行快速查询,并可随时进行增加,修改,
删除、打印等工作,使操作人员能够快速的对课程进行有效的控制和管理。
三、精心调整架构的选择和模块的划分,人性化操作的菜单设计。
并且设计贴近用户需求,功能完整,架构合理,并用大量的框图模型体现了系统的规划。
下面就是我对黄山学院自动排课系统的数据库设计。
2系统需要分析
2.1功能需要分析
需求分析的任务是调查应用领域,对应用领域中的信息要求和操作要求进行详细分析,形成需求分析说明书。
重点是调查,收集与分析用户在数据管理中的信息要求,处理要求,数据的安全性与完整性要求。
为了完成需求分析的任务,要详细调查待开发的数据库应用部门的情况,了解原系统工作概况,分析用户的各种需求,在此基础上确定新系统的功能。
新系统必须考虑今后的扩充和改变,不能仅仅按当前应用需求来设计数据库。
智能排课系统需要实现对学校教师、教室、班级、及课程的信息管理,对高校排课,都有智能的管理,主要实现如下的一些功能:
班级各种信息的输入,包括班级号,班级名称,年级,班级人数,是否合班。
教师各种信息的输入,包括教师号,教师姓名,职称,联系方式。
学校课程的增加,删除,修改。
学校课程计划的制定。
学校的自定义排课,根据需要,人工排课。
学校的智能排课,根据需要,随机智能排课。
2.1.1本系统的功能要求:
利用计算机实现计算机自动排课管理势在必行。
对于教育单位来说,利用计算机支持其高效率完成排课管理的日常事务,是适应现代教学制度要求、推动教学管理走向科学化、规范化的必要条件;而排课管理是一项琐碎、复杂而又十分细致的工作,课表信息录入,教师授课安排,限制条件输入,课表的自动生成等管理,一般不允许出错,计算机进行排课工作的管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高排课管理的效率,也是教育的科学化、正规化管理,与世界接轨的重要条件。
排课系统作为教务管理系统的重要的组成部分之一,与教务管理主系统有着密切的联系。
排课系统的许多数据资源来自教务管理系统,排课的结果又可提供给教务管理系统作为原始数据。
因此,排课系统具有以下主要功能:
①教务管理系统获取教师信息、课程信息与教室资源信息;
②通过校园网以Web页形式获取教师对排课的要求;
③根据各种要求将课程按教师授课时间不冲突教室使用不冲突、班级上课不冲突及实现教学高效率的基本原则,用合适的算法排成理想课表;
④设计应付多种特殊要求(如调课、补充排课等)的子模块以解决多种可能出现的问题;
⑤将排课结果提供给教务管理系统使用。
2.1.2排课的基本原则要求
①在课程的编排中应遵循一定的规则,只有按照基本规则来进行课程的编排才能够减少冲突的发生,这些基本规则主要有以下几条:
1)同一班级的学生在同一时间(某些特定的选修课时间除外)不能安排两门课程
2)同一教师在同一时间不能安排两门课程
3)同一教室在同一时间不能安排两门课程
4)同一时间安排的课程总数不能大于所能提供的教室总数
5)某一课程参加学习的总人数不应大于所安排教室的座位数
6)所提供教室的属性与课程所需教室的属性一致,在时间、教师、班级、教室、课程这五维关系中,时间、教师、班级三者之间存在着紧密关系。
相对而言,教室与它们关系就不那么密切。
②课程的安排不是任意的,为了达到最好的教学效果应遵循一定的要求。
这些要求主要有:
1)要尽量为所排课程安排上该类课效果最好的时间
2)课程在一周上多次时,要有一定的间隔性
3)公共课等涉及面广、学时多的课程应优先处理
4)对同一教师,同一上课对象应尽量选择相对固定的几个教室
5)对同一个班级的课程应选择相对固定的教室
6)连着的课的教室选择不应相隔太远
7)同一天有几门课时尽量把课分散
8)优先满足一些特殊要求(比如有些教室喜欢上上午的课,可以优先满足)
2.2数据流图
数据流图(DFD,dataflowdiagram)是描述数据处理过程的有力工具。
数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
图2-1自动排课系统功能模块的数据流图
教务处批准
学生
课表打印
学生选课
教师
课程申请课程清单课程表
选课结果表
课程基本信息表
图2-2黄山学院学生课程表的数据流图
学生
统计信息
学籍变更表
成绩信息表
学生个人信息表
变更记录
成绩记录
注册登记
进入界面
图2-3学生信息统计的数据流图
2.3数据字典
数据字典对数据流图的各种成分及注释、说明作用,给这些成分赋以实际的内容并且还要对系统分析中其他需要说明的问题进行定义和说明。
数据字典是对DFD的说明,是系统设计、系统实施维护的重要基础资料。
数据字典描述的主要内容主要有:
数据元素、数据流、数据存储、加工处理,其中数据元素是组成数据流的基本成分。
黄山学院自动排课系统的数据字典如下:
1.数据项:
它是不可再分的数据单元,一般包括如下内容
数据项={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,与其
他数据项的逻辑关系,数据项之间的联系}。
数据项名:
班号;
含义说明:
每个班级的代码,用来对所有班级加以区分;
别名:
班级编号;
数据类型:
字符型;
长度:
2位;
取值范围:
所有英文字母和所有自然数;
数据项名:
班级名;
含义说明:
用来对每个班级所在的系别和专业加以标示和区分;
别名:
班级名称;
数据类型:
字符型;
长度:
不限;
取值范围:
所有汉字或英语;
数据项名:
专业;
含义说明:
每个班级所代表的专业学科;
别名:
专门学业;
数据类型:
字符型;
长度:
不限;
取值范围:
所有汉字或英语;
数据项名:
年级;
含义说明:
每个班级及班级学生所代表的专业和学届;
别名:
年级名称;
数据类型:
字符型;
长度:
不限;
取值范围:
所有汉字或英语;
数据项名:
人数;
含义说明:
每个班级的人数;
别名:
学生数;
数据类型:
整型;
长度:
100;
取值范围:
所有自然数;
数据项名:
是否合班;
含义说明:
用来对每个班级是否是大小班进行分别;
数据类型:
整型;
数据项名:
教室号
含义说明:
每个教室的代码,用来对所有教室加以区分;
别名:
教室编号;
数据类型:
字符型;
长度:
4位;
取值范围:
所有英文字母和所有自然数;
数据项名:
教室类型
含义说明:
教室分为普通教室和多媒体教室;
别名:
教室的类型;
数据类型:
字符型;
长度:
不限
取值范围:
普通教室和多媒体教室;
数据项名:
教室容量;
含义说明:
用来描述上某课时所拥有的最大人数;
别名:
班级容量;
数据类型:
整型;
长度:
100;
取值范围:
所有自然数;
数据项名:
教师号;
含义说明:
对每个教师所在的系别和所授课的专业加以标示和区分;
别名:
教师编号;
数据类型:
字符;
长度:
4位;
取值范围:
所有英文字母和所有自然数;
数据项名:
教师姓名;
含义说明:
用来对每个教师加以标示和区分;
数据类型:
字符型;
长度:
2-4位;
取值范围:
所有汉字或英文;
数据项名:
职称;
含义说明:
用来描述教师所教授的课程;
别名:
职业称号;
数据类型:
字符型;
长度:
10;
取值范围:
所有汉字或英语;
数据项名:
所属学院;
含义说明:
用来描述教师所在的学院;
别名:
学院名称;
数据类型:
字符型;
长度:
不限;
取值范围:
所有汉字或英语;
数据项名:
课程号;
含义说明:
用来标识该门课在整个学校所开课的位置;
数据类型:
整型
长度:
3-8位;
取值范围:
所有英文字母和所有自然数;
数据项名:
课程名;
含义说明:
用来标示某门课;
数据类型:
字符型;
长度:
2-6位;
取值范围:
所有汉字或英文;
数据项名:
是否副课
含义说明:
用来区分专业课和公共课;
数据类型:
整型;
数据项名:
课程节数;
含义说明:
每门课所上的课时;
数据类型:
整型;
长度:
2-3位;
取值范围:
2节或3节;
数据项名:
课程分布;
含义说明:
用来分派课程所上的时间段;
数据类型:
字符型;
取值范围:
周一至周五和周末。
2.数据结构
数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
数据结构名:
课程
含义说明:
是课程管理子系统的主体数据结构,定义了一个课程的有关信息。
组成:
课程名,课程号,是否副课,课程节数,课程分布。
数据结构名:
班级
含义说明:
是班级管理子系统的主体数据结构,定义了一个班级的有关信息。
组成:
班号,班级名,专业,年级,人数.是否合班。
数据结构名:
教室
含义说明:
是教室管理子系统的主体数据结构,定义了一个教室的有关信息。
组成:
教室号,类型,教室容量。
数据结构名:
教师
含义说明:
是教师管理子系统的主体数据结构,定义了一个教师的有关信息。
组成:
教师号,教室姓名,职称,所属学院。
3.数据流
数据流是数据结构在系统内传输的路径。
数据流名:
选课
说明:
不同班级根据自己的专业来选择自己要上的课程
数据流来源:
计算机专业课程;
数据流去向:
计算机的所有班级;
组成:
课程号,课程名,是否副课,课程节数,课程分布,班号,班级名;
平均流量:
不限
高峰期流量:
人数不限
数据流名:
使用
说明:
每个班级根据自己的课程选择自己对应的教室
数据流来源:
计算机的所有班级
数据流去向:
每节课程所对应的教室
组成:
班号,班级名,教室类型,教室号
平均流量:
不限
高峰期流量:
人数不限
数据流名:
授课
说明:
每个教师教授自己所对应的一门课程
数据流来源:
计算机专业课程
数据流去向:
计算机专业的所有教师
组成:
课程号,课程名,是否副课,课程节数,课程分布,教师号,教师姓名
平均流量:
不限
高峰期流量:
人数不限
4.数据存储
数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
数据存储名:
班级表
说明:
记录班级的基本情况
输入数据流:
来自各班的实际情况
输出数据流:
面向广大师生
组成:
班号,班级名,专业,年级,人数,是否合班
数据量:
不限
存取频度:
随时都行
存取方式:
批处理
数据存储名:
教师表
说明:
记录教师所授课程的基本情况
输入数据流:
来自教师的基本情况
输出数据流:
面向广大师生
组成:
教师号,教师姓名,课程号,职称,所属学院
数据量:
不限
存取频度:
随时都行
存取方式:
批处理
数据存储名:
教室表
说明:
记录教室的类型和对应班号的基本情况
输入数据流:
来自教室和对应班号的基本情况
输出数据流:
面向广大师生
组成:
教室编号+类型+班号+教室容量
存取频度:
随时都行
存取方式:
批处理
数据存储名:
课程表
说明:
记录计算机专业每门课的基本情况和安排情况
输入数据流:
来自计算机专业每门课的基本情况和安排情况
输出数据流:
面向广大师生
组成:
课程号+课程名+是否副课+节数+课程分布
存取频度:
随时都行
存去方式:
批处理
数据存储名:
教学时间段表
说明:
记录课课节数对应的时间段
输入数据流:
来自课节数对应的时间段
输出数据流:
面向广大师生
组成:
时间段+节数+附注
存取频度:
随时都行
存取方式:
批处理
数据存储名:
班级课程表
说明:
记录计算机专业的每个班级对应的课程号
输入数据流:
计算机专业的每个班级对应的课程号
输出数据流:
面向广大师生
组成:
班级课程号+班号+课程号+时段
存取频度:
随时都行
存取方式:
批处理
5.处理过程
处理过程名:
添加记录
说明:
增加各项课程的记录
输入:
班级信息,课程信息
输出:
各项记录的数据
处理:
为保证数据的有效性、一致性、完整性,在录入新记录时,系统能根据操作员输入的编号到课程表中查询是否已经存在这样课程的记录,如果已经存在,则给出更换课程的提示;如果不存在,则判断课程名是否为空,如果是空的则提示输入,否则进行班级课程时间冲突的判断,再进行是否副课进行选择,该课程上课节数等一系列必须输入的项目的审核,如果都通过才能把当前输入的所有信息项插入到物理数据库的课程表中。
处理过程名:
查询信息
说明:
了解课表的各项情况
输入:
用户名,用户的密码
输出:
课表的各项基本情况
处理:
系统能按等单项或多项的组合进行精确或模糊查询,并把查询的结果显示在表格中。
处理过程名:
更新记录
说明:
对那些需要更该其信息的课程进行各项功能的更新
输入:
需要更改的信息
输出:
更该后的信息
处理:
本模块实际上包含两个模块,即修改和删除。
在修改子模块中,首先查询出要修改的记录,然后对每一条记录进行除班号外的任何一项的修改。
在删除子模块中,也同样是先查询出要删除的记录,因为删除操作是一个没有反悔余地的操作,故在删除前会给出一次确认的机会,如果此时不想删除就可马上取消,但如果真正要删除则从数据库中永久性的删除。
当然可以把删除的信息保存到历史记录中。
3系统功能设计
3.1系统功能描述:
1.1基本信息管理:
教师、教室、班级、课程、教学任务等数据的输入、编辑功能;
1.2数据处理:
自动排课、课表修改、删除功能;
1.3数据输出:
桌面查询教师、教室、班级课程表,报表打印教师、教室、班级课程表;
1.4帮助:
指导用户使用该系统及其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黄山 学院 自动 系统 数据库 设计