当前位置:文档之家› 学生成绩信息管理系统开发与设计

学生成绩信息管理系统开发与设计

学生成绩信息管理系统开发与设计
学生成绩信息管理系统开发与设计

学生成绩信息管理系统开发与设计

目录

摘要..................................................................................................................... II ABSTRACT ...................................................................................................... I II 引言. (2)

第1章绪论 (4)

1.1问题的提出 (4)

1.2现有系统存在问题的分析 (5)

1.3系统开发目标 (5)

1.4开发工具的选择 (6)

1.5开发方法的选择 (6)

1.5.1系统分析 (8)

1.5.2系统设计 (8)

1.5.3系统实施 (9)

1.5.4调试维护 (9)

1.6开发本系统的意义 (10)

第2章系统分析 (11)

2.1背景分析 (11)

2.2组织机构调查分析 (11)

2.3可行性分析 (12)

2.3.1技术可行性分析 (12)

2.3.2经济可行性 (13)

2.3.3运行可行性 (13)

第3章系统设计 (14)

3.1系统功能设计 (14)

3.2数据库设计 (15)

3.3算法分析 (17)

第4章系统调试与运行 (22)

4.1系统调试 (22)

4.2系统测试与运行 (22)

4.2.1测试方法 (22)

4.2.2测试数据 (23)

4.2.3测试内容 (23)

4.2.4测试结果 (23)

第5章结论 (24)

致谢 (25)

参考文献 (26)

引言

开发学生成绩统计分析系统的目的

今天的计算机的价格已经十分低廉,性能却有了长足的进步,它已经被应用到许多领域,如教育、国防、企业事业单位等。计算机之所以如此流行的原因主要有以下几个方面:

1、计算机可以替代人工进行许多繁杂的劳动。

2、计算机可以节省许多资源。

3、计算机可以提高人们的工作效率。

4、计算机可以使敏感文件更加安全、更加可靠等。

随着信息技术的不断发展,学校对教务管理也越来越重视了,资金投入比例也在加大,学生成绩统计分析系统开发也开始走向完善的阶段。

学生成绩统计分析系统是典型的信息管理系统(MIS, Managemeng Information System),是一个由人、计算机等组成的能进行信息的收集、传送、存储、维护和使用的系统。本系统开发的任务是实现学生成绩管理的信息化、系统化、规范化。目的是开发一个具有添加,查询,修改,更新,维护等功能强大的数据库管理系统。

本系统基于WINDOWS操作平台,利用计算机关系数据库技术和面向对象的程序设计思想设计而成的。该系统我们将采用的开发工具是ActiveX Data Objects (ADO) 是微软最新的数据访问技术。它被设计用来同新的数据访问层OLE DB Provider一起协同工作,以提供通用数据访问(Universal Data Access)。OLE DB是一个低层的数据访问接口,用它可以访问各种数据源,包括传统的关系型数据库,以及电子邮件系统及自定义的商业对象。

ADO向我们提供了一个熟悉的,高层的对OLE DB的Automation封装

接口。对那些熟悉RDO的程序员来说,你可以把OLE DB比作是ODBC 驱动程序。如同RDO对象是ODBC驱动程序接口一样,ADO对象是OLE DB的接口;如同不同的数据库系统需要它们自己的ODBC驱动程序一样,不同的数据源要求它们自己的OLE DB提供者(OLE DB provider)。目前,虽然OLE DB提供者比较少,但微软正积极推广该技术,并打算用OLE DB 取代ODBC。

ADO向VB程序员提供了很多好处。包括易于使用,熟悉的界面,高速度以及较低的内存占用(已实现ADO2.0的Msado15.dll需要占用342K 内存,比RDO的Msrdo20.dll的368K略小,大约是DAO3.5的Dao350.dll 所占内存的60%)。同传统的数据对象层次(DAO和RDO)不同,ADO 可以独立创建。因此你可以只创建一个"Connection"对象,但是可以有多个,独立的"Recordset"对象来使用它。ADO针对客户/服务器以及WEB应用程序作了优化。

本文的目的是带你进入ADO广阔的世界并开始使用它。后台数据库采用的是Access 2003数据库,数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。良好的数据库设计,可以提高数据信息的存储效率保证数据信息的完整性和一致性。

第1章绪论

本文以学生成绩统计分析系统的开发为背景,论述了管理信息系统的概念、结构及系统开发的基本原理和方法,全文共分为绪论、系统分析、系统设计、系统实施、总结、致谢、参考文献、附录等。

1.1问题的提出

数据库是一门研究数据管理的技术,始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。

随着社会的发展和经济时代的到来,管理信息系统在各行各业都越来越重要,特别是教育事业。在经济发达的国家,许多教育机构(如公办、私立、培训机构等),都投入了大量的资金开发MIS系统,以求在将来激烈的竞争中立于不败之地。在我国,民办教育是新兴的一个行业,是随着改革开放和市场经济的发展根据中国特有的国情发展起来的,特别是中国民办教育促进法的出台,从一定的程度上规范和促进了中国民办教育的发展,这是一个很有发展前途的新兴产业,但是同发达国家相比,我国的民办教育行业的信息技术的应用程度还很低,只有在大城市中发展较早、规模较大的民办院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些新兴的、规模较小的民办机构还没有全部具备这种功能。因此可见,随着我国民办教育的迅速发展,信息技术在其上的应用会更加地广泛和深入。

1.2现有系统存在问题的分析

有的学校根本就没有学生成绩统计分析系统,还是手工操作。虽然计算机日新月异的发展,但是有的领导只见眼前利益,不关心,甚至不敢尝试新兴的事物。手工操作还十分落后,效率极低,成本很大,以后的社会是信息的社会,信息只有快,准,精才能发挥其价值。

所以机器代替人力是必然的历史发展趋势,只有领导的重视和支持才能从人工操作改为计算机的自动化系统。人工操作必将被计算机代替。

有些学校虽使用了计算机,甚至管理系统,但是仍然存在很多问题,问题一日不解决,效率就一日提不上去。

还有,有的系统很不完善到处是漏洞,可以说是千疮百孔,这样极不完善的系统能有保障吗?

1.3系统开发目标

本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学校的工作流程设计完成的。为了使系统在学校的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:

1.系统应具有实用性、可靠性和适用性,同时注意到先进性。

2.对各个数据库进行动态管理,防止混乱。

3.能够按照用户选择的不同的条件进行简单查询和复合查询。

4.能够对查询结果进行分类汇总,实现报表打印。

5.方便用户的操作,尽量减少用户的操作。

1.4开发工具的选择

在开发工具的选择上,我们选择最普遍的开发系统,于是选择了美国Mircrosoft 公司推出的Visual C++ 2003 开发工具。后台数据库采用的是Access 2003数据库,数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。良好的数据库设计,可以提高数据信息的存储效率保证数据信息的完整性和一致性。

1.5开发方法的选择

在开发方法的选择上,选择了演绎式原型法与生命周期法相结合的方法。具体来说,就是在系统开发之前对系统有一个总体框架设想,各功能单元的结构和功能也比较清楚,但是还没有具体实现。系统完成什么功能,分成哪几个部分,各个部分又有哪几个模块,都已理解掌握,且以后不需要做更大的变动,只是具体到每个模块,还没有全部实现。具体地设计可能是完全实现一个模块,也可能是用一个效率高地模块代替一个旧模块。信息系统的开发是一项比较复杂的工作,我们必须选用科学的有效的开发方法。近年来,国内外已逐步总结出一些开发信息系统的方法和技术,但是,从目前的情况来看,系统的开发技术仍是一个比较薄弱的环节。那么根据本系统开发的要求,本系统选择了生命周期法和原型法相结合的方法。现具体介绍如下:

生命周期这个概念源于系统工程方法。广义地说,任何系统均有其发生、发展、成熟、消亡或更新换代的过程,这个过程称为系统的生命周期。主要包括系统调查阶段、系统分析、系统设计、系统实施及系统维护与评价五个部分。根据系统设计而对整个系统实施,包括物理实施,程序设计,调试等。实施是最后的一步,关系着最后的成功。

系统实施的任务主要包括:

1.程序设计

2.物理实施

3.使用说明书

4.编译

在建筑学和机械设计学中,“原型”指的是其结构、大小和功能都与某个物体相类似的模拟该物体的原始模型。在管理信息系统开发中,用“原型”来形象地表示系统的一个早期可运行版本,它能反映新系统的部分重要功能和特征。“原型方法”则是利用原型辅助开发系统的一种新方法。原型方法要求在获得一组基本的用户需求后,快速地实现新系统的一个“原型”,用户、开发者及其他有关人员在试用原型的过程中,加强通信和反馈,通过反复评价和反复修改原型系统,逐步确定各种需求的细节,适应需求的变化,从而最终提高新系统的质量。因此可以认为原型方法确定用户需求的策略,它对用户需求的定义采用启发的方式,引导用户在对系统逐渐加深理解的过程中作出响应。

原型法主要包括确定系统基本需求阶段、构造初始原型阶段、原型的使用评价阶段、修改原型阶段和确定模型后的处理阶段。

原型法的基本思想是:凭借着系统分析人员对用户要求的理解,在强有力的软件环境支持下,快速地给出一个实实在在的模型(或称原型、雏形),然后与用户反复协商修改,最终形成实际系统。

在本系统中选择了演化型(Evolutionary Prototying)原型法,其目的不在于改进规格说明和用户需求,而是将系统改造得易于变化,在改进原型的过程中将原型演化成最终系统。它将原型方法的思想贯穿到系统开发全过程,对满足需求的改动较为适合。

1.5.1系统分析

先根据用户提出的建立新系统的要求,进行初步调查和初步可行性分析,提出系统总体规划。再对原系统进行深入的调查,彻底掌握原系统的模型,并在此基础上提出新系统的逻辑模型。

A.系统目标

学校在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,使用本系统对学生的成绩进行合理管理,实现学生成绩的录入、编辑、删除等功能,也可以实现成绩的排序、检索等。它将成为教务处老师的一个很好的帮手。

B.系统功能

总体来说,学生成绩管理系统完成以下功能:

1 学生管理

2 成绩管理

3 成绩打印

1.5.2系统设计

根据系统分析确定的逻辑模型,确定新系统的物理模型,即计算机化信息系统应用软件的总体结构和数据库设计,并提出系统配置方案,继而对物理模型进行详细的设计。主要内容有:代码设计,用户界面设计,处理过程设计,编写系统设计说明书。

系统设计是以系统分析为基础,而系统设计又是系统实施的基础,系统设计的主要任务是代码设计、物理设计、数据库设计、功能结构图设计。

系统设计的任务主要包括:

1.代码设计

2.系统物理设计

3.数据库设计

1.5.3系统实施

按照物理模型实现应用软件的编写和测试,系统试运行,编写技术文件,系统转换,系统交付使用,以及运行后的系统维护和评价等工作。

生命周期法要求信息系统的开发研制工作要按照规定步骤,使用一定的图表工具,在结构化和模块化的基础上进行。结构化的思想是把整个系统的功能看作是一个大模块,根据系统分析和设计的不同要求,按照由顶向下,逐步求精的原则进行模块的分解和组合,这种方法贯穿于系统分析、系统设计和程序设计的各个过程中。生命周期法主要有以下几个特点:

1.建立面向用户的观点

2.加强调查研究与系统分析

3.逻辑设计与物理设计分别进行

4.使用结构化、模块化方法

5.严格按照阶段进行

6.工作文件标准化和文献化

1.5.4调试维护

系统程序和数据的维护又包括程序的维护,数据文件的维护,代码的维护等等。维护是系统在使用中应对系统注意,并加以维护,维护包括:1.系统运行的日常维护

2.系统运行情况的记录

3.系统程序和数据的维护。

1.6开发本系统的意义

学生成绩统计分析系统是学校管理中异常重要的一个环节,作为学校,除了育人,就是育知,学生成绩统计分析系统的计算机化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低,鉴于它的重要性,学生成绩统计分析系统的开发与应用就逐渐提入议程,并占着越来越重要的份量。

运用学生成绩统计分析系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够合理安排时间,能够尽快的知道自己的考试成绩,投入新的课程的学习或复习这次没有考过的课程。而学生成绩统计分析系统的应用也为今天的民办教育在未来市场的竞争力有所提高。从大的方向说,就是为了加速我国四化建设的发展,实现全部的自动化,使我国发展成为通讯网络化,决策科学化,办公自动化的国家。

在现代,高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。学生成绩统计分析系统是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管。对于一个学校而言,更应该运用一些本地资源,提高管理的力度,对学生负责,对国家负责。

第2章系统分析

这章主要讲的是学生成绩管理系统的逻辑分析,系统分析在整个系统中具有重要作用为系统的设计打下基础。

2.1背景分析

学校在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以期让教务处中最段的时间段把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生、学生成绩进行各种查询,以及很好地对系统进行维护。

2.2组织机构调查分析

教学组织机构主要是由:学生管理,成绩管理,成绩打印等组成。图2-1为组织机构图。

图2-1组织机构图

职责:

学生管理:管理一些学生的档案,具体是学生的学号、姓名、家庭地

址、家庭电话等。

成绩管理:管理学生的成绩核算、录入、删除、排序、查询、检索等。

成绩打印:管理学生的成绩报表的打印以及打印报表的整理、维护、保存等。

2.3可行性分析

可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。也就是说可行性研究的目的不是解决问题,而是确定问题是否值得去解,研究在当前的具体条件下,开发新系统是否具备必要的资源和其它条件。

一般说来,应从经济可行性、技术可行性、运行可行性、法律可行性和开发方案可行性等方面研究可行性。

可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只占预期的工程中成本的5-10%。

2.3.1技术可行性分析

技术上的可行性分析要考虑将来要采用的硬件和软件技术能否满足用户(这里是校方)提出的要求(如计算机的容量、速度等)。此外,还要考虑开发人员的水平,做为计算机信息管理专业毕业的优等生,数据库设计方面对于我们应该还过得去,在学校里生活了四年,对这个管理模式应该比较熟悉。学生成绩管理系统的编写,是十分好编的,我想几天就可以写出程序,再花上三来天的调试,计划一个星期就可以完成投入使用了。

我们掌握了数据库及其应用技术、数据库原理、计算机网络技术等课程,对数据库的设计、应用、维护及局域网的组成有了深刻的认识与一定的动手实践能力,考取了信息处理、程序设计、数据库技术等国家IT认证。

从一定程度上具备了开发一个小型系统的能力。而现在学院的计算机配置均可达到P2.2GHZ、256M内存、40G硬盘、256*1024分辨率的显示器。

2.3.2经济可行性

主要从对项目的经济上进行分析评价,一方面是支出的费用,包括设备购置费、管理和维护费用、人员工资和培训费等,另一个是取得的收益。这是个超小型的管理系统,从投入的人力,财力与物力来讲是非常之小的,只要一台电脑,一台打印机,这个系统就可以搞起来,考虑到学校里有电脑,现只要购置一台打印机就可以了。从节省人力方面,可以让管理人员从繁与复杂的工作中解脱出来,做更多的工作,可以给教学管理提高一个层次。

2.3.3运行可行性

民办教育正在迅猛发展,学院从硬件到软件都投入了大量的人力、物力、财力,在教务上,给各个办公室配置了计算机,并能联接到互联网,并且,学院领导对这方面比较重视,在教务上配置了一定数目的能够训练操作计算机的干事,可以快速、方便、高效地使用计算机进行日常工作。学院开展了计算机及其维修专业,可让学生以实践方式对系统进行维护。使此系统在实践上具备了可行性。由此可知,开发学生成绩管理系统在学校中具有可行性。

第3章系统设计

系统设计的目的是确定系统如何完成预定的任务,也就是确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。首先需要从数据流图出发,设想完成系统功能的若干种合理的物理方案,分析员应该仔细比较这些方案,并且和用户共同选定一个最佳方案,然后,进行软件结构设计,确定软件由哪些模块组成以及这些模块之间的动态调用关系。进行软件结构设计时应该遵循的最主要的原理是模块独立原理,也就是说:软件应该由一组完成相对独立的子功能模块组成,这些模块之间的接口关系应尽量简单。

自顶向下逐步求精是进行软件结构设计的常用途经,但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法由数据流图映射出软件结构。

在进行详细的过程设计和编写程序之前,首先进行结构设计,其好处在于可以在软件开发的早期站在全局高度对软件结构进行优化,在这个时期进行优化付出的代价不高,却可以使软件质量得到重大改进。

基于以上理论,结合需求分析阶段的数据流图、数据字典、系统功能结构图。设计出以下的模块和数据库表结构的设计。

3.1 系统功能设计

通过上一章的系统分析我们可以看出系统分为三大模块:基本数据管理模块,学生成绩管理模块,打印输出模块。下面我将对每个模块的总体设计作简要说明。

学生成绩管理系统模块构成:

1)基本数据管理模块

该模块可以实现对现有学生成绩管理系统档案中的学号,姓名,年龄,性别,身高,电话和家庭地址等基本信息的记载情况,并且可以对这些信息进行添加,修改或删除。

2)学生成绩管理模块

该模块可以实现对学生成绩的录入,查询,并且可以进行排序和各种分析等功能。

3)打印输出模块

该模块可以实现对查询出来的成绩信息进行打印的功能。

3.2 数据库设计

数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS 提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。

数据库设计的步骤是:

1、数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有联机分析处理CLAP(指为支持决策的制定对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的、有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。

2、数据表定义:数据表定义指定义数据库中数据表的结构,数据表的逻辑结构包括:属性名称、类型、表示形式、缺省值、校验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设

计,但为使效率高,规范化程度应根据应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。

3、存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。

4、数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。

5、数据字典设计:用数据字典描述数据库的设计,便于维护和修改。

为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:关系数据结构的建立:在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。

根据分析阶段得出的结论,结合本系统对有关数据的存储的需要,更加方便实现该管理系统的所有功能,现将本管理系统设计成如下几个数据库表,部分表的字段名、类型、宽度设计如下:

学生信息表结构如下:

学生成绩表结构如下:

其他表详细见数据库。

3.3 算法分析

// 显示学生成绩

void CGradeManageView::ShowGrade()

{

m_list.DeleteAllItems();

int index = 0;

for (int i = m_listGrade.GetCount() - 1; i >= 0 ; i--) {

StudentGrade &grade = m_listGrade.GetAt(i);

m_list.InsertItem(index, grade.id);

m_list.SetItemText(index, 1, https://www.doczj.com/doc/e05595779.html,);

CString str;

for (int j = 0; j < 10; j++)

{

str.Format("%d", grade.grade[j]);

m_list.SetItemText(index, 2 + j, str);

}

str.Format("%d", grade.sumGrade);

m_list.SetItemText(index, 12, str);

str.Format("%.2f", grade.averGrade);

m_list.SetItemText(index, 13, str);

}

}

// 排序

void CGradeManageView::OrderGrade(int type)

{

if (type == 0)

{

QueryGrade();

}

else

{

for (int i = 0; i < m_listGrade.GetSize(); i++)

{

int max = i;

for (int j = i + 1; j < m_listGrade.GetSize(); j++)

{

StudentGrade &maxGrade = m_listGrade.GetAt(max);

StudentGrade &jGrade = m_listGrade.GetAt(j);

if (maxGrade.averGrade < jGrade.averGrade)

max = j;

}

StudentGrade &maxGrade = m_listGrade.GetAt(max);

StudentGrade &iGrade = m_listGrade.GetAt(i);

StudentGrade grade = maxGrade;

maxGrade = iGrade;

iGrade = grade;

}

}

}

相关主题
文本预览
相关文档 最新文档