学生考勤系统_第1页
学生考勤系统_第2页
学生考勤系统_第3页
学生考勤系统_第4页
学生考勤系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、 题 目: 程序文档 专 业: 计算机科学与技术 姓 名: 学 号: 完成日期: 2015 年 06 月 20日目 录一、绪论11.1课题研究背景11.2研究目的及意义11.3课题内容简介2二、考勤系统关键技术32.1开发背景32.2系统开发环境需求32.2.1开发语言ASP.NET32.2.2开发平台Visual Studio200842.2.3数据库Microsoft SQL Server 200542.3 系统目标52.4 系统需求62.4.1 系统性能需求62.4.2 系统功能需求6三、系统总体设计73.1 系统设计原理73.2 功能模块设计7四、数据库设计94.1 数据库设计规则94

2、.2 数据库概念结构设计94.3 数据库逻辑结构设计114.3.1数据表设计11五、系统实现及测试145.1基本信息管理模块145.2 学生信息管理模块145.3 教师信息管理模块155.4 请假申请管理模块155.5 考勤信息管理模块165.6软件测试的目的和意义175.7 软件测试的步骤175.8 软件测试的具体实现175.9 软件测试结论205.10 测试评价21六、总结与展望226.1 总结226.2 展望22一1.1课题研究背景随着现代化信息技术的不断进步,计算机已成为用来进行学校管理运作不可或缺的一部分。以前的考勤工作都由教师完成,不仅浪费人力物力,而且也无法保证准确性和透明度,给

3、管理带来了许多不便。现在利用计算机来管理考勤工作,大大降低了教师的工作量,也提高了教师的工作效率。普通高校生源的不断增加,学生人数激增,其管理难度也越来越大,如何优化学生的日常管理也成为了一个大众化的课题。考勤管理系统是学校日常管理的重要方面,出勤率的高低能直接体现出一个学生的基本素质和学习态度。大学生常因为网络、游戏等原因缺课耽误学习。因此大学生的考勤管理已经成为学校管理的一个重要部分。目前高校学生上课考勤管理都是以任课老师上课点名,记录学生上课出勤情况,学期末根据上课出勤表及作业登记表对学生平时成绩打分,然后把数据上交到各院系。学生请假以传统的写请假条的形式向各自班主任请假,时间长的请假,

4、要班主任、院系领导都批准方能生效。这种的模式在目前高校管理中暴露出了许多弊端:一是学生请假对任课老师不透明,造成对学生上课出勤误记的情况;二是学生上课出勤表对班主任不透明,班主任很难与学生及时有效的沟通;三是学生对自己上课出勤情况没有实时的信息。1.2研究目的及意义在高校管理中,学生是学校里最大群体,其管理十分复杂。由于每门课的出勤情况直接影响学生在某门课结束后,能否参加这门课的考试。所以,学生的出勤率直接和学生顺利完成学业有着密切相关的联系。由于高校上课还存在着一位教师上多个班级,或者一位教师上大课等特点,用传统的点名考勤的方法,不仅会占用大量的上课时间,而且也不能真实的反映学生的到课情况,

5、导致学生出勤情况的报告与统计工作难度极大。虽然每个班主任和任课老师都参与考勤信息的收集,但考勤信息的汇总和统计仍很繁琐。学生考勤管理系统是在长时间的教学调查后,根据教学的实际情况,开发出一个实用的系统模块,上课教师可以在课前或课后,对学生的考勤情况进行抽查,并把结果记录到系统,在学期结束时可以很方便的看出学生平时表现。该考勤系统的一些必具体来说,本系统就是为了达成以下几点目的:1.完善学生管理系统;2.方便教师和同学了解实时考勤及请假情况。3.更加直观的显现出学生每堂课的出勤情况。1.3课题内容简介学生考勤管理系统就是用计算机作为基础平台,利用计算机强大的分析处理数据的能力,帮助教师管理学生,

6、教师打考勤、审批请假,学生查询自己的考勤信息,均不受地点限制。通过本系统软件,能帮助教师和学生利用计算机,快速方便的对学生考勤情况进行输入、输出、修改和查询的所需操作,使考勤工作更加便捷、直观、合理,更有效的降低了学生因请假不及时造成的考勤误记情况本系统包括以下功能:1.面向学生的功能:A.学生登录;B.学生个人考勤信息的查询。2.面向教师的功能:A.教师登录;B.对学生考勤情况进行输入,修改和删除。C.对学生考勤、请假信息的查询。3.若学生请假通过教师的审批,在教师点名时,状态一栏将默认为“请假”。 4.系统可以导出学生的考勤情况的EXCEL表格,表格中可以看见学生每堂课的出勤情况。二、考勤

7、系统关键技术2.1开发背景随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已成为人们深刻认识,计算机作为知识经济时代的产物,已被广泛应用于社会各个行业和领域。目前,我国的科技水平高速发展,计算机作为今天使用最广的现代化工具已深入到各个领域,并且正在成为信息社会的重要支柱。在这样的大背景下,学生考勤管理系统,它已进入人类社会的各个领域并发挥着越来越重要的作用。学习计算机知识不仅仅是为了掌握一种技能,更重要的是:它能启发人们对先进科技的向往,激发创新意识,推动对新知识的学习,培养自学能力,锻炼动手实践的本领。利用计算机管理,可以加强校园的信息管理,从而达到并完成为教师和学生服务的目的。2.

8、2系统开发环境需求2.2.1开发语言ASP.NETASP.NET并不是ASP的简单的升级,它是.net Framework的一部分,而.net Framework是微软.net平台的一个重要的组成部分,它是一组用于程序开发的类库,这个类库的规模相当庞大,并且还在不断的更新中。几乎可以胜任任何程序的开发。而且.net是可以跨平台的,用它编写的程序不用重写就可以在不同的平台下运行,就像java应用程序一样。这也是微软用.net平台与JAVA抗衡的一大优势。ASP.NET是建立在通用语言运行时刻库(CLR)上的应用程序框架。他用来在服务器端构建功能强大的web应用程序。 ASP.NET是M的一部分,

9、作为战略产品,不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。 ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C#)创作应用程序。另外,任何

10、 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。 微软为ASP.NET设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员

11、更容易开发出Web应用,满足计算向Web转移的战略需要。2.2.2开发平台Visual Studio2008Visual Studio2008是微软开发的visual studio系列开发工具的最新版本,微软公司在2007年11月初发布新一代企业级应用开发平台.NET Framework 3.5和开发工具Visual Studio 2008。现代信息部门的开发团队必须因应高度竞争的商业环境,快速进行应用软件系统的设计、开发、测试以及部署带领企业赢得市场。大部分的软件开发团队,都面临以下几项挑战:开发团队间的沟通困难,开发工具形形色色,分散且难以互相整合开发程序、开发标准难以建立。Microso

12、ft Visual Studio 2008 开发工具系列,有许多令人期盼已久的强化功能,提供更高的程序开发效率、更精简的程序代码、与更佳的安全性。包括 .NET Framework 3.5、 ASP.NET 2.0、64-bit 程序开发支持、新的 Windows Form 程序设计、以及对行动装置解决方案的全新开发支持。2.2.3数据库Microsoft SQL Server 2005数据库系统克服了文件系统的缺陷,提供了对数据更高级、更有效的管理。目前世界上已有数以万计的数据库系统在运行,其应用已深入到人类社会生活的各个领域,从学校管理、银行业务,资源分配、经济预测一直到信息检索、档案管理

13、、普查、统计等,并在通信网络基础上,建立了许多国际性的联机检索系统。数据库技术从产生的开始沿着层次、网状、关系等三个分支发展。数据库设计的一个重要目标是数据独立性,也就是应该使用程序和数据库的数据结构之间相互独立,不受影响。经过三十余年的发展,数据库技术在理论和应用上都已相当成熟。数据库技术和网络技术相结合产生了分布式数据库技术。数据库技术与面向对象技术相结合产生了面向对象数据库。数据库技术仍在不断发展中。数据库的种类很多,小型桌面数据库有Access、Excel、FoxPro等,大型的数据库有Oracle、Sybase、Informix和SQL Server等。小型数据库使用简单,可以满足日

14、常的工作需要,而大型数据库有高效、完善的安全访问机制,足以应付每天上万次的访问量。在学生考勤管理系统中,两种类型的数据库都可能用到。SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据。SQL Server 提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。例如,XML数据库与Web

15、 Service的支持将使您的应用实现Internet数据互联,.Net集成极大的扩展了开发空间,异构数据集成、Service Broker使您的数据和其它应用无缝集成,各种新数据类型和T-SQL扩展带来了诸多灵活性。C#、VB.Net、XQuery、XMLA、ADO.Net 2.0、SMO、AMO等都将成为SQL Server数据平台上开发数据相关应用的有力工具。2.3 系统目标学生考勤管理系统是在长时间的教学调查后,根据教学的实际情况,开发出一个实用的系统模块,上课教师可以在课前或课后,对学生的考勤情况进行抽查,并把结果记录到系统,在学期结束时可以很方便的看出学生平时表现。该考勤系统的一些

16、必具体来说,本系统就是为了达成以下几点目标:1) 完善学生管理系统。2) 方便教师和同学了解实时考勤及请假情况。3) 更加直观的显现出学生每堂课的出勤情况。为达到以上的开发目的。应遵循一定的设计和开发与原则:1) 模块接口定义清晰;2) 基础类库和接口设计合理,尽量建立扩展的接口和抽象类;3) 数据库操作使用标准SQL语句,如果一定要使用有差别的SQL语句,则尽量集中在一起,以减少将来维护和移植的难度;4) 使用的通用的数据库访问代码,对将来的维护是一个很大的简化。5) 将不同的功能模块放在不同的文件夹下面,大大提高了系统代码的可读性,从而大大提高了可维护性。6) 采用开放的标准和工具等。2.

17、4 系统需求2.4.1 系统性能需求学生考勤管理系统的特性要求该系统需要具备以下几个主要特性:1) 实用性:学生考勤管理系统在设计时必须遵循的一个重要原则,就是以考勤为系统设计的中心。具体来说,应用系统应能实现用户特定的需求,操作界面友好、方便,功能设置符合用户的习惯和要求。2) 易维护:管理员能够简单方便地管理系统,并对系统进行日常维护;随着系统信息的变更或增加、数据规模的增大,系统升级、维护应该易于操作;各子系统、功能模块的设计应具有良好的灵活性,保证在系统建设过程中后期系统功能的实现不影响前期已投入使用的系统功能。3) 安全性:系统应充分考虑信息的安全性,建立完善的多层次的安全保障体系。

18、4) 可扩展:系统在设计时应充分考虑到业务开发不断推进的需要,降低系统在扩展新的业务功能时的复杂度。5) 开放性:系统在体系结构和数据交换协议等方面应遵循标准和开放的原则,以确保具有良好的互操作性、可移植和可扩充性。2.4.2 系统功能需求系统主要功能模块如下所示:1) 面向学生的功能:学生登录;学生个人考勤信息的查询。2) 面向教师的功能:.教师登录;对学生考勤情况进行输入,修改和删除; 对 学生考勤、请假信息的查询。3) 若学生请假通过班主任老师的审批,在教师点名时,状态一栏将默认为“请假”。 4) 系统可以导出学生的考勤情况的EXCEL表格,表格中可以看见学生每堂课的出勤情况。三、系统总

19、体设计3.1 系统设计原理本系统在设计中使用了面向对象的设计原理,是因为:1.面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和重用性,便于程序的维护与扩展。2.所谓的对象是一种抽象的名称,用来对应实现世界存在的"东西"。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须接收从对象外部传递来的信息,再由对象按其方法加以处理。用户无需知道其任何细节,操作是封闭的,对象之间能通过函数调

20、用相互通信。3.类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任何一个对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。4.设计的学生考勤系统也是建立在一系列类基础之上的,其编程的思想是:先根据一定的需要创建一系列的子类或直接调用asp提供的基类,编制程序时,由这些类派生出相应的对象,所派生出的对象继承了其父类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。打个比方,就比如要制造一台机器,首

21、先要制造各种零件的模具,然后用制造好的模具生产出所需的零件,所有这些做完后,剩下的就只是如何把这些零件组装起来,这样一台机器就很容易制造出来了。实际编程也是如此。每个表单都是由一定数量的对象按某一种方式组合在一起的,程序编制的核心是类的设计。3.2 功能模块设计模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成其中每个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。为了降低软件系统的复杂性,提高可理解性、可维护性,必须把系统划分成为多个模块。但是模块不能任意划分,应尽量保持其独立性。模块的独立性指每个模块只能完成系统要求的独立的自功能,并且与其他模块的联系

22、最少而且接口简单。模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。模块独立性很重要,主要有两条理由:第一, 有效的模块化软件比较容易开发出来,这个优点尤其重要。第二, 独立的模块化比较容易测试和维护。模块独立程度可以由两个定性标准度量,这两个标准分别称为内聚和偶合。偶合衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。从以上两点可以得出结论:好的模块是具有高内聚低耦合的特点。四、数据库设计4.1 数据库设计规则数据库在一个信息发布系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构

23、可以提高数据库存储效率,保证数据的完整性和一致性。设计数据库系统时应充分了解用户各个方面的需求,包括现有系统的需求以及将来可能增加的需求在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设

24、计的一个核心。数据库设计的主要任务是针对一个给定的应用环境,在给定的硬件环境、操作系统、以及数据库管理信息系统等软件环境下,创建一个性能良好的数据库模式,建立数据库及其应用系统,使之能有效地收集、存储、操作和管理数据,满足用户地各类需求。数据库设计通常是在一个通用的DBMS支持下,即利用现成的DBMS作为开发的基础。4.2 数据库概念结构设计概念结构设计的主要任务是根据用户需求设计数据库的概念数据模型。概念模型独立于具体的数据库管理系统,它描述的是从用户角度看到的数据库,反映了用户的现实环境,而与数据库将来怎样实现无关。在需求分析基础上设计出能够满足用户各种需求的实体及它们之间的关系,从而为以

25、后的逻辑结构设计作好铺垫。 管理员信息用户名密码图4-1 管理员信息E-R图教师信息密码备注教师编号安全问题其他基本信息教师姓名图4-2 教师信息E-R图学生信息密码备注学生编号安全问题其他基本信息学生姓名图4-3 学生信息E-R图4.3 数据库逻辑结构设计4.3.1数据表设计管理员信息表对存放管理用户名、密码、权限进行管理表4-1 管理员信息表 序号列名数据类型长度小数位标识主键允许空默认说明1idint是否2Useridvarchar30是管理员编号3usernamevarchar200是管理员名称4roleidint200是角色编号5Rolenamevarchar200是角色名称教师信息

26、表存放对教师进行管理表4-2 教师信息表 序号列名数据类型长度小数位标识主键允许空默认说明1teacheridint是否2teachernamevarchar200是教师名称3passwordvarchar200是密码4secrecy varchar100是安全密码5secrecyanswervarchar200是安全问题6emailvarchar50是邮箱7nationvarchar200是民族8jiguanvarchar200是籍贯9agevarchar200是年龄10sexvarchar10是性别11birthdaydatetime是生日12telvarchar200是电话13mobil

27、evarchar200是移动电话14regtimedatetime是注册时间15regipvarchar20是登录IP16logtimesint是登录次数17lastlogipvarchar20是最后登录IP 18lastlogtimedatetime是最后登录时间19descriptionvarchar2000是备注20useridvarchar50是编号学生信息表对学生进行管理表4-3 学生信息表 序号列名数据类型长度小数位标识主键允许空默认说明1studentidint是否2studentnamevarchar200是学生名称3passwordvarchar200是密码4secrecy

28、varchar100是安全密码5secrecyanswervarchar200是安全问题6emailvarchar50是邮箱7gradevarchar50是年级8majorvarchar50是专业9xueyuanvarchar200是学院10nationvarchar200是民族11jiguanvarchar200是籍贯12agevarchar200是年龄13sexvarchar10是性别14birthdaydatetime是生日15telvarchar200是电话16mobilevarchar200是移动电话17regtimedatetime是注册时间18regipvarchar20是登录I

29、P19logtimesint是登录次数20lastlogipvarchar20是最后登录IP 21lastlogtimedatetime是最后登录时间22descriptionvarchar2000是备注23useridvarchar50是编号考勤信息表对学生考勤信息进行管理表4-4 考勤信息表序号列名数据类型长度小数位标识主键允许空默认说明1idint是否2titlevarchar200是标题3studentnamevarchar200是学生名称4studentid varchar200是学生编号5ClassAvarchar50是班级6kaoqinrenvarchar200是老师7statu

30、svarchar200是情况8kaoqintimedatetime是时间9buzhutext是结果10shijianduanvarchar200是时间段11kejievarchar200是课节 请假信息表 对学生请假进行管理表4-5 请假信息表 序号列名数据类型长度小数位标识主键允许空默认说明1idint是否2titlevarchar200是标题3studentnamevarchar200是学生名称4studentid varchar200是学生编号5ClassAvarchar50是班级6yuanyinvarchar200是原因7neirongtext是内容8qingjiatimedateti

31、me是时间9buzhutext是备注10shijianduanvarchar50是时间段11kejievarchar50是课节 五、系统实现及测试根据考勤系统的需求,我将此次所要开发的系统从功能模块的角度上划分为以下几个功能模块:1) 基本信息管理模块2) 学生信息管理模块3) 教师信息管理模块4) 请假申请管理模块5) 考勤信息管理模块5.1基本信息管理模块本模块主要是对系统的基础信息进行管理,在这个模块中,管理员可以对教师信息进行管理,可以增加新的教师,编辑和修改已经存在于系统中的教师的信息;管理员可以对学生信息进行管理,可以增加新的学生,编辑和修改已存在于系统中的学生的信息。图5-1 基

32、本信息管理5.2 学生信息管理模块本模块主要是对学生进行管理,在这个模块中,管理员可以学生信息进行管理。图5-2 学生信息管理5.3 教师信息管理模块本模块主要是对教师进行管理,在这个模块中,管理员可以教师信息进行管理。图5-3 教师信息管理5.4 请假申请管理模块本模块的主要是提供给学生一个请假申请的界面,在这个模块中,学生可以填写申请请假表。图5-4 请假申请5.5 考勤信息管理模块本模块主要是学生对个人考勤信息管理,在本模块中,学生可以对个人的考勤情况进行查询,系统会根据学生输入名称进行查询,然后将查询结果返回给学生,从而可以实现考勤信息的透明化。图5-5 考勤信息软件测试是系统质量保证

33、的主要活动之一。测试虽然不是质量保证的“安全网”。但它是不可缺少的,而且是重要的环节。因为,在系统开发的过程中,涉及一系列的活动,而在这个活动过程中,人们可能犯很多错误,错误可能发生在设计阶段,也可能发生在整个过程的开始阶段。系统测试的目标是:测试是一个程序的执行过程,其目标在于发现错误。一个好的测试用例能够发现至今尚未察觉的错误。一个成功的测试则是发现至今尚未察觉的错误的测试。总之,测试是发现错误,这不只是从技术角度测试下定义。软件测试中最为重要的是,实际工作中人们的心理学和经济学问题。系统的测试分为单元测试、组装测试、确认测试和系统测试,每一步都是在前一步的基础上进行的。5.6软件测试的目的和意义在系统的详细设计以及编码过程进行完成之后,就要对办公自动化管理系统的程序进行测试。软件测试是软件开发过程中的一个重要环节。软件测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功的测试是发现了至今为止尚未发现的错误的测试。软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。测试阶段的主要任务是尽量发现程序错误,改正错误,直至程序的功能、性能满足用户需求。5.7 软件测试的步骤

温馨提示

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

评论

0/150

提交评论