教务软件实践报告教务管理系统第一章问题定义随着学校规模的扩大,人员的不断增加、复杂程度逐渐增强,学校中,教务是一项繁琐的事,每年都有新生入学、老生毕业,以及其他各种人事变动。
每学期的考试成绩都需要分析,纵、横向比较,能及时反馈信息,还要对教师的教学成绩考核提供数据。
如何有效地管理、分析、处理这些信息,帮助学校和教师掌握学生的情况,这就是教学信息管理系统需要完成的功能。
以前简单的用Excel来打印几张报表的人机作坊再也无法适应当今学校的教学管理了,比如用Excel虽然能简单管理学生的学籍、成绩等,但用户界面简单,管理起来难度大,修改和查找学生的信息都比较麻烦,并且在操作过程中没有用户权限,只要能打开计算机的人就能打开数据进行任意的修改,大大的降低了信息的安全性和保密性,效率低,,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入各个领域并发挥着来越重要的作用。
作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学校信息管理的效率。
1.1问题定义1.所需资源:硬盘>80G,内存>256,处理器一般以上水平即可。
2.系统名为:教务管理系统(1),本处理的信息主要有三大类:学生信息、教师信息、成绩数据。
本系统主要着手于以上三大部分,建立数据库以及对数据的各种操作功能。
对于学生信息,由于需要经常性地进行各种查询。
例如:查询一个班级中团员的人数,男女生的人数等等。
教导处在每一届学生进校时必须进行分班,设置学号;每一届学生毕业,要进行学生信息备份;对于教师信息,学校教导处跟据老师所教班的成绩对教师的成绩成行考核,可以进行同科的纵横向比较。
(由于对教师方面不太了解只有这些)对于成绩管理,课任教师要进行本科目成绩登记,计算平均分、优秀率、及格率;教导处要分段统计学生人数及所占比列,每学期进行学生成绩备份;学校领导则可通过查询工具来了解学生成绩情况。
(2),以上各类信息目前还处于手工或半手工的管理状态,效率低,可靠性差。
如果采用计算机进行以上各类信息的管理,必将大大提高工作效率,对各类信息的维护及了解起到积极的作用。
因此一个功能完备的学校信息管理系统的开发都非常有必要。
第二章可行性研究2.1系统概述本系统将采用面向对象的软件开发方法,以SQL 2000作为后台数据库,配合功能强大的SQL查询语句,用Delphi便捷地开发教学管理信息系统的应用程序。
2.2.1可行性分析A 技术可行性:对Delphi能够运用自如,对SQL语句熟练掌握运用。
B 经济可行性:开发费用合理C 操作可行性:能够良好的解决用户需要的问题第三章总体设计3.1系统功能描述本系统的主要任务是实现对学校的学生信息管理、成绩管理、教师考核信息管理、课程信息管理及相关查询。
其主要功能包括:1.学生信息管理功能添加学生.以班级为单位,进行学生入库。
其中分为单个添加和成批添加。
单个添加学生供数量较少的学生信息入库;学籍变更。
提供学生转学、休学、复学、退学、留级及毕业信息。
删除学生。
当学生毕业后,学生信息转移备份数据库中,系统的基本数据库中需要删除学生信息。
该功能主要进行成批地删除学生信息,如连续学号区段的多位学生信息删除,整个班级的删除,所有学生信息的删除。
学生信息备份。
在学生信息删除前,将其按班级为单位保存到备份数据库2.学生成绩管理功能●分数录入。
以班级为单位,录入成绩。
●分数段统计。
以班为单位,根据成绩统计各科各分数段的人数,总分各分数段的人数。
●成绩备份。
为指定班级及指定的学期数的学生成绩保存到备份数据库中。
3.教师信息管理功能●添加新教师。
●教师信息的修改。
●教师成绩考核。
4.课程信息管理功能1.课程管理。
提供本学期各年级各专业所开课程名称的录入、修改、删除。
它是学生成绩管理的基础。
用以保证数据库中一致性原则。
2.教师与课程。
供录入课任教师与课程、班级的联系情况。
是排课系统的基础。
5.查询功能。
●学生信息查询。
根据用户的要求,查询学生数据库的所有可能的信息,其中包括成绩查询。
●教师信息查询。
根据用户的要求,查询相关教师信息。
●备份成绩查询。
按班级为单位查询备份数据库的学生信息。
3.2 数据流图与数据字典3.2.1数据流图根据以上的系统功能描述,设计出数据流图如下:一、基本数据流图与功能级数据流图(图3-1至图3-2)3.2.2查询功能流程图总分表成绩表学生表图3-3学生信息查询教师表图3-4教师信息查询3.2.3数据字典一、数据流条目:(1)学生信息管理模块:学生信息管理要求=[添加数据要求|数据删除要求|数据备份要求|学籍变更]添加数据要求=[单个学生数据单|成批数据单]数据删除要求=[起止学号|班级名称|所有学生数据]数据备份要求=[班级名称|学期数|在读情况]学生数据=学号+姓名+班级编号+性别+年级+政治面貌+民族编号+籍贯编号班级数据=(年份+班数)修改要求=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+班级单个学生数据单=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+入学总分+班级成批数据单=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+班级学籍变更=转学+休学+复学+退学+留级+毕业性别=[男|女]政治面貌=[团员|非团员](2)成绩管理模块:成绩管理要求=[成绩录入要求|总分计算要求|成绩备份要求|成绩统计要求]成绩录入要求=班级名称+成绩数据总分计算要求=班级名称+成绩数据成绩备份要求=班级名称+学期数+毕业成绩统计要求=单科分段统计+总分分段统计+平均分统计成绩数据=姓名+课程名称+分数成绩表=学号+姓名+单科成绩+成绩总分(3)教师信息管理模块:教师信息管理要求=[添加新教师要求|修改数据要求|成绩考核要求]添加新教师要求=职工号+教师姓名+政治面貌+职务+所教科目+在岗情况修改数据要求=职工号+教师姓名+政治面貌+职务+所教科目+在岗情况成绩考核要求=[考核条件]政治面貌=[中共党员|团员|群众](4)查询模块:查询要求=[查询条件]查询结果=[学生信息统计表|学生成绩统计表|学生总分名次统计表|教师信息统计表|备份信息统计表]二、处理条目:(1)学生信息管理模块处理条目:处理名称:检查记录有效性输入:新生数据输出:有效的新生记录、无效的新生记录处理逻辑:根据新生记录IF 格式有效THEN读取记录ELSE 无效格式记录,启动EXCEL调整格式ENDIF处理名称:启动EXCEL调整输入:新生记录输出:有效的新生记录处理逻辑:根据新生记录按要求调整处理名称:读取新生记录输入:新生数据输出:写入学生表文件处理逻辑:根据新生记录DO WHILE 新生记录不为空THEN读取记录,写学生表文件,班级值为“新生”LOOP处理名称:统计新生数据输入:班级为“新生”记录输出:总新生人数,男女生人数处理逻辑:根据新生记录,查询所有班级为“新生”的记录,并计算记录数查询所有性别为“男”且班级为“新生”的记录,并计算记录数查询所有性别为“女”且班级为“新生”的记录,并计算记录数处理名称:查询相关记录输入:学生记录,班级名称输出:指定班级的学生名单处理逻辑:根据学生记录,查询所有班级名称等于输入值的学生记录处理名称:修改学生记录输入:指定班级学生记录,修改要求输出:学生信息处理逻辑:根据修改要求,改写学生数据处理名称:查询备份数据输入:班级名称输出:备份数据处理逻辑:在学生表中查询班级名称等于输入值的学生数据处理名称:数据备份输入:备份数据输出:备份数据文件处理逻辑:IF 数据已备份THEN退出ELSE生成备份文件ENDIF处理名称:删除所有学生数据输入:所有学生记录输出:更新学生表、总分表、成绩表(2)成绩管理模块加工条目处理名称:查询学生及课程信息输入:班级名称输出:指定班级的学生名单及本学期所开课程处理逻辑:查询学生表中班级名称为输入值的记录判断所在年级,查询课程表获得本学期所开课程处理名称:成绩录入输入:学生名单,课程信息,成绩录入数据输出:更新成绩表处理逻辑:选择课程名称,录入成绩写入成绩表处理名称:查询成绩数据输入:班级名称输出:指定班级的学生名单及成绩数据处理逻辑:学生表与成绩表做笛卡尔积,获得指定班级的学生成绩数据处理名称:查询成绩数据输入:备份数据单输出:备份数据(3)教师信息管理模块数据加工条目:处理名称:数据录入输入:新教师名单输出:更新教师表文件处理逻辑:在教师表中添加一记录,以录入值更新记录处理名称:查询教师信息输入:数据修改单输出:教师记录处理逻辑:在教师表中查询记录处理名称:修改数据输入:教师记录,修改要求输出:更新教师表,教师信息处理逻辑:根据修改要求,更新记录,写入教师表(4)查询模块加工条目:处理名称:要求加工输入:学生信息查询要求输出:查询规则处理名称:查询处理输入:查询规则输出:查询结果处理逻辑:根据查询规则查询指定表,并显示结果3.3软件结构图3.4数据库设计数据库是信息管理的基础。
数据库结构直接关系到各种功能的实现和程序运行的效率。
3.4.1数据库需求分析根据数据流程图,可以列出以下记录学生信息所需的数据项和数据结构:学生:学号、姓名、性别、班级、生日、籍贯、毕业学校、政治面貌。
教师:职工号、姓名、所教科目编号、在岗情况、政治面貌、职称。
开课信息:记录号、科目号、开课年级。
教师任课信息:记录号、科目号、班级、教师职工号。
学籍变更记录:记录号、变更情况、记录对象、记录时间、详细描述。
所需的外部数据支持:科目:记录号、科目名。
3.4.2数据库逻辑结构设计学生个人信息表教师信息表科目信息表开课结果信息表成绩表结构教师任课信息表教师岗位代码表学籍代码表第四章详细设计4.1 系统界面设计一、系统主窗口界面设计1.系统主窗口:二、学生信息管理模块界面设计:学生信息管理模块窗口主要有新生数据输入窗口、学籍变更窗口、分班操作窗口、删除学生信息窗口。
学生数据输入窗口2.课程信息表三、成绩管理模块界面设计:成绩管理模块界面窗口主要有成绩录入。
1、成绩录入窗口4.2系统主要算法设计:以结构化语言的方式对本系统的主要功能进行算法设计。
它们是查询模块中的学生信息查询子功能。
学生信息查询子功能算法设计:●采用的数据结构:该子模块功能主要采用字符串作为数据结构。
对数据库的组合查询中有许多查询条件,并且查询的内容经常涉及到多个数据表的操作。
本系统中采用SQL查询语言进行信息查询,算法的主要思想是将用户的查询条件以字符串的形式按一定规则组合在一起,最后作为查询命令进行数据库查询。