毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc

上传人:laozhun 文档编号:3978933 上传时间:2023-03-30 格式:DOC 页数:36 大小:1.21MB
返回 下载 相关 举报
毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc_第1页
第1页 / 共36页
毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc_第2页
第2页 / 共36页
毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc_第3页
第3页 / 共36页
毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc_第4页
第4页 / 共36页
毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于C#的白马小学学生管理系统的设计与实现.doc(36页珍藏版)》请在三一办公上搜索。

1、毕业设计(论文)题 目: 白马小学学生管理系统 的设计与实现 学 院:计算机科学与技术学院 专 业: 学生姓名: 指导教师: 毕业设计(论文)时间:二 年 月 日 月 日 共 周摘 要 本系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的数字化管理。同时对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,使各项管理更加规范化。在本系统开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计。随着用户的使用及对系统了解的不断

2、加深,对某一部分或几部分进行重新分析、设计、实施。本论文主要从系统分析、系统设计、系统实施与使用等几个方面进行介绍。关键词:学生管理信息系统,信息化,C#,Visual Studio, 数据库AbstractThe system development requirements based on the educational system is mainly used to complete the education of students on the daily performance management of digital files. Meanwhile, the Senate

3、, the teaching service and information management, while reducing the use of labor, speed up the query speed, strengthen management, to make the management more standardized. The system in the development process, attention to meet the operational business processes, and seek systematic comprehensiv

4、e, universal, makes the system not only applies to an educational institution. Follow the system of investigation and research, system analysis, system design and system implementation of the four main stages of the design. With the user and the deepening understanding of the system, part or parts o

5、f a re-analysis, design, implementation. In this thesis, from system analysis, system design, system implementation and use of such aspects are introducedKey words: Student Information Management System database, Database, C#, Visual Studio,Information目 录摘 要IAbstract(英文摘要)II目 录IV第一章绪论11.1问题的提出11.2现有

6、系统存在问题的分析1第二章开发工具和相关技术的介绍22.1 VisualStudio .Net介绍22.2 Access介绍32.2.1 Access2003的特点32.2.2 Access 在课题中的应用4第三章 学生管理系统概要设计53.1系统设计图例说明53.2系统设计目标53.2.1系统设计目标概述53.2.2用户63.2.3系统模块图6第四章学生管理系统的实现84.1系统结构84.2管理系统功能的实现94.2.1登陆界面的实现94.2.2学生管理模块的实现104.2.3教师管理模块的实现13第五章系统的测试245.1测试环境245.2测试过程24结论30参考文献31致 谢32第一章

7、绪论1.1问题的提出随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使人们的生活与工作方式发生了很大的改观。网络技术的应用使得计算机之间通信、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更高效地进行。数据库始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。而互联网技术的出现,更是进一步丰富的人类生活,数字化生存已经一步步走进我们的生活与工作。互联网技术与数据库技术的

8、结合为计算机在人类生活中的应用带来了巨大的影响。产业信息化,管理现代化,已经成为行业发展的重要课题,这不仅是企业提高自身竞争力,甚至是国家提高综合国力,走向国民富强的重要手段。1.2现有系统存在问题的分析在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有任何信息管理系统,所有的工作几乎还是手工操作来完成。计算机技术在日新月异的发展,但是有很多学校,特别是在西部贫困地区,学校的管理都依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。所以机器代替人力是必然的历史发展趋势,人工操作必将被计算机代替。第二章 开发工具和相关技术的介绍2.1 Visual S

9、tudio .Net介绍Visual Studio .Net是唯一从头至尾都是基于通过XML Web Service进行集成这一思想而构建的环境。通过允许应用程序通过Internet共享数据,XML Web Service使开发人员能够利用新的和现有的代码构建应用程序,而不用考虑平台、编程语言或对象模型。文本编辑器:在文本编辑器中,可以编写C#代码。这个文本编辑器相当好用,例如,在键入语句时,它可以自动布局代码,如:缩进代码行,匹配代码块的首尾括号,提供彩色编码的关键字等。在键入语句时,它还能执行一些语法检查,把可能产生编译错误的代码加上下划线,这也称为设计期间的调试。它还提供了智能感知功能。

10、在开始键入时,它会自动显示类、字段或方法名。在开始键入方法的参数时,它也会显示可用重载方法的参数列表。代码的设计视图编辑器:它可以在项目中可视化地放置用户界面和数据访问控件。此时,Visual Studio .Net会自动在源文件中添加必要的代码,在项目中实例化这些控件。支持窗口:它们可以查看和修改项目的各个方面,例如,这些窗口可以显示源代码中的类以及Windows窗体和Web窗体类中的可用属性。也可以使用这些窗口指定编译选项,例如代码需要引用哪些程序集。环境中编译:可以只选择一个菜单选项编译项目,而不必在命令行上运行C#编译器。Visual Studio .Net会调用C#编译器,把所有的相

11、关命令行参数传递给编译器,例如要引用的程序集和要生成什么类型的程序集。还可以直接运行编译好的可执行文件,用户可以查看这些文件的运行情况是否正常,并可以选择不同的编译配置,例如,编译一个发布版本或调试版本。集成的调试程序:编程的本质是代码在第一次运行时,一般不会正确执行。也许在第二次、第三次才能正确运行。无缝链接到一个调试程序上,可以在该调试环境中设置断点,观察变量。集成的MSDN帮助: 可以在IDE中调用MSDN文档说明。例如,在文本编辑器中,如果不能确定某个关键字的含义,可以选择它,按下F1键,就打开MSDN,以显示相关的主题。同样,如果不知道某个编译错误是什么意思,可以打开MSDN,选择错

12、误消息,按下F1键,系统就会显示该错误的信息。访问其他程序: 还能调用许多其他工具来查看和修改计算机或网络的一些内容,而无需退出开发环境。利用这些工具,可以检查运行服务和数据库连接,直接查看Access表,浏览Web。2.2 Access介绍Access 是微软公司推出的基于Windows的桌面关系数据库管理系统,是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的

13、任务。2.2.1 Access的特点Access的主要特点:第一,Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为.MBD的数据库文件中,便于用户的操作和管理。第二,Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。第三,

14、Access是一个可视化工具,风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。第四,Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。第五,Access支持ODBC(开发数据库互连),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以

15、在一个数据表中嵌入位图、声音、表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。2.2.2 Access 在课题中的应用Access在本次课题的设计中主要完成对数据库的设计,建立较完善的数据表,保存系统所需要的所有数据,对系统提供必要的数据支持。本次设计使用Access 2003。第三章 学生管理系统概要设计3.1系统设计图例说明系统流程图基本图形元素如下所示: 开始与结束 决策 过程数据程序流向 程序逻辑结构描述图例图3-1程序逻辑结构图顺序结构:命令按照顺序执行;(1) 选择结构:(或IF-THEN-ELSE)当一个决定

16、有多种不同执行结果时;(2) 循环结构:只要条件成立就一直执行.3.2系统设计目标3.2.1系统设计目标概述学生信息管理系统的业务总体目标是建立一个先进、高效、安全、可靠的能被有效应用于学生管理的信息化数据库管理系统。该系统基于B/S结构,即采用浏览器/服务器模式,服务器端由运行Asp.Net的Web应用程序及运行Access的数据库服务器组成,客户端可以Internet Explorer,Firefox访问系统。本信息系统体现了学生成绩管理的业务逻辑行为、大大简化了相关工作的烦琐流程,同时为管理层提供有力的决策支持。3.2.2用户本系统用户角色主要有两类:系统管理员与普通用户。其中系统管理员

17、可进行用户管理。普通用户为学生,系统管理员为老师。教师:可进行学生信息管理,课程信息管理,成绩管理,授课信息管理,信息查询,成绩统计,系统管理等工作。学生:可进行成绩查询、课程查询等操作。3.2.3系统模块图管理功能结构图:系统管理员记录添加,删除,修改组权限管理功能模块管理图3-2 管理功能结构图 学生信息管理教师功能结构图:课程信息管理学生成绩管理老师记录添加,删除,修改授课信息管理学生信息查询学生成绩统计图3-3教师功能结构图学生功能结构图:学生成绩查询 图3-4学生功能图第四章 学生管理系统的实现4.1系统结构本系统从功能上划分可分为以下几大模块:功能模块管理,学生信息管理,课程信息管

18、理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。以下将对各子模块进行说明。功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。本模块包括功能模块的添加,删除,修改等。 学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。 课程信息管理:设置课程号,课程名等课程信息。 成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。输出查询

19、的学生成绩信息。授课信息管理:对教师授课信息的调度,安排等信息的管理。学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,所在年级,等不同条件独立查询或进行模糊查询。学生成绩统计:对学生成绩分数,是否重修等进行统计。4.2管理系统的功能实现4.2.1登录界面的实现用户通过登录页面,进入学生管理系统首页。该模块主要用于验证用户的身份及密码,其界面如图4-1所示。图4-1 用户登录界面在登录页面中利用C#语言编写检测用户输入信息是否合法的函数,并通过单击登录按钮调用该函数,判断用户名或密码是否为空,如果为空,系统将给予提示。当用户输入合法信息后,跳转至主窗体。登陆代码如下:if (this

20、.系统用户TableAdapter.GetDataBy(this.textBoxPassword.Text, this.textBoxUser.Text).Count = 1) Form2 Frm2 = new Form2(); Frm2.Show(); else if (this.textBoxUser.Text = ) MessageBox.Show(请输入用户名称!); else if (this.textBoxPassword.Text = ) MessageBox.Show(请输入密码!); else MessageBox.Show(没有此用户或密码错误!); this.panel1

21、.Hide();4.2.2学生管理模块的实现 学生管理模块包括的功能有:课程选定、成绩查询。在课程选定这一界面主要包括课程编号、课程名称、任课老师、开课系别。同时还包括学生可以通过学号和课程编号来查询选取的课程。输入学号和课程编号后会在页面的右下方显示出选课内容。课程选定界面如图4-2所示:图4-2 课程选定界面课程选定代码如下:private void 选课ToolStripMenuItem_Click(object sender, EventArgs e) this.panel1.Show(); /这行代码将数据加载到表“教务系统DataSet.选课表”中。您可以根据需要移动或移除它。 t

22、his.选课表TableAdapter.Fill(this.教务系统DataSet.选课表); private void 班级设置BindingNavigatorSaveItem_Click(object sender, EventArgs e) this.选课表TableAdapter.Update(this.教务系统DataSet.选课表); / 这行代码将数据加载到表“教务系统DataSet.课程信息”中。您可以根据需要移动或移除它。 this.课程信息TableAdapter.Fill(this.教务系统DataSet.课程信息);成绩查询页面主要有学号输入、查询2个部分。输入学号后点

23、击查询就可以查看成绩了。成绩查询页面如图4-3图4-3 成绩查询成绩查询代码如下private void searchGradeForm_Load(object sender, EventArgs e) /这行代码将数据加载到表“教务系统DataSet.成绩表”中。您可以根/据需要移动或移除它。 this.成绩表TableAdapter.Fill(this.教务系统DataSet.成绩表); private void fillByToolStripButton_Click(object sender, EventArgs e) try this.成绩表TableAdapter.FillBy(t

24、his.教务系统DataSet.成绩表, new System.Nullable(int)(System.Convert.ChangeType(学号ToolStripTextBox.Text, typeof(int); catch (System.Exception ex) System.WINDOWS.Forms.MessageBox.Show(ex.Message); 4.2.3教师管理模块的实现教师管理系统包括信息维护、课程管理、成绩管理、系统管理。信息维护维护包括学生信息和班级信息。学生信息包括姓名、班级、学号、民族、性别、邮编、手机号码、家庭电话号码、地址。学生信息页面如图4-4:图

25、4-4 学生信息学生信息代码如下private void studentForm_Load(object sender, EventArgs e) /这行代码将数据加载到表“教务系统DataSet.学生信息”中。可以/根据需要移动或移除它。 this.学生信息TableAdapter.Fill(this.教务系统DataSet.学生信息); private void button1_Click(object sender, EventArgs e) try int str = int.Parse(this.textBox_Number.Text); this.学生信息TableAdapter.

26、FillBy(this.教务系统DataSet.学生信息, str); catch (Exception error) MessageBox.Show(搜索数据发生错误: + error.Message, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); private void button2_Click(object sender, EventArgs e) this.学生信息TableAdapter.Fill(this.教务系统DataSet.学生信息); private void 班级设置BindingNavigatorSaveIte

27、m_Click(object sender, EventArgs e) this.学生信息TableAdapter.Update(this.教务系统DataSet.学生信息); 班级信息组要包括班级编号、班级名称、年级、人数、班主任等信息。登陆页面后可直观的了解学生信息。班级信息页面如图4-5图4-5 班级信息班级信息代码如下 private void classForm_Load(object sender, EventArgs e) /这行代码将数据加载到表“教务系统DataSet.班级信息”中。您可以/根据需要移动或移除它。 this.班级信息TableAdapter.Fill(this

28、.教务系统DataSet.班级信息); private void toolStripButton1_Click(object sender, EventArgs e) try this.班级信息TableAdapter.FillBy(this.教务系统DataSet.班级信息, this.textBox1.Text); catch (Exception error) MessageBox.Show(搜索数据发生错误: + error.Message, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); private void toolStri

29、pButton2_Click(object sender, EventArgs e) this.班级信息TableAdapter.Fill(this.教务系统DataSet.班级信息); private void 班级设置BindingNavigatorSaveItem_Click(object sender, EventArgs e) this.班级信息TableAdapter.Update(this.教务系统DataSet.班级信息); 课程管理包括课程信息和课程表。课程信息主要有课程编号、课程名称、课程简称、拼音码、教师、开课系别、学分。课程信息页面如图4-6 进货分析界面可以分析进货商

30、品和退货商品,对商品的进货价格、数量和图4-6课程信息课程信息代码如下private void coursesForm_Load(object sender, EventArgs e) / 这行代码将数据加载到表“教务系统DataSet.课程信息”中。您可以根据需要移动或移除它。 this.课程信息TableAdapter.Fill(this.教务系统DataSet.课程信息); private void 班级设置BindingNavigatorSaveItem_Click(object sender, EventArgs e) this.课程信息TableAdapter.Update(thi

31、s.教务系统DataSet.课程信息); private void toolStripButton1_Click(object sender, EventArgs e) this.课程信息TableAdapter.FillBy(this.教务系统DataSet.课程信息, this.textBox1.Text); private void toolStripButton2_Click(object sender, EventArgs e) this.课程信息TableAdapter.Fill(this.教务系统DataSet.课程信息); 课程表主要包括课程编号、上课时间天、上课时间节、课序号

32、、上课地点。具体页面如图4-7图4-7课程表课程表代码如下private void reportForm_Load(object sender, EventArgs e) /这行代码将数据加载到表“教务系统DataSet.课程表”中。您可以根据需要移动或移除它。 this.课程表TableAdapter.Fill(this.教务系统DataSet.课程表);private void 班级设置BindingNavigatorSaveItem_Click(object sender, EventArgs e) this.课程表TableAdapter.Update(this.教务系统DataSet

33、.课程表);private void toolStripButton1_Click(object sender, EventArgs e) this.课程表TableAdapter.FillBy(this.教务系统DataSet.课程表,this.textBox1.Text); private void toolStripButton2_Click(object sender, EventArgs e) this.课程表TableAdapter.Fill(this.教务系统DataSet.课程表); 成绩管理主要是成绩的录入。成绩录入包含有编号、课程编号、学号、考试次数、成绩、是否重考、是否补

34、修、是否已确定成绩。具体页面如图4-8图4-8成绩录入成绩管理代码如下private void gradeForm_Load(object sender, EventArgs e) / 这行代码将数据加载到表“教务系统DataSet.成绩表”中。您可以根据需要移动或移除它。 this.成绩表TableAdapter.Fill(this.教务系统DataSet.成绩表); private void 成绩设置BindingNavigatorSaveItem_Click(object sender, EventArgs e) this.成绩表TableAdapter.Update(this.教务系统

35、DataSet.成绩表); 系统管理包含用户管理和系统信息。用户管理主要是用来添加和保存用户。其中包含了用户ID、用户名称、用户密码。具体页面如图4-9 图4-9用户管理用户管理代码如下private void passwordForm_Load(object sender, EventArgs e) /这行代码将数据加载到表“教务系统DataSet.系统用户”中。您可以根据需要移动或移除它。 this.系统用户TableAdapter.Fill(this.教务系统DataSet.系统用户); private void 用户设置BindingNavigatorSaveItem_Click(ob

36、ject sender, EventArgs e) this.系统用户TableAdapter.Update(this.教务系统DataSet.系统用户); 第五章 系统的测试程序编写完毕,并不是开发工作的结束。在系统正式投入运行的转换工作之前,还需对系统进行一系列的调试即测试。一个管理信息系统,在设计和编程中没有任何错误是不可能的。系统调试的任务是根据系统说明书和系统实施方案,对程序设计的结果进行全面的检查,找出并纠正其中的错误,使可能发生的问题和错误,尽量消灭在系统正式运行之前。管理信息系统在开发的各个阶段,都有可能产生错误。为了发现这些错误,调试过程可以分解为与系统开发过程相反的三个方向

37、:即分调、联调和总调。下面介绍一下我对此系统的测试过程。5.1测试环境测试的软件环境是:操作系统为Windows XP,数据库为 Access2003,编程工具选用。测试的硬件环境为:主机为CELERON-M 420,硬盘为15G,内存容量512M,VGA显示器。5.2测试过程程序编写完成后,根据程序的功能设计来检测。首先程序可以正常运行,出现登录界面,输入用户名及密码后进入系统主框架窗口。进入系统后,就可以测试每一个模块的功能。登陆测试。在登陆页面输入用户名和密码后点击登陆,结果出现了如图5-1的错误。(点击登录后显示出了注销)图5-1打开登录页面的源代码,经过查找发现登陆和注销的代码颠倒。

38、调整好代码顺序后点击调试,然后输入用户名和密码点击登陆,出现如图5-2所示图5-2课程表查询测试。打开课程表页面,输入正确的课程编号后只显示出了课程信息没有显示出课程表的具体内容,如图5-3所示图5-3 rgtdfgdf发现错误后打开课程查询源代码并查找其中的错误,结果发现了如图5-4所示的错误图5-4然后再错误处加上Show();然后再执行下程序,则如图5-4所示4图5-4成绩表成绩录入测试。登入成绩录入界面录入成绩是出现了如图5-5所示错误(课程编号无法录入)图5-5调出成绩录入源代码,点开属性后发现了如图5-6所示情况图5-6 把True改成False,让后执行程序后成绩录入中的课程编号

39、就能正确录。以上是测试内容是从所有测试内容中选出来的3个代表性的,具体的测试内容如表5-6测试内容所属类别测试结果功能有效性安全性是否提示教师登录是否登录系统成功是否可以添加重名用户ID教师修改学生信息教师修改基本设置添加新用户查询课程表成绩表录入删除用户 表5-6测试内容表结论经过二个多月的设计和开发,系统基本开发完毕。其功能基本符合用户需求,能够完成学生学籍的存储和成绩的查询以及课程查询。同时能够较好的通过教师管理来完善学生信息和课程的安排。对于学生而言,此系统可以帮助学生更好的选取课程,了解自己的成绩,同时还可以通过本系统来查询成绩和其他同学的信息。同学们可以根据本系统调整自己的学习时间

40、和状态,从而更好的帮助同学们,取得更好的成绩。但是系统还有许多不尽如人意的地方,比如用户界面不够美观,功能不太齐全,出错处理不够等多方面问题。这些都有待进一步改善。另外,通过这次毕业设计,我的理论知识丰富了,实践能力也得到了提高。为了做出这个系统,我查阅了大量资料,边学边做,尽管不太完善,但我觉得自己已经有所提高,以后一定会做得更好参考文献1 C#设计模式 中国电力出版社 美 麦斯科 颜炯 译2 数据库系统开发完全手册 人民邮电出版社3 ADO.NET 2.0高级编程 清华大学出版社 (美)约翰逊著 2006年5月 4 C#工程应用与项目实践 机械工业出版社 王国辉、牛强、李南南2005年4月5 C#高级编程(第3版 美)清华大学出版社 罗宾

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号