《学生考勤管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《学生考勤管理系统的设计与实现.doc(31页珍藏版)》请在三一办公上搜索。
1、 四川师范大学本科毕业设计 学生考勤管理系统的设计与实现学生姓名学 号所 在 系计算机科学与技术系专业名称计算机科学与技术班 级指导教师四川师范大学二一二年五月四川师范大学本科毕业设计 学生考勤管理系统的设计与实现学生: 指导教师: 摘要: 本高校学生考勤管理系统用JSP+SQL Server 2000开发,开发过程中运用了页面模块化、信息发布的动态生成、静态页面显示等技术开发。本论文重点介绍本系统的请假系统、考勤系统两大功能模块设计,完成学生、任课老师、班主任、院系领导、学校领导五类用户功能的设计与实现。关键词:考勤管理 在线请假 JSPStudents test system design
2、 and implementationAbstract:The system is an information system designed for asking for leave on line for students and managing attendance of undergraduate.It is generally divided into three main modules: the module for asking for on-line leave , the module for managing attendance of undergraduate a
3、nd the module for backstage management. There are different customers in the university operating the system,such as student, teacher, a teacher in charge of a class,department leader, school leader, administrator.The system is developed with the help of Jcreator,JSP(java、javascript、html)and SQL Ser
4、ver 2000. The key techniques used in the process of development are: the page modularization, dynamic generating and static page showing of information, etc. And the thesis focuses on the introduction of the systems attendance management and the management of asking for leave online.And it develops
5、the function of student, teacher, a teacher in charge of a class,department leader, school leader on the whole. Key Words: attendance management online ask for leave JSP目 录1 概述61.1 引言61.2开发背景61.3问题的描述62 可行性的分析72.1 引言72.2 目的和意义72.3 可行性的分析73 需求分析83.1 引言83.2 用户需求描述83.2.1学生用户的需求描述83.2.2任课老师用户的需求描述83.2.3
6、班主任用户需求描述83.2.4院(系)领导用户需求描述93.2.5学校领导用户需求描述93.2.6系统管理员用户需求描述93.3功能需求描述93.4系统开发工具103.5相关的开发工具简介103.5.1 B/S(浏览器/服务器)简介103.5.2 JAVA/JSP简介103.6 系统功能划分103.7 数据字典113.8 数据流图113.9运行需求123.9.1 最低配置123.9.2 建议配置124 总体设计134.1 引言134.2 系统的布局设计134.4 本人主要的工作任务145 详细设计145.1 引言145.2 系统功能的流程图145.3系统目录的结构设计155.4 数据库的设计与
7、实现155.4.1 实体模型155.4.2 E-R 模型图165.4.3 数据库的逻辑设计175.4.4 数据库表的创建175.4.5 数据库的建立185.5 前端操作页面的设计185.5.1 系统登陆的设计185.5.2 学生用户的功能设计185.5.3 任课老师用户的功能设计195.5.4 班主任用户的功能设计195.5.5 院系领导用户的功能设计195.5.6 学校领导用户功能设计196 编码206.1用户操作页面的编码206.1.1 系统登陆的编码206.1.2 学生用户功能编码206.1.3 任课老师用户功能编码216.1.4 班主任用户功能编码216.1.5 院系领导用户功能编码2
8、26.2 数据库连接池编码226.2.1数据库连接池程序编码227 软件的测试237.1 引言237.2 测试的方案237.2.1 本系统所采用的测试方案237.3 测试的过程247.3.1 用户登陆测试247.3.2 页面使用安全的测试247.3.3学生用户测试257.3.4任课老师用户的测试257.3.5班主任用户的测试267.3.6院系领导/学校领导用户的测试268 结束语.26参考文献27V 学生考勤管理的设计与实现1 概述1.1 引言问题定义阶段须要回答的主要问题是:“所要解决的问题是什么?”,其中最重要的是了解此课题要解决问题的根本所在和所需要的资源等。1.2开发背景目前各大高校校
9、园信息化逐步完善,高校师生利用校园网有效的提高了办事效率。各大高校对于教务的管理系统、师生的成绩查询系统、招生的就业系统、BBS、校园网站等各个系统在各个高校都一一出现,对全校教师和同学们的学习、生活、管理、办公等都带来了极大的便利。目前各个高校的学生上课所采用的考勤管理都是以任课教师上课点名,记录下学生上课出勤的情况,学期期末再根据上课出勤表以及作业登记表对学生平时的成绩进行打分,最后把数据上交到各院系。学生请假都以传统的写请假条的形式向各自的班主任请假,若请假时间长,需要班主任、院系领导都批准方能生效。这种模式在目前绝大部分高校管理中出现了极大的弊端。1.3问题描述上面所术的关于各大高等学
10、校对于学生的考勤以及请假所面临的各种问题涉及到了很多类的用户,该系统所用的范围都是在整个校园的校园网内,因为较广泛的用户分布,并且有很大的差异。所以该系统设计应该采用B/S这样的构架来进行设计,操作简单且直观、硬件要求低,当然最好能实现跨平台。如此系统应当有较好的扩展性,且要与当前高校中已有的系统存在很好的集成。如今在IT技术的不断更新与发展下,很多企业的信息实现化也随之不断在成熟。面对广泛程序语言的运用于设计,以及各种成熟的关系数据库的完善、推出,加之广泛运用面向对象这样的软件开发,这使得软件开发变得简单很多,开发系统也变得实用许多,大部分企业使用这样的信息系统后,办事效率不仅提高了,而且也
11、收到了更大的经济收入。JSP、ASP 、PHP等技术是如今基于B/S结构所采用的方案。该系统采用了JSP技术来进行开发,存储数据使用了流行的SQL Server 2000数据库管理系统,学生在线考勤管理、在线请假、后台数据的维护和更新等都成功被解决了。2 可行性的分析2.1 引言在此阶段需要弄懂的问题是:上个阶段所确定的问题如今到底有没有可行的解决方法。要解决该问题,我们需要进行大大的压缩、简化的系统分析与设计过程。可行性的研究不是具体的解决问题,会比较简单!而研究性问题的范围,关于这个问题是否值得去探索去解决,寻找的解决方案有是否可行呢?2.2 目的和意义解决现今各大高校中对于学生的请假和上
12、课的出勤管理中所面临的种种问题是开发该系统的目的所在。有效地提高各大高等学校的办事的效率,解决各大高校学生的请假和上课的出勤管理问题,实现学生的请假和上课的出勤信息对班主任或是任课教师、各大领导等及时了解学生的学习情况,这些都是开发高校学生考勤管理系统的目的。这样有利于与学生及时进行沟通,提高校的教学质量。2.3 可行性的分析技术的可行性:该系统在如今的高校中的使用还并不广泛,尽管这样,依然有很多相似的成功案例。该系统所采用的脚本语言是JavaScript。利用了JSP、html标识语言和SQL Server 2000数据库技术进行综合开发。如此安全稳定的JSP动态网页技术,国内很多企业、银行
13、的商务系统和各种信息系统都是采用它来开发的。MSS(基于结构化的查询语言数据库服务器)一种是基于客户/服务器结构化的数据库管理系统,通过使用客户系统用户可以从服务器的检索信息了解并进行本地的相关操作,客户关注信息的相关表示,服务器关注数据库的相关进程。经济的可行性:该系统在架构设计上 开发上 使用的都是比较简单方便的设计技术,所消耗的人力物力很少,所要求的部署硬件要求也很低,这样简单 易于操作的系统,在经济上是非常可行的。 法律的可行性:在知识产权上该系统拥有自主权,并没有随意使用其他有违法规的软件同时也没有任何非法的商品交易,因此在法律上它也是可行的。操作的可行性:本系统操作非常简单方便,你
14、懂得上网,那么操作该系统就你就没问题,因此在操作上也是可行的。分析结果:通过各种分析 可得出,该系统在经济、法律、操作等都具有很好的可行性,其性价比很好,所以 它是值得开发采用的。3 需求分析3.1 引言这个阶段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能。3.2 用户需求描述用户就是系统最终的使用者,开发系统的目的在于让用户最终能很好的使用该系统,最终为各个用户带来各种方便。该系统主要是解决高校学在线请假以和上课考勤管理两个重大问题,经过对各大高校的实际调查与分析,该系统包了括学生、班主任、任课教师、院系领导、学校领
15、导、系统管理员等六类用户,而这六类用户对系统的需求简要概括如下:3.2.1学生用户的需求描述学生对该系统主要的需求是:在线请假需求和查看在校期间所有的上课出勤信息。在线请假的需求:学生可以在网上填写好请假的起止日期、请假缘由后,就可以向班班主任提出请假的申请,若超过三天的请假时间,就由班主任审批后,再由院系领导审批。在此请假的全部过程当中,学生可以随时通过网络查自己请假的详细进展情况。查看出勤信息的需求:学生完全可以查看在校期间所有学期的上课出勤信息。3.2.2任课老师用户的需求描述任课老师对系统的主要的需求是:管理及查看所教班级学生的上课出勤信息。管理学生上课出勤的需求:依据学校安排的各个课
16、表,随着时间的变化,系统会自动地将还没有在网上公布的学生上课出勤信息列出,系统会自动的根据学生请假系统,最终决定学生上课出勤率的结果。查看学生出勤信息的需求:查看所教的班级学生整个学期以来的出勤统计的详细信息。其它的需求:查看上课的课表,本人的基本信息以和修改个人的用户密码。3.2.3班主任用户需求描述班主任对本系统的主要需求是:审批以及查看本班学生本学期的在线请假和所有课程的上课出勤等相关信息。审批学生的请假需求:学生在本学期在线请假申请后,自动提示该班主任有等待审批的请假信息,班主任再针对请假申请信息进行学生请假审批和对请假信息的回复。查看学生上课出勤的信息需求:查看本班学生在整个学期有关
17、课程上的出勤统计的详细信息。其它的需求:查看该班学生基本信息、修改个人的用户密码等。3.2.4院(系)领导用户需求描述院系领导对系统的需求是:审批本院系所有学生中超过三天请假的和查看本院系学生上课的出勤信息。审批请假的需求:当有学生请假时间超过三天的,由所在班班主任审批同意后,系统就会自动提交信息给任何一个最先进入系统的院系领导审批请假,和针对请假的回复。查看本院系学生出勤信息的需求:直接输入查询的条件,系统自动会根据查询条件列出相关的上课出勤信息。其它的需求:查看本院系相关的基本信息和修改个人的用户密码等。3.2.5学校领导用户需求描述查看全校学生上课出勤的相关信息也就是学校领导对系统主要的
18、需求。要查看出勤的信息:直接输入相关的查询的条件,学生的相关上课出勤信息就会自动根据查询条件列出。有关其它的需求:查看全校的基本信息、修改个人的用户的密码等。3.2.6系统管理员用户需求的描述系统的最高权限是系统管理员,系统管理员要负责同步更新和维护系统所有数据的动态,下面是基本的功能需求:l 学校所有相关信息,进行添加、修改、删除。l 各个班级的课程安排、班主任和任课教师的相关信息。l 整个系统全部的用户。l 全校课表的相关安排。l 全校每个学期开学的时间和结束的时间。l 整个系统的请假和考勤信息。3.3功能需求描述根据以上各类用户的各种需求描述,该系统必须具备请假系统、考勤管理系统、后台管
19、理系统这三大重要功能。请假系统的功能需求:据调查分析,目前很多高校中的请假流程是学生如果要请假,必须先写好请假条首先由班主任审批,超过四天的请假时间,还必须要等待院系领导审批通过后才能生效。请假的时间最长不能超过1个月,特殊情况除外。考勤管理的功能需求:任课老师必须通过考勤管理系统,对学生上课出勤信息进行公开,但因为任课老师忙于教学,为了准确无误的对学生出勤情况进行及时公开,这需要系统能自动地提示任课老师对上完课后,却还未公布的出勤信息在网上进行公布。后台管理的功能需求:后来的管理最主要是用来管理系统操作的数据,由于每学年各个高校的学生都在变化,有新生入学、有学生毕业。 3.4系统开发工具根据
20、各用户和系统各大功能的需求,经过大量的调查与分析,对于本高校学生考勤管理系统选择以下开发工具进行开发:系统结构:B/S 开发语言:JAVA/JSP数据库:SQL Server 2000开发工具:JDK 1.5 Dreamweaver Jcreator服务器端容器:Tomcat 5.53.5相关的开发工具简介3.5.1 B/S(浏览器/服务器)简介“B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同
21、的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据;最大的缺点是对网络环境依赖性太强,由于各种原因引起网络中断都会造成系统瘫痪。”3.5.2 JAVA/JSP简介“JAVA是SUN公司推出的完全面向对象的语言,它有很好的跨平台性、安全性、重用性等特点。JSP的全称是Java Servlet Pages,它是SUN推出的一种动态网页技术标准。它在传统的静态页面文件(*.html,*htm)中加入Java程序片段和JSP标记,就构成了JSP页面。 3.6 系统功能划分根据系统用户的各个需求,本系统可以按功能划分成三大功能模块:请假系统模块、
22、考勤系统模块、后台管理模块,涉及到的用户六大类:学生、任课老师、班主任、院系领导、学校领导、系统管理员。l 请假系统模块:该模块的功能是实现在线请假和管理,最重要涉及到三大类用户:学生用户、班主任用户及院系领导用户,学生用户可以通过此功能模块在线进行请假和查看请假信息记录;班主任可在线审批和查看学生请假及记录信息;院系领导可在线审批学生长时间的请假和查看请假信息记录。l 考勤系统模块:该模块的功能是实现学生考勤信息的统计、查看及管理,涉及到所有用户。学生可以在线查看了解自己所有学年的出勤的相关信息;任课教师也可以在线管理学生出勤的相关信息;班主任、院系领导、学校领导都可查看不同范围的学生出勤的
23、相关信息。l 后台管理管理:该模块的功能是实现整个系统数据的同步更新和维护,只虚涉及系统管理员。系统管理员可以动态的管理学生的相关信息、课表安排、学年安排等,这是整个系统要实现的基础所在。3.7 数据字典数据词典,不但可用于描述数据流和数据存储的详细逻辑内容,还可用于描述外部项和处理逻辑的某些数据特性。数据词典把最小组成单位看作数据元素,N干个数据元素组成数据结构。通过对数据元素和结构的定义,来描述数据流和存储的逻辑内容。就相当于字典的作用,当用户或软件人员想了解某一数据的含义时,查字典便可。 3.8 数据流图数据流程图是系统结构化分析的工具。它不但可以表达数据在系统内部的逻辑流向,而且还可以
24、表达系统逻辑功能和数据逻辑变换。数据流程图不但能表达现行人工系统的数据流程以及逻辑处理功能,更能表达自动化系统的数据流程以及逻辑处理功能如下图:图3.8-1 请假系统数据流图图3.8-2 考勤系统数据流图3.9运行需求3.9.1 最低配置 3.9.1-1 最低配置服务器端需求表硬件需求处理器 Intel Pentium III 内存 128M 硬盘 40G软件需求Windows 98 Microsoft Internet Explorer 4.01 JDK 1.5SQL Server 2000 数据库 Tomcat 5.0 3.9.1-2 最低配置客户端需求表 硬件需求处理器 Intel奔腾1
25、33或相当的处理器 内存 64M 硬盘 10G软件需求Windows 98 Microsoft Internet Explorer 4.013.9.2 建议配置3.9.2-1 建议配置服务器端需求表硬件需求处理器 Intel Pentium IV 3.2G 内存 256M 硬盘 90G 软件需求Microsoft Windows 2000/XP JDK 1.5 Tomcat 5.5SQL Server2000 数据库 Microsoft Internet Explorer 6.03.9.2-2建议配置服务器端需求表客硬件需求处理器 Intel Pentium IV 1.8或相当的处理 内存25
26、6M 硬盘 30G软件需求Windows 20002/XP Microsoft Internet Explorer 6.04 总体设计4.1 引言通过需求分析阶段的工作,系统必须要“做什么”已弄清楚了,现在决定的是该“怎样做” 了。4.2 系统的布局设计系统页面主要采用框架来设计,不同的用户拥有不同的功能菜单,但是都有统一的风格,这让页面的使用和维护变得更加方便,尤其是对代码重用方面有很大的帮助。该系统各个用户的页面设计如图4-1所示:图4.2-1 系统布局图4.3 总体的结构图学生考勤管理系统各模块之间的层次结构按用户划分,系统结构图如下:图4.3-1 系统用户结构示意图图4.3-2 请假系
27、统结构示意图 图4.3-3 考勤系统结构示意图4.4 本人主要的工作任务本校学生考勤管理系统分三大功能模块进行来实现,本人要负责的是:请假和考勤系统两大功能模块,涉及到的用户有:学生、班主任、任课老师、院系领导、学校领导。5 详细设计5.1 引言总体的设计阶段用较抽象概括的方式来提出解决问题的办法。详细设计是软件开发时期的第三个阶段,也是第二步。它的任务就是把解法具体化,经过详细设计应得出对目标系统的精准描述,详细地给出各模块的过程性描述。这样在编码阶段便可把此描述直接翻译成某种程序语言书写的程序。5.2 系统功能的流程图1)主功能流程:图5.2-1 主界面流程图5.3系统目录的结构设计图5.
28、3-1 系统目录结构的设计图 5.4 数据库的设计与实现5.4.1 实体模型图5.4.1-1 任课老师提交记录实体图图5.4.1-2 请假记录属性模型图5.4.1-3 学生出勤记录属性模型图5.4.2 E-R 模型图图5.4.2-1 学生请假记录E-R模型图5.4.3 数据库的逻辑设计依各个功能设计及分析,可列出下面的相关数据项以及数据结构:5.4.3-1 相关数据项及数据结构信息表考勤登记课程安排代号、记载时间、上课时间学生上课出勤信息上课时间代号、上课时间、学号、出勤状态请假信息请假代号、班级代号、学年代号、学号、请假原因、开始时间、结束时间、请假天数、申请时间、班主任审批状态、班主任批时
29、间、班主任回复、院系领导审批状态等5.4.4 数据库表的创建 依据数据库需求分析,建立基本的数据表如下。5.4.4-1 请假的信息表列名数据的类型是否为空说明idInt(4)否(主键)请假的代号class_idvarchar(10)否班级的代号year_idvarchar(25)否学期的代号stu_numbervarchar(25)否学生的学号qingjia_yuanyinvarchar(250)否请假的原因start_timedatetime否开始的时间end_timedatetime否结束的时间day_numberInt(4)否(默认0)请假的天数qingjia_timedatetime否
30、申请请假的时间class_teacher_statusInt(4)否(默认值为0)班主任的审批状态class_teacher_sp_timedatetime是班主任的审批时间class_teacher_restorevarchar(250)是班主任的回复college_leader_statusInt(4)否(默认值为0)院系领导的审批状态college_leader_idvarchar(25)是院系领导的代号college_leader_sp_timedatetime是院系领导的审批时间college_leader_restorevarchar(250)是院系领导的回复 表5.4.4-2 任
31、课老师提交出勤信息的记录表 列名数据的类型是否为空值说明record_idInt(4)否(自动生成)代号idInt(4)否与表course_time中id关联record_timedatetime否老师考勤得记载时间sk_timedatetime否上课的时间 表5.4.4-3 学生上课出勤的记录表列名数据的类型是否为空值说明kaoqin_idInt(4)否(自动生成)代号idInt(4)否与表course_time中id关联sk_timedatetime否上课得时间Stu_numberVarchar(20)否学生的学号Stu_statusVarchar(1)否学生上课的考勤状态5.4.5 数据
32、库的建立打开SQL Server2000的企业管理器,登录后,选择新建数据库这个命令,给数据库起名kaoqin。然后经过设计器创建数据表。5.5 前端操作页面的设计5.5.1 系统登陆的设计不同的用户使用系统,都需要事先进行身份验证。在“用户名”处,用户输入系统管理员分配的用户,选择正确的类型,在输入正确密码后才能进行系统,以上任何一个输入有误,系统都将拒绝用户使用该系统,如果用户忘记了用户名或是密码,请尽快与系统管理员联系,因为该系统不支持在线找回密码功能。学生用户的用户名和密码都是该学生的学号,而其它用户的用户名和密码是由系统管理员指定。该系统的设计,严格考虑了系统的安全性,不允许任何用户
33、不经登陆而直接使用该系统的任何一个网页,用户也不能绕过身份验证。5.5.2 学生用户的功能设计据学生用户的需求,该系统实现了在线请假、查看个人基本信息、查看上课出勤信息这三大重要功能。该系统针对学生用户设计了以下功能菜单:基本信息、考勤信息、请假系统、修改密码、查看课表、安全退出、帮助。通过基本信息功能菜单,学生便可查看自己的姓名、性别、学号、院系、年级、专业、班级号等信息。通过请假系统功能菜单,实现了在线请假申请功能、查看等待审批的请假信息、请假成功或失败的请假信息。通过考勤信息菜单,学生可查看历史学年上课出勤的统计信息。通过查看课表功能菜单,学生可查看历年的课表安排。通过修改密码功能菜单,
34、学生便可修改自己的密码。通过本系统自带的帮助文件,用户在使用过程中可随时查阅。5.5.3 任课老师用户的功能设计据任课老师用户的需求,系统实现了任课老师在线公布学生上课出勤信息和查看学生考勤信息两大基本功能。针任课老师用户系统设计了以下功能菜单:查看课表、考勤信息、考勤管理、修改密码、安全退出、帮助等。通过查看课表功能菜单,任课老师可查看本学期自己所带课程的上课时间以和所教班级的一些基本信息。通过考勤管理功能菜单,系统可以比较智能的根据当前日期自动地提示当前学年还没登记的学生上课出勤表。通过考勤信息功能菜单,任课老师可查看已记录的学生上课出勤信息,这样不但可以查看学生上课出勤统计信息,还可以考
35、勤学生上课出勤统计信息,最后还可以做适当的修改。任课老师用户最主要的功能是考勤管理功能,在任课老师上完课后,把传统的学生上课出勤情况在网上公布,及时准备学生上课出勤信息并对班主任、院系领导、学校领导透明。 5.5.4 班主任用户的功能设计根据班主任用户的功能需求,系统实现了浏览班级信息、审批学生在线请假和上课考勤信息三大基本功能。针对班主任用户系统设计了如下功能菜单:班级信息、考勤信息、请假系统、修改密码、安全退出、帮助。通过班级信息功能菜单,班主任可以查看本班学生的基本信息。5.5.5 院系领导用户的功能设计根据院系领导用户的需要,系统实现了查看本院系信息和学生考勤信息、以及审批本院系学生请
36、假的几大基本功能。学院系领导用户的系统设计信息如下:有院系 、班主任、任课老师、请假系统、考勤统计、班主任安排等。通过院系信息功能菜单、请假系统功能菜单、考勤统计功能菜单 就可以完成相关的信息查询。查询本院系学生上课的考勤信息和审批学生请假是院系领导用户的主要功能。院系领导用户可以查询院系某个班的考勤信息,同时也可以查询院系某个人的考勤信息,当然在查询个人考勤的统计信息时,这是一个模糊的查询,可根据完整学号,查出一个学生考勤信息,但也可输入部分学号、姓名依次列出所有相关的考勤记录。院系领导通过该系统还可查看本院系相关的一些基本信息。5.5.6 学校领导用户功能设计查看学校领导用户的功能,查看全
37、校基本信息和学生考勤信息这两大基本功能都由该系统实现了。对于院系领导用户系统设计了以下功能信息菜单:学校、院系领导、班主任、任课老师、班主任安排、考勤、全校课表、修改密码、安全退出、帮助等信息。通过学校信息的功能菜单、考勤统计功能菜单,学校领导便可以查看有关本校的一些相关的基本信息。各个菜单功能的合理安排设计实现了相关信息的查询。学校领导用户、院系领导用户他们的的功能大致上是一样的,只是查看的范围有所不一样,院上和系上的领导只可以查看到本学院本系的信息,而全校的学生、班主任、任课老师等所有相关的信息只有学校的领导可以查看到。因为与院系领导设计上基本一致,所以不再重复。6 编码6.1用户操作页面
38、的编码6.1.1 系统登陆的编码用户登陆时操作页面如下图所示:图6.1.1-1 用户的登录页面6.1.2 学生用户功能编码根据系统详细设计,学生用户操作页面如图所示:图6.1.2-1 学生请假系统页面6.1.3 任课老师用户功能编码根据任课老师详细设计的要求,设计任课老师操作页面如图所示:图6.1.3-1任课老师考勤管理页面6.1.4 班主任用户功能编码根据班主任用户的详细设计要求,设计班主任用户操作页面如图所示:图6.1.4-1 班主任审批请假操作页面6.1.5 院系领导用户功能编码根据院系领导用户详细设计的需求,设计院系领导用户操作页面如图6-6所示:图6.1.5-1院系领导查询学生考勤信
39、息页面6.2 数据库连接池编码6.2.1数据库连接池程序编码/* SQL Server 2000 连接池对数据库的所有操作 */package SQLBean;import javax.naming.*;import javax.sql.*;import java.sql.*;public class DBConnpublic Context ctx=null;public Connection cnn=null;Statement stmt=null;ResultSet rs=null;DataSource ds=null;public DBConn() /构造函数,查找连接池资源tryct
40、x=new InitialContext();if(ctx=null) throw new Exception(not environment); ds=(DataSource)ctx.lookup(java:comp/env/jdbc/kaoqin); if(ds=null) throw new Exception(not find dataBase);catch(Exception e)System.err.println(e.getMessage();7 软件的测试7.1 引言开发软件这个过程中,大家使用了很多保证软件质量的方法分析、设计以及实现软件,然而避免不了还会在工作中犯一些小错误
41、。这在软件产品中就隐藏着许多错误和缺陷,尤其是规模大和复杂性高的软件。因此,必须进行认真、仔细、计划、彻底的软件测试。7.2 测试的方案7.2.1 本系统所采用的测试方案基于各种测试方法,本人选取的是模块测试与系统测试,主要的模块测试部分由本人程序设计过程中自主完成!7.3 测试的过程7.3.1 用户登陆测试用户登陆的测试是测试系统访问的安全性和各个页面的设计的安全性,测试方案如下所示:表7.3.1-1 测试方案表用户的类型用户名密码空值密码错误密码或用户名错误的类型学生2008120762008102076否否否任课老师051002234567否否否班主任058001234567否否否院系领
42、导linxin_02234567否否否学校领导school234567否否否经过上表反复测可知,在登陆安全方面系统用户不存在问题,各个用户必须选择正确的类型,使用正确的用户名和密码才可以正常使用该系统。7.3.2 页面使用安全的测试该测试过程主要是测试系统各页面的安全性,也即是在用户没有登录的情况下直接在浏览器地址中输入要打开的用户页面,亦或是用户用正确的用户名和密码进入系统后,在浏览器地址栏中直接输入别的用户的页面,测试各个页面是否不需要用户登录便可使用,或是否可以绕过身份验证成功。第一步:如果用户没登陆,在地址栏中直接输入学生用户的首页的完整地址,查看到底能不能进行操作。测试出得到的结果是
43、:用户还没有进行登陆这样的错误信息提示。按照相同的方法,依次测试其它页面和用户,测试的结果都是:用户还未没有进行登陆这样的错误信息提示。第二步:输入正确的用户及密码进入学生系统,在地址栏中正确地输入任课教师的首页地址,查看能不能跳过身份认证,再打开其他的页面。测试得到的是:没有任何权限这样的错误信息提示。用同样的方法去测试其他的页面用户,其他的用户都得到一样的测试结果信息:无权限。测试的结果:通过各种测试,系统各个页都有很好的安全性,每个页面都不允许用户在没有登陆的前提下访问,用户在登陆后,也不充许用户访问别的用户类型的页面,即不能绕过身份验证。7.3.3学生用户测试学生用户的核心功能是请假系
44、统,主要完成以下的几个测试: 空值的测试:请假开始时间空值、结束的时间空值、请假原因空值、或部分为空值,在这样的的情况下,点击提交数据,在线请假。测试的结果:系统拒绝提交数据,并能正确的做出相应的提示,如*不可以为空的错误信息。 错误时间选择测试:在开始时间和结束时间选择的时候,把结束时间选择一个开始时间以前的时间,最后提交数据。测试的结果:提示的时间选择错误的提示信息。 超前请假的相关测试:选开始时间和当前时间相差大于一个礼拜的日期请假。测试的结果:提示出只能提前7天请假时间的错误信息。 超后请假的相关测试:选开始时间在目前系统的时间以前的日期进行请假。测试的结果:提示出不能请过去时间假期的错误信息。 超长时间的请假测试与超后请假的测试方法类似。 重复的请假的相关测试:首先申请一条关于当天日期的请假,成功后,再申请一条从今天至明天的相关请假。测试的结果:提示出不能重复的请假的错误信息。 小于4天的请假测试:开始的时间和结束的时间之差小于四天的请假测试。测试的结果:提交的数据后,在等待审批请假的记录中出现一条新记录,且显示出了申请的时间,班主任审批处显示了“等待批假”的提示信息,然而院系的审批处没有显示“等待批假”的提示信息。