11引言学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。毋庸置疑,切实有效地把计算机管理引入学校学生成绩管理中,对于促进学校管理制度,提高学校教学质量与办学水平有着显著意义。2需求分析本项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理。目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软件也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。2根据要求,主要功能包括(1)输入学生信息,(2)查看学生信息,(3)查询学生信息,(4)删除学生信息,(5)修改学生信息。系统的输入设备由一般的输入设备(即键盘、鼠标)组成,主要是从系统的弹出对话框输入帐户的数据信息。系统的输出主要以对话框、编辑框以及列表显示于屏幕。2.1功能需求分析根据数据库中存储的数据对登录的用户账号进行验证,再进行判断是否授予访问权限。管理员可以根据需要,对学生的基本信息进行查看、添加、修改以及删除,详细操作如下:(1)添加学生信息的功能主要包括对学生信息的输入,包括待输入学生的学号、姓名、年龄、性别、所在学院和专业名。(2)查询学生信息的功能就是对已经添加的学生信息按学号进行查看,有利于管理者对学校学生信息的了解。(4)删除学生信息的功能是将整个系统的学生信息进行按学号进行删除。(5)修改学生信息的功能是输入要修改学生的学号分别修改学号、姓名、年龄、性别、所在学院和专业名。2.2性能需求分析a)稳定性:软件应具备长期持续工作的能力。b)安全性:有良好的用户身份认证体制和灵活的密码更改模块。c)实用性:用户界面做到直观、友好,业务人员只需经过简单培训即可操作。d)可靠性:采用良好的操作软件和数据库,确保数据的一致性和完整性,并使软件免受病毒感染。2.3业务流程分析通过业务流程的分析将业务流程逻辑与实现各业务的应用分离、协调流程参与者的相互关系、集成内部和外部资源以及监控和分析流程性能,实现对业务流程整个生存周期的控制。它负责解释流程建模工具定义的业务流程逻辑,把任务分派给执行者,并根据任务执行的返回结果决定下一步的任务,控制并协调各种复杂工作流程的执行并且同步各个客户端的反应,根据组织机构模型中所定义的岗位分派策略获取实际的执行者,并同时获得所需的组织信息。本软件的业务流程是:用户登录软件前首先判3断用户名和密码是否正确,如果不正确就停留在登录界面重新输入;如果输入的信息正确就可以顺利的进入服务器端进行软件管理。2.3.1软件数据流图数据流图(DFD)是一种描述数据流和加工的图形表示。当数据输入到软件后,经过一系列变换(加工),最后输出新的数据。所以它服务于两个目的:(1)指明数据在软件中移动时如何被变换;(2)描述对数据流进行变换的功能(和子功能)。DFD提供了附加的信息,它们可以被用于信息域的分析,并作为功能建模的基础。在DFD中出现的每个功能的描述包含在“加工规约”(PSPEC)中。随着这一过程的行,本软件的用户需求将会进一步精确化、一致化、完全化。具体数据流图如下:图2.3软件数据流图2.3.2软件数据字典数据字典最重要的用途是作为分析阶段的工具。在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除许多可能的误解。数据字典是关于数据的信息集合,也就是对数据流图中包含的所有元素定义的集合。经过上述软件功能分析和需求总结,考虑到将来功能上的扩展,设计如下面所示的数据项和数据结构。(1)学生信息包括的数据项有:学生姓名、学生学号、学生性别、学生年龄、所在学院、专业名称(2)管理员信息包括的数据项有:账号名、登录密码管理员权限信息用户权限信息用户基本信息管理员信息登录系统管理员系统学生信息系统用户管理管理员42.4数据需求分析得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系。根据上面的设计规划出的实体有:学生实体、管理员实体。A.软件实体E-R图图2.4软件E-R图B.软件各实体属性图如下所示:a)学生信息实体属性图2.5学生信息实体属性图b)管理员信息实体属性密码nm管理员账号名管理学生专业名所在学院姓名性别年龄学号学生信息学生学号专业名学生姓名学生性别年龄所在学院52.6管理员信息实体属性图3软件的设计许多学校经过多年的发展,学校规模不断扩大,学生人数成倍增长,积累了大量的学生信息,继续进行统一管理以防信息的流失。因此,许多学校需要一个功能全面的学生信息管理系统来进行管理,以使管理学生信息的工作在该系统的配合下更加高效和便捷。3.1软件的结构设计学生信息管理系统是一个对学生全方面管理的程序。该系统充分考虑用户的操作简便性,实现快捷操作。它有以下几个功能:输入学生信息、查看学生信息、查询学生信息、删除学生信息、修改学生信息。根据功能描述,学生信息管理系统可以分为4个模块,每一个模块有提供了更具体的功能。学生信息管理系统的功能模块图如图3.1所示。图3.1软件功能模块图管理员信息登陆密码帐号名学生信息管理添加学生信息查询学生信息删除学生信息修改学生信息信息63.2软件的数据库设计从软件的稳定性方面考虑,本软件使用SQLServer2005数据库软件。结合需求分析中的E-R图,设计了各数据表。a)管理员信息表表2.1管理员信息表(Login)字段名称数据类型字段大小必填字段说明IDvarchar50是管理员帐号名,主键PWDsmallint50是登录密码b)学生信息表表2.2学生信息表(Student)字段名称数据类型字段大小必填字段说明STIDint20是学生学号,主键NAMEvarchar50否学生姓名XUEYUANvarchar50否所在学院ZHUANYEvarchar50否专业名称AGEvarchar20否年龄SEXvarchar20否性别4软件的实现详细设计是软件开发时期的第三个阶段,也是软件设计的第二步。在概要设计已经确定了软件软件的总体结构,详细设计主要是考虑“怎样实现”这个软件软件,给出各个模块的详细过程性描述。因此,软件的设计和实现如下。4.1管理员登录模块首先创建一个名为Default的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入帐号名和密码,当输入的帐号名或者是密码有错误时会提示登录失败。为了实现这些功能,在窗体中放置一个Login控件,设计后的窗体如图4.1所示:7图4.1管理员登录窗体该模块的核心代码如下:usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Collections;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Data.SqlClient;publicpartialclass_Default:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){}protectedvoidLogin1_Authenticate1(objectsender,AuthenticateEventArgse)8{stringid=this.Login1.UserName;stringpwd=this.Login1.Password;SqlConnectioncon=db.createconnection();con.Open();SqlCommandcmd=newSqlCommand(selectcount(*)fromLoginwhereID='+id+'andPWD='+pwd+',con);intcount=Convert.ToInt32(cmd.ExecuteScalar());con.Close();if(count0){Response.Redirect(main.aspx);}}}4.2信息查询模块首先创建一个名为seek的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入学生学号进行查询,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.2所示:图4.2信息查询窗体该模块的核心代码如下:publicpartialclassseek:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){if(!this.IsPostBack)9{SqlConnectioncon=db.createconnection();//建立连接SqlDataAdaptersda=newSqlDataAdapter(select*fromSTUDENT,con);//DataSetSET=newDataSet();sda.Fill(SET);this.DropDownList1.DataSource=SET;this.DropDownList1.DataTextField=STID;this.DropDownList1.DataValueField=STID;this.DropDownList1.DataBind();}}protectedvoidButton1_Click(objectsender,EventArgse){}protectedvoidButton2_Click(objectsender,EventArgse){Response.Redirect(main.aspx);}}4.3信息添加模块首先创建一个名为add的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入学生的各项信息,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.3所示:10图4.3信息添加窗体该模块的核心代码如下:(1)“添加”控件所对应的事件代码:publicpartialclassadd:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){}protectedvoidButton1_Click(objectsender,EventArgse){stringstid;stringna