帮助文档 学生成绩管理系统文档

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

软件工程题目:学生成绩管理系统学院:数信学院专业:软件专业班级:08级软件班组名:第四组组成员:周昊颖(组长)赵亚慧陈艳华郝梦洁指导教师:完成日期:I目录一、绪论1、引言1.1编写目的该系统的编写目的是提高学生成绩管理的工作效率,使人们从乏味的数据登记和统计工作中解脱出来,保证工作的准确率,为老师及同学提供充足的信息和快捷的查询手段。数据库作为计算机应用的一部分,对学生成绩查询进行管理具有手工管理无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长等。这些优点能够极大地提高学生成绩查询和管理的效率。1.2项目背景目前国内一些科研、企事业单位均已经开始应用计算机进行数据类管理,实践表明计算机管理能提高工作效率。与此类似,今年来许多学校也都逐渐应用计算机来进行学生成绩的管理。为响应国家提高人口素质的号召,许多学校每年都在扩招,这在一定程度学校的成绩管理带来许多不便:每个学期要登记考试成绩,学期结束要进行相应的统计。因为工作强度大,所以需要有一种管理方便、错误率小的管理方法来取代人工管理,而应用计算机管理是最有效的途径。2、任务描述2.1目标学生成绩管理系统为老师及同学提供充足的信息和快捷的查询手段。学生成绩管理系统涉及不同类别的用户,分别为学生、教师和管理员。学生只能对系统的信息进行查询和反馈。而老师则可以对信息进行录入和修改,并根据相关信息对学生的成绩进行求平均值、排序和求总和等相关的操作,但是不能对系统进行管理和进行系统权限的分配。管理员账户则拥有教师和学生拥有的全部权限。2.2运行环境软件环境:WindowsXP操作系统硬件环境:内存1G,硬盘100G配置以上的计算机3、数据描述3.1输入收据用户名:000密码:000权限:用户用户名:111密码:111权限:管理员3.2输出数据II权限是学生:进入学生成绩查询界面进行操作权限是教师:进入教师管理界面进行操作权限是管理员:进入管理员管理界面进行操作4、功能要求学生成绩管理系统主要应用于学校。通过调查,通用的学生成绩管理系统包括学生信息管理、教师信息管理、成绩管理等功能。在系统设计的时候,需要遵循以下原则。(1)良好的人机界面。(2)方便的数据查询。(3)在相应的权限下,增添、修改和删除数据方便。二、需求分析1、需求调查1.1组织机构调查曾经调查某一个学校的教务管理人员了解相关学生管理的知识,根据其提供的内容进行分析总结2、功能需求2.1功能划分经过分析,学生成绩管理系统所必备的功能应当有登录系统、系统管理、教师管理和学生管理等,其中每个功能都由若干相关联的子功能模块组成。2.2功能描述(1)“登录系统”模块完成以下功能:►系统对登录人员的身份进行验证。►当前系统权限设置。(2)“管理员管理”模块完成以下功能:►管理员进入系统程序可以添加、删除管理员及修改当前管理员密码。►管理员可以添加、删除用户,修改用户密码。►管理员可以执行系统所具有的所有操作功能(3)“教师管理”模块完成以下功能:►成绩的添加,修改和查询。►成绩的排序、统计等操作。(4)“学生管理”模块完成以下功能:►查询个人成绩、个人基本信息3、数据描述3.1数据库描述III学生成绩管理系统中的实体包括:学生、课程、用户,这些实体组成的E-R图如下:4、性能需求4.1数据精确度登录系统的时间不超过20秒4.2时间特性:响应时间:2秒更新处理时间:2秒数据转换与传输时间:视操作系统和计算机而异4.3适应性:学生成绩管理系统适应性强,可以在所有Windows操作系统5、运行需求5.1用户界面界面由MicrosoftVisualStudio2010设计实现,完全基于windows兼容的桌面平台学号姓名学生年龄系别性别账户课程修读mn所属1课程号课程名名称密码权限成绩1先修课号学分IV5.2硬件接口本系统要求运行计算机具有数据库服务器5.3基本要求建议环境1)操作系统:windows系列2)数据库管理系统:VF数据库3)开发工具:MicrosoftVisualFoxpro软件需求:操作系统WINDOWS2000AdvanceServer以上;数据库服务器端软件MicrosoftVisualFoxpro硬件需求:,P43.0GXeonCPU/1G内存/360G(10K)SCSI硬盘的服务器,P3以上微机的客户机,P43.0GXeonCPU/1G内存/36G(10K)RAID硬盘的数据库服务器三、总体设计1、总体结构和模块外部设计1.1功能结构根据业务流程和数据流程画出总体功能结构图如下图所示:1.2模块设计管理员模块可以调用教师模块和学生模块。教师模块可以调用学生模块。学生模块属于底层模块不可以调用任何模块。应用程序管理教师管理学生自身管理查看信息查看成绩管理员模块教师模块学生模块管理学生信xxixin息管理学生成绩V1.3总体结构设计备注:箭头表示调用关系3、数据库设计3.1逻辑设计SC表:记录学生的学号、课程号和成绩字段名数据类型含义说明空值情况snochar学号不为空cnochar课程号不为空gradefloat成绩可为空Student表:描述学生的基本信息例如学号、姓名、性别、年龄和系别等字段名数据类型含义说明空值情况snochar学号不为空snamechar姓名可为空sexchar成绩可为空ageint年龄可以为空deptchar系别可以为空Course表:记录了每一门课程的信息如课程号、课程名、先修课程号和学分管理员模块教师管理模块学生管理模块VI字段名数据类型含义说明空值情况cnochar课程号不为空cnamechar课程名可为空prechar先修课程可为空xuefenfloat学分可以为空4、外部接口设计4.1用户界面:界面布局,显示宽度、颜色等如下图所示:5、出错处理设计5.1出错输出信息出错后弹出错误提示对话框5.2出错处理对策:出错后弹出出错提示对话框确定后重新改正输入的内容继续执行。如果出现严重的错误则需要重新启动学生成绩管理系统以便继续进行工作。四、详细设计1、代码设计学号设计含义:前两位代表入学年份,其后两位是所在系,在后两位代表本人学号,如070101VII2、程序设计2.1、逐个模块给出以下说明:●管理员模块功能●输入项目:输入管理员的账户、密码并选择管理员权限●输出项目:管理员的管理页面,可对整个系统的任何一个模块中的任何一项进行添加、修改和查询●教师管理模块的功能●输入项目:教师的账户、密码并选则教师权限●输出项目:教师的管理页面,可以对学生进行相关的操作●学生管理模块的功能●输入项目:输入学生的账户、密码并选择学生权限●输出项目:学生的管理页面,学生可以查询自己的相关信息2.3、接口●限制条件:同一种权限内的用户名和密码必须是唯一的。五、系统实现该系统新建了几个类命名空间以减少相同代码的重复编写,例如数据库的连接、数据的读入和数据的现实等。以下是改学生管理系统实现的部分代码,其中加粗的为自己编写,其余的为系统自动生成,编程语言使用的是C#语言。(1)数据库连接的实现:publicSqlConnectionconndatabase(){stringmySqlConnectionString=(@DataSource=localhost;PersistSecurityInfo=False;IntegratedSecurity=SSPI;InitialCatalog=stu_Data);SqlConnectionmySqlConnection=newSqlConnection(mySqlConnectionString);try{mySqlConnection.Open();}catch{MessageBox.Show(打开数据库失败,提示);}returnmySqlConnection;}VIII(2)系统的登录实现:privatevoidbutton1_Click(objectsender,EventArgse){myClass.BaseClassmyLoginIni=newmyClass.BaseClass(textBox1.Text.Trim(),comboBox1.Text.Trim());stringsqlString=@selectuser,passwordfromLoginTestwherequanxian='+comboBox1.Text.Trim()+';SqlDataReadermyDataReader=myBaseClass.myRead(sqlString);while(myDataReader.Read()){if(myDataReader.GetValue(0).ToString()==textBox1.Text.Trim()){if(myDataReader.GetValue(1).ToString()==textBox2.Text.Trim()){myDataReader.Close();this.Visible=false;switch(comboBox1.SelectedIndex){case0:{myStudentInfoAdmin.ShowDialog();IXbreak;};case1:{myTeacherInfoAdmin.ShowDialog();break;};case2:{myAdmin.ShowDialog();break;}}this.Close();return;}else{MessageBox.Show(密码错误!,提示);textBox2.Text=;textBox2.Focus();return;}}else{textBox1.Focus();continue;}}MessageBox.Show(输入的用户名错误,提示);textBox1.Text=;XtextBox1.Focus();return;}privatevoidbutton2_Click(objectsender,EventArgse){This.Close();}privatevoidForm1_Load(objectsender,EventArgse){comboBox1.SelectedIndex=0;}privatevoidbutton3_Click(objectsender,EventArgse){this.Hide();Admin.Show();}(1)基本功能函数的实现:构造函数用来传递用户名和权限publicBaseClass(stringstruserName,stringtrquanxian){userName=struserName;quanxian=strquanxian;}将查到的值显示出来publicvoidShowDataGrid(stringsqlStr,DataGridViewmyDataGridView){SqlDataAdaptermySqlDataAdapter=newqlDataAdapter(sqlStr,link.conndatabase());XIDataSetmyDataSet=newDataSet();mySqlDataAdapter.Fill(myDataSet);myDataGridView.DataSource=myDataSet.Tables[0].DefaultView;myDataGridView.Visible=true;}读入数据的操作publicSqlDataReadermyRead(stringsqlString){SqlCommandmySqlCommand=newSqlCommand(sqlString,link.conndatabase());SqlDataReadermyDataReader=mySqlCommand.ExecuteReader();returnmyDataReader;}(2)删除用户函数的实现:publicbooldeUser(stringsqlString,ComboBoxmyComboBox){inti;for(i=0;imy

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功