学生管理系统_C毕业设计

上传人:孙哥 文档编号:174195690 上传时间:2022-12-14 格式:DOCX 页数:19 大小:413.54KB
收藏 版权申诉 举报 下载
学生管理系统_C毕业设计_第1页
第1页 / 共19页
学生管理系统_C毕业设计_第2页
第2页 / 共19页
学生管理系统_C毕业设计_第3页
第3页 / 共19页
资源描述:

《学生管理系统_C毕业设计》由会员分享,可在线阅读,更多相关《学生管理系统_C毕业设计(19页珍藏版)》请在装配图网上搜索。

1、学生管理系统_c#毕业设计系统设计原理2.1需求分析针对其他学生管理软件的不足,去掉多余的操作,要求制作和系统可以方便、快捷地 对学生信息、成绩等进行添加、删除、修改的操作,并且可以批量的对新生信息的录入与分 班!可以对数据进行备份保存。1、学生信息管理功能班级管理:对班级的添加、删除、修改。添加学生:以班级为单位,进行学生入库。其中分为单个添加和批量添加。单个添加学 生供数量较少的学生信息入库;成批添加可以大量的学生成批录入到数据库中。删除学生:当学生毕业后,学生信息不再需要,系统的基本数据库中需要删除学生信息。 该功能主要进行学生信息的删除。2、学生成绩管理功能成绩录入:以班级为单位,录入

2、各科目的各类型考试。成绩查询:可以对学生的考试成绩进行“定位型”的查询。成绩管理:可以对考试成绩的修改,删除等操作。3、课程信息管理功能课程管理:提供本学期各年级各专业所开课程名称的录入、修改、删除。它是学生成绩 管理的基础。用以保证数据库中一致性原则。4、查询功能学生信息查询。根据用户的要求,查询学生数据库的所有可能的信息,其中包括成绩查 询等。2.2系统设计2.2.1系统功能结构图学生管理系统结构图如下:开始帮助安全设置数据维护科目管理班级管理修改登录密码权限设置数据备份查询科目信息科目信息管理班级信息管瀏成绩管理成绩查询 录沁成绩删除学生信息.修改学生信息 查询学生信息 .添加学生信息从

3、文件导魏背景图片2.2.2系统业务流程图学生信息管理业务流程图如下:址学生管理系统系统管理外观设畜成绩管理 -班级管理 科屋管琢礦竅护 安全设置- 帮助 关于 数据备份 学生稍素t撰用户切换 “逼出系统学号岀生日期班号第四章系统详细设计4.1类库4.1.1类库组织结构&:EBLL:Froperti ee引用ClassBLL. ceClasEBusirLPES. ceCcmi-seBusineee. ceScoreBuEirLPEs. ceUsereBusineES.ce$-ClaseDAO. ceCom-s ell AO. ceS c or ell Alj. ceStudentDAfl. ce

4、UEerEllAU. ceFr op er ti e 呂引用ClaEsDAL. jc e&由“亩“DBOperater:詞 Froperti es 空引用酉 DECorLTLectii皿.ceH:-i因:-Model冋 I Fr op er tiej 呂 竺引用、省 C1:=lSeBh:=lTl. ceScoreBe:=ltl. ceStudent. ceUserE. ceffl-valebZOll4.1.2类库的设计BLL类库ClassBusiness此类为班级的操作方法调用 CourseBusiness此类为科目的操作方法调用 ScoreBusiness此类为成绩的操作方法调用 St ud

5、en tBusiness此类为学生的操作方法调用 UsersBusiness此类为用户的操作方法调用 ClassBLL此类用于约束DAL类库ClassDAL此类用于各种操作的存储过程ClassDAO此类为班级各种操作的方法CourseDA 0此类为科目各种操作的方法ScoreDAO此类为成绩各种操作的方法 St uden tDAO此类为学生各种操作的方法 UsersDAO此类为用户各种操作的方法DBOperater 类库DBOperater数据库连接类using System;using Sys tem.Collec ti ons.Generic;using Sys tem.Tex t;usi

6、ng Sys tem.Da ta;using Sys tem.Da ta.SqlClien t;namespace DBOperaterpublic class DBConnectionprivate SqlConnection conn; /定义一个连接对像public DBConnec ti on()conn = newSqlConnection (server=.;database=StudentManageDB;uid=sa;pwd=258);public void ExecuteSqlNonQuery(string strSql)SqlCommand cmd = new SqlCom

7、mand(strSql, conn);tryconn.Open();cmd.Exec uteN onQuery();catch (Exception ex)throw new Exception(ex.Message);finallyconn.Close();public DataTable ExecuteSqlQuery(string strSql)DataTable dt = new DataTable ();SqlDataAdapter da = new SqlDataAdapter(strSql, conn);tryda.Fill(d t);catch (Exception ex)th

8、row new Exception(ex.Message);return dt;public void ExecuteProcNonQuery(string strProc, SqlParameter pars)SqlCommand cmd = new SqlCommand (strProc, conn);cmd.CommandType = CommandType.S to redProcedure;if (pars != null) /如果存储过程中用到的参数数组不为空foreach (SqlParameter par in pars) /则遍历数组数属性中cmd.Parame ters.A

9、dd(par);/将所有的参数添加到SqlCommand对象的参tryconn.Open(); cmd.Exec uteN onQuery();catch (Exception ex)throw new Exception(ex.Message);finallyconn.Close();public DataTable ExecuteProcQuery(string strProc, SqlParameter pars)DataTable dt = new DataTable ();SqlDataAdapter da = new SqlDataAdapter(strProc, conn);da

10、.Selec tCommand.CommandType = CommandType.S to redProcedure;if (pars != null) /如果存储过程中用到的参数数组不为空foreach (SqlParameter par in pars) /则遍历数组 da.Selec tCommand.Parame ters.Add(par);/将所有的参数添加到SqlDa taAdap ter对象的参数属性中tryda.Fill(d t);catch (Exception ex)throw new Exception(ex.Message);return dt;Model类库Clas

11、sBean、Course、ScoreBean、St uden t、Users 均为对应的对象的接口。4.2系统各模块设计4.2.1登录窗体模块忙::参 Ltwe总:;疇輕::瑟 Lwe嘰德壮::期学唆管堰糸忧整泰英而用户名:valeb登录模块主要是通过输入正确的用户名和密码进入主窗体,它可以提高程序的安全 性,保护数据资料不外泄。其主代码如下:using System;using Sys tem.Collec ti ons.Generic;using System.ComponentModel;using Sys tem.Da ta;using Sys tem.Drawing;using Sy

12、s tem.Linq;using Sys tem.Tex t;using Sys tem.Windows.Forms;using Sys tem.Da ta.SqlClien t;using Model;using BLL;namespace valeb2011public partial class frmUserLogin : Formpublic frmUserLogin()Init ializeComponen t();private void button1_Click(object sender, EventArgs e)UsersBusiness userBus = new Us

13、ersBusiness();Users user = new Users ();user.UserName = t his .text Name.Tex t;user.UserPass = t his .text Pass.Tex t;user = userBus.isUser(user);if (user = null)登录错误);MessageBox.Show(用户名或密码错误!请重新登录,elsefrmMain frm = new frmMain(user);frm.Show();t his.Hide();private void button2_Click(object sender,

14、 EventArgs e)t his.Close();4.2.2主窗体模块当用户输入正确的用户名和密码时,进入主窗体,用户可以通过主窗体调用系统相关的 各子模块,快速掌握本系统中所实现的各个功能。进入主窗体,第一选项为系统管理选项。可以通过其调用:添加新帐户、更改帐户、删 除帐户、查询帐户信息四个窗体,对其系统使用帐户的管理,确保系统的使用安全性。第二选项为系统的外观设置,可以根据用户的爱好、习惯对系统的皮肤进行设置。4.2.3学生管理窗体模块第三选项为系统的学生管理选项。也就是本系统开发的重要功能之一选项。主要对学校 在校的信息管理,如班级、学级等的管理。通过主窗体,可以调用学生管理的四个窗

15、体:添 加学生信息、查询学生信息、修改学生信息、删除学生信息。学生档案管理-添加学生信息:主要是对学生的在校最基本的信息添加。如果是新生入 校,大量的学生信息可以通过批量录入窗体对学生的信息录入。这样就不造成“速度慢,工 作量小”的情况。电学生档案管理-查询学生倍息口 区r学号姓名性别出生日期二期 班名二期 班名三期 班名备注S110B02杰杰1988-02-20suoe.S273S355S110B03园园1988-03-20suoe.S273S355正常乎学生档案管理-查询学生信息:主要是对学生的在校最基本的信息查询。如果对学生的 信息不太清楚我们可以选择“模糊”查找。该学生莒案编号=BDQ

16、H5XQ2000-25学号:S123456姓名:荷飞龙性别:男班级:S354出生日期:1988-2-3状态:正常备注:删除取消*胡通过该窗体,可以对学生档案进行删除。4.2.4成绩管理窗体模块第四选项为系统的成绩管理选项。也是本系统开发的重要功能之一选项。主要对学生的 成绩录入、查询、管理等进行管理。成绩录入:通过该窗体,可以对某学期、某班级、某科目的考试成绩录入。大大减少对 成绩管理的统一性、数据量大性,避免出错。这是学生管理系统开发最显明的一点,也是使 用中的“易操作性”特点!成绩查询:其功能可以对指定的学班级、姓名、考试时间等查询,这样的查询具有“快”、 “简单”性。如果对学生的信息不是

17、太清楚也可以采用模糊查询。只需在姓名中输入不完整 的名字,在不知道的字处用“*”代替及可。成绩管理:可以通过其对学生的考试成绩进行修改、作废等。方便使用。真正作到“快”、 准”。通过该窗体可以科目信息的添加、删除、修改。第五章系统测试5.1软件测试基础理论5.1.1软件测试定义软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试 用例,并利用这些测试用例运行程序以及发现错误的过程,即执行测试步骤。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码实现的最终审 查,它是软件质量保证的关键步骤。5.1.2软件测试基本概念1、测试的含义所谓测试,首先是一项活动,在

18、这项活动中某个系统或组成的部分将在特定的条件下运 行,结果将被观察和记录,并对系统或组成部分进行评价。测试活动有两种结果:找出缺陷 和故障,或显示软件执行正确。测试是一个或多个测试用例的集合。测试用例:所谓测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结 果;测试用例是执行测试的最小实体。2、测试的步骤测试步骤详细规定了如何设置、执行、评估特定的测试用例。软件生命周期:一个软件生命周期包括制定计划、需求分析定义、软件设计、程序编码、 软件测试、软件运行、软件维护、软件停用等8个阶段。软件测试在软件生命周期中横跨两个阶段:单元测试阶段:即在每个模块编写出以后所做的必要测试。综合测试

19、阶段:即在完成单元测试后进行的测试,如集成测试、系统测试、验收测试。3、测试的意义系统测试是管理信息系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各 个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测 试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代 价。系统测试占用的时间、花费的人力和成本占软件开发的很大比例。统计表明,开发较大 规模的系统,系统测试的工作量大约占整个软件开发工作量的40%50%。而对于一些特 别重要的大系统,测试的工作量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。5.2软件测试目的测试是程序的

20、执行过程,目的在于发现错误;不能证明程序的正确性,除非仅处理有限 种情况。检查系统是否满足需求也是测试的期望目标。一个好的测试用例在于发现了还未曾 发现的错误;一次成功的测试则是发现了错误的测试。5.3软件测试方法分类软件测试技术按照不同的划分方法,有不同的分类:静态测试、动态测试;黑盒测试、 白盒测试;单元测试、集成测试、回归测试、系统测试、验证测试以及确认测试。5.3.1静态测试与动态测试按照软件测试分析与非分析方法而论,软件测试可以分静态测试和动态测试。1、静态测试指不实际运行软件,主要是对软件的编程格式、结构等方面进行评估。静态测试包括: 代码检查、静态结构分析、代码质量度量等。它可以

21、由人工进行,也可以借助软件工具自 动进行。2、动态测试动态测试方法是指计算机必须真正运行被测试的程序,通过输入测试用例,对其运行情 况即输入与输出的对应关系进行分析,以达到检测的目的。动态测试包括:功能确认与接口测试,覆盖率分析,性能分析,内存分析。5.3.2黑盒与白盒测试1、黑盒测试按照软件测试用例的设计方法而论,软件测试可以分为白盒测试法和黑盒测试法。若测试规划是基于产品的功能,目的是检查程序各个功能是否能够实现,并检查其中的 功能错误,则这种测试方法称为黑盒测试(Black-box Testing)方法。黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。它是一种从用户观点 出发的

22、测试,一般被用来确认软件功能的正确性和可操作性。黑盒测试主要根据规格说明书设计测试用例,并不涉及程序内部构造和内部特性,只依 靠被测程序输入和输出之间的关系或程序的功能设计测试用例。2、黑盒测试的特点黑盒测试与软件的具体实现过程无关,在软件实现的过程发生变化时,测试用例仍然可 以使用。黑盒测试用例的设计可以和软件实现同时进行,这样能够压缩总的开发时间。若测试规划基于产品的内部结构进行测试,检查内部操作是否按规定执行,软件各个部 分功能是否得到充分使用,则这种测试方法称为白盒测试(White - box Testing)方法。3、白盒测试白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般

23、用来分析程序的内部 结构。白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是“基于 覆盖率的测试。通常的程序结构覆盖有:语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖, 路径覆盖。5.3.3单元测试、集成测试、系统测试、验证测试和确认测试按照软件测试的策略和过程来分类,软件测试可分为单元测试、集成测试、系统测试、 验证测试和确认测试。测试中的错误分类:A类错误:致命错误一一引起程序异常中断或死机的错误等。B类错误:功能错误一一业务功能实现错误、程序执行结果错误等。c类错误:功能缺陷一一功能操作不方便、缺少操作提示等。D类错误:界面缺陷一一界面设计不符合本系统的界面设计规范等。

24、E类错误:测试正确一一正确的测试项、测试结果与预期的一致等。5.4系统测试本系统各部分模块,采黑白盒测试。5.4.1测试用例设计要求一个好的测试用例,应该包含以下信息:1、软件或项目的名称2、软件或项目的版本(内部版本号)3、功能模块名4、测试用例的简单描述,即该用例执行的目的或方法5、测试用例的参考信息(便于跟踪和参考)6、本测试用例与其他测试用例间的依赖关系7、本用例的前置条件,即执行本用例必须要满足的条件,如对数据库的访问权限8、用例的编号(ID),如可以是:软件名称简写-功能块简写-NO.9、步骤号、操作步骤描述、测试数据描述10、预期结果(这是最重要的)和实际结果(如果有BUG管理工

25、具,这条可以省略)11、开发人员(必须有)和测试人员(可有可无)12、测试执行日期5.4.2系统各个模块测试用例本系统的用户名为valeb,密码为258。如在登陆过程中输入错误的用户名或密码。则 出现报错界面如图所示:聒O第 Love 龜C營卷 G礁 Love 羅3第霸0礁 L举建管理素铳蹩眾英*5.5测试报告本系统经过测试,各部分的功能基本正常,达到了预期的目的。通过对系统的全面测试,我学到了许多测试方面的知识,了解到测试方法、测试经验。 通过本次设计,使我了解到测试的重要性。通过测试,可以使软件更适合用户的需求,更加 稳定、可靠地运行,并能适应市场竞争,应用前景广泛.总结在本系统的开发过程

26、中,由于本人是初次开发软件,在知识、经验方面都存在着不足。 另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。 因为对学生信息管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、 界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。通过开发这个系统, 我掌握了的项目基本开发过程,用到的知识巩固了我对Visual C#的学习,但在这次设计 中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与 同学们之间相互帮助的精神。致谢这是一个特殊的时

27、刻,是一个值得纪念的时刻。此时此刻,短暂的毕业设计就要画上 句点,人生中的大学时光也即将画上句号。心中的感受复杂交错,有即将毕业的兴奋、有 毕设完成的轻松感、也有对大学时光的恋恋不舍。在此论文即将完成之时,首先我要特别感谢我的指导老师廖银花老师!谢谢老师给予 我悉心的关怀与指导。老师认真负责的工作态度、严谨的治学风格、亲切平易近人的性 格,使我深受启发,内心许多次都在感激我能在大学的时光里遇到这样一位老师。正是在 老师的督促和耐心的指导下,才让我将毕设各方面的工作完成得最好。最后,感谢同学们在开发的期间,给我的无私的帮助。曾经遇到过很多疑难,正是与 同学们的相互探讨使我获益匪浅,才能让我继续前进的脚步。短短几个月时间内,除了学 会了基本数据库应用系统地开发外,更重要的是学到了兢兢业业,奋发向上的精神!这种 精神将是我今后人生前进道路上的一种力量,所以我再次衷心地感谢老师和我的同学,谢 谢你们!参考文献1 王小科、徐薇.C#从入门到精通清华大学出版社.2010-72 丁宝康 董健全数据库使用教程M.北京清华大学出版社,2003: 12-2103 李德奇.windons程序设计案例教程(C#)大连理工大学出版社,2007-114 梁冰、吕双、王小科.C#程序开发范例宝典人民邮电出版社,2009-10

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!