李红霞
摘要:Oracle数据库是一种实用性很强且功能非常强大的数据库技术,该文分析了适用于高职院校的学生信息管理系统的需求,给出了详细的系统设计方案,包括系统结构设计、数据库设计,分析了学生信息管理系统的实现及软件测试。
关键词:Oracle数据库;学生信息管理系统;软件测试
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)35-0013-02
Abstract: Oracle database is a very practical and powerful database technology. This paper analyses the requirements of student information management system for Higher Vocational colleges, and gives a detailed system design scheme, including system structure design, database design, and the realization and software of student information management system and Part test.
Key words: Oracle database; student information management system; software testing
在软件开发里,数据库技术是软件开发中的非常重要的一个步骤,数据库技术的发展已成为信息技术中最重要的组成部分之一。早期的层次数据库、网状数据库和关系数据库,都在很多领域取得了巨大的成就。但是关系数据库也存在一定的局限,尤其是随着应用领域的不断扩展,这种不足就更加明显。面向对象技术的出现,成功地解决了这一问题,因此,面向对象数据库系统已成为数据库系统领域新的研究和发展方向,而SUN公司开发的Oracle(甲骨文)数据库就是面向对象数据库系统最杰出的代表之一。
1 Oracle数据库介绍
提起数据库,首先想到的公司SUN公司,开发了一款面向对象的数据库系统Oracle。在互联网信息时代,作为数据库技术的先驱和领导者,Oracle公司积极为广大用户提供最新的技术,Oracle数据库之所以成为当今世界上使用最广泛的关系数据系统之一,主要原因是其产品能够覆盖大型、中型、小型机等几十种机型。Oracle系统是建立在Oracle关系数据库上面的可支持多种操作系统并且具有可移植性、可兼容性、可连接性的大型数据库[1]。正因为Oracle系统这种明显的灵活性特点,深受广大用户喜爱。
2 基于Oracle的学生信息管理系统的分析与设计
学生信息管理是每一所高校都必須应对的工作,尤其是近年来,随着我国教育政策调整,高等院校的学生越来越多,学生信息管理的工作任务就会加重,学生处做好学生的信息管理工作至关重要,随着学生数量日益增多,大量的数据使档案管理者的工作量不断增大,对查找、更新和维护学生信息带来了很大困难。相对于传统的人工管理,使用计算机来管理学生的信息及成绩,查找迅速、检索方便且方便存储。因此,拥有一套自己的学生信息管理系统,对高等院校来说非常迫切。
2.1 需求分析
2.1.1 用户调查
经过调研,并多次与学生档案管理的教师进行研讨后,进一步加深了对学生档案管理业务的了解,在充分熟悉和掌握的基础上,将学生档案管理业务的整个流程具体描述如下:
1) 新生开学入校后,先报到,然后去财务部门缴纳学费和住宿费,持缴费单前往自己被录取的专业所在系进行注册。2)报到注册后,根据选报专业分配到班级。3)进入正常的大学生活后,每位同学按照课程安排参加各种教学活动,学期末参加各课程的期末考试。4)考试结束,由各系或部将每位同学的考试成绩及其他一些相关信息记录报送到学生处,由学生处专门工作人员整理到每个同学的档案中。
2.1.2 构造系统的逻辑模型
经过用户调查后,需要构造该研究中的学生信息管理系统的逻辑模型,可以根据高校管理学生信息的流程,把学生作为系统模型中的数据流图的源点和终点,按照数据流图建立一个逻辑模型,并逐步进行细化,得出该系统的数据流图以便进行下一步的研究。
2.1.3 确定目标系统的功能并进行数据分析
任何一个管理信息系统在开发前,都必须要确定要开发的目标系统的功能。该研究中的学生信息管理系统需要实习如下功能[2]:首先必须得有数据添加功能。新生入学报到后,系统需要建立班级信息并要进行该专业所在的课程设置,如新增专业,则能添加新专业,必须能够录入学生的期末考试成绩和奖惩信息;二是数据修改功能。如果上述资料发生变化或输入信息错误时,应能够及时修改和补充数据;三是数据查询功能。该系统的主要功能之一就是根据用户提供的相关信息,能够将对应的学生信息及时查出,且系统应该能够根据不同用户的需求,提供多种查询方法;四是数据打印功能一般用于打印学生的信息表和成绩表。
2.2 系统设计
该系统的软件结构设计如下:1)用户登录:对系统进行初始化设置,包括对专业、课程和班级的设置。2)新生入学报到:给每一个新入学的学生新分配学号,并录入该学生基本信息,最后按专业分班进行教学。3)学生分配到各个班级、领取学习教材开始新的大学生活。4)管理学生系统的老师对学生的奖励惩罚的基本信息进行随时添加并进行修改。5)期末考试结束,用户可以把每个学生的考试成绩进行录入、查询和修改。
2.2.1 数据库的逻辑设计
由于系统的数据分析已完成,因此在需求分析阶段最主要的工作,就是将上一阶段成果转化为具体的数据库。根据前面得到的各个关系,现把它们转化为数据表。该系统主要有学生信息表、班级信息表、成绩信息表、课程信息表以及专业信息表等。
2.2.2 基于Oracle数据库的物理设计
数据库设计主要包含数据库的逻辑设计和物理设计,通常先进行逻辑设计,然后进行物理设计。该研究中的学生信息管理系统的数据库采用Oracle数据库进行设计,共创建了7个数据表,其结构分别如表1所示:
在设计和创建数据库及数据表的过程中,将会使用大量的SQL语句,以下是数据库中的一些重要的SQL语句段,1)创建数据库,CREATE DATABASE student。2)创建数据表, CREATE TABLE xsXX。3)在用户管理表中,给出查询用户信息SQL语句和删除用户信息SQL语句。查询用户信息:SELECT * FROM用户信息,删除用户信息:DELETE FROM 用户信息 WHERE 用户名称='%s'。4)查询专业信息和班级信息语句,SELECT 班级 FROM 班级信息 WHERE 专业名称='%s',SELECT 班级编号,人数FROM 班级信息 WHERE 班级名称='%s'。
2.2.3 系统模块结构图和流程图
以下是这个软件系统的模块结构图和主程序的流程,如图1所示:
3 学生信息管理系统的实现
3.1 学生信息管理系统的实现
该研究中的学生信息管理系统采用Visual C++ 作为开发工具,而数据库采用Oracle数据库。C++语言可以看作是C语言的延伸,C语言属于单纯的结构化程序设计语言,但是C++语言的功能更为强大,既可以编写传统的结构化程序[3],也可以实现面向对象的程序设计,是一款非常流行且实用的编程语言,很受程序员的欢迎。
这里主要介绍学籍管理模块的技术实现,系统其他管理模块的技术实现与之相似,下面程序段只给出了部分主要代码。
学生信息查询的实现方法:
CString str;
CString strTemp;
CString cmdSQL = "SELECT * FROM 学生信息 WHERE";
if (m_strNumberQuery.GetLength() != 0) {
str.Format(" 学号='%s'", m_strNumberQuery);
cmdSQL += str;
}
else {
if (m_strNameQuery.GetLength() != 0) {
str.Format(" 姓名='%s' AND", m_strNameQuery);
cmdSQL += str;
}
if (!dbopera.Execute(cmdSQL)) {
MessageBox(dbopera.ErrorMessage(), "错误", MB_ICONWARNING);
return;
}
if (dbopera.IsEOF()) {
MessageBox("沒有满足条件的记录信息!", "提示", MB_ICONINFORMATION);
return;
}
3.2 Oracle数据库的连接
该研究中的学生信息管理系统所采用的数据库连接为ADO数据访问技术,若想使用ADO来实现对数据库的操作[4],需要采取以下四个步骤:第一步要创建一个数据源连接到数据库;第二步要创建一个执行SQL命令行的对象;第三步是把以表格形式返回的数据自动保存到缓存中,这样可以方便用户进行数据查找和操作;第四步是对数据进行添加、删除、修改等操作,同时对数据源进行及时更新。
3.3 系统测试
3.3.1 测试方案
在软件工程里,常见的软件测试的方法有黑箱测试法和白箱测试法。黑箱测试法主要用于测试系统的功能,并不去管程序内部结构是什么样的,黑箱测试法也可以叫作功能测试法,白箱测试法与黑箱测试法刚好相反,主要来测试软件的内部程序结构,又可以叫作结构测试法,通常黑箱测功能,白箱测结构。在软件测试里,有的软件会选用白箱测试法,有的会选用黑箱测试法,也有的关键会把白箱测试法和黑箱测试法结合使用。
该系统使用黑箱测试法对系统中的每一个小单元的功能进行单元测试、然后对整个系统做集成测试和功能测试,通过测试结果看系统功能是否能够满足用户需要。
3.3.2 测试学生信息管理系统的模块及模块测试结果分析
该系统主要测试的模块有学籍管理、班级管理、专业课程和成绩管理四个测试模块。由于该系统功能的实现都需要用户进行输入,因此使用的测试方法大都是通过手动进行输入,用户在登录时,自己手动输入系统分配给的用户名和密码,信息正确时,就可以进入到学生信息管理系统的主界面,进入界面后可以添加学生信息、设置专业信息等。测试结果表明该系统的打印功能还未能完全实现,在今后的逐步深入研究中还要继续开发,以弥补不足。
4 结束语
学生信息管理系统是高校中不可缺少的管理系统,分析与设计出一个适合高职院校使用的学生信息管理系统是一项重要的工作。该文较为详尽地分析了学生信息管理系统的研究现状,并详细分析了学生信息管理系统的系统功能,给出了详尽的系统模块设计与数据库设计的方案。对这个管理系统的实现与应用也是值得研究的一项重要内容,还未实现的功能将在今后继续完成。
参考文献:
[1] 姜汉祥.基于Oracle的重庆大学教学管理信息系统的设计与实现[M]. 重庆:重庆大学,2006.
[2] 周亿.学生信息管理系统的设计与开发[M]. 武汉:华中师范大学,2005.
[3] 王英合.基于WEB的学生管理信息系统的设计与实现[M].青岛:中国海洋大学,2006.
[4] 刘扬.学生信息管理系统的设计与实现[M].济南:山东大学,2006.
[通联编辑:谢媛媛]