学生考勤管理系统设计

学生考勤管理系统设计
学生考勤管理系统设计

学生考勤管理系统设计

河南理工大学计算机科学与技术学院

课程设计报告

200 8 — 200 9 学年第 1 学期

课程名称数据库系统原理

设计题目学生考勤管理系统

学生姓名

学号

专业班级

指导教师

2009 年 1 月 20 日

目录

一( 设计任务书..................................................................1 二( 背景分析..................................................................3 三( 问题描述..................................................................4 四( 可行性分析..................................................................5 五( 需求分析.....................................................................6 六( 数据字典.....................................................................8 七( 系统开发工具...............................................................9 八( 总体设计.....................................................................10 九( 详细设计建立数据库......................................................16 十( 个人总结........................................................................23 十一( 参考文献 (24)

一(数据库系统设计课程设计任务书

设计题目学生考勤管理系统指导教师

学生班级

本课程设计要实现的主要功能如下:

1)建立数据库,初始化学生、任课老师、班主任、院系领导、学校领导以及系统管理员等信息。

2)学生:在线请假以及查看在校期间所有的上课出勤信息。查看本人的基本信息,如本人的所属的院系、年级、专业、班级、学号、姓名、性别等以及修改个人用户密码。

3)任课老师:管理所教班级学生的上课出勤信息以及查看所教班级学生的上课出勤信息。查看本人基本信息以及修改个人用户密码。

4)班主任:审批本班学生本学期的在线请假以及查看本课程设计功能要

班学生本学期所有课程的上课出勤信息。查看本班学生的基求

本信息、修改个人用户密码等。

5)院系领导:审批本院系学生超过三天的请假以及查看本院系学生上课出勤信息。查看本院系有关基本信息以及修改个人用户密码等。

6)学校领导:查看全校学生上课出勤信息。查看有关全校的基本信息以信修改个人用户密码等。

7)系统管理员用户:负责系统所需所有数据的动态同步更新以及维护,根据系统针对各用户的设计,管理学校各院系、年级、专业、班级的添加、删除、修改等。

1、需求分析:为提出的问题找出解决的办法和思路。

2、概念分析与设计:

3、逻辑分析与设计: 课程设计步骤与

4、物理分析与设计: 方法

5、功能实现:

6、数据库运行:

7、编写设计课程设计说明书。

课程设计说明书要求:

1)封面

课程设计说明书2)课程设计任务书

要求: 3)目录

4)正文

5)参考文献

时间为二周,大致划分如下:

第一天布置任务及分组,总体需求分析

第二天编写相关文档,设计说明,查找资料

第三天设计及实现

第四天,第五天各模块设计设计工作计划与

第六天各模块的调试与修改,系统组装进度安排第七天程序总调试,修改第八、九天撰写课程设计说明书,打印

第十天,第十二天课程设计检查与答辩

1.考勤20%

2.课程设计说明书50% 设计考核要求

3.答辩30%

1.《数据库系统原理》中国矿业大学出版社

2.《SQL Server实用简明教程》清华大学出版社

3.《软件工程与数据库概论》清华大学出版社教材与参考书目

计算机科学与技术学院制

二(学生考勤管理系统背景分析

目前高校校园信息化逐步完善,能有效地借助网络才能提高办事效率。

如今各大高校针对师生的成绩查询系统、教务管理系统、招生就业系统、BBS、

校园网站等系统在各大高校纷纷出现,对全校师生的学习、生活、管理、办公带来了便利。因此学生考勤管理系统能进一步加强高校学风建设,维护正常的教学秩序,给学生创造一个优良的学习环境。

目前高校学生上课考勤管理都是以任课老师上课点名,记录学生上课情况,对于时间比较长的请假,需要通过递交请假申请让班主任、院系领导都批准方能生效。这种的模式在目前高校管理中暴露了不可避免的弊端:

一、学生请假不方便;

二、学生请假对任课老师不透明;

三、学生对自己整个学期的上课出勤情况没有整体的统计信息;

四、班主任对本班学生整个学期的上课出勤情况不易查看;

五、院系领导、学校领导不容易把握学生上课的出勤情况。

因此一个好的学生考勤管理系统在一定程度上可以解决这些弊端,本系统主要针对目前高校学生在线请假以及学生上课出勤管理而设计的信息系统。本系统涉及到高校六大类用户:学生、任课老师、班主任、院系领导、学校领导、系统管理员。

三(问题描述

3.1 引言

问题定义阶段必须回答的关键问题是:“要解决的问题是什么,”,在此阶段中,主要是弄清本课题需要解决的问题根本所在,以及此课题所需的资源等。 3.2问题描述

高校对学生考勤和请假面临的问题涉及多类用户,系统使用范围是在全校校园网内,由于用户分布广泛,且存在很大差异,如:知识结构的差异、计算机硬件配置的差异、因此本系统设计应当采用典型的B/S(浏览器/服务器)的构架进行设计,操作简单直观,对硬件要求低,最好能实现跨平台。跨平台一是指客户端用户操作的跨平台,二是指服务器端的跨平台,即可以将服务器部署在所有操作平台上。系统应当有很好的扩展性,与当前高校中现有的系统很好集成。目前随着IT 技术的不断创新与发展,新的技术不断推出,各种企业实现信息化的解决方案不断成熟。面向对象程序设计语言的广泛使用,各种成熟关系数据库的不断完善与推出,再加上面向对大的经济收入。目前流行的基于B/S结构的解决方案主要有ASP,JSP,PHP等技术。本系统选用JSP技术开发,使用当前流行的SQL Server 2000数据库管理系统来存储数据,主要解决学生在线请假、在线考勤管理以及后台数据的维护与更新。

四.可行性分析

4.1引言

这个阶段要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决方法吗,”为了回答这个问题,需要一次大大压缩和简化了的系统分析和设计的过程,也就是在较抽象的高层次上进行的分析和设计的过程。可行性研究应该比较简短,这个阶段的任务不是具体解决问题,而是研究问题的范围,探索这个问题是否值得去解,是否有可行的解决方法。

4.2 目的和意义

开发本系统的目的,就是要解决目前高校中关于学生请假与上课出勤管理中所面临的一系列问题。

开发出高校学生考勤管理系统能有效地提高高校办事效率,解决目前高校学生请假及上课出勤管理问题,实现学生请假及上课出勤信息对任课教师、班主任、院系领导、学校领导透明,使班主任、院系领导及时把握学生的学习情况,及时与学生沟通,提高教学质量。

4.3 可行性分析

技术可行性:高校学生考勤管理系统在目前的高校中使用还不普遍,但也有许多类似的成功案例:如教务管理系统、排课系统等。本系统采用JSP,JavaScript 脚本语言、html标识语言及SQL Server 2000数据库技术综合开发。JSP是一种安全稳定的动态网页技术,目前国内各企业的电子商务系统,ERP系统,银行信息系统等基本上都用JSP开发的。Microsoft SQL Server(基于结构化查询语言的数据库服务器)是基于客户/服务器结构的数据库管理系统,用户通过使用客户系统从服务器检索信息并进行本地操作,服务器关注数据库进程,而客户则关注信息的表示。为了使客户端能够从服务器中访问数据,服务器必须具备以下两个关键特征:一、对在数据库中的数据提供单点访问。二、将处理和操作在客户端和服务器间进行分配。SQL Server使用Transact-SQL语言来维护、实现和访问数据库,Transact-SQL是SQL(Structured Query Language)的一个子集标准。SQL Server

有多种实用程序允许用户来访问它的服务,用户可用这些实用程序对SQL Server

进行本地管理或远程管理。

经济可行性:本系统使用B/S架构设计,使用市场上流行的动态网页技术,开

发简单,使用度方便,不需要耗费大量的人力物力就能很快的开发出来,系统部署对软硬件要求不高,用户操作简单,几乎不需要对用户进行专业培训就可使用本系统,所以从经济上讲是可行的。

法律可行性:本系统拥有自主知识产权,没有使用任何违法的软件也没有交易

任何非法的商品,所以在法律上是可行的。

操作可行性:本系统操作简单方便,只要懂得上网都能方便操作本系统,所以在

操作上也是可行的。

分析结果:从以上的分析可知,高校学生考勤管理系统的解决方案无论在技

术,经济还是法律以及操作上都是可行的,且开发本系统具有一定的经济价值和实用价值。

五.学生考勤管理系统需求分析

5.1 用户需求描述

用户是系统的最终使用者际调查分析,本系统应当包括学生、班主任、任课

老师、院系领导、学校领导、系统管理员六类用户,这六类用户对系统的需求简要概括如下:

5.2.1学生用户需求描述

学生对本系统的主要需求是:在线请假以及查看在校期间所有的上课出勤信

息。在线请假需求:学生请假的全过程当中,学生可以随时查看请假的详细进展情况。查看出勤信息需求:学生可以查看在校期间所有学期上课出勤的详细信息,如:查看“大学英语”这门课程在整个学期请假、旷课多少次等信息。其它需求:查看

本人的基本信息,如本人的所属的院系、年级、专业、班级、学号、姓名、性别等,以及修改个人用户密码。

5.2.2任课老师用户需求描述

任课老师对系统的主要需求是:管理所教班级学生的上课出勤信息以及查看所教班级学生的上课出勤信息。

管理学生上课出勤需求:随着时间的变化,自动列出还没有在网上公布的学生上课出勤信息,系统自动根据学生请假系统,决定学生上课出勤的最终结果。查看学生出勤信息需求:查看所教班级学生整个学期出勤情况。其它需求:本人基本信息以及修改个人用户密码。

5.2.3班主任用户需求描述

班主任对本系统的主要需求是:审批本班学生本学期的在线请假以及查看本班学生本学期所有课程的上课出勤信息。

审批学生请假需求:本班学生本学期在线请假申请后,自动提示班主任有等待审批的请假信息,班主任针对请假申请信息进行学生请假审批。查看学生上课出勤信息需求:查看本班学生整个学期有关课程的上出勤统计信息及详细信息。

其它需求:查看本班学生的基本信息、修改个人用户密码等。 5.2.4院系领导用户需求描述

院系领导对系统的主要需求是:审批本院系学生超过三天的请假以及查看本院系

学生上课出勤信息。

审批请假需求:当学生请超过三天的假,经班主任审批同意后,系统自动提交给任何一个进入系统的院系领导审批请假。

查看本院系学生出勤信息需求:输入查询条件后,系统根据查询条件列出本院系学生相关的上课出勤信息。

其它需求:查看本院系有关基本信息以及修改个人用户密码等。 5.2.5学校领导用户需求描述

学校领导对系统的主要需求是:查看全校学生上课出勤信息。查看出勤信息需求:输入查询条件后,系统根据查询条件列出本校学生相关的上课出勤信息。

其它需求:查看有关全校的基本信息以信修改个人用户密码等。 5.2.6系统管理员用户需求描述

系统管理员有系统的最高权限,负责系统所需所有数据的动态同步更新以及维护,根据系统针对各用户的设计,基本功能需求如下:

1、管理学校各院系、年级、专业、班级的添加、删除、修改等。

2、管理每个学期每个班级的课程安排及指定班主任和任课老师。

3、管理系统所有用户。

4、管理全校课表安排。

5、管理系统的请假、考勤信息。

5.3功能需求描述

根据各类用户的需求描述,系统应当具备请假系统、考勤管理系统、后台管理系统这三大主要功能。

请假系统功能需求:通过班主任以及院系领导批准请假信息。请假最长时间不能超过1个月,特殊情况除外。

考勤管理功能需求:任课老师通过考勤管理系统,对学生上课出勤信息进行公开。请假系统要借助班主任才能完成,考勤管理系统要借助请假系统、班级课表安排才能完成,然而每学年课表都在变化,班主任安排也有在变化,学生也在变化,因此必须要求后台管理系统能根据系统需求,动态的、准确的更新系统数据。 5.4系统功能划分

根据系统用户的需求,将本系统按功能划分成三大功能模块:请假系统、考勤系统、后台管理模块,涉及到六大类用户:学生、任课教师、班主任、院系领导、学校领导、系统管理员。

5.4.1 请假系统模块

本模块的功能是在线请假的实现及管理,主要涉及三大类用户:学生、班主任及院系领导用户,学生通过此功能模块进行在线请假及查看请假记录信息;班主任在线审批学生请假及查看请假记录信息;院系领导在线审批学生长时间的请假及查看请假记录信息。

5.4.2 考勤系统模块

本模块的功能是学生考勤信息统计的实现、查看及管理,涉及六大类用户中的所有用户。学生在线查看自己所有学年的出勤信息;任课老师在线管理学生出勤信息;班主任、院系领导、学校领导查看不同的范围的学生出勤信息。 5.4.3 后台管理管理

本模块的功能实现整个系统数据的同步更新及维护,只涉及系统管理员用户。系统管理员动态的管理学生信息、课表安排、学年安排等信息,是整个系统实现的基础。

六.数据字典

数据词典,既用于描述数据流和数据存储的详细逻辑内容,也可用于描述外部项和处理逻辑的某些数据特性。数据词典把数据的最小组成单位看作数据元素,若干个数据元素组成数据结构。它通过对数据元素和数据结构的定义,来描述数据流和数据存储的逻辑内容。它相当于字典的作用,当用户或软件人员想了解某一数据的含义时,查查字典就可以了。

(1)请假系统:学生、班主任及院系领导用户通过此功能进行在线请假及查看请假记录信息;班主任在线审批学生请假及查看请假记录信息;院系领导在线审批学生长时间的请假及查看请假记录信息。

(2)考勤系统:学生考勤信息统计的实现、查看及管理,涉及六大类用户中的

所有用户。学生在线查看自己所有学年的出勤信息;任课老师在线管理学生出勤信息;班主任、院系领导、学校领导查看不同的范围的学生出勤信息。 (3)后台管理:实现整个系统数据的同步更新及维护,只涉及系统管理员用户。系统管理员动态的管理学生信息、课表安排、学年安排等信息,是整个系统实现的基础。

七.系统开发工具

根据各用户的需求,以及系统各大功能的需求,经过大量的调查分析,针对本高校学生考勤管理系统选择以下开发工具进行开发:

7.1相关开发工具简介

系统结构:B/S (浏览器/服务器)

开发语言:JAVA/JSP

数据库:SQL Server 2000

开发工具:JDK 1.5 Dreamweaver Jcreator 服务器端容器:Tomcat 5.5

7.2.1 B/S(浏览器/服务器)简介

B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet 技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据;最大的缺点是对网络环境依赖性太强,由于各种原因引起网络中断都会造成系统瘫痪。

7.2.2 JAVA/JSP简介

JAVA是SUN公司推出的完全面向对象的语言,它有很好的跨平台性、安全性、重用性等特点。

JSP的全称是Java Servlet Pages,它是SUN推出的一种动态网页技术标准。它在传统的静态页面文件(*.html,*htm)中加入Java程序片段和JSP标记,就构成了JSP页面。由Web服务器上的JSP引擎来处理JSP元素,生成调用Bean,并用JDBC访问数据库(或文件),最后以HTML或XML的形式返回浏览器。JSP在Servlet类中编译,编译一次后存入内存,以后再调用时,不用再编译,所以速度很快。

八.总体设计

经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎样做”的时候。

8.1 系统布局设计

系统页面采用框架来设计,不同的用户有不同的功能菜单,但都有统一的风格,这给页面的使用和维护都带来了很大的便利,特别是在代码重用方面起了很大作用。

8.2使用T-SQL建立数据库:

(1)/*系统管理员表admin*/

admin_no char(5) Not null primary key 管理员编号 admin_name char(10) Not null 管理员姓名 admin_sex char(1) Not null 性别 admin_title char(20) Not null 职称 admin_password char(20) Not null 登入密码

图8-2-1 系统管理员表

(2)/*学生表student */

stu_no char(5) Not null primary key 学生学号 stu_name char(10) Not null, 学生姓名 stu_sex char(1) Not null, 性别 stu_class char(13) Not null, 班级

stu_professional char(60) Not null 所属专业 stu_Faculties char(40) Not null 所属学院

图8-2-2 学生表

(3)/*任课老师表teacher */

tea_no char(9) Not null primary key 任课老师编号 tea_name char(10) Not null, 任课老师姓名 tea_sex char(1) Not null, 性别 tea_class char(30) Not null, 所教班级 tea_course char(60) Not null 所教课程 tea_Faculties char(40) Not null 所属学院

图8-2-3 任课老师表

(4)/*班主任表classteacher */

classtea_no char(5) Not null primary key 任课老师

编号 classtea_name char(10) Not null, 任课老师

姓名 classtea_sex char(1) Not null, 性别

classtea_class char(20) Not null, 所教班级 title char(20) Not null 所教课程 classtea_professional char(60) Not null 所属学院

classtea_Faculties char(40) Not null 所属学院

图8-2-4 班主任表

(5)/*学院领导表collegeleader */

collegeleader_no char(5) Not null primary 学院领导

key 编号 collegeleader_name char(10) Not null, 学院领导

姓名 collegeleader_sex char(1) Not null, 性别

collegeleader_Faculties char(40) Not null, 所属学院 title char(20) Not null 职称

图8-2-5学院领导表

(6)/*学校领导表schoolleader */

schoolleader_no char(5) Not null primary key 学校领导编

号 schoolleader_name char(10) Not null, 学校领导姓

名 schoolleader_sex char(1) Not null, 性别 dept char(20) Not null, 所属部门

title char(15) Not null 职称

图8-2-6 学校领导表

(7)/*学生上课出勤记录表kaoqin_record */ kaoqin_id char(13) Not null primary key 上课出勤编

号 sk_time char(40) Not null, 上课时间 Stu_number char(20) Not null, 学生学号 Stu_status char(10) Not null, 学生上课考

勤状态

图8-2-7 学生上课出勤记录表

(8)/*任课老师提交出勤信息记录表record */

record_id char(13) Not null primary key 记录编号 id char(13) Not null, 所上课程编

号 record_time char(40) Not null, 老师考勤记

载时间 sk_time char(40) Not null, 上课时间

图8-2-8 任课老师提交出勤信息记录表

(9)/*请假信息表qingjia */

id char(13) Not null primary key 请假代号 class_id varchar Not null, 班级代号

(10)

stu_number varchar Not null, 学生学号

(20)

qingjia_yuanyin Varchar Not null, 请假原因

(200)

start_time char(30) Not null 开始时间 end_time char(30) Not null 结束时间 day_number char(13) Not null 请假天数 qingjia_time char(30) Not null 申请请假

时间 class_teacher_status char(13) Not null 班主任审

批状态 class_teacher_sp_time char(30) Not null 班主任审

批时间

class_teacher_restore varchar Not null 班主任回

(200) 复 college_leader_status char(13) Not null 院系领导

审批状态

college_leader_id varchar Not null 院系领导

(20) 代号 college_leader_sp_time char(30) Not null 院系领导

审批时间 college_leader_restore varchar Not null 院系领导

(200) 回复备注:status 表示审批状态:0为等待审批,1为同意请假,2为不同意请假。以下为图8-2-9 请假信息表图:

图8-2-9-1 请假信息表截图1(请假学生相关信息及原因)

图8-2-9-2 请假信息表截图2(请假起始时间及图书)

图8-2-9-3 请假信息表截图3(班主任审批状态及相关信息)

图8-2-9-4 请假信息表截图4(院系领导审批状态及相关)

九(详细设计建立数据库

9.1 引言

总体设计阶段以比较抽象概括的方式提出了解决问题的办法。详细设计是软件开发时期的第三个阶段,也是软件设计的第二步。其任务就是把解法具体化,也就是回答下面这个关键的问题:“应该怎样具体地实现这个系统呢,”,通过详细设计应该得出对目标系统的精确描述,给出各个模块的详细过程性描述。从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。

数据流程图是结构化系统分析的工具。它既可以表达数据在系统内部的逻

辑流向及存储,又可以表达系统的逻辑功能和数据的逻辑变换。数据流程图既能表达现行人工系统的数据流程和逻辑处理功能,也能表达自动化系统的数据流程和逻辑处理功能。

9.2相关数据功能模块图

查看本人的基

本信息

学生数据库系统在线请假

上课出勤信息

图(1)学生功能模块

查看本人的基本信息

修改个人用户密码等

班主任数据库系统审批学生请假

查看本班学生整个学

期有关课程的上出勤

统计信息及详细信息

图(2)班主任功能模块

查看本人的基本信息

修改个人用户密码等任课老师数据库系统管理所教班级学生的上课出勤信息

查看所教班级学生的

上课出勤信息

图(3)任课老师功能模块

查看本人的基本信息

修改个人用户密码等

院(系)领数据库系统审批请假需求(请假三导天以上)

查看本院系学生出勤

信息需求

图(4)院系领导模块

查看本人的基本信息

修改个人用户密码等

学校领导数据库系统

用户

查看全校学生上课出

勤信息

图(5)学校领导功能模块

管理学校各院系、年级、

专业、班级的添加、删除、

修改

系统管理管理每个学期每个班级的数据库系统

员用户课程安排及指定班主任和

任课老师

查看学生上课出勤信息

管理系统的请假、考勤信

图(6)系统管理员功能模块

学生用户基本信息系

统模块,负责记录

用户的相关信息班主任

请假系统模块,

负责请假的相

关信息操作 D 任课老

师 B

M 考勤系统模块,院(系)负责记录出勤 S 领导状况信息

学校领导

用户后台管理模块,负责管理

数据库的更新系统管理及相关操作员用户

图(7)总功能模块

9.3 数据库的逻辑设计

根据系统功能设计的要求以及功能模块的划分,对于系统数据库,可以列出以下数据项和数据结构:

考勤登记表:课程安排代号、记载时间、上课时间。

学生上课出勤信息表:上课时间代号、上课时间、学号、出勤状态。请假信息表:请假代号、班级代号、学年代号、学号、请假原因、开始时间、结束时间、请假天数、申请时间、班主任审批状态、班主任审批时间、班主任回复、院系领导审批状态、院系领导代号、院系领导审批时间、院系领导回复

9.4 数据库的建立

打开SQL Server2000下面的[企业管理器],登录之后,选择[新建数据库]命令,给数据库起名为kaoqin。然后通过设计器创建数据表,刚才已经说明了需要不同的数据表来分管,它们分别是“qingjia”,“kaoqin_record”,“record”

等,有关这些数据表的信息见上图。

9.5.1 学生用户功能设计

根据学生用户的需求,系统实现了在线请假、查看上课出勤信息、查看个人基本信息这三大主要功能。系统针对学生用户设计如下功能菜单:基本信息、请假系统、考勤信息、查看课表、修改密码、安全退出、帮助。在基本信息功能菜单中,学生可以查看自己的学号、姓名、性别、院系、年级、专业、班级号信息。在请假系统功能菜单中,实现了在线请假申请功能,以及查看等待审批的请假信息、请假成功的请假信息、请假失败的请假信息。在考勤信息菜单下,学生可以查看本学年以及历史学年上课出勤的统计信息及详细信息。在查看课表功能菜单中,学生可以查看当前学期的课表安排,以及历年的课表安排。修改密码功能菜单,学生可以修改自己的密码。

学生用户的在线请假,在班主任或院系领导还没批假之前可以由学生自行删除,若班主任审批了请假,则学生不能删除申请记录,学生不能重复请假,因此学生请假时应当慎重。

根据学生用户请假的需求,学生三天内的请假(包括三天)只需班主任批准后就

相关主题
相关文档
最新文档