文档库 最新最全的文档下载
当前位置:文档库 › 学生管理信息系统设计方案

学生管理信息系统设计方案

学生管理信息系统设计方案
学生管理信息系统设计方案

第1章学生管理信息系统概述

1.1 学生管理信息系统简介

学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依*人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。管理信息系统是一个不断发展的新型学科随着计算机技术和通讯技术的进步也在不断的更新,在现阶段普遍认为管理信息系统是有由人和计算机设备或其他信息处理手段组成并用于管理信息的系统。高等院校的学生管理工作是学校管理工作中的一项十分重要的工作占有十分重要的位置,也是高校日常事务管理中的一个重要环节,随着学校规模不断扩大,在学校人数不断增加,加大了学生管理的管理难度。然而随着科学技术的不断提高计算机科学日渐成熟,其强大的功能已为人们认识,它已经进入人类社会的各个领域并发挥着重要的作用,应用计算机对高校学生进行管理具有人工管理所无法比拟的优点:例如检索迅速,查找方便,可靠性强,存储量大,保密性能好等。这些优点能够极大化地提高学生管理工作的效率和质量。也是高校学生管理的科学化,规范化,信息化管理的重要条件。

1.2学生管理信息系统功能描述

本系统主要应用于学校学生信息管理,总体任务是实现学生信息关系的系统化,规范化和自动化,其主要任务是计算学生各种信息进行日常管理,如查询,修改,增加,删除等,另外还考虑到了学生选课,针对这些要求设计了学生管理信息系统。

图1-2 学生管理系统

从界面可以看到,学生管理信息系统应该包括学生信息管理、学籍管理、成绩管理、奖惩管理和系统管理等基本内容。

(1)学生信息管理的数据有:学生学号、姓名、性别、出生日期、所属班级、所属院系、籍贯等,当有新生到校时,就启动相应的信息管理功能,对所有的学生信息进行入库,随时掌握学生的基本信息。

(2)学籍管理主要是对学生的学籍变更情况及时控制和管理,变更的原因有:转系、休学、复学、退学和毕业离校。

(3)成绩管理是数据量比较大的管理工作,每次考试结束后负责对学生各个科目的成绩入库工作和对数据库成绩出错的校对工作。

(4)奖惩管理是针对学生在校的表现情况,对学生进行相应的处理工作,奖励的项目有各种奖学金和文体奖励,处罚的项目有通报批评、警告、严重警告、记过、留校查看、开除等。

(5)系统管理主要是执行数据库备份和恢复、数据库表的维护等工作,保证系统的正常运行。

学生管理信息系统作为典型的数据库项目应用的一种,其开发流程包括需求分析、UML系统建模、确定系统集成方案、数据库分析和设计以及各功以模块的开发等。下面介绍一个学生管理信息系统的详细开发过程。

第2章需求分析

2.1 系统目标

2.1.1总体目标

学生管理信息系统的总体目标是通过学习实践了解学生管理信息系统主要应用在管理的哪些方面,学会认识到学生管理信息系统其实是一个社会技术系统,它的应用设计管理思想,管理制度,权力结构,知道如何根据管理的需求,并不断的提出设计要求,在学习中学会把信息系统知识与管理知识联系起来,并配合他们建立信息系统,为管理决策服务。

2.1.2具体目标

学生管理信息系统的具体目的在于加深学生对信息管理系统基础理论和基础知识的理解,掌握并使用信息系统分析,设计的基本方法,提高解决实际管理问题,开发信息系统的实践能力,掌握开发信息系统的要点,熟知管理信息系统的应用问题。

2.2业务流程

2.3 数据流程

2.4 数据字典

数据字典就是将数据元素、数据流、数据存储、处理功能和外部实体等的详细情况加以记录,并按照一定方式进行排列所形成的一部关于数据的字典。

数据字典是有关数据的信息的收集、维护和发布的机制,是有关数据的数据即元数据的中心仓库,数据字典是提供关于数据元素、元素组、记录信息的定义和使用机制,以及数据实体之间的联系。

2.4.1 数据元素定义

数据元素的定义是数据字典的基础,其他定义都是建立在数据元素定义的基础之上的。数据元素的定义包含数据元素名称、数据元素编号、数据元素类型、数据元素长度以及数据元素含义等内容。

本系统一共有40个数据元素,每一个数据元素均有如下表所示格式的数据元素定义表。

由于篇幅关系,不再列出其他的数据元素定义表。当所有的数据元素定义完以后,

表2-1新生录入数据表

表2-2学籍变更数据表

表2-3学生奖励数据表

表2-4学生处罚数据表

第3章系统设计

3.1系统功能

作为一个学生管理系统,本系统的设计主要包含:用户登录、新生信息录入、成绩管理、学籍变更,奖励管理和处罚管理,还有查询修改,退出。本系统主要应用于学校学生信息管理,总体任务是实现学生信息关系的系统化,规范化和自动化,其主要任务是计算学生各种信息进行日常管理,如查询,修改,增加,删除等,另外还考虑到了学生选课,针对这些要求设计了学生管理信息系统。通过本系统,能帮助工作人员和学生利用计算机,快速方便的对所属学校的信息管理进行维护、输入、输出、查找的所需操作,使散乱的学校数据能够具体化,直观化、合理化。学生管理信息系统对各专业所属班级进行管理,包括学生各种信息的录入和管理两部分。用户录入新的班级,并对已有班级信息进行管理。录入界面可以录入新的班级信息,学号,姓名。

3.2 系统结构

学生管理信息系统的系统结构主要是由新生信息录入,成绩管理,学籍变更,奖励管理,处罚管理,查询修改和退出等7大模块组成。根据系统主要功能的划分,我们绘制出系统的功能的树形结构

图3-1树形结构图

4.1 E-R图

图4-1 E-R图

4.2 数据库详细设计

学生管理信息系统的功能是收集学生的个人信息,以便向老师提供每个学生在校或毕业生的学籍情况,还可以让学生用自己的学号去查看自己在学校期间的表现。学生管理信息系统的主要功能有:

(1)新生信息录入

对新生的学号,性别,出生日期,籍贯,姓名,班级,所属院系进行录入

(2)成绩管理

管理员根据学生的学号,姓名,对其各科的成绩进行添加

(3)学籍变更

管理员添加该学生的学号,姓名,班级,院系对其变更原因做好具体描述并注明时间(4)奖励管理

管理员添加该学生的学号,姓名,班级,院系然后表明其收获的那种奖励并注明好时间

(5)处罚管理

管理员添加该学生的学号,姓名,班级,院系然后表明其受到那种处分并注明好时间(6)查询修改

修改的内容包括学号,姓名,班级,院系,性别,籍贯和出生日期

5.1 主窗体设计

图5-1 主窗体设计界面5.2 功能导航栏设计

图5-2 主窗体设计界面

第6章程序设计与编码6.1 系统登陆窗体的设计

图6-1 登录窗体界面

6.2新生信息录入窗体的设计

图6-2 学生信息录入界面

图6-3 成绩管理窗体界面6.4学籍变更窗体的设计

图6-3 学籍变更窗体设计界面

图6-4 奖励窗体设计界面6.5处罚管理窗体的设计

图6-5 处罚窗体设计界面

图6-6 主窗体设计界面

第7章系统测试

至此,学生管理信息系统的开发基本结束。单击“用户登录”按钮,则弹出用户登录界面,如图36所示。用户选择自己的身份,输入相应的密码即可拥有相应的权限。首次登录密码都是“888888”。如果输入的密码不正确,则提示用户是否退出,如果输入的密码3次以上不正确,则自动退出系统。

以登录测试为例。

当打开系统应用程序时,首先显示的界面如图7-1所示。

图7-1 初始界面

当密码输入错误时,会弹出提示。如图7-2所示。

图7-2 密码错误提示

当密码输入错误三次后,系统提示,并退出程序。如图7-3所示。

图7-3 密码错误提示

第8章心得总结

在结束Delphi的商机考试后,很多同学都发现我们不具备良好的实际上机操作

能力,所以在紧接着到来的课程设计阶段,我决定要做足充分的准备,在一个学期老师指导教学和后期自己学习的结合下完成一个成型的Delohi语言开发结合数据库的小型管理信息系统,由于在课程设计开始之前对书本知识掌握还是不是很到位,所以课设开始的前两天工作都还不是很顺利,有课题的挑选开始到系统整体设计、到界面的设计、到程序的设计调试,数据库的选择和链接。每一部分都在一定程度上花费了很多时间,很多知识由于在有老师指导的情况下没有完全掌握充分,所以独立开发的时候子已经学过的知识上也花费了大量的时间。

在进行的过程中我也遇到了很多问题,如对要开发系统在企业中将会起到的作用不是很了解,所以在花费打来那个时间终于做出成型作品之后发现根本不具有企业或是机构所要求的作用,以至于后拉啊有对系统做了一些列的更改和调整。这也让我意识到了:其实系统的最终用户不是我们这些开发者,而是他的使用者,在线系统开发之前进行调查有着极其重要而且不能被代替的作用,系统的功能是否反映了用户的需求,系统的执行效率是否高、系统的健壮性和可修改性也都是我们评价系统好坏的标准,而对于一些没有开发经验的然来说,这些都会被我们轻而易举的忽略掉。其次,在实际操作进行开发的过程中我也更为清楚的意识到,很多我们现在学习的知识其实单纯的掌握书本上的东西远远不够,系统的开发语言的应用只有在不断地练习中出现错误、发现错误、改变错误才能得以真正掌握,而在实际学习的过程中往往我们只注重书本知识的考核,所以出现了越来越多的同学理论知识掌握的到位但是应用的实际中的功力就显得极其单薄。

再次,通过课设我也意识到:一门学科的学习是循序渐进的过程,各个部分之间有着密切的不可分割的联系,如果知识单纯的按照过程学习某一个模块,最终知识系统整合的过程中出现大量的问题。简单的做出每一个功能模块,但是却忘记了模块与模块之间连接的重要性,比如对表的定义,在不同的表中出现了同一字段的不同定义方式,以至于找错就浪费了大部分时间。这次课设我不是完全的自己完成,而是参考了很多教材,其中很多教材对我的帮助很大,无论是在整体思维的形成还是实际操作中遇到问题的解决上,书本的提示都给了我很大的帮助。

总之,虽然做课设的过程是辛苦的,但是当我们期待的结果出现时,喜悦还是会淹没之前的不着边际和焦头烂额,概括为一句话就是:这次课设对我的帮助真的很大。

参考文献

[1] 张海藩,《软件工程导论》,清华大学出版社,2002

[2] 伍俊良,《Delphi 6控件应用实例教程》,北京希望电子出版社,2002

[3] 卢国俊,《Delphi 6数据库开发》,电子工业出版社,2002

[4] 边萌,《Delphi 编程起步》,机械工业出版社,2002

[5] 伍俊良,《Delphi 6课程设计案例精编》,中国水利水电出版社,2002

[6] 丁宝康,《数据库原理》,经济科学出版社,2000

[7] 陆丽娜,《软件工程》,经济科学出版社,2000

[8] 许杰舟、林伟鹏、林盛雄、来宾,《Delphi7程序设计与实例》,2003

[9] 杨志刚、何志成、魏志强、王忠华,《Delphi5.0程序设计基础教学篇》

附录

Proctdure TLoginFrm.BitBtn1Click(Sender:TObject);//“用户登陆”按钮的单击事件

Var pwdfile:textfile;

PwdStr:string;

Begin

if RadioButton1.checked=True then

assingnfile(pwdfile,’.\Admini.cfg’);

if RadioButton2.checked=True then

assingfile(pwdfile,’.\student.cfg’);

reset(pwdfile);

readln(pwdfile,pwdStr);

closefile(pwdfile);

Times:=Times=1;

If edit1.Text=PwdStr then

begin

close;

StuMainFrm.Enabled:=True

StuMainFrm.PageControll.ActivePage:=StuMainFrm.Tabsheet6;

StuMainFrm.PageControll.Visible:=true;

if Radiobuttonl.checked=True then

begin

StuMainFrm.ToolButton2.Enabled:=Ture;

StuMainFrm.Toolbutton3.Enabled:=True;

StuMainFrm.ToolButton4.Enabled:=True;

StuMainFrm.ToolButton5.Enabled:=True;

StuMainFrm.ToolButton8.Enabled:=True;

StuMainFrm.ToolButton6.Enabled:=True;

end;

if RadioButton2.checked=True then

begin

StuMainFrm.ToolButton6.Enabled:=True;

end;

end

else

begin

if MessageDlg(‘密码输入错误,是否退出?’,mtContirmation,[mbYes,mbNo],0)=mryes then

begin

close;

StuMainFrm.Enabled:=True;

end

else

begin

if times<3 then editl.SetFocus

else

begin

MessageDlg(‘对不起,密码输入严重错误,请退出!’,mtInformation,[mbOk],0); Application.Terminate;

end;

end;

end;

end;

为了防止用户多次重输密码,限制了输入了次数为3次,因此需要对次数进行初始化,活加代码如下:

Procedure TLoginFrm.FormShow(Sender:TObject);

Begin

Times:=0;

End;

成绩管理的代码实现

当管理员选择了一位学生后,输入各科成绩,程序把数据保存到数据库。代码如下:

Procedure TStuMainFrm.BitBtn9Click(Sender:TObject);//“添加”按钮的单击事件

var StuNo,StuName:string;

i:integer;

begin

with Query do

begin

close;

Sql.Clear;

Sql.Add(‘Select StuNo from Score Whers StuNo=’+’’’’+DbEdit6.Text+’’’’);

Open;

if recordcount=0 then

begin

StuNo:=DbEdit6.Text;

StuName:=DbEdit7.Text;

for i:=l to 12 do

begin

if Course[i]<>’0’then

with Table5 do

begin

Open;

Append;

SetFields([nil,StuNo,kStuName,Course[i],Score[i]]);

Post;

end;

end;

end

else

MessageDlg(‘对不起,该记录已经存在!’,mtInformation,[mbOk],0);

end;

end;

学籍变更的代码实现

当管理员选择了学籍需要变更的学生后,输入变更项和变更时间,程序把数据保存到数据库。代码如下:

procedure TStuMainFrm.BitbtnlClick(Sender: Tobject);//“添加”按钮的单击事件

var StuNo,StuName,StuClass,StuDepart.ChangeName,ChangeRemark:string;

begin

winth Table2 do

begin

Open;

StuNo:=Editl.text;

StuName:=Edit2.text;

StuClass:=Edit3.text;

StuDepart:=Edit4.text;

ChangeName:=ComboBoxl.Text;

ChangeRemark:=Edit5.text;

append;

SetFields([StuNo,StuName,StuClass,StuDepart,ChangeName,ChangeRemark, Formatdatetime(‘dddddde’,DateTimePicker2.Dat)]);

Post;

end;

end;

奖励管理的代码实现

当管理员选择了需要奖励的学生后,选择了奖项和奖励时后,程序把数据保存到数据库。代码如下:

procedure TStuMainFrm.bitbtn3Click(Sender: TObject);//“添加”按钮的单击事件

var StuNo,StuName,StuClass,StuDepart,EncourageName:sering;

begin

with Table3 do

begin

Open;

StuNo:=Edit6.text;

StuName:=Edit7.text;

StuClass:=Edit8.text;

StuDepart:=Edit9.text;

if RadioButtonl.checked=true then

EncourageName:=RadioButtonl.Caption;

if RadioButton2.checked=true then

相关文档