版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程课程设计实验报告学生信息管理系统姓名:[你的姓名]班级:[所在班级]学号:[你的学号]
一、引言(一)项目背景在学校的日常管理中,学生信息管理是一项重要且繁杂的工作。传统的手工记录和管理方式效率低下、易出错,难以满足现代教育管理的需求。为了提高学生信息管理的效率和准确性,开发一个功能完善、操作简便的学生信息管理系统具有重要的现实意义。
(二)项目目标本学生信息管理系统旨在实现对学生基本信息、成绩信息、课程信息等的全面管理,能够方便快捷地进行信息的录入、查询、修改、删除等操作,同时提供数据统计和报表生成功能,为学校的教学管理、学生管理等工作提供有力支持。
(三)项目范围本系统涵盖了学生基本信息管理模块(包括学生个人信息的录入、修改、删除等)、成绩信息管理模块(成绩的录入、查询、统计等)、课程信息管理模块(课程信息的维护)以及用户管理模块(不同权限用户的管理)。
二、需求分析(一)用户需求1.管理员:具有最高权限,可对学生基本信息、成绩信息、课程信息进行全面管理,包括信息的增删改查、用户管理等。2.教师:可查看和管理所教班级学生的成绩信息,进行成绩录入、查询、统计等操作。3.学生:可查看自己的基本信息和成绩信息。
(二)功能需求1.学生基本信息管理能够录入学生的学号、姓名、性别、出生日期、专业、班级等基本信息。支持对学生基本信息的修改和删除操作。可根据学号、姓名等条件查询学生基本信息。2.成绩信息管理教师可录入学生的课程成绩,包括课程编号、课程名称、成绩等。支持按学号、课程等条件查询成绩信息。能够对成绩进行统计分析,如平均分、最高分、最低分等。3.课程信息管理可录入课程编号、课程名称、学分、授课教师等课程信息。支持对课程信息的修改和删除操作。能根据课程编号、课程名称查询课程信息。4.用户管理管理员可添加、删除和修改不同权限的用户信息,如教师、学生等。为不同用户分配相应的操作权限。
(三)性能需求1.响应时间:系统操作响应时间应在合理范围内,一般不超过5秒。2.并发处理能力:支持多个用户同时在线操作,确保数据的一致性和准确性。3.数据准确性:保证录入和查询的数据准确无误。
(四)安全性需求1.用户登录需进行身份验证,确保只有合法用户能访问系统。2.对敏感数据进行加密存储,防止数据泄露。
三、总体设计(一)系统架构设计本系统采用三层架构,即表示层、业务逻辑层和数据访问层。1.表示层:负责与用户进行交互,提供系统的界面,接收用户输入并显示系统输出。2.业务逻辑层:处理系统的业务逻辑,如数据的验证、计算、业务规则的执行等。3.数据访问层:负责与数据库进行交互,实现数据的存储、查询、更新和删除等操作。
(二)模块划分1.学生信息管理模块:实现学生基本信息的管理功能。2.成绩信息管理模块:处理学生成绩信息的相关操作。3.课程信息管理模块:负责课程信息的维护。4.用户管理模块:进行用户信息管理和权限分配。
(三)数据库设计1.学生表(Student)字段:学号(Sno)、姓名(Sname)、性别(Ssex)、出生日期(Sbirthday)、专业(Major)、班级(Class)。2.成绩表(Score)字段:学号(Sno)、课程编号(Cno)、课程名称(Cname)、成绩(Grade)。3.课程表(Course)字段:课程编号(Cno)、课程名称(Cname)、学分(Credit)、授课教师(Teacher)。4.用户表(User)字段:用户名(Username)、密码(Password)、权限(Permission)。
通过这些表之间的关联关系,如学生表与成绩表通过学号关联,课程表与成绩表通过课程编号关联等,实现数据的完整性和一致性。
四、详细设计(一)学生信息管理模块详细设计1.录入功能界面设计:提供文本框用于输入学生的各项基本信息。业务逻辑:对输入的数据进行合法性验证,如学号格式、姓名长度等。验证通过后将数据插入到学生表中。2.修改功能界面设计:通过查询功能获取要修改的学生信息,显示在相应文本框中供用户修改。业务逻辑:对修改后的数据进行合法性验证,更新学生表中的相应记录。3.删除功能界面设计:提供输入框用于输入要删除学生的学号。业务逻辑:根据学号删除学生表中的相应记录,并同时删除成绩表中与之关联的记录。4.查询功能界面设计:提供下拉框或输入框用于选择查询条件(学号、姓名等)。业务逻辑:根据用户选择的条件从学生表中查询相应记录并显示。
(二)成绩信息管理模块详细设计1.录入功能界面设计:提供下拉框选择学生学号、课程编号,文本框输入成绩。业务逻辑:验证成绩的合法性(如是否在0100分之间),插入成绩表。2.查询功能界面设计:提供多种查询条件(学号、课程等)的输入框或下拉框。业务逻辑:根据用户选择的条件从成绩表中查询相应记录并显示。3.统计功能界面设计:提供选择课程或学生的下拉框,以及显示统计结果的文本框。业务逻辑:根据用户选择的对象,计算平均分、最高分、最低分等统计数据并显示。
(三)课程信息管理模块详细设计1.录入功能界面设计:提供文本框输入课程编号、名称、学分、授课教师等信息。业务逻辑:验证数据合法性,插入课程表。2.修改功能界面设计:查询获取课程信息显示在文本框供修改。业务逻辑:验证修改后数据,更新课程表。3.删除功能界面设计:输入课程编号进行删除。业务逻辑:删除课程表中相应记录,并在成绩表中删除与之关联的记录。4.查询功能界面设计:提供查询条件输入框或下拉框。业务逻辑:根据条件查询课程表记录并显示。
(四)用户管理模块详细设计1.添加用户功能界面设计:提供文本框输入用户名、密码、权限等信息。业务逻辑:验证用户名唯一性,插入用户表。2.删除用户功能界面设计:输入用户名进行删除。业务逻辑:删除用户表中相应记录。3.修改用户功能界面设计:查询获取用户信息供修改。业务逻辑:验证修改后数据,更新用户表。4.权限分配功能界面设计:通过下拉框选择用户,设置相应权限。业务逻辑:更新用户表中的权限字段。
五、编码实现(一)开发环境本系统采用[编程语言名称]进行开发,开发工具为[开发工具名称],数据库采用[数据库名称]。
(二)关键代码示例1.学生信息录入代码示例```[编程语言]privatevoidbtnAddStudent_Click(objectsender,EventArgse){stringsno=txtSno.Text.Trim();stringsname=txtSname.Text.Trim();stringssex=cmbSsex.Text.Trim();stringsbirthday=dtpSbirthday.Value.ToString("yyyyMMdd");stringmajor=txtMajor.Text.Trim();string@class=txtClass.Text.Trim();
if(string.IsNullOrEmpty(sno)||string.IsNullOrEmpty(sname)){MessageBox.Show("学号和姓名不能为空!");return;}
stringsql="INSERTINTOStudent(Sno,Sname,Ssex,Sbirthday,Major,Class)VALUES(@Sno,@Sname,@Ssex,@Sbirthday,@Major,@Class)";SqlParameter[]parameters={newSqlParameter("@Sno",sno),newSqlParameter("@Sname",sname),newSqlParameter("@Ssex",ssex),newSqlParameter("@Sbirthday",sbirthday),newSqlParameter("@Major",major),newSqlParameter("@Class",@class)};
try{SqlHelper.ExecuteNonQuery(sql,parameters);MessageBox.Show("学生信息添加成功!");BindStudentData();}catch(Exceptionex){MessageBox.Show("添加学生信息失败:"+ex.Message);}}```2.成绩信息查询代码示例```[编程语言]privatevoidbtnQueryScore_Click(objectsender,EventArgse){stringcondition="";if(!string.IsNullOrEmpty(txtQuerySno.Text)){condition+="Sno='"+txtQuerySno.Text.Trim()+"'";}elseif(!string.IsNullOrEmpty(txtQueryCno.Text)){condition+="Cno='"+txtQueryCno.Text.Trim()+"'";}
if(!string.IsNullOrEmpty(condition)){condition="WHERE"+condition;}
stringsql="SELECTS.Sno,S.Sname,C.Cname,SC.GradeFROMStudentSJOINScoreSCONS.Sno=SC.SnoJOINCourseCONSC.Cno=C.Cno"+condition;DataTabledt=SqlHelper.ExecuteDataTable(sql);dgvScore.DataSource=dt;}```
六、测试(一)测试计划1.测试目标:验证系统是否满足需求规格说明书中的各项功能和性能要求,发现并修复潜在的缺陷。2.测试范围:涵盖学生信息管理、成绩信息管理、课程信息管理和用户管理等各个模块的功能。3.测试方法:采用黑盒测试方法,包括功能测试、性能测试、安全性测试等。4.测试人员:由开发人员和部分用户代表组成测试小组。5.测试时间安排:在系统开发完成后,集中进行为期[X]天的测试。
(二)测试用例1.学生信息管理模块测试用例录入学生信息输入合法学号、姓名等信息,点击录入,预期成功录入并提示成功。不输入学号或姓名,点击录入,预期提示相应不能为空。修改学生信息修改合法信息,点击修改,预期修改成功。修改学号为空,点击修改,预期提示学号不能为空。删除学生信息输入存在的学号删除,预期成功删除并提示成功,相关关联成绩记录也被删除。输入不存在的学号删除,预期提示未找到该学生。查询学生信息按学号查询存在的学生,预期能正确显示。按不存在的学号查询,预期提示未找到该学生。2.成绩信息管理模块测试用例录入成绩输入合法成绩,点击录入,预期成功录入。输入超过100分的成绩,点击录入,预期提示成绩不合法。查询成绩按学号查询成绩,预期能正确显示。按不存在的学号查询,预期提示未找到相关成绩。成绩统计选择课程统计成绩,预期能正确显示平均分、最高分、最低分等。选择不存在的课程统计,预期提示未找到相关课程。3.课程信息管理模块测试用例录入课程信息输入合法课程信息,点击录入,预期成功录入。输入重复课程编号,点击录入,预期提示课程编号已存在。修改课程信息修改合法信息,点击修改,预期修改成功。修改课程编号为空,点击修改,预期提示课程编号不能为空。删除课程信息输入存在的课程编号删除,预期成功删除并提示成功,相关关联成绩记录也被删除。输入不存在的课程编号删除,预期提示未找到该课程。查询课程信息按课程编号查询存在的课程,预期能正确显示。按不存在的课程编号查询,预期提示未找到该课程。4.用户管理模块测试用例添加用户输入合法用户名、密码、权限,点击添加,预期成功添加。输入已存在的用户名,点击添加,预期提示用户名已存在。删除用户输入存在的用户名删除,预期成功删除。输入不存在的用户名删除,预期提示未找到该用户。修改用户修改合法信息,点击修改,预期修改成功。修改用户名为空,点击修改,预期提示用户名不能为空。权限分配选择用户设置权限,点击确定,预期权限设置成功。
(三)测试结果通过对各个模块的详细测试,发现了一些缺陷,如部分界面输入验证不够完善、个别业务逻辑计算错误等。经过开发人员的修复和再次测试,系统的各项功能均能正常运行,满足了需求规格说明书中的要求。
七、总结(一)项目成果本学生信息管理系统成功实现了学生基本信息、成绩信息、课程信息的全面管理以及用户管理功能。通过系统的使用,提高了学生信息管理的效率和准确性,为学校的教
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- KRAS-G12C-IN-71-生命科学试剂-MCE
- Q-ZTGD 03-2023 输水用PVC-U管材标准
- 2026年公司文秘测试题及答案
- 2026年人体变态测试题及答案
- 2026年恋爱满分测试题及答案
- 第四季度员工思想动态分析报告(2篇)
- 2026年小学数学状元测试题及答案
- 2026年生物21章测试题及答案
- (新)治疗室管理制度2篇
- 职高语文词语题目及答案
- (正式版)JTT 1497-2024 公路桥梁塔柱施工平台及通道安全技术要求
- TDOA基站定位算法详细介绍课件
- ERCP术后并发症的观察和处理
- hmi紧停操作故障处理培训
- GSV2.0反恐安全管理手册
- 办公耗材采购投标方案(完整技术标)
- 高血压危象-课件
- 中石油《炼油化工企业污水回用管理导则》精讲
- 中考物理专题辅导暗箱问题
- 武汉市2023初三九年级四月调考英语试卷及答案
- JJG 1066-2011精密离心机
评论
0/150
提交评论