帅志军 熊阿伟
摘 要:目前传统的教师,学生考勤都由人工点名来进行,本软件的开发将替代人工点名,当事人只须到有关部门进行指纹采集,上课的时候再到相关设备上进行签到。这样,不紧免下了人工点名的烦琐,更加为上课争取了宝贵的时间,而且更加公正,快捷,人性化。并且,本软件还可以对每位当事人的考勤情况进行清晰,客观,透明的总体统计,为期末总评有了很好的数据依据。一个好的考勤系统急需产生。
关键词:考勤;数据库;设计
1 引言
1.1 编写目的
通过对学院考勤系统数据库说明书的编写,向开发人员,系统用户,测试人员展示该系统的数据结构,以及每个数据模块的性能跟功能。
1.2 背景
项目名称:考勤系统
开发单位:学院软件工作室
承办单位:学院软件工作室
系统用户:高校学生,考勤老师,管理员
1.3 定义
系统:学院考勤系统
用户:高校学生,老师,管理员
2 软件特征及假设
2.1 用户特征
学生:作为系统的最终用户,学生通过互联网可以快速准确地查询自己平时的考勤情况。其中可以细化到什么科目属于什么专业,什么院系,什么时候谁在哪里上,具体的每节课的考勤都可以出来。比如某个学生某节课缺课,任教老师就在系统中进行记录,系统可以根据不同类别进行考勤统计,如:缺课统计,请假统计,迟到统计,早退统计等,都由系统自动完成。
教师用户:对学生考勤进行详细记录。
管理员用户:在教师里面提取,也属于教师用户,但只是管理员具有了大部分老师没有的一些功能,比如课程的修改,编写,学生信息的修改,教师信息的修改等一切物理对象信息的修改。其中老师跟管理员的区别就是权限的区别。系统中的管理员用户是具有超级权限的特殊用户,他可以控制系统中的各模块权限的分配、系统中基本参数设置,该用户有较高的计算机操作水平,能够对本系统具有简单的维护,要求受过高等教育。
2.2 假设和经费
系统经费限制:经费自筹,解决系统开发过程中的所有费用
开发人员:一个项目经理,4个开发人员,2个测试人员
硬件设备:7台个人PC、一台打印机、及布网所需的网络设备
3 数据库结构设计
3.1 概念结构设计
3.1.1 用户模块
学生用户,提取学生用户的详细信息建立一张学生信息表,包括学生的指纹,学号,年龄,姓名,性别等信息。其中学生要确定在哪個班级,就要建立一张班级表,以班级表为主键表,与学生表里面的班级编号字段建立关系。
教师用户,提取教师详细信息建立一张教师用户表,包括教师的指纹,工号,密码,年龄,姓名,性别等信息。同样教师也要确定属于哪个班级,哪个分院。以教师表为主键表,与班级表里面的班主任编号建立关系。以及建立一张部门表,包括编号,名称,负责人,电话,以部门表为主键表,与教师表里面的部门编号字段建立关系。
管理员用户是根据权限的不同,从教师用户中提取出来的一部分教师,其中就关系到一张权限表。权限表包括教师工号,权限项等信息,权限项有:查询,学生添加,教师添加,其他管理,参数管理,数据管理,超级管理,其中超级管理是所有权限中的最高权限。
3.1.2 时间模块
时间模块里面主要包括考勤事宜的所在具体时间,其中就有时间表的设计,包含的字段有编号,开始到结束的年份,哪个学期的哪个星期的第几节课,还包含单双周,开始和结束周。
时间模块里面还包含了一个参数设计,主要是针对每个部门开始结束年进行设计。
3.1.3 课程模块
课程模块主要是学生的单一详细课程进行设计,其中包含一张主表,课程表,其中包含多个模块的信息,可以说是模块的集合,有科目信息,也就是这节课上什么课。有教师信息,这节课是有哪个老师上课。班级信息,哪个班的课,地点信息,在具体的哪个教室上课。时间信息,这节课是什么时候上的,这些关系都应该被建立起来:
科目表的编号为主键——课程表的科目字段建立关系
时间表的编号为主键——课程表的时间字段建立关系
教师表的编号为主键——课程表的教师字段建立关系
地点表的编号为主键——课程表的地点字段建立关系
班级表的编号为主键——课程表的班级字段建立关系
3.1.4 部门模块
部门模块主要设计的是,考勤对象的部门归属,属于哪个部门,以及考勤所需的支持模块的部门归属。比如教室,班级,所学专业的部门归属。在考勤的时候都需要知道这些东西,所以就有了部门模块的建立。它包括部门表的建立,字段有编号,名称,负责人,电话,其中部门以部门编号为主键,建立关系图:
部门编号——班级表的部门字段
部门编号——教师表的部门字段
部门编号——参数表的部门字段
部门编号——专业表的部门字段
3.1.5 考勤模块
考勤模块是整个数据库中最重要的模块,这里我们设计的是学生考勤。它包含一个考勤表,记录了学生的编号,学号,哪个班上的第几节课,上的是什么科目,最重要的是记录了学生考勤的5中不同的考勤情况,这5种情况分别用阿拉伯数字0,1,2,3,4表示。
考勤表还应跟时间表,学生表建立关系,考勤表里面的时间字段跟时间表里面的编号字段建立关系,以学生表里面的学好为主键,跟考勤表里面的学号字段建立关系。
3.2 数据库设计流程图
4 安全性设计
4.1 账号密码管理
用户名为sa,密码为空,连接SQL Server2012访问CheckOn数据库,
4.2 角色权限
管理员:可以访问数据库里面所有数据,对数据可以进行合法添加,修改,删除,查询。
教师:对数据库可以进行合法添加,查询。
学生:只能对自己个人的详细信息进行查询。
5 数据库管理与维护
本数据库在设计上用的软件是SQLServer 2012数据库管理系统,在安全性上我们采用特定的用户账号与密码访问数据库,在不同的身份操作数据库时我们给定了对应的权限。
在数据库维护中我们指定了相应的维护权限维护数据中的表,在数据量比较大时我们采用定期备份数据,将有效的数据导出。
[参考文献]
[1]王英英.SQL Server 2012从零开始学[M].清华大学出版社,2013.
[2]许健才.SQL Server 2008数据库项目案例教程[M].电子出版社,2013.
[3]桂颖.Java编程兵书[M].电子出版社出版社,2013.