基于BS架构的考勤管理系统设计与实现.doc_第1页
基于BS架构的考勤管理系统设计与实现.doc_第2页
基于BS架构的考勤管理系统设计与实现.doc_第3页
基于BS架构的考勤管理系统设计与实现.doc_第4页
基于BS架构的考勤管理系统设计与实现.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 北北京京师师范范大大学学珠珠海海分分校校 本科生毕业论文 论文题目 论文题目 基于基于 B SB S 架构的考勤管理系统设计与实现架构的考勤管理系统设计与实现 学 院信息技术学院 专 业计算机科学与技术 学 号 0901030138 学 生 姓 名叶国帅 指导教师姓名杨林 指导教师职称高级工程师 指导教师单位信息技术学院 2013年年01月月04日日 2 北京师范大学珠海分校学位论文写作声明和使用授权说明北京师范大学珠海分校学位论文写作声明和使用授权说明 学位论文写作声明学位论文写作声明 本人郑重声明 所呈交的学位论文 是本人在导师的指导下 独立进行研究工作 所取得的成果 除文中已经注明引用的内容外 本论文不含任何其他个人或集体已经 发表或撰写过的作品或成果 对本文的研究做出重要贡献的个人和集体 均已在文中 以明确方式标明 本声明的法律结果由本人承担 论文作者签名 日期 年 月 日 学位论文使用授权说明学位论文使用授权说明 本人完全了解北京师范大学珠海分校关于收集 保存 使用学位论文的规定 即 按照学校要求提交学位论文的印刷本和电子版本 学校有权保存学位论文的印刷本和 电子版 并提供目录检索与阅览服务 学校可以采用影印 缩印 数字化或其它复制 手段保存论文 在不以赢利为目的的前提下 学校可以将学位论文编入有关数据库 提 供网上服务 保密论文在解密后遵守此规定 论文作者签名 导师签名 日期 年 月 日 3 基于 B S 架构的考勤管理系统设计与实现 摘 要 本论文讲述基于 B S 架构的信息技术学院学生考勤系统的开发经过和对本人负责的 Spring Security 子模块的理论和实践分享 顺应现代科技与信息产业快速发展 教学的 信息化管理呈现出前所未有的机遇 考勤管理系统的开发成为学校信息管理的一个主要 发展趋势 开发出这么一个考勤管理系统 对于信息技术学院的学生日常管理有着重大 的意义 考虑到为学生学习和开发提供蓝本 本系统决定全面开源 总而言之 该系统 不仅提供了更方便 更快捷的操作方式 能够很好地改善传统考勤方式的不足 适应信 息时代的发展 而且还激发了学生的学习积极性和学习兴趣 本论文结合项目小组编写该考勤管理系统的软件需求分析说明 SRS 和软件设计 说明 SDD 全方位地分析该系统开发的理论依据 随后 将结合考勤管理系统的自 身特点和开发理念 全面地阐述本系统的开发流程和软件生命周期 该系统选用 B S 架 构和 Spring MVC 开发框架 采用 MySQL 数据库 结合 JQuery 和 Ajax 等优秀前端设 计框架 给系统的开发提供了强大的技术支持 而本人负责的 Spring Security 模块则主 导着该系统的安全大门 能够充分利用了 Spring IoC 依赖注入 也称控制反转 和 AOP 面向切面编程 功能 为考勤管理系统提供声明式的安全访问控制功能 减少了 为系统安全控制编写大量重复代码的工作 为了更进一步的分析以上方法和使本考勤管 理系统更健壮 论文还分析了测试与维护阶段的主要方法和实践经验 关键词 关键词 考勤 管理 教师 学生 学习兴趣 积极性 Spring Security 4 DESIGN AND IMPLEMENT OF INFORMATION TECHNOLOGY INSTITUTE STUDENT ATTENDANCE MANAGEMENT SYSTEM BASE ON B S ARCHITECTURE ABSTRACT This paper describes the development of the IT College student attendance system based on B S structure and I am responsible for the Spring Security module theory and practice share Conform to modern science and technology and the rapid development of information industry the information management of teaching presents a hitherto unknown opportunities attendance management system development to become the school of information management is one of the main development trend The development of such a time and attendance management system information technology for college students daily management have great significance Consideration to the students learning and development to provide blueprint the system decided to fully open source To make a long story short the system not only provides a more convenient more efficient mode of operation revise the traditional paper based attendance malpractice it reduces the roll paper costs reduce manual named the waste of time improve attendance efficiency but also to stimulate the students learning enthusiasm and interest In this paper combined with our group developed the attendance management system software needs analysis SRS and software design description SDD analysis of all round development of the system theory Then I will combine the attendance management system for its own characteristics and development concept a comprehensive description of the system development process and software life cycle This system adopts B S architecture and Spring MVC development framework using MySQL database the combination of JQuery and Ajax excellent front end design framework to system development provides a powerful technical support And I am responsible for the Spring security module dominated the system security door can make full use of the Spring IoC dependency injection also known as inversion of control and AOP programming is the time and attendance management system provides a declarative security access control function reduces the system for security control write lots of code duplication work In order to further analysis of the above method and the attendance management system more robust the paper also analyzed the testing and maintenance phase of the main method and experience Key words Attendance management teachers students learning interest enthusiasm Spring Security 5 目目 录录 1 绪论 1 2 考勤管理系统的课题背景与可行性分析 2 2 1 课题背景 2 2 2 可行性分析 2 2 3 创新点 2 2 3 1 便捷点名 2 2 3 4 转换旷课记录 3 2 3 3 考勤标记 3 2 3 4 申请请假 3 2 3 5 统一管理 4 2 4 开发工具简介 4 2 4 1 Eclipse 简介 4 2 4 2 Apache Tomcat 介绍 4 2 4 3 Spring MVC 框架简介 5 2 4 4 Dreamweaver 简介 5 2 4 5 MySQL 简介 5 3 1 特性需求分析 7 3 2 功能需求分析 7 4 概要设计 14 4 1 硬件与软件配置设计 14 4 1 1 硬件配置 14 4 1 2 软件配置 14 4 2 系统模块结构设计 14 4 3 数据库设计 15 4 3 1 数据库概念结构设计 15 4 3 2 数据库的物理结构设计 17 5 详细设计 20 5 1 1 登录子系统 20 5 1 2 点名子系统 21 5 Spring Security 设计 26 6 1 Spring Security 的介绍 26 6 2 Spring Security 的验证与授权介绍 26 6 3 验证与授权的特点 27 6 3 1 验证的特点 27 6 3 2 授权的特点 27 6 4 Spring Security 核心安全实现 27 6 5 权限分配设计 28 6 6 Spring Security 配置 代码实现 28 6 6 1 Web xml 配置 28 6 6 2 Spring 配置文件中设置命名空间 29 6 6 3 配置最基本的验证与授权 applicationContext security xml 配置 29 6 6 4 通过数据库验证用户身份 29 6 6 5 完善 web 页面验证规则 30 6 6 6 自定义验证配置 30 6 6 7 本地化消息输出 31 6 6 8 在 web 页面中获取用户信息 31 6 6 6 9 在 web 页面进行元素安全控制 31 6 6 10 全局方法安全控制 32 6 6 11 使用注解进行方法安全控制 32 6 测试阶段 33 7 1 测试目的 33 7 2 测试内容 33 7 3 测试资料 33 7 4 黑盒测试 34 7 4 1 接口测试 34 7 4 2 测试具体设计方案 34 7 5 测试退出标准 36 7 6 评价准则 37 7 6 1 范围 37 7 6 2 数据整理 37 7 6 3 尺度 37 结语 37 参考文献 38 致 谢 39 北京师范大学珠海分校信息技术学院 第 1 页 共 48 页 1 1 绪论绪论 随着现代科技与信息产业的发展 教学的信息化管理正在全球蓬勃兴起 考勤管 理系统的开发成为学校信息管理的一个主要发展方向 相比传统的纸面考勤 网上考 勤更方便 更快捷 操作方式更合理 教学管理的信息化的实现 其中一步就是要实 现考勤管理信息化 这不仅改变了考勤管理的格局 还修正了传统的纸面考勤的弊端 它降低点名纸张的开销 减少手工点名所浪费的时间 提高考勤效率 能为教师和学 生提供更透明 更优质的考勤管理体系 而学生考勤管理系统就是为了解决学生考勤管理问题而设计的 目的是建立一个 能够初步实现学校考勤管理系统的智能化管理 提高考勤管理效率 老师能够了解学 生在学习的态度得到及时的反馈 而系统所需的工作人员的数量少 效率高 降低资 源浪费 同时增强学生管理的透明度以及约束学生自觉遵守出勤制度 该系统是一个 B S 系统 它的出现 改变了教师手工登记考勤信息的管理方式 管理员及教师使用计算机对学生信息进行管理 具有着手工无法比拟的优点 例如 考勤统计查询方便快捷 数据存储量大 可靠性高等 便于教师掌握学生的出勤情况 学生考勤系统以方便 快捷等优点冲击着传统的考勤方式 也正是因为这些优点 使 它更符合现代社会人们快节奏 高效率的生活方式 北京师范大学珠海分校信息技术学院 第 2 页 共 48 页 2 2 考勤管理系统的考勤管理系统的课题背景与可行性分析课题背景与可行性分析 2 12 1 课题背景课题背景 随着社会进入了信息化时代 各种新事物都纷纷映入了人们的眼帘 目前全球上 信息管理系统发展飞快 许多国内外的学校都引入了信息管理软件来管理自己日益增 长的各种信息 学生考勤管理系统也是有了很大的发展 商业化的学校信息管理软件 也不少 而目前本校的这项工作还处于半手工管理阶段 教师需要通过用纸和笔来记 录学生的考勤情况 花费了无谓的精力 信息资源的数字化程度低 大部分历史积累 的数据 尚未数字化 不利于科学管理和决策 但是随着多媒体教学的推广 电脑和网络的普及 学生与教师对电脑的应用已经 不再陌生 在这么一个信息化的时代 智能化信息处理已是提高效率 规范管理 客 观审查的最有效途径 考勤作为一个学校上课的基础管理 是老师对学生学习管理的 基本依据 实际管理和记录学习非常需要快速获知各个学生的每日出勤情况 以便于 及时学校反映学生的出勤 缺勤情况 包括迟到 早退 病假 事假 等情况 实现 网上考勤任务 以减轻教师或班干部考勤的工作量 2 22 2 可行性分析可行性分析 近些年 信息化管理的高速发展 使得企业与学习的考勤管理的要求更高了 信 息网络化正在以前所未有的惊人速度走入人们的生活 工作和学习中 提高了工作学 习的效率 增加了获取信息的渠道 突破了相互交流的时空界限 教学考勤管理系统 可以基于 B S 架构进行开发 帮助师生轻松解决教学中考勤与请假等问题 可行性分析既不能以偏盖全 也不能过于追求细节 必须为决策提供有价值的证 据 软件领域的可行性分析主要考虑四个因素 技术可行性分析 开发人员与进程可 行性分析 技术可行性分析 本系统是基于 Java 编写的 因此开发工具采用 Eclipse 配上 Dreamweaver 完全可以实现系统功能 开发人员都具有一定 Java 功底 加之开发人 员也具备一定的前端设计技术 在技术上是可行的 整体架构用 Java EE 编写 在 Apache Tomcat 环境下实现 Spring MVC 运用面向对象的编程思想进行 Web 开发 采 用敏捷开发的方式 具有较高的开发效率和运行性能 后台数据库软件选用 ORACLE 公 司的关系型数据库服务器 MySQL 因此在技术上是可行的 开发人员与进程可行性分析 开发人员都有一定的 Java 和前端网页开发功底 并 且学习能力较强以及指导老师的悉心教导完全可以胜任此次开发 由于此系统开发并 不是以盈利为目的 开发周期可以相对较长 因此开发进程方面是可行的 2 32 3 创新点创新点 2 3 1 便捷点名 该考勤系统的一大创新功能是便捷点名 通过在页面上直接显示学生名单 并每 北京师范大学珠海分校信息技术学院 第 3 页 共 48 页 个名字都有 迟到 旷课 请假 等选项 在学生答到时 只需要鼠标轻轻一点 便可以实现考勤 而不需要再用纸张或者表单记录 当某个班级的考勤完成后 便捷 点名会生成一组简单的记录 若遇到某些特殊情况时 还可以根据实际情况修改数据 变更选项 这个功能改变了以往考勤工作浪费纸张和时间长等弊端 但考勤工作又是 不得不进行的一项教育工作 因此 在原有考勤功能的基础上增加这个特色功能 可 以让老师能有更加便捷的选择 真正有效地做到督促学生上课 提高学生上课的积极 性 2 3 4 转换旷课记录 对于前面提到的便捷点名功能 可以收集到很多迟到 早退 旷课等信息 而对 于学校来说 为了方便统计和管理 这些信息需要得到相应的转换 如 3 次迟到算一 次旷课 两次早退算一次旷课等 对于超出学生手册规定的旷课次数的学生 应当实 施相应的处罚 而旷课记录的转换工作如果要老师一个个去核对 然后进行人工操作 确实非常麻烦 该考勤系统对转换工作进行了自动转换的功能 按照规定自动对考勤 信息进行转换 并会在系统中发布通知告诉相关的教师 最终 教师通过相关规定对 缺勤过多的学生进行处理 这个功能符合考勤的初衷和最终的目的 为考勤工作提供 了很大的方便 2 3 3 考勤标记 除了便捷点名 该考勤系统还有一个创新且新颖的功能 考勤标记 当确认某 个学生属于迟到或者旷课 系统将对这项记录设置一个考勤标记 若该生再次缺勤 该标记会累加 则再下一次点名时 教师便会特别关注这些考勤标记较多的学生 而 学生也可以通过登录考勤系统 查看自己的考勤标记 确定自己的缺勤情况 对于考 勤标记较多的学生 若随后几次课时都没有再缺勤 标记会逐渐减少 甚至最后会消 失 这样看来 考勤标记可以给学生设定一个改正过错的标准 而对于一个学期全勤 的学生 也会设有特定的标记 方便教师落实全勤的学生 2 3 4 申请请假 申请请假功能让考勤系统更人性化 它不仅可以考勤 还可以为学生提供方便 提供一个请假的平台 省去学生要写假条 找老师核实 签字的麻烦步骤 当遇到生 病 家事等特殊情况时 学生可以通过登录考勤系统进行请假的申请 只需要填写一 北京师范大学珠海分校信息技术学院 第 4 页 共 48 页 些基础的信息和描述请假理由 就可以提交申请 然后等待管理员核实请假内容 再 找年级主任进行请假申请的确认 便可完成请假 而请假记录将会记录在数据库里 对未来假条的回顾和参考 也提供了极大的方便 2 3 5 统一管理 本功能可以把教师收集各种考勤信息进行归类 然后交给年级管理员来进行管理 对考勤相关的信息进行统一化管理 可以大大节省了人力物力 而且解决了不必要的 冲突 如某教师收集了课程 A 的考勤信息 也收集了课程 B 的考勤信息 由于工作繁 忙 只能仅仅整理课程 A 的信息 而这是出现了年级管理员 他把该教师的整理工作 接手了 而且可以同时处理课程 A 和课程 B 的信息 实现管理的统一 而该考勤系统 还提供便捷的操作 简单易懂 大大方便了考勤工作 2 42 4 开发工具简介开发工具简介 2 4 1 Eclipse 简介 Eclipse 是一个著名的跨平台的自由集成开发环境软件 最初主要用来 Java 语言 开发 现在人们可以通过安装插件使其作为 C Python PHP 等其他语言的开发工具 Eclipse 的本身只是一个框架平台 但是随着众多插件的产生 使得 Eclipse 拥有很好 的灵活性 许多软件开发商以 Eclipse 为框架开发自己的 IDE 虽然大多数用户更加乐于将 Eclipse 当作 Java 集成开发环境来使用 但 Eclipse 的作用已经不仅限于此 Eclipse 还是含有插件开发环境 这个组件主允许希望扩展 Eclipse 的软件开发人员构建与 Eclipse 环境无缝集成的工具 由于 Eclipse 中的每样 东西都是插件 对于给 Eclipse 提供插件 以及给用户提供一致和统一的集成开发环 境而言 所有工具开发人员都具有同等的发挥场所 这种平等和一致性并不仅限于 Java 开发工具 尽管 Eclipse 是使用 Java 语言开 发的 但它的用途并不限于 Java 语言 例如 支持诸如 C C 和 COBOL 等编程语 言的插件已经可用 或预计将会推出 Eclipse 框架还可用来作为与软件开发无关的 其他应用程序类型的基础 比如内容管理系统 本系统即通过 Eclipse 匹配上 Spring MVC 和 Java EE 进行软件的开发 2 4 2 Apache Tomcat 介绍 Tomcat 是一个开放源代码 运行 servlet 和 JSP Web 应用软件的基于 Java 的 Web 应用软件容器 Tomcat Server 是根据 servlet 和 JSP 规范进行执行的 因此就可以说 Tomcat Server 也实行了 Apache Jakarta 规范且比绝大多数商业应用软件服务器要好 北京师范大学珠海分校信息技术学院 第 5 页 共 48 页 Tomcat 是 Java Servlet 2 2 和 JavaServer Pages 1 1 技术的标准实现 是基于 Apache 许可证下开发的自由软件 Tomcat 是完全重写的 Servlet API 2 2 和 JSP 1 1 兼容的 Servlet JSP 容器 Tomcat 使用了 JServ 的一些代码 特别是 Apache 服务适配 器 随着 Catalina Servlet 引擎的出现 Tomcat 第四版号的性能得到提升 使得它成 为一个值得考虑的 Servlet JSP 容器 因此目前许多 WEB 服务器都是采用 Tomcat 本系统通过 Tomcat 的服务器支持 根据 Tomcat 免费 开源 支持最新标准 更 新快 跨平台 运行快等优点 能够很好地完成轻量级 WEB 引擎的部署 能够让本系 统的 JSP 网站运行得稳定 高效 2 4 3 Spring MVC 框架简介 Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块 使用 Spring 可插入 的 MVC 架构 可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 Web 框架 通过策略接口 Spring 框架是高度可配置的 而且包含多种视图技术 例如 JavaServer Pages JSP 技术 Velocity Tiles iText 和 POI Spring MVC 框架 并不知道使用的视图 所以不会强迫您只使用 JSP 技术 Spring MVC 分离了控制器 模型对象 分派器以及处理程序对象的角色 这种分离让它们更容易进行定制 MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现 通过策略接口 MVC 框 架变成为高度可配置的 MVC 容纳了大量视图技术 其中包括 JSP Velocity Tiles iText 和 POI 模型由 JavaBean 构成 视图是负责显示模型 控制器表示逻辑代码 是 Controller 的实现 Spring 框架的功能可以用在任何 Java EE 服务器中 大多数功能也适用于不受管理的环境 Spring 的核心要点是 支持不 绑定到特定 Java EE 服务的可重用业务和数据访问对象 这样的对象可以在不同 Java EE 环境 Web 或 EJB 独立应用程序 测试环境之间重用 本系统采用 JSP 作为主要开发语言 Spring HTML CSS Javascript JQuery 作 为网站编程语言 它们能够建造出完整的 Spring MVC 框架 JSP 的固有的特性决定了 它是一种高效 安全 灵活的现代程序设计语言 再加上 CSS Javascript JQuery 的效果渲染和功能实现 它们的的结合足以为毕业设计教学考勤管理系统提供完整的 解决方案 2 4 4 Dreamweaver 简介 一个可视化的网页设计和网站管理工具 支持最新的 Web 技术 包含 HTML 检查 HTML 格式控制 HTML 格式化选项 HomeSite BBEdit 捆绑 可视化网页设计 图像编 辑 全局查找替换 全 FTP 功能 处理 Flash 和 Shockwave 等富媒体格式和动态 HTML 基于团队的 Web 创作 在编辑上你可以选择可视化方式或者你喜欢的源码编辑 方式 通过 Dreamweaver 来设计和开发前端页面 能够让本系统达到最好的效果 是对 本系统基于 B S 架构的最好的支持 能够开发出精美的用户界面 提高系统的实用性 能让系统更亲切和更有逻辑性 能够更好地提高交互性和实现页面和代码的无缝整合 2 4 5 MySQL 简介 随着社会信息化的不断发展 人们面对的各种类型的数据信息正在呈现出爆炸式 增长的态势 因而对数据的安全存储和高效管理具有越发明显的重要性 存储和管理 北京师范大学珠海分校信息技术学院 第 6 页 共 48 页 数据需要使用数据库管理系统 不但需要后台数据库对数据的安全存储 而且需要前 台应用程序对数的方便高效管理 当前的数据库产品主要有 Acess MySql 等小型数据 库 以及 SQL Server Oracle 等大型数据库 鉴于毕业设计考勤管理系统主要面向信 息技术学院的学生 本系统选择了 MySql 数据库 毕业设计考勤管理系统不但要存储教师和学生的基本信息 而且要实现一些重要 流程和必要操作 如点名 请假 查询信息 处理数据 统计数据 发布公告外 还 需要开发专门的数据库系统来帮助对其进行管理 有了强大的后台才有强大的动力 毕业设计考勤管理系统需要实现数据库的建立和连接 系统界面的设计以及各个功能 模块的设计和开发 该系统的开发过程主要包括需求分析 系统设计 数据库设计 编码设计 软件测试等 系统采用模块化开发方法 每个模块各自实现相应的子功能 最后进行集成 共同实现系统的功能 北京师范大学珠海分校信息技术学院 第 7 页 共 48 页 3 需求分析 3 1 特性需求分析 一个好的学生考勤管理系统应该具有一下特性 1 易操作和功能简单明确不令人误解 一个良好的教学管理系统应该功能明确 没有二义性 用户可以很明了的通过界面明白各项功能的实现方法 而不是看到界面 不知道各按钮的具体用途 即操作简单 界面友好 教师可以根据网页界面很方便的 完成点名任务 节省点名的时间 学生可以根据网页界面很明白的进行对自己的出勤 进行查询查询 并能够及时反馈给老师 2 软件功能流畅 不拖沓 软件登陆 连接网络不能让用户等待时间过长 引起 用户的烦躁 软件在运行不能发生崩溃 卡顿等问题 整个界面操作起来很流畅 3 系统应该容易维护以及更新 系统各个模块设计应该很明确 核心代码处应有 必要的注释 使得今后的软件维护 软件更新等操作应该能够顺利的进行 3 2 功能需求分析 a 开发意图 满足任课老师 班主任 年级老师 学生工作管理人员对学生的考勤信 息进行轻松便捷的管理 b 应用目标 任课老师可以对学生的考勤信息进行录入 修改 班主任可以对本班学 生考勤信息 请假信息进行查询 年级老师学生工作管理人员可以对学生的考勤信 息进行查看以及管理 对学生的请假进行批准 学生可以登录对自己的考勤信息进 行查询 申请请假 学生工作管理人员可以查看全院的考勤信息 以及对学生和老 师基本信息的维护 c 作用范围 学生 任课老师 班主任 年级老师 学生工作管理人员 d 本系统的主要功能 处理流程 数据流程及简要说明 本系统主要功能 学生工作管理人员不定期导入教师信息 在新学年批量导入学生 信息 新学期批量导入学期课程信息 班级库信息 并且能能够对以上数据进行增 删改查等操作 同时也可以查询 批量导出和查看全体教师提交的考勤数据 批量 导出和查看全体学生累计旷课表单 管理公告 学生登陆系统之后 可以查看本人 旷课 迟到等记录 进入请假子系统进行请假 调课 年级老师登录系统之后可以 查看本年级的考勤信息 对请假学生进行批假处理 系统用例图如图 3 1 Comment 杨杨1 不是所有用户都有 请假 查看请假权限 北京师范大学珠海分校信息技术学院 第 8 页 共 48 页 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 主 图 3 1 系统用例 角色关系如图 3 2 北京师范大学珠海分校信息技术学院 第 9 页 共 48 页 图 3 2 角色列表 3 2 1 登录子系统登录子系统 对每个主要子系统中的基本功能模块 对象进行描述 包括结构图 流程图或对象 图 a 登陆登陆 该模块的主要功能该模块的主要功能 为系统的各类用户提供系统登陆功能 该模块的适用对象该模块的适用对象 包括当前系统的所有用户 即学生 任课老师 班主任 学 生工作管理人员 系统管理员 该模块的流程说明该模块的流程说明 系统的所有未登陆用户填入用户名和密码之后 经过系统验 证并且确认无误之后用户即可登陆到系统 用户首次登陆之后要求用户填写邮件 便于以后联系用户以及便于用户找回密码 流程图如图 3 3 北京师范大学珠海分校信息技术学院 第 10 页 共 48 页 图 3 3 登陆流程 b 登出登出 本模块的主要功能本模块的主要功能 为已登录用户提供登出功能 用户可以通过本模块登出 本模块的适用对象本模块的适用对象 系统当前所有已登录用户 本模块的流程说明本模块的流程说明 首先确认当前用户是否已登录 只有已登录的用户可以使用 本功能 用户确认已登出之后 即退出系统 跳到指定页面 3 2 2 基础数据维护基础数据维护 组织架构维护组织架构维护 a 新增学院 专业 行政班 b 修改行政班学生学籍信息 如休学 c 删除行政班 学生信息 基础数据导入基础数据导入 北京师范大学珠海分校信息技术学院 第 11 页 共 48 页 a 学生数据导入 b 课程导入 3 2 3 点名子系统点名子系统 a 对全体学生进行点名 b 对部分学生进行点名 c 实行随机抽点的方式进行点名 图 4 点名流程 3 2 4 统计子系统统计子系统 a 统计全部的旷课学生 b 统计对应班级的旷课学生 c 统计个别学生旷课信息 北京师范大学珠海分校信息技术学院 第 12 页 共 48 页 3 2 5 请假子系统请假子系统 a 学生登录请假子系统 填写请假信息 并提交 学生工作管理人员登录系统对学生 的请假信息核实之后 如果属实则考勤信息进行修改 改成请假状态 如果不属实 则保留原来的旷课信息 b 通过请假子系统 学生能够非常方便地进行请假 但也不是说想请就请 必须要有 符合规定的证明 并经过学生工作管理人员的核实 才能请假成功 而对于学生工 作管理人员 也能够十分便捷地浏览到学生的请假信息 并对内容进行审核 图 3 4 北京师范大学珠海分校信息技术学院 第 13 页 共 48 页 图 3 5 请假流程图 3 3 数据流图 数据流图描绘信息流和数据从输入移动到输出的过程中所经受的变换 它反映系 统必须完成的逻辑功能 从数据传递和加工的角度 以图形的方式刻画数据流从输入 到输出的移动变换过程 教学管理系统的运行同样离不开信息流和数据流移动变换 数据流图的描绘可以帮助开发者更好地理清整个程序的运行过程和参数传递 系统数据流图如图 3 6 教师信息 学生信息 课程信息 学生学号和密码 学生工作管理人员工号和密码 教师工号密码 学生旷课信息 学生学号 旷课节数10次 学生考勤记录 主 主 主 主 主 1 主 主 主 主 主 主 2 主 主 主 主 主 主 3 主 主 主 主 主 主 1主 主 主 主 主 主2主 主 主 主 主 主3主 主 主 主 主 主 主 主主 主主 主 主 主 主 主 4 主 主 主 主 5 主 主 主 主 6 主 主 4主 主 主 主 主 主 7 主 主 主 主 主 主 8 主 主 主 主 主 主 9 主 主 主 主 主 主 11 主 主 主 主 5主 主 主 主 主 主 主 主 图 3 6 系统数据流图 北京师范大学珠海分校信息技术学院 第 14 页 共 48 页 4 4 概要设计概要设计 概要设计即对有关系统全局问题的设计 也就是设计系统总的处理方案 它包括 硬件配置设计 系统模块结构设计 数据库设计 代码设计等内容 软件功能分解属 于下列软件开发中的总体设计阶段 4 1 硬件与软件配置设计 4 1 1 硬件配置 处理器 主流处理器 频率 1GHz 以上 内存 建议 1GB 以上 硬盘 最低 60GB 内存 1G 及其以上 硬盘 20G 及其以上 4 1 2 软件配置 客户端操作系统 无特别需求 服务端操作系统 Ubuntu 12 04 数据库 MySql 服务器软件 Tomcat 4 2 系统模块结构设计 教学管理系统学生客户端主要提供学生和教师等角色登陆 点名查询签到情况 学生请假 基础数据维护 统计子系统四项功能 因此可以将系统分为五个模块 登陆 模块 点名模块 统计模块 请假模块 公告模块 北京师范大学珠海分校信息技术学院 第 15 页 共 48 页 考考勤勤系系统统 登登陆陆子子系系统统点点名名子子系系统统 统统计计子子系系统统请请假假子子系系统统公公告告子子系系统统 北京师范大学珠海分校信息技术学院 第 16 页 共 48 页 图 4 1 系统总体结构图 4 3 数据库设计 4 3 1 数据库概念结构设计 实体 联系图 即 E R 图 提供了表示实体型 属性和联系的方法 用来描述现实 世界的概念模型 在数据库系统概论中属于概念设计阶段 E R 图的设计与建立 可以 帮助开发者更加合理的去制定数据库内容 使得在开发过程中对数据库的各种操作 添 加 查询 修改或删除 变得简单易行 考勤管理系统核心 E R 图如下 1 处理考勤点名的 E R 图 图 4 2 考 勤 系 统 点名系统统计子系统基础数据维护系统登录子系统请假子系统 1 5 学 生 请 假 登 录 部 分 点 名 登 录 基 础 数 据 导 入 组 织 架 构 维 护 设 置 调 课 设 置 免 听 统 计 个 别 学 生 学生 工作 批假 统 计 全 部 学 生 统 计 班 级 维护 学院 信息 维护 专业 信息 维护 行政 班信 息 维护 学生 信息 导入 学生 信息 导入 课程 信息 全 部 点 名 公告子系统 北京师范大学珠海分校信息技术学院 第 17 页 共 48 页 图 4 2 点名考勤系统 E R 图 2 处理学生请假申请的 E R 图 图 4 3 北京师范大学珠海分校信息技术学院 第 18 页 共 48 页 图 4 3 请假系统 E R 图 4 3 2 数据库的物理结构设计 根据以上的实体属性集可以建立相应的数据库表结构 其中教学管理系统学生客 户端主要用到的数据库表结构如下所示 1 学生表 student 包括学号 姓名 密码 与班级号四个字段 教学管理系统 学生客户端需要通过查询学生表验证学生信息 查询登陆者是否属于学校人员 并将 学生信息的部分内容反馈给客户端 学生表如表 4 1 表 4 1 学生表 北京师范大学珠海分校信息技术学院 第 19 页 共 48 页 字段名描述类型长度是否允许为空是否主键 classid 学号 Varchar10 否是 studentname 姓名 Varchar20 否否 password 密码 Varchar10 否否 classid 班级号 Varchar10 否否 2 班级表 class 包括班级号与班级名两个字段 教学管理系统无论学生端还是 教师端都需要查询班级内容 将班级内容从学生表和教师表中提取出来可以简化数据 库的相关操作 班级表如表 4 2 所示 表 4 2 班级表 字段名描述类型长度是否允许为空是否主键 classid 班级号 Varchar10 否是 classname 班级名 Varchar20 否否 3 课程表 course 包括课程编号与课程名两个字段 学生无论是查询签到情况 作业情况还是反馈信息 都需要选择课程 因此课程表是必须的 课程表如表 4 3 表 4 3 课程表 字段名描述类型长度是否允许为空是否主键 courseid 课程编号 Varchar10 否是 coursename 课程名 Varchar20 否否 4 点名签到记录表 signdata 包括五个字段 分别为学生编号 课程名称 日 期 班级名称和到否 教师和管理员可以通过这个表了解点名情况 学生可以通过这 个表来查询自己每个课程的签到情况 签到记录表如表 4 4 表 4 4 签到记录表 字段名描述类型长度是否允许为空是否主键 studentid 学生编号 Varchar10 否是 coursename 课程名称 Varchar20 否是 datetime 日期 Date0 否是 classname 班级名称 Varchar20 否否 sign 到否 Varchar5 否否 5 反馈记录 feedback 包括内容编号 学生编号 课程名称 日期以及反馈内容 五个字段 其中反馈内容允许为空 内容编号每次自增 1 学生可以通过增加 修改删 除此表内容对教师进行反馈 留言板表如表 4 5 表 4 5 反馈表 字段名描述类型长度是否主键是否允许空是否自增 1 fdid 内容编号 Integer10 是否是 studentid 学生编号 Varchar10 否否否 coursename 课程名称 Varchar20 否否否 北京师范大学珠海分校信息技术学院 第 20 页 共 48 页 datetime 日期 Date0 否否否 context 反馈内容 Text0 否是否 以上将教务处子系统中数据库概念结构设计的 E R 图转换成 MySql 所支持的数据 模型相符合的结构 只需使用数据定义语言将数据库逻辑设计和物理设计的结果严格 描述出来 再经过调试产生目标模式就可以组织数据入库 进行数据库实施 Comment 杨杨2 图片位置不对 北京师范大学珠海分校信息技术学院 第 21 页 共 48 页 5 5 详细设计详细设计 考勤系统登陆界面效果图 图 5 1 5 1 代码设计 5 1 1 登录子系统 在登陆页面对应的地方输入用户 id 名和密码 确认后登录 在提交 jsp 文件之前 先进行前台的数据验证 如 id 位数不得少于 5 位 密码不得少于 5 位 验证通过后提 交 jsp 文件之 首先判断 id 的位数 如果 id 的位数为 10 位的话 则对数据库中的 student 表进行检索 如果 id 的位数为 5 位的话 则到 Teacher 表中进行查询 否则 则到相对应的学生工作管理了人员表 或者系统管理员表进行检索 若检索到的记录 集为空 则说明 id 错误 从而转到相对应的出错处理程序 若验证成功 则进行检查 密码是否一致 不一致则做出错误处理 若一致则跳转到相对应成功的欢迎界面 并 将 id 密码以 session 对象保存起来 出错以及处理 在该模块中可能发生的错误有 id 号错误 系统这时会提示 无此用户 请重新输入 密码错误 系统会提示 密码错误 登录失败跳转到原来的登录界面 并在登陆框下方显示错误信息 若登录成功 则直接转入首页 登录成功界面又分为 学生 任课老师 班主任 管理员对应不同 的成功界面 详细代码设计如下 1 LoginAction 属性 private String id private String password 方法 private void login 2 ILoginService 方法 private String userLogin 北京师范大学珠海分校信息技术学院 第 22 页 共 48 页 3 LoginServiceImpl 属性 private String id private String password 方法 userLogin 4 IUserDao 方法 public String queryUserByIDAndPassword 5 UserDaoImpl 方法 public String queryUserByIDAndPassword 6 User 属性 private String id private String password 方法 setter setter 5 1 2 点名子系统 进入点名子系统的前提是用户成功登陆 进入课表页面 选择对应的课程 点击 进入该课程的点名页面 对学生进行点名 确定点名完毕之后提交 旷课的学生名单 以及 session 对象传递到 StudentRCList 类中 通过 RollCallAction 把旷课的学生信 息保存到数据库的表中 更新数据库中旷课学生表 学生工作可以设置学生免听 在 前台 jsp 页面中选择相对应的学生 提交学生 id 给后台 NOListenAction NOListenAction 通过调用业务逻辑类 设置学生表的免听状态 并 保存数据库 详细代码设计 1 RollCallController 属性 private IRollCallService rollCallService private IQueryServiceOfLeave queryLeaveService 方法 protected Map referenceData HttpServletRequest request 2 IRollCallService 方法 Public List queryStudents int classId List leaveList 3 RollCallServiceImpl 属性 private HibernateTemplate hibernateTemplate private LeaveRequest leave 方法 public List queryStudents int classId List leaveList public List listStudents int classId 北京师范大学珠海分校信息技术学院 第 23 页 共 48 页 4 AddRCinfoSuccController 属性 private RollCallRecord rcRecord private RollCallForm rcForm private ArrayList stuList private ISaveRCInforService saveRCInforService private HibernateTemplate hibernateTemplate 方法 public ModelAndView handleRequest HttpServletRequest request HttpServletResponse res

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论