还剩28页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
学生信息管理系统XXXXXX《软件工程实训》报告学生信息管理系统专业计算机科学与技术班级XXXXXXXXXXXX姓名XXXX报告日期2013年9月22日目录TOC\o1-3\h\u
1、绪论
11.1SIMS的定义
11.2课题背景
11.3开发意义
22、引言
23、需求分析
23.1系统需求
23.2功能需求
33.3性能需求
33.
3.1硬件环境
33.
3.2软件环境
34、数据库设计
44.1数据库
44.2相关表
45、详细设计
85.1数据流图
85.2UML建模
135.
2.1类图
135.
2.2用例图
145.
2.3活动图
155.3模块介绍
165.
3.1登录模块
165.
3.2查询模块
165.
3.3院校模块
185.
3.4系模块
185.
3.5专业模块
185.
3.6班级模块
185.
3.7学生模块
185.
3.8教师模块
195.
3.9课程模块
195.
3.10教师-课程模块
195.
3.11学生-教师-课程模块
195.4数据库中表之间的关系
195.5测试
195.
5.1登录模块测试
205.
5.2查询模块测试
235.
5.3列表模块测试
246、致谢28绪论
1.1SIMS的定义学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件,主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统推行学校信息管理系统的应用是进一步推进学生学籍管理规范化、电子化、控制辍学和提高义务教育水平的重要举措
1.2课题背景学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依靠人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件
1.3开发意义系统针对学校学生信息的特点以及管理中实际需要而设计,能够有效地实现学生信息管理的信息化,减轻管理人员的工作负担,高效率、规范化地管理大量的学生信息,并避免人为操作的错误和不规范行为引言通过三年多的大学学习,结合本次学校组织的实训安排,我们组接受了学生信息管理系统(此后统称为SIMS)的项目,虽然这已经是一个老课题了,但是仍不失为经典的教学实践案例需求分析
3.1系统需求目前各大高校的教务网络管理系统中,用户类型往往分为学生、教师和管理员,甚至个别该校已经开放了访客,主要功能包括学生的信息管理和教师的排课,其中学生信息管理对大数据量要求较高,而教师排课系统由于需要十分专业的算法并且系统需求不断的变化,因此在实际应用时,往往会遇到很大的问题,需要进一步研究我们的系统为了测试开发SIMS,所以主要有两个功能一是学生的信息查询的功能,它包括通过专业或者班级查询显示的信息分为基本信息和详细信息一是查询老师信息,包括为老师安排的课程等基本信息
3.2功能需求根据上述的信息管理系统的业务流程、要求以及所要实现的目标,得到本系统的功能需求如下管理院校信息,在计算机的支持下实现添加、删除、修改和查找管理系信息,在计算机的支持下实现添加、删除、修改和查找管理专业信息,在计算机的支持下实现添加、删除、修改和查找管理班级信息,在计算机的支持下实现添加、删除、修改和查找管理学生信息,在计算机的支持下实现添加、删除、修改和查找管理教师信息,在计算机的支持下实现添加、删除、修改和查找管理课程信息,在计算机的支持下实现班级的添加、删除和修改管理教师_课程信息,在计算机的支持下实现添加、删除、修改和查找确定课程和上课的老师管理学生_教师_课程信息,在计算机的支持下实现添加、删除、修改和查找确定学生选择的课程及老师
3.3性能需求系统的运行对于运行环境的要求是
3.
3.1硬件环境目前,我们所开发的系统主要是应用在中小规模的学校内部,因此,一般配置的计算机硬件就可以满足系统需求考虑到学校规模的扩大和硬件价格的降低,为本系统配置在较优秀的服务器硬件,可以充分发挥本系统性能处理器IntelPentium
43.06GX或更高内存512(推荐)硬盘空间40GB显卡SVGA显示适配器
3.
3.2软件环境操作系统Windows7开发环境JDK
1.
7.
0、Tomcat
6.
0.32开发工具MyEclipse
7.
0、DreamWeaver8和PowerDesigner15服务器Tomcat
6.
0.32数据库MySQL
5.
0.
874、数据库设计
4.1数据库
1、创建数据库StuInfoDB,语句如下createdatabaseStuInfoDB;使用数据库useStuInfoDB;
4.2相关表
1、院校信息表(academy_tab)如表4-1所示表4-1院校信息表字段名类型是否主键是否自动增长是否外键备注academy_idint10是是Idacademy_codevarchar20院校编号academy_namevarchar20院校名称academy_addressvarchar20院校所在地academy_aboutvarchar100院校简介academy_remarkvarchar100备注
2、系信息表(department_tab)如表4-2所示表4-2系信息表字段名类型是否主键是否自动增长是否外键备注department_idint10是是Iddepartment_codevarchar20系编号department_namevarchar20系名称academy_idint10是院校iddepartment_aboutvarchar100系简介department_remarkvarchar100备注
3、专业信息表(profession_tab)如表4-3所示表4-3专业信息表字段名类型是否主键是否自动增长是否外键备注profession_idint10是是Idprofession_codevarchar20专业编号profession_namevarchar20专业名称department_idint10是系idprofession_aboutvarchar100专业简介profession_remarkvarchar100备注
4、班级信息表(class_tab)如表4-4所示表4-4班级信息表字段名类型是否主键是否自动增长是否外键备注class_idint10是是Idclass_codevarchar20班级编号class_namevarchar20班级名称class_classroomvarchar20班级所在教室department_idint10是专业idclass_remarkvarchar100备注学生信息表(student_tab)如表4-.5所示表4-5学生信息表字段名类型主键自动增长外键备注student_idint10是是Idstudent_codevarchar20学号基本信息student_namevarchar20姓名基本信息studnet_passwordvarchar20密码student_genderint10性别基本信息student_birthdaydate生日基本信息student_native_placevarchar40籍贯基本信息student_rpr_addressvarchar40户口所在地址基本信息student_now_addressvarchar40现居住地址基本信息student_photo_pathvarchar40照片路径基本信息student_phonevarchar20电话基本信息student_emailvarchar20电子邮箱地址基本信息student_start_timedate入学时间基本信息profession_idint10是专业id基本信息class_idint10是班级id基本信息student_aboutvarchar100简介基本信息student_father_namevarchar20父亲姓名student_father_addressvarchar40父亲居住地址student_father_unitvarchar40父亲单位student_father_phonevarchar20父亲电话student_mother_namevarchar20母亲姓名student_mother_addressvarchar40母亲居住地址student_mother_unitvarchar40母亲单位student_mother_phonevarchar20母亲电话student_urgency_namevarchar20紧急事件联系人student_urgency_relationVarchar20紧急事件联系人关系student_urgency_phonevarchar20紧急事件联系人电话student_remarkvarchar100备注教师信息表(teacher_tab)如表4-6所示表4-6教师信息表字段名类型主键是否自动增长外键备注teacher_idint10是是Idteacher_codevarchar20工作号基本信息teacher_namevarchar20姓名基本信息teacher_passwordvarchar20密码teacher_genderint10性别基本信息teacher_birthdaydate生日基本信息teacher_native_placevarchar40籍贯基本信息teacher_rpr_addressvarchar40户口所在地址基本信息teacher_now_addressvarchar40现居住地址基本信息teacher_marryint2婚姻状况teacher_photo_pathvarchar40照片路径基本信息teacher_phonevarchar20电话teacher_emailvarchar20电子邮箱地址基本信息teacher_work_datedate参加工作时间基本信息teacher_graduationvarchar20毕业学校基本信息teacher_degreevarchar10学位基本信息teacher_educationvarchar20学历基本信息teacher_technicalvarchar10职称基本信息teacher_aboutvarchar100简介基本信息teacher_remarkvarchar100备注
7、课程信息表(course_tab)如表4-7所示表4-7课程信息表字段名类型是否主键是否自动增长是否外键备注course_idint10是是Idcourse_codevarchar20课程编号course_namevarchar20课程名称profession_idint10是专业idcourse_aboutvarchar100课程简介course_remarkvarchar100备注
8、教师_课程信息表(teacher_course_tab)如表4-8所示表4-8教师_课程信息表字段名类型是否主键是否自动增长是否外键备注teacher_course_idint10是是Idteacher_idint10是教师idcourse_idint10是课程idteacher_course_remarkvarchar100备注
9、创建学生_老师_课程信息表student_teacher_course_tab如表
4.9所示表4-9学生_教师_课程信息表字段名类型主键自动增长外键备注student_teacher_course_idint10是是Idstudent_idint10是学生_idteacher_course_idint10是教师_课程idstudent_teacher_course_remarkvarchar100备注
10、管理员表user_tab如表4-10所示表4-10管理员表字段名类型是否主键是否自动增长是否外键备注idint10是是Idusernamevarchar20用户名passwordvarchar20密码
5、详细设计
5.1数据流图顶层数据流图如图
5.1所示图
5.1顶层数据流图
2、登录模块数据流图如图
5.2所示图
5.2登录模块数据流图
3、院校模块数据流图如图
5.3所示图
5.3院校模块数据流图
4、系模块数据流图如图
5.4所示图
5.4系模块数据流图
5、专业模块数据流图如图
5.5所示图
5.5专业模块数据流图
6、班级模块数据流图如图
5.6所示图
5.6班级模块数据流图
7、学生模块数据流图如图
5.7所示图
5.7学生模块数据流图
8、教师模块数据流图如图
5.8所示图
5.8教师模块数据流图
9、课程模块数据流图如图
5.9所示图
5.9课程模块数据流图
10、教师-课程模块数据流图如图
5.10所示图
5.10教师-课程模块数据流图
11、学生-教师-课程模块数据流图如图
5.11所示图
5.11学生-教师-课程模块数据流图
5.2UML建模UnifiedModelingLanguageUML又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括了用例图、类图、对象图、包图、状态图、顺序图、合作图、活动图、构件图和配置图
5.
2.1类图本系统所使用的类图如图
5.12所示图
5.12类图
5.
2.2用例图本系统所使用的用例图如图
5.13所示图
5.13用例图
5.
2.3活动图本系统所使用的活动图如图
5.14所示,其中双向箭头表示经过处理后又返回原来的页面进行显示图
5.14活动图
5.3模块介绍本系统包括11个模块:
5.
3.1登录模块
1、包括身份的识别,用户名与密码长度及是否为空的检测,验证码是否正确的检测,以及用户名和密码是否与数据库中的用户名与密码相匹配
2、所使用的技术:JSP、DIV+CSS、Servlet、JavaScript
5.
3.2查询模块所使用的技术:JSP、DIV+CSS、Servlet包括9个查询子模块
1、院校查询
①通过id查询,id可选择=、和
②通过院校编号查询,院校编号可选择=和%(表示模糊查询)
③通过院校名称查询,院校名称可选择=和%(表示模糊查询)
2、系查询
①通过id查询,id可选择=、和
②通过系编号查询,系编号可选择=和%(表示模糊查询)
③通过系名称查询,系名称可选择=和%(表示模糊查询)
④通过院校id查询,院校id可选择=、和
3、专业查询
①通过id查询,id可选择=、和
②通过专业编号查询,专业编号可选择=和%(表示模糊查询)
③通过专业名称查询,专业名称可选择=和%(表示模糊查询)
④通过系id查询,系id可选择=、和
4、班级查询
①通过id查询,id可选择=、和
②通过班级编号查询,班级编号可选择=和%(表示模糊查询)
③通过班级名称查询,班级名称可选择=和%(表示模糊查询)
④通过专业id查询,专业id可选择=、和
5、学生查询
①通过id查询,id可选择=、和
②通过学号查询,学号可选择=和%(表示模糊查询)
③通过姓名查询,姓名可选择=和%(表示模糊查询)
④通过专业id查询,专业id可选择=、和
⑤通过班级id查询,班级id可选择=、和
6、教师查询
①通过id查询,id可选择=、和
②通过工作号查询,工作号可选择=和%(表示模糊查询)
③通过姓名查询,姓名可选择=和%(表示模糊查询)
7、课程查询
①通过id查询,id可选择=、和
②通过课程编号查询,课程编号可选择=和%(表示模糊查询)
③通过课程名称查询,课程名称可选择=和%(表示模糊查询)
④通过专业id查询,专业id可选择=、和
8、教师-课程查询
①通过id查询,id可选择=、和
②通过教师id查询,教师id可选择=、和
③通过课程id查询,课程id可选择=、和
9、学生-教师-课程查询
①通过id查询,id可选择=、和
②通过学生id查询,学生id可选择=、和
③通过教师-课程id查询,教师-课程id可选择=、和
5.
3.3院校模块包括院校信息的列表显示、单条记录的详细显示,以及对院校信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.4系模块包括系信息的列表显示、单条记录的详细信息显示,以及对系信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.5专业模块专业信息的列表显示、单条记录的详细信息显示,以及对专业信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.6班级模块包括班级信息的列表显示、单条记录的详细信息显示,以及对班级信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.7学生模块包括学生信息的列表显示、单条记录的基本信息显示和详细信息显示,对学生信息的增加、删除和修改,以及课程的显示、选课和退课所使用的技术:JSP、DIV+CSS、Servlet
5.
3.8教师模块包括教师信息的列表显示、单条记录的基本信息显示和详细信息显示,对教师信息的增加、删除和修改,以及课程的显示、选课和退课所使用的技术:JSP、DIV+CSS、Servlet
5.
3.9课程模块包括课程信息的列表显示、单条记录的详细信息显示,以及对课程信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.10教师-课程模块包括教师-课程信息的列表显示、单条记录的详细信息显示,以及对教师-课程信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.
3.11学生-教师-课程模块包括学生-教师-课程信息的列表显示、单条记录的详细信息显示,以及对学生-教师-课程信息的增加、删除和修改所使用的技术:JSP、DIV+CSS、Servlet
5.4数据库中表之间的关系系表的外键academy_id是院校表的主键专业表的外键department_id是系表的主键班级表的外键profession_id是专业表的主键学生表的外键profession_id是专业表的主键,外键class_id是班级表的主键课程表的外键profession_id是专业表的主键教师-课程表的外键course_id是课程表的主键学生-教师-课程表的外键student_id是学生表的主键,外键teacher_course_id是教师—课程表的主键
5.5测试
5.
5.1登录模块测试管理员登录如图
5.15所示图
5.15管理员登录图学生登录如图
5.16所示图
5.16学生登录图教师登录如图
5.17所示图
5.17教师登录图用户名和密码验证如图
5.
18、
5.
19、
5.20和
5.21所示图
5.18用户名或密码为空图图
5.19用户名长度验证图图
5.20密码长度验证图图
5.21用户名或密码错误图验证码验证时如图
5.22所示图
5.22验证码错误图
5.
5.2查询模块测试共可对9张表(院校信息表、系信息表、专业信息表、班级信息表、学生信息表、教师信息表、课程信息表、教师-课程信息表和学生-教师-课程信息表)进行查询,此处以查询学生为例通过id查询学生如图
5.
23、
5.24所示图
5.23通过id查询学生图图
5.24通过id查询结果图通过学号查询如图
5.25,
5.26所示图
5.25通过学号查询学生图图
5.26通过学号查询学生结果图通过学号模拟查询如图
5.27,
5.28所示图
5.27通过学号模拟查询图图
5.28通过学号模拟查询结果图未查询到任何记录结果如图
5.29所示图
5.29查询失败图
5.
5.3列表模块测试此模块包括9个小模块,分别为院校模块、系模块、专业模块、班级模块、学生模块、教师模块、课程模块、教师-课程模块和学生-教师-课程模块,此处以测试学生模块为例点击学生信息表显示如图
5.30图
5.30学生列表点击添加显示如图
5.31所示,由于学生信息的字段较多,此处将本应分为上下部分显示的组合成左右部分来显示图
5.31添加学生信息图点击删除后,执行删除操作后系统自动跳转到学生列表如图
5.32所示图
5.32删除后学生信息图点击修改页面如图
5.33所示,由于学生信息的字段较多,此处将本应分为上下部分显示的组合成左右部分来显示图
5.33修改学生信息图学生基本信息显示如图
5.34所示图
5.34学生基本信息学生详细信息与修改学生信息基本相同,此处图略点击课程,课程列表如图
5.35所示图
5.35学生的课程图点击选课,课程如图
5.36所示图
5.36课程图选择课程后添加如图
5.37所示图
5.37选课后学生的课程列表退课后如图
5.38所示图
5.38退课后学生的课程列表
6、致谢在实训的过程中,我也学习了很多的新的技术,锻炼了自己的编程能力,进一步熟悉了MVC框架的运用,培养了自己的一种独立解决问题的能力,收集资料和查阅资料的能力最重要的是锻炼了自己的意志力,做什么事都要有耐力和毅力,否则很难成事首先感谢XXX老师本论文是在X老师的指导下修改完成的在此,要对X老师的悉心帮助和指导表示由衷的感谢此外,X老师严谨的治学态度和忘我的工作精神值得我去学习感谢授课的老师们,更要感谢学院领导提供这个平台,以及同学们对我学业上的支持和鼓励,感谢所有关心帮助过我的人。