《学生档案管理信息系统设计与实现毕业设计论文.doc》由会员分享,可在线阅读,更多相关《学生档案管理信息系统设计与实现毕业设计论文.doc(76页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 成 都 东 软 学 院毕 业 设 计(论 文)报 告 题 目: 学生档案管理信息系统设计与实现 系 别: 计科系 专业班级: 10信息安全一班 学 号: 10315110115 学生姓名: 指导教师: 2013年 12月105 日 2013年12月10日摘 要学生档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强,数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我们使用 MICROSOFT公司的C#+SQL Server2000开发工具,利用其提供的各种面向对象的开
2、发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。关键字:控件,窗体,域。目 录第1章绪论11.1 开发背景11.2开发环境11.2.1 服务端运行环境11.2.2 客户端运行环境21.3 开发工具简介21.3.1 Dreamweaver介绍21.3.2 SQL Server数据库简介21.3.3 C#简介2第2章需求分析32.1可行性研究32.1.1 技术可行性32.1.2 经济可行性32.1.3 操作可行性32.2 系统功能需求分析32.2.1 系统功能模块概述42.2
3、.2 系统数据流图42.3系统数据需求分析5第3章 总体设计73.1 系统设计73.1.1 系统功能模块图73.1.2 模块详细说明73.2 数据库设计83.2.1 概念结构设计83.2.2 逻辑结构设计9第4章 详细设计114.1登录界面的设计114.2学生档案查询模块154.3档案添加子模块174.4档案处理子模块194.5学生成绩子模块214.6用户模块24第5章系统测试265.1登录模块测试265.2 档案查询模块测试265.3档案处理模块测试265.4成绩查询模块测试265.5成绩处理模块测试27第6章 结束语28参考文献29致谢30附录31第1章 绪论1.1 开发背景随着科技的发展
4、,计算机本身经历了巨大的变化。计算机的概念也由原始的分立式走向今天的网络式。网络技术已逐渐成为现代信息技术的主流,网络的概念也随着 Internet 技术和应用的发展而渐入人心。 Internet/Intranet 的作用正为越来越多的人所认识,通过网络共享信息正成为科学研究的一种重要手段。可以这么说,谁拥有信息,谁就能在科技信息革命的大潮中获得主动权,就能获取成功。 面对信息时代的挑战,网络的功能越来越强,国内教育系统也在积极建设或升级计算机网络,并已建成了规模较大的中国教育科研网,全国许多学校也纷纷建立或升级自己的校园网络系统,许多高校还提出了办公无纸化的口号。校园网是实现办公自动化、管理
5、科学化、教学手段现代化和图书情报信息网络化最有利的支撑环境。但是,目前校园网的利用率却不是很高,主要原因是缺少好的网络应用平台。以前开发的 MIS 系统往往是在单机上运行,或者采用 C/S 技术开发出来的,对于今天因特网时代来说,这些系统很大程度上已经不能满足用户随时随地获取信息的需要。学校学生档案管理最初是人工方式进行,显然在信息化发展的今天,这远远不能满足档案管理的需要。后来,随着单机板档案管理系统的开发,这在很大程度上解决了上述矛盾但是,这种系统如今也不能满足档案管理的要求了,这主要是由于高校的扩招,在校学生人数的增加。因此,开发 B/S 结构的 MIS 是势在必行。 本文正是在这种背景
6、下提出的,目的是为了开发出一套功能完善、操作便捷、及时性好、适用面广学校学生档案管理系统,以提高学校学生档案管理的效率。1.2 开发环境1.2.1 服务端运行环境1 、作为服务端硬件必须具有服务器级别。 2 、软件配置:由于本系统是应用于 Microsoft 的 Windows 平台上的,因此对于 Web 服务器的配置应该配置 IIS(Internet Information Service) 等提供 Web 服务的软件。 3 、操作平台:可以选择 Windows 2003 、 Win2000 Server ,也可以是 WinXP 。 1.2.2 客户端运行环境由于本系统是基于 B/S 结构开
7、发出来的,对客户端的配置要求不是很高。 1 、操作平台需求:可以是 Win2000/WinXP/WinMe/Win98 等平台; 2 、软件需求:客户端需要安装一个 Internet 浏览器,如 Internet Explorer 。1.3 开发工具简介1.3.1 Dreamweaver介绍Dreamweaver是一种网站开发设计的基本软件,对于创建专业 Web 站点而言也是一种很好的开发工具,同时也是最简单的建立功能强大的 Internet 应用程序的方法。它可以在单一环境下工作,快速创建和管理 Web 站点和 Internet 应用程序。Dreamweaver 的可视化布局界面是它最主要的
8、一个优势,这样方便开发人员对照布局界面和代码程序来设计,提高了设计的可视化。1.3.2 SQL Server数据库简介在当今数据库开发中,主流的数据库工具是Micorosoft SQL Server 2000 。Micorosoft SQL Server 2000建立在Windows XP/2000操作系统的基础之上,为用户提供了一个功能强大的客户/服务器数据库平台,是一个能同时支持多个并发用户的大型关系数据库。SQL Server 2000是微软公司推出的普及关系数据库系统,其一经推出,就迅速成为使用最广的数据库系统。1.3.3 C#简介C#语言自C/C+演变而来,它是给那些愿意牺牲C+一点
9、底层功能,经获得更方便和更新产品化的企业开发人员而创造的。C#具有现代、简单、完全面向对象和类型安全等特点。C#最重要的一点:它是现代的编程语言。它在类、名字空间、方法重载和异常处理等领域简化了C+。摒弃了C+的复杂性,使它更易用、更少出错。第2章 需求分析2.1 可行性研究目前,在不少初高级中学学生案管理系统都是单机的 MIS,甚至有的还是手工方式。这种单机的管理系统不仅工作方式效率是极低,而且存在许多弊端,主要包括: 1 、档案录入效率低下:例如每学期开学,数以千计的学生档案都由学生处负责录入,这个工程量之大,可想而知。 2 、查询不便:例如,某个年级要调出某个学生的档案,由于学生没有管理
10、档案的权限,他就必须到学生处去调这个学生的档案。 3 、毕业生转档不便:每年大量毕业生,他们都要转走自已的档案。在这个过程中,若没有管理信息系统的参与,工作繁重不可言喻。2.1.1 技术可行性随着科学技术的不断提高也带动了计算机网络的发展及通信平台技术的提高。同时,操作系统Windows XP/2000接口能力强,界面友好,加上采用C#技术开发内容丰富、动态的、个性化的Web应用程序,使用SQL Server 2000作为系统开发后台数据库,能有效存储和管理数据。所以完成在技术上是可行的。2.1.2 经济可行性计算机不仅价格低廉还可以代替人工进行许多繁杂的劳动,节省许多资源,大大的提高人们的工
11、作效率,同时本系统开发周期短、成本低。因此在信息时代的今天传统的查阅方法必然被计算机为基础的在线查阅所取代。2.1.3 操作可行性 作为计算机应用的一部分,使用计算机对学生档案信息进行查阅,具有手工查阅所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好等。且本系统的开发六周时间即可完成。前两周主要是对图书馆运作流程的熟悉和公众对在线查阅要求的了解,接下来就是运用C#编程即可完成整个系统工作。2.2 系统功能需求分析新昌中学学生档案管理系统的主要任务就是对学生的档案信息进行管理,即查询、添加、修改、删除等功能。使用户能方便的得到想要的信息,使学校学生的档案管理更加系统化、自
12、动化、规范化,从而提高管理的效率。2.2.1 系统功能模块概述现在对系统的功能进行详细分解。 1. 档案添加模块 该模块用来上传学生的档案信息,这也是本系统中数据管理的主要对象。 2. 档案浏览模块 用户可以利用此模块功能很快查询到任何一个在校学生的档案信息。当然系统应该提供多种查询方式。 3. 档案处理模块 当发现学生档案录入有误或是需要增加相关信息时,就可以利用此模块的功能来实现档案的更新。 学生毕业或是退学后,其档案信息也应在调离本校本校之后,予以销毁。4. 密码设置模块 用户在登陆之后可以修改自已的密码。 5. 设置模块 此模块功能只有系统管理员才能使用,他可以授予某个用户相应的身份,
13、例如,系统用户,普通管理员,普通用户 ( 学生 ) 等等到。 6. 成绩浏览模块 用户可以利用此模块功能很快查询到任何一个在校学生的成绩信息。当然系统应该提供多种查询方式。7. 成绩处理模块 当发现学生成绩录入有误或是需要增加相关信息时,就可以利用此模块的功能来实现成绩的更新及删除等功能。8. 系统模块 用于用户从系统安全退出。 9. 功能模块 任何一个系统都应当有适应未来发展趋势的功能,此模块的目的是提供一个接口,以备将来护充其它功能。 10. 说明模块 即本系统的说明书,用户作为参考之用。 2.2.2 系统数据流图数据流图也称为Data Flow Diagram。是描述数据处理过程的工具。
14、数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。新昌中学学生档案管理系统用户用户输入信息输出信息库文件图2-1 系统顶层数据流图数据库基本信息管理管理成绩管理登录学生档案管理系统用户课程管理用户所需信息班级管理图2-2 数据流图2.3 系统数据需求分析数据流图描述了系统的分解,即系统由哪些部分组成,各部分之间有什么联系等。但是,他还不能完整地表达一个系统的全部逻辑特征,特别是有关数据的详细内容。这就要引入数据字典这个概念。数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素的定义的集合。任何字典最主要的用途都是供人查阅对不了解的条目的解释,数据字典的
15、作用也正是在软件分析和设计的过程中给人提供关于数据的描述信息。第3章 总体设计3.1 系统设计3.1.1 系统功能模块图学生档案管理系统学生成绩管理学生档案管理学生班级管理系统管理取消登录用户登录档案处理成绩处理成绩查询班级处理档案浏览班级查询图3-1 系统功能模块图3.1.2 模块详细说明学生档案的管理需要以下功能:(1) 系统管理(登录、注册、修改密码、退出)(2) 学生档案管理(查询、添加、修改、删除)(3) 成绩管理(查询、录入、更新、删除)(4) 课程管理(查询、录入、更新、删除)(5) 班级管理(查询、录入、更新、删除)3.2 数据库设计设计数据库系统时应该首先充分了解用户各个方面
16、的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下两个步骤: (1) 数据库概念结构设计(2) 数据库逻辑结构设计3.2.1 概念结构设计概念结构既独立于数据库的逻辑结构,也独立与所使用的具体的数据库管理系统。用来描述概念结构设计的有力工具是E-R模型,E-R模型用E-R图表示。本系统所涉及的E-R图用户信息ER图、学生信息ER图、成绩信息ER图,下面分别对各个E-R做介绍。(1)读者信息ER图:实体集用户信息有属性:用户名、密码、角色。用户用户名密码角色图3-2 用户信息表E-R图(2)学生信息ER图:实体集学生基本信息有属性:学号、姓名、性别、家庭住址、政治面貌、身份证、出生
17、年月、班级代码。学号性别姓名出生年月身份证学生家庭住址班级代码政治面貌图3-3 学生信息表E-R图(3)借阅信息ER图:实体集成绩信息有属性:学号、姓名、教师名、课程名、分数、课程类型、状态。学号教师名姓名课程类型课程名学生分数状态图3-4 成绩信息表E-R图3.2.2 逻辑结构设计逻辑设计在数据库概念设计的基础上进行。其主要任务是将概念模型转换为数据库的逻辑模型,并与选用的DBMS相结合,产生具体的DBMS所支持数据模型的逻辑模式。表3-1 学生基本信息表字段名英文名数据类型是不为主键备注学号NumVarchar(30)是不为空姓名NameVarchar(30)是性别SexVarchar(3
18、0)否出生年月DataDatatime否家庭住址PlaceVarchar(50)否政治面貌PoliticsVarchar(10)否身份证CardnumInt 否班级代码spenumInt否表3-2 用户表字段名英文名数据类型是不为主键备注用户名UserVarchar(30)是不为空密码PasswordVarchar(30)否不为空表3-3 学生课程表字段名英文名数据类型是不为主键备注课程编号CoursnumInt是不为空课程名称CoursenameVarchar(30)否学时TimeVarchar(10)否开设学期StarttimedataTime否学制EdcateVarchar(10)否类型
19、TyeVarchar(10)否班级代码SpenumInt否表3-4 学生班级表字段名英文名数据类型是不为主键备注班级代码SpennumInt是不为空班级名称SpenameVarchar(30)否班级介绍Descriptiontext否表3-5 学生成绩表字段名英文名数据类型是不为主键备注学号NumInt是不为空姓名NameVarchar(30)否班级名ClassnameVarchar(30)否课程名CoursenameVarchar(30)否分数FractionFloat否课程类型CoursetyeVarchar(10)否状态StateVarchar(10)否第4章 详细设计4.1 登录界面的
20、设计图4-1 系统登录界面代码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data.OleDb ;using System.Drawing;using System.Text;using System.Windows.Forms;namespace 学生学籍管理系统 public partial class DL : Form public DL() InitializeComponent(); private void button2_Click(objec
21、t sender, EventArgs e) Application.Exit(); private void DL_Load(object sender, EventArgs e) textBox1.Focus(); private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = | textBox2.Text.Trim() = ) MessageBox.Show(请输入用户名和密码, 错误提示); else DB.cn.Open(); OleDbCommand cmd = new OleDb
22、Command(, DB.cn); string sql = select RoleName from UserInfo where user= + textBox1.Text.Trim() + and Password= + textBox2.Text.Trim() + ; cmd.CommandText = sql; string rolename; if (null != cmd.ExecuteScalar() rolename = cmd.ExecuteScalar().ToString(); this.Visible = false; Main main = new Main();
23、main.Tag = this.FindForm(); sql = select * from Roles where RoleName= + rolename + ; cmd.CommandText = sql; OleDbDataReader xq = cmd.ExecuteReader(); xq.Read(); main.XTMenuItem.Visible = (bool)(xq.GetValue(1); main.CJMenuItem.Visible = (bool)(xq.GetValue(2); main.BJMenuItem.Visible = (bool)(xq.GetVa
24、lue(4); main.KCMenuItem.Visible = (bool)(xq.GetValue(5); main.DAMenuItem.Visible = (bool)(xq.GetValue(6); main.StatusLabel2.Text = textBox1.Text.Trim(); main.ShowDialog(); DB.cn.Close(); else MessageBox.Show(用户名或密码错误, 登录失败); DB.cn.Close(); 图4-2 系统主界面主界面代码如下:namespace 学生学籍管理系统 partial class Main / /
25、必需的设计器变量。 / private System.ComponentModel.IContainer components = null; / / 清理所有正在使用的资源。 / / 如果应释放托管资源,为 true;否则为 false。 protected override void Dispose(bool disposing) if (disposing & (components != null) components.Dispose(); base.Dispose(disposing); #region Windows 窗体设计器生成的代码 / / 设计器支持所需的方法 - 不要
26、/ 使用代码编辑器修改此方法的内容。 / private void InitializeComponent() System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main); this.menuStrip1 = new System.Windows.Forms.MenuStrip(); this.XTMenuItem = new System.Windows.Forms.ToolStripMenuItem();
27、this.添加用户ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.添加用户ToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); this.修改用户ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.CJMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.成绩录入T
28、oolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.成绩修改ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.成绩删除ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.添加成绩ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.成绩查询T
29、oolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.BJMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.班级设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.班级修改ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.添加班级ToolStripMen
30、uItem = new System.Windows.Forms.ToolStripMenuItem(); this.班级浏览ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.KCMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.课程设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.录入课程ToolStripMenuItem = new
31、 System.Windows.Forms.ToolStripMenuItem(); this.删除课程ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.课程浏览ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.DAMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.档案设置ToolStripMenuItem = new System.Win
32、dows.Forms.ToolStripMenuItem(); this.档案录入ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.档案删除ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.档案查询ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.用户操作ToolStripMenuItem = new System.Win
33、dows.Forms.ToolStripMenuItem(); this.修改密码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.重新登录ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.退出系统ToolStripMenuItem = new 4.2 学生档案查询模块图4-3 学生档案查询代码如下:namespace 学生学籍管理系统 public partial class ApdateStuInfo: Fo
34、rm CurrencyManager cm; public ApdateStuInfo() InitializeComponent(); private void DealStuInfo_Load(object sender, EventArgs e) string connstring = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=xsxjdb.mdb; string sqlstring = select * from StudentInfo; OleDbConnection oldconn = new OleDbConnection(conn
35、string); oldconn.Open(); OleDbDataAdapter oda = new OleDbDataAdapter(sqlstring, connstring); DataSet ds = new DataSet(); oda.Fill(ds, StudentInfo); textBox1.DataBindings.Add(Text, ds, StudentInfo.Num); textBox2.DataBindings.Add(Text, ds, StudentInfo.Name); textBox6.DataBindings.Add(Text, ds, Student
36、Info.Sex); textBox3.DataBindings.Add(Text, ds, StudentInfo.Date); textBox4.DataBindings.Add(Text, ds, StudentInfo.Place); textBox7.DataBindings.Add(Text, ds, StudentInfo.Politics); textBox5.DataBindings.Add(Text, ds, StudentInfo.CardNum); textBox8.DataBindings.Add(Text, ds, StudentInfo.SpeNum); cm =
37、 (CurrencyManager)this.BindingContextds, StudentInfo; cm.Position = 0; private void button1_Click(object sender, EventArgs e) if (cm.Position = 0) MessageBox.Show(已经是第一条记录了, 信息提示, MessageBoxButtons.OK, MessageBoxIcon.Information); return; else cm.Position = 0; private void button2_Click(object sender, EventArgs e) cm.Position-; private void button3_Click(object sender, EventArgs e) if (cm.Position = cm.Count - 1) MessageBox.Show(已经是最后一条记录, 信息提示, MessageBoxButtons.OK, MessageBoxIcon.Information); return; else cm.Position+; private