学生管理信息系统Word文档格式.docx

上传人:b****1 文档编号:4930335 上传时间:2023-05-04 格式:DOCX 页数:23 大小:189.14KB
下载 相关 举报
学生管理信息系统Word文档格式.docx_第1页
第1页 / 共23页
学生管理信息系统Word文档格式.docx_第2页
第2页 / 共23页
学生管理信息系统Word文档格式.docx_第3页
第3页 / 共23页
学生管理信息系统Word文档格式.docx_第4页
第4页 / 共23页
学生管理信息系统Word文档格式.docx_第5页
第5页 / 共23页
学生管理信息系统Word文档格式.docx_第6页
第6页 / 共23页
学生管理信息系统Word文档格式.docx_第7页
第7页 / 共23页
学生管理信息系统Word文档格式.docx_第8页
第8页 / 共23页
学生管理信息系统Word文档格式.docx_第9页
第9页 / 共23页
学生管理信息系统Word文档格式.docx_第10页
第10页 / 共23页
学生管理信息系统Word文档格式.docx_第11页
第11页 / 共23页
学生管理信息系统Word文档格式.docx_第12页
第12页 / 共23页
学生管理信息系统Word文档格式.docx_第13页
第13页 / 共23页
学生管理信息系统Word文档格式.docx_第14页
第14页 / 共23页
学生管理信息系统Word文档格式.docx_第15页
第15页 / 共23页
学生管理信息系统Word文档格式.docx_第16页
第16页 / 共23页
学生管理信息系统Word文档格式.docx_第17页
第17页 / 共23页
学生管理信息系统Word文档格式.docx_第18页
第18页 / 共23页
学生管理信息系统Word文档格式.docx_第19页
第19页 / 共23页
学生管理信息系统Word文档格式.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生管理信息系统Word文档格式.docx

《学生管理信息系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《学生管理信息系统Word文档格式.docx(23页珍藏版)》请在冰点文库上搜索。

学生管理信息系统Word文档格式.docx

二需求分析

需求分析是数据库系统开发的第一步,也是最重要的一步。

需求分析可以分为两个过程:

一是理解需求,二是分析需求。

下面分别分析这两个过程。

1理解需求

只有通过对学生管理信息系统的终端用户和客户进行大量的调研,才能真正理解终端用户和客户的需求,才能开发出合理的、实用的管理系统,才能满足各大、中、小学校的管理需要。

基于大量的调研数据,下面列出对最典型、最关键的需求。

(1)每年开学时,新生来报琶,要对每位新生的信息建立个人档案,这部分工作由学籍科的管理人员进行维护和操作。

学生个人档案包括学生学号、姓名、性别、出生日期、所属班级、所属院系、籍贯等。

(2)考试结束时,教务科的管理人员将学生各科的成绩录入数据库,以备随时查询。

当然录入成绩也有出错的可能,所以,必须具有校对修改成绩的功能。

(3)当学生的表现出色或差的时候,学生科的管理人员应对其进行奖励或处罚,相应的奖项(或处罚)和奖励(或处罚)时间的数据都应该入库。

(4)当学生因为疾病、学业修完等原因学籍需要变更的时候,学籍科的管理人员应该对其进行学籍变更手续。

(5)学生应该具有查询个人信息和成绩的权力和权限。

(6)系统还应提供强大的数据统计、查询、报表生成以及打印等功能。

(7)系统客户端运行在Windows平台下,服务器端可以运行在Windows平台或者Unix平台下。

(8)系统应该有很好的可扩展性。

在本系统中主要提供新生信息录入、学籍变更、成绩管理和奖惩管理等相关的功能。

2分析需求

分析需求就是描述系统的需求,通过定义系统中的关键域类来建立模型。

分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制,因此学生管理信息系统的需求分析是开发人员和学校管理人员一起完成的。

分析需求的第一步是描述学生管理信息系统的功能,即定义用例,以此确定系统的功能需求。

一所学校的主要成员就是学生和学校的管理人员、教师、系统管理员等,管理人员主要指学籍科、学生科和教务科的人员,他们是学生管理信息系统的主要使用者。

学生也是学生管理信息系统的重要使用者,只是具备的管理权限没有管理人员那么广。

系统管理员也是其中一个管理人员,这不影响本系统的功能。

学生管理信息系统的用例包括以下内容。

·

新生信息

学生成绩(包括录入和校对)

学籍变更

学生奖励

学生处罚

学生信息查询修改

需要注意的是,学生信息查询修改用例包括学生对个人基本信息和查询和修改,这些信息指的是新生入学时被录入的基本信息。

此外,学生还具有查询和打印成绩的权限,查询奖惩情况、学籍变更记录等权限。

学生管理信息系统的分析可以用UML的用例图来描述。

每个用例还可以以文本的方式描述,描述的内容包括用例以及用例与角色交互的更详细的信息,文本的内容是通过和用户讨论后确定的。

下面给出上述用例的描述。

(1)新世界生信息

增加学生记录→标记学生学号→确定学生院系→确定学生班级

(2)学生成绩

增加学生成绩记录→校对学生成绩

(3)学籍变更

增加学籍变更记录→标记变更原因→标记变更时间

(4)学生奖励

增加学生奖励记录→标记奖励项目→标记奖励时间

(5)学生处罚

增加学生处罚记录→标记处罚等级→标记处罚时间

(6)学生信息查询修改

查询个人信息→修改个人信息→保存个人信息→查询奖惩情况→查询学籍变更情况→打印成绩单

完成需求分析后,就需要对系统进行UML建模。

UML建模是对需求分析结果的模型建立过程。

下面进行学生管理信息系统的UML建模过程。

3学生管理信息系统的用例分析

在上一节需求分析中列出了学生管理信息系统的全部用例:

新生信息、学生成绩、学籍变更、学生奖励、学生处罚、学生信息查询修改。

这里,使用权用Rose软件进行UML建模,其用例如图1所示。

图1学生管理信息系统用例图

该用例图标记了所有的学生管理住处系统的用例,从中可以得知,学生管理信息系统的角色可以划分为两类。

学校管理人员:

用例包括学生管理信息系统的所有用例。

学生:

用例只有学生信息查询修改。

要注意的是,学校管理人员具有查询和修改所有数据的权限,处于高权限位置,而学生只有修改个有基本信息、查询奖惩情况、查询学籍变更情况和打印成绩单的权限,处于低权限位置。

4学生管理信息系统的域类分析

UML建模的第二步就是域类分析。

实际开发学生管理信息系统时,域类分析是建立在用例分析基础上的。

要了解系统要处理的概念,最好奖学校的管理人员组织起来开个讨论会,详细谈论和列举所需要包含水量的用例,了解概念和概念之间的关系。

学生管理信息系统中的域主要包括:

学生(Student)、成绩(Score)、学籍变更(Change)、奖励(Encourage)、处罚(Punish)。

可以在类图中将上面这些域以及它们之间的关系表示出来,如图2所示。

图2学生管理信息系统域草图

需要说明的是,这里的域类还是处于“草图”状态,定义的操作和属性不是最后的片本,只是在现阶段看来这些操作和属性是比较合适的,有些操作奖在时序图的草图中定义,而不晨用例哪定义。

有些类可以用UML状态图来显示类的对象的不同状态以及改变状态的事件。

在本系统中有状态图的类是学生,该类的状态图将在后面的内容中介绍。

为了描述域类的动态行为,可以使用权UML的时序图、协作图或者活动图来描述。

本文选用时序图。

时序图的基础是用例。

在时序图中要说明域类是如何协作以操作该系统中的用例。

当然,在建立时序图时,将会发现新的操作,并将其加入类中,这将在后面看到所建立的时序图模型。

用时序图建模时,需要窗口或对话框作为角色界面。

显然,这里需要操作界面的有基本信息、奖励、处罚、学籍变更、修改查询等,此外维护也需要一个操作界面。

三概要设计

在设计阶段,首先要设计类的状态的图。

类的状态图说明了可能的状态以及需要被处理的过渡期,使用状态图可以揭示单个对象在整个系统中的变化细凶,对了解和实现关键类有较大的帮助。

不是所有的类都有状态图,在本系统中,有状态图的类是学生。

学生的状态图如图3所示。

图3学生的状态图

设计阶段的最后一步是设计UML模型,也就是将前面设计的模型进竽扩展和细化。

下面给出各个用例的时序图。

设计的目的是产生一个可以使用的解决方案,并且可以容易地将方案转换成程序代码。

学生的时序如图6所示

图4学生时序图

成绩的时序如图7所示。

图5成绩时序图

学籍变更的时序如图8所示。

图6学籍变更时序图

奖励的时序如图9所示。

图7奖励时序图

处罚的时序如图10所示。

图8处罚时序图

查询修改的时序如图11所示。

图9查询修改时序图

时序图设计完成后,开始进行学生管理信息系统的架构设计和细节设计。

在架构设计中将定义包(子系统)、包间的相关性和基本的通信机制。

设计架构时,应该将应用逻辑和技术逻辑分割。

应用逻辑是需要编码设计的,而技术逻辑,主要包括用户界面、数据库或者通信一般是已经有的。

学生管理信息系统中的包(或者为子系统、层)有如下几个,如图9-12所示。

图10包和包间关系

用户界面包(UserInterfacePackage):

为通用用户界面类,调用业务对象包中的操作检索和插入数据,可以简单地把它们看成将来用户要操作的界面。

业务对象包(BusinessObjectPackage):

业务对象包包含上面设计的分析模型的域类。

业务对象包同数据库包协同完成任务。

数据库包(DatabasePackage):

数据库包向业务对象数据包提供服务。

应用包(UtilityPackage):

应用包向其他包提供服务。

在开发学生管理信息系统时,可以先进行E-R图分析,然后对表和字段进行分析,最后进行数据库建模。

1E-R图分析

对学生管理信息系统的E-R图分析是建立在UML系统模型基础上的。

这里给出E-R图分析的结果。

实体关系图的分析结果非常复杂,一般情况下使用从简到繁的方式进行设计。

首先从大的方面设计出各个实体之间的关系,然后在这个关系的基础上进行细化。

图15所示为学生管理信息系统的实体关系简图。

图11学生管理信息系统的实体关系简图

2数据库设计

数据库设计与应用等程序设计是分离的,数据库的设计非常重要。

有了数据库模型,数据库的设计就简单多了。

在学生管理信息系统中,首先要创建学生管理信息系统数据库,然后在数据库中创建需要的表和字段。

下面分别讲述本系统中数据库的设计。

本例采用Access2000数据库系统来进行数据库的设计。

3创建数据库

下面给出在Access中创建数据库的过程。

(1)运行Access应用程序,在“新建数据库”选项组中选取“空Access数据库”单选,按钮,然后单击“确定”按钮。

(2)在“文件新建数据库”窗口指定数据库的存放位置与数据库文件名称(本例为Stu.mdb)然后单击“创建”按钮。

4创建表

下面给出在Access中创建表的过程。

(1)在创建数据库后,进入主界面,单击“Stu:

数据库”子窗口中的“设计”按钮。

此时将会出出“表1:

表”窗口。

(2)在表的设计窗口“表1:

表”中,按表1建立数据字段,并指定字段的数据类型与相关属性。

表1学生信息数据库(Stuinfo)

字段名称

数据类型

说明

StuId

数字

编号

StuNo

学号

DepartMent

文本

院系

Class

班级

Name

姓名

Sex

性别

BirthDay

日期/时间

生日

NativePlace

文本

籍贯

建立数据库字段并指定字段的数据类型与相关属性后,字段设计界面如图21所示。

(3)在StuId字段上单击鼠标右键,选择快捷菜单中的“主键”选项,让StuId字段成为主要索引字段,则StuId字段前方将出邮一个钥匙图标。

(4)回到“Stu:

数据库”子窗口中,如果出现了StuInfo这个表项目,就代表现在已经完成学生数据文件的设计。

(5)重复步骤

(1)~(5),按表2、表3、表4、表5建立表,并指定表中各字估的数据类型与相关属性。

表2字籍变更数据表(Change)

数字

姓名

班级

DeparMent

院系

ChangeName

学籍变更项

ChangeTime

学籍变更时间

Remark

备注

表3学生奖励数据表(Encourage)

StuNo

学号

Name

Class

DeparMent

EncourageName

奖励项

EncourageTime

奖励时间

表4学生处罚数据表(Punish)

DepartMent

PunishName

处罚项

PunishTime

处罚时间

表5学生成绩数据表(Score)

ScoreId

编号

Course

课程

Score

成绩

(7)将这些表分别名为Change、Encourage、Punish、Score,主键分别为:

StuNo、StuNo、StuNo、Scoreld,。

(8)回到“Stu:

数据库”子窗口中,出现了StuInfo、Change、Encourage、Punish、Scores个表项目,完成数据文件的设计。

四详细设计

以上内容完成了数据库的后台工作,建立起了能够保障系统顺利、正确运行的后台。

界面设计工作在进行系统开发的时候是必不可少,也是十分重要的。

下面就对学生管理信息系统的详细设计。

程序代码是程序的核心所在,是系统开发的灵魂。

下面对系统的代码做具体的分析。

1用户登录的代码实现

学生管理信息系统启动时,首先出现的是系统主界面。

单击系统主界面中工具栏的“用户登录”按钮,就弹出用户登录界面。

程序从配置文件中获取管理员和学生的密码,和用户输入的密码比较,如果密码正确,则根据身份配权限;

如果不正确,则提示用户重输或退出:

重输3次以上,系统自动退出。

代码如下:

ProctdureTLoginFrm.BitBtn1Click(Sender:

TObject);

//“用户登陆”按钮的单击事件

Varpwdfile:

textfile;

PwdStr:

string;

Begin

ifRadioButton1.checked=Truethen

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

ifRadioButton2.checked=Truethen

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

reset(pwdfile);

readln(pwdfile,pwdStr);

closefile(pwdfile);

Times:

=Times=1;

Ifedit1.Text=PwdStrthen

begin

close;

StuMainFrm.Enabled:

=True

StuMainFrm.PageControll.ActivePage:

=StuMainFrm.Tabsheet6;

StuMainFrm.PageControll.Visible:

=true;

ifRadiobuttonl.checked=Truethen

StuMainFrm.ToolButton2.Enabled:

=Ture;

StuMainFrm.Toolbutton3.Enabled:

=True;

StuMainFrm.ToolButton4.Enabled:

StuMainFrm.ToolButton5.Enabled:

StuMainFrm.ToolButton8.Enabled:

StuMainFrm.ToolButton6.Enabled:

end;

end

else

begin

ifMessageDlg(‘密码输入错误,是否退出?

’,mtContirmation,[mbYes,mbNo],0)=mryes

then

end

else

iftimes<

3theneditl.SetFocus

else

MessageDlg(‘对不起,密码输入严重错误,请退出!

’,mtInformation,[mbOk],0);

Application.Terminate;

end;

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

ProcedureTLoginFrm.FormShow(Sender:

=0;

End;

2成绩管理的代码实现

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

ProcedureTStuMainFrm.BitBtn9Click(Sender:

//“添加”按钮的单击事件

varStuNo,StuName:

i:

integer;

withQuerydo

Sql.Clear;

Sql.Add(‘SelectStuNofromScoreWhersStuNo=’+’’’’+DbEdit6.Text+’’’’);

Open;

ifrecordcount=0then

StuNo:

=DbEdit6.Text;

StuName:

=DbEdit7.Text;

fori:

=lto12do

ifCourse[i]<

>

’0’then

withTable5do

Append;

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

Post;

MessageDlg(‘对不起,该记录已经存在!

3学籍变更的代码实现

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

procedureTStuMainFrm.BitbtnlClick(Sender:

Tobject);

varStuNo,StuName,StuClass,StuDepart.ChangeName,ChangeRemark:

winthTable2do

=Editl.text;

=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)]);

4奖励管理的代码实现

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

procedureTStuMainFrm.bitbtn3Click(Sender:

TObject);

varStuNo,StuName,StuClass,StuDepart,EncourageName:

sering;

withTable3do

=Edit6.text;

=Edit7.text;

=Edit8.text;

=Edit9.text;

ifRadioButtonl.checked=truethen

EncourageName:

=RadioButtonl.Caption;

ifRadioButton2.checked=truethen

=RadioButton2.Caption;

ifRadioButton3.checked=truethen

=RadioButton3.lCaption;

ifRadioButton4.checked=truethen

=RadioButton4.Caption;

ifRadioButton5.checked=truethen

=RadioButton5.Caption;

ifRadioButton6.checked=truethen

=RadioButton6.Caption;

ifRadioButton7.checked=truethen

=RadioButton7.Capiton;

ifRadioButton8.checked=truethen

=RadioButton8.Caption;

SetFields([StuNo,StuName,StuClass,StuDepart,EncourageName,

Fo

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2