1 引言
在现代,高科技的飞跃发展,计算机的大量普及,使得人们生活节奏越来越快。因此对教育行业的多
元信息进行有效的管理工作,也成为教育行业中的重中之重。目前,学校工作繁杂、资料重多,虽然各类
管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。
为各高校教务工作人员减轻负,提高工作效率,所以制作了学生成绩管理系统。
学生选课成绩管理系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的
数字化管理。比较系统地对教务、教学上的各项服务和信息进行管理,使数据管理更现代化、自动化、智
能化、人性化。同时,减轻了学院教务人员管理的工作量,缩小开支,提高工作效率和准确率,使其变得
更具有条理性,科学性,为教育行业做出了巨大的贡献,也为今天的民办教育在未来市场的竞争力有所提
高。学生选课和成绩管理系统使用了全新的选课和成绩管理理念,系统从完善的基础信息管理,和对创建
新用户、已创建的成绩数据的录入,修改,浏览,统计等功能操作,基本能够满足各高校教师的需要。
2 系统技术及运行环境开发
2.1 Visual Foxpro 6.0 简介
Visual Foxpro 6.0 是计算机优秀的数据管理系统软件之一,正如其名称中的“Visual”一样,它采用了可
视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了应用系统的开发过程,并
提高了系统的模块性和紧凑性。是新一代的小型数据库管理系统的杰出代表,它以其强大的性能、完整而
又丰富的工具、较高的处理速度、友好的界面以及完备的兼容性,备受广大用户的欢迎。目前,Visual Foxpro
6.0 是用户收集信息,查询数据、创建集成数据库系统、进行应用系统开发较为理想的微机数据库管理系统。
2.2 系统开发及运行环境
该运行环境的规定是保证本需求说明的功能得到实际真正体现的基础。
(1)运行环境 Windows98 或更高版本的操作系统
数据库系统:Microsoft Visual Foxpro 6.0
(2) 开发环境:
开发工具:Microsoft Visual Foxpro 6.0
数据库系统:Microsoft Visual Foxpro 6.0
3 系统分析
3.1 系统开发的必要性分析
学生选课及成绩管理系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关
重要,所以它应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理
文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,
这对于查找、更新和维护都带来了不少的困难。
1
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的
各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手
工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低
等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条
件。因此,开发这样一套系统成为很有必要的事情。
3.2 可行性分析
3.2.1 技术可行性
本系统仅需要一台装有 Visual Foxpro 6.0 软件的计算机即可,对机器本身没有太高的要求,一般当前学
校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟。
3.2.2 经济可行性
由于本系统是为学生选课管理使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系
统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软
件的开发成本。在经济上完全可行。
3.3 需求分析
3.3.1 用户需求:系统现状,要解决的主要问题,达到的具体指标等。
用户需求分析阶段的首要任务就是要明确数据库应用系统的开发目的。
像一般的应用系统一样,数据库应用系统的目的一般首先由拥护提出,也可以由数据库应用系统开发者
拟定。学生选课成绩管理系统的目标是建立一个选课成绩计算机管理系统,以取代人工管理的大部分事
务,开发的目的如下:(1)能对学生选课成绩的有关数据进行输入、修改、查询;(2)打印学生选课成绩
报表;(3)对学生选课成绩进行统计;(4)打印学生成绩。
3.3.2 业务流程分析:描述系统的业务流程,画出规范的业务流程图。
2
系统登陆
输入密码
退出系统
密码错误,
请重新输入
密码正确,进
入系统
进入系统选
项主页
查询
修改
添加
统计
打印
退出系统
3.3.3 信息需求分析
资料收集:业务流程中用到的相关单据票证帐簿报表报告等资料,画出格式,最好是填有具体内容的
表格等。
学生选课成绩管理的要求主要是:能够很好地系统地知道学生选课成绩情况,包括学生基本信息、老
师基本信息、课程基本信息等。
事项分析:分析资料中标题、表头等中各栏目名,列出所有事项,作为数据项;分析这些数据项,找
出组合项、导出项、非结构化数据项,确定基本项。检查是否有要补充的基本数据项,是否有要改进的地
方,补充改进之,得出所有基本项。
从数据分析中可知,在学生选课成绩管理中,应在实际运行时有以下重要的反映成绩内容、效果、进
3
程的参数:(1)学生基本信息(2)老师基本信息(3)学生选课成绩信息(4)对选课成绩进行统计(5)学生与成
绩
通过对这些数据需求的分析,应该找出需要用信息数据来表达的内容及其方式,还要找出相互之间的
关系,在这种复杂的关系中进行有关主题的提炼,用这些既独立又相互关联的主题以及每一个主题所表达
的,有单一信息价值内涵的数据项集合及其处理方式,来构造一个数据库系统框架结构。
通过数据需求的调研应归纳出与系统相关的数据。对这些数据进行分析、归纳,从中找出“规律”,提
炼主题并排除冗余数据。
4 系统设计
4.1 数据库概念模型设计
确定实体、联系及其属性,并确定主实体的主标识,画出 ERD(不少于两个主实体,一个从实体,一个
联系和 24 个属性);检查改正错误;对其中复杂的多元联系进行分析,必要则改进。
概念模型有以下几个主要特点:
(1)能充分反映实际应用中的实体及其相互之间的联系,是现实世界的一个真实模型。
(2)由于概念模型独立于具体的计算机系统和具体的数据库管理系统,因此,便于用户理解,有利于用
户积极参与设计工作。
(3)概念模型容易修改。当问题有变化时,反映实际问题的概念模型可以很方便地扩充和修改。
(4)便于向各种模型转换。由于概念模型不依赖于具体的数据库管理系统,因此,容易向关系模型、网
状模型和层次模型等各种模型转换。
概念结构设计要借助于某种方便又直观的描述工具,E-R(实体-联系,Entity-Relationship)图是概念模
型的有力工具。在 E-R 图中,用三种图框分别表示实体、属性和实体之间的联系,其规定如下:
(1)用矩形框表示实体,框内标明实体名;
(2)用椭圆形框表示实体的属性,框内标明属性名;
(3)用菱形框表示实体间的联系,框内标明联系名;
(4)实体与其属性之间以无向边联接,菱形框与相关实体之间也用无向边联接,并在无向边旁标明联系
的类型。
本系统的 E- R 图如下图所示:
4
姓名
性别
出生日期
学号
从属
学 生
班级编号
选修
课程代码
班级编号
班级
年级
专业
课程名称
类别
学制
系代码
类型
教师
授课
教师代码
课程
教师代码
出生日期
性别
姓名
籍贯
备注
4.2 数据库逻辑模型设计
4.2.1 一般逻辑模型设计:列出数据库初步构思的关系框架(二维表的表头)[与具体 DBMS 无关],并检
查改进之。
4.2.2 具体逻辑模型设计:按所用的 DBMS(如 VFP)要求,设计表(文件)的具体结构,在关系框架
下补充字段类型、长度、小数位数等行。
4.3 数据库物理设计与数据库保护设计
在完成了数据库的逻辑结构设计以后,则要进行物理结构的设计。物理结构设计的任务就是为逻辑结
构设计阶段所得到的逻辑数据模型选择一个最适合应用环境的物理结构。
物理结构的设计依赖于具体的计算机系统,它是一个反复进行的过程。首先要针对具体的数据库管理
系统和设备的特性,确定实现所设计的逻辑数据模型必须采取的存储结构和存取方法;然后对该存储模式
进行性能评价,若评价结果满足原设计要求则进入设计实施阶段,否就要修改设计,经过多次反复,直到
取得满意的结果为止。
下面对物理结构设计的内容和要求作简单介绍。
(1)物理结构设计的准备工作
为了有效地进行物理结构设计,设计人员必须对特定的数据库管理系统和设备特性有一个充分的了解。
5
①要充分了解和掌握所用的数据库管理系统的性能和特点,包括数据库管理系统的功能,提供的物理环
境、存储结构、存取方法和可利用的工具等,同时对它们的优缺点要心中有数。通常,数据库管理系统提
供了一种以上的存储结构和存取方法,只有对它们的特点、适用范围等有充分的了解,才有可能针对用户
的应用要求选择最合适的存储结构和存取方法。
②要十分熟悉存放数据的外存设备的特性。例如,要清楚地知道物理存储区的划分原则、物理块大小、
设备的 I/O 特性等。
③要了解并熟悉应用要求。掌握系统中各个应用之间的关系,分清主次,对不同应用按照对组织的重要
程度和使用方式进行分类。了解各个应用的处理频率和响应时间要求,对时间和空间效率的平衡是非常重
要的。在物理结构设计中,要考虑数据的存取和数据的处理两个方面,必须要处理时间和空间这对矛盾,
充分了解和掌握各种应用的情况,以便作出最优处理。
物理结构设计的内容:
确定数据的存储结构:
在确定数据的存储结构时,主要是在存取时间、存储空间的利用率和结构维护三个方面进行折中考虑
通常,数据库管理系统提供了多种存储结构,因此,设计者可以根据各个应用的特点和要求从所提供的存
储结构中进行选择。
选择存取路径:
数据库的根本特点是数据的共享,因此,对同一数据的存储要提供多种存取路径。存取路径直接影响
数据存取的效率。在进行物理结构设计时要确定建立哪些路径,而路径的选择主要是考虑索引的选择和文
件之间的联系两个问题。例如,要对建立多少个索引、在哪些数据上建立索引、文件之间的联系如何实现
等作出选择。选择的原则是既有较高的检索效率,又使花费的代价最小。
确定数据存放的位置:
数据的存放位置对系统性能也有直接影响。为了提高系统的效率,要根据应用情况对数据进行分组,
按存取频率和存取速度的不同,分别存放在不同的存储设备上,以满足存取要求。同时,对一个文件内的
数据也可以进行“分解”,根据各数据的存取频率不同,可以对文件进行“垂直分解”,把经常存取的数据
放在一起,可以提高存取效率。根据各记录的存取频率不同,可以对文件进行“水平分解”,把经常使用
的记录或要顺序存取的记录分为一组,并存放在一起,这样可以提高系统的存取效率。
确定存储分配:
根据应用和数据库管理系统所提供的存储分配参数,确定块大小、缓冲区的大小和个数、溢出空间的
大小等,以便使存取时间和存储空间的分配尽量达到最优。
4.3.1 设计索引:在表(文件)的具体结构关系框架下补充字段索引行或在框架外补充索引说明,指出
索引字段或索引表达式、索引类型。
6
4.3.2 设计表间关系:列出父表与子表的关联索引,指出要建立的表间关系的类型。
4.3.3 完整性设计:列出主要字段完整性的字段名、完整性约束条件;列出记录完整性约束及其约束条
件;列出参照完整性表。
4.3.4 在有多个用户操作时,考虑用户授权与安全性控制。
4.4 处理功能设计(注意:此时系统未实现,设计结构都是写出或画出的,而不能是系统运行生成的)
4.4.1 主控模块设计:包括系统环境初始化、欢迎画面、用户身份验证、主控表单或菜单、告别画面、
系统退出的环境恢复等功能。
4.4.2 子模块设计:按系统业务要求设计各项业务模块和系统管理模块,要能完成系统业务和系统管理
功能,总体规模至少要达到 5.2.1—5.2.4 的要求。
4.4.2.1 设计输入:设计输入数据到表中的表单或窗口,注意实现用户定义的完整性约束,并具有输入
校验,以确保输入数据正确,没有垃圾数据混入。
4.4.2.2 视图设计:设计不少于两个定式视图,并提供调用视图设计器的用户现场生成视图。
4.4.2.3 查询设计:设计不少于两个定式查询,并提供调用查询设计器的用户现场生成查询。
4.4.2.4 报表设计:设计不少于两个定式报表,并提供调用报表生成器的用户现场生成报表。
5 数据库应用系统的实现
5.1 数据库及其表结构的建立:建立数据库描述文件(.DBC)及其数据库表(.DBF),注意完整性、索
引与永久关联的实现,并附打印出的作为系统命令执行结果的数据库表结构及其关联图、参照完整性表。
1、 课 程 表
字 段 名
字 段 类 型 字 段 长 度 是 否 可 以 为 空 备 注
课 程 代 码 字 符 型
课 程 名 称 字 符 型
类 别
字 符 型
教 师 代 码 字 符 型
2 分 数 表
字 段 名
5
14
4
4
否
否
否
否
索 引
索 引
字 段 类 型 字 段 长 度 是 否 可 以 为 空 备 注
学 号
字 符 型
课 程 代 码 字 符 型
成 绩
数 值 型
6
5
4
否
否
否
索 引
索 引
3 班级表
字 段 名
字 段 类
字 段 长
是 否 可 以 为
备 注
型
班 级 编 号
字 符 型
度
4
空
否
7
年 级
专 业
系 代 码
学 制
类型
4 学生表
关 键 字
字 符 型
字 符 型
字 符 型
2
10
1
字 符 型
1
字符型 4
否
否
否
否
否
字 段 名
字 段 类
字 段 长
是 否 可 以 为
备 注
型
度
学 号
姓 名
性 别
出 生 日 期
班 级 编 号
字 符 型
字 符 型
字 符 型
日 期 型
字 符 型
类 型
字 符 型
6
8
2
8
4
4
空
否
否
否
否
否
否
5 教师表
关 键 字
字 段 名
字 段 类
字 段 长
是 否 可 以 为
备 注
教 师 代 码
姓 名
性 别
出 生 日 期
籍 贯
技 术 职 务
备 注
型
度
字 符 型
字 符 型
字 符 型
日 期 型
字 符 型
字 符 型
备 注 型
4
8
2
8
6
10
4
空
否
否
否
否
否
否
否
关 键 字
8