版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
绪论1.1课题背景随着国家的发展和社会的进步,国家对于高校发展建设的投入比重逐年增加,这也就导致了高等院校的师生数量逐年增加,学校对于软硬件配置的需求也是越来越大,现如今随着5G网络的开发和数字化校园的深入发展,应该如何高效地、科学地开展学生管理工作是一个具有热议的话题。而学生考勤就是日常学生管理工作其中最普遍的一项工作,普遍的考勤工作还只局限于在纸面上进行考勤,我们是不是也可以将课堂考勤与新时代接轨,设计一个新时代式的考勤方式,就比如通过目前火热的软件开发平台Androidstudio来设计一款基于Android的课堂考勤管理系统。Android平台是由OHA联盟在二零零七年年底发布的,该联盟是一个由三十三家手机制造厂商、软件开发商以及电信行业组成的推广Android平台的联合会。至今为止,Android已经发展了十几年,相信以它为基础所设计的考勤系统可以给予学生工作管理更大的帮助。1.2设计原则在开始开发项目之前,必须要先考虑项目的实用性、科学性,以及该项目是否能够真正让用户受益并尽可能的发挥项目的作用。因此,在开发前,通过以下几条原则对项目进行判断:(1)可行性原则。开发系统需要在技术方面、实用方面、经济方面等方面都是可以达成的。(2)适应性原则。该原则保证系统能够在大多数环境下正常运行和使用,并且当系统进行维护或者更新之后也能正常运行和使用。(3)安全性及保密性原则。该原则保证系统中的任何信息都能安全存储,不会有信息泄露的风险。(4)系统工程原则。该原则保证系统从背景调查、分析项目、项目的设计、项目的开发到项目测试并且开始使用,都应该按照项目工程的步骤开展。(5)融合规划、分层实施、逐渐完善原则。项目开发的过程中,要按照规划、分层实施,特别是要注意在项目开发过程中要有条理,从点到面,一步步完善,不要贪图进度,要循环渐进的对项目进行开发。
2系统关键技术2.1Android技术2007年11月,Google发布了基于Linux内核的开源智能移动操作系统Android。该系统拥有庞大的用户数量和应用市场:来自Gartner统计数据显示,2013年第三季度全球智能手机的销售量为2.5亿多台,其中Android系统占据了81.9%[1];而截至2014年1月8日仅Android官方应用市场GooglePlay上的应用数量就达到了103万[2]。如今世上搭载安卓系统的电子设备比如索尼、三星这样的国际公司,国内也有种类繁多的品牌手机搭载的安卓系统,譬如Oneplus、Xiaomi、OPPO等。2.2Eclipse集成开发环境Eclipse开发平台[3]是基于Java语言编写的、开放源代码的、可拓展的、当下最流行的集成开发平台。尽管大部分程序员都喜欢把Eclipse作为一种Java集成开发环境来应用,但实际上Eclipse的意义并不止于此。Eclipse是一种架构和一套服务,但由于其整合了许多插件而使它具有相当的操作灵活性。Eclipse主要由项目、工具项目和技术项目组成,这些项目在一起合成了一个丰富、灵活的开发环境。2.3Java语言1994年推出的java语言是一种跨平台、适合于分布式计算环境的面向对象编程语言,具有可移植性、安全性、动态、高性能、简单等优点,对网络上分布资源存取的编程有良好的支持,非常适合Internet与分布式数据环境,通过狭隘JavaApplet到客户端,还可以实现计算等操作全部都在服务器上运行或部分在服务器上或部分在客户机上运行[4]。2.4MySQL数据库MySQL[5]是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。2.5Androidstudio简介Androidstudio是谷歌推出的一个Android集成开发工具,基于IntelliJIDEA.类似EclipseADT,AndroidStudio提供了集成的Android开发工具用于开发和调试。AndroidStudio提供:基于Gradle的构建支持;Android专属的重构和快速修复;提示工具以捕获性能、可用性、版本兼容性等问题;支持ProGuard和应用签名;基于模板的向导来生成常用的Android应用设计和组件;功能强大的布局编辑器,可以让你拖拉UI控件并进行效果预览[6]。3系统分析3.1可行性分析开展系统的可行性分析的主要目的是明确系统开发的背景、开发系统的目标、系统的功能进行调查和分析,并提出系统的开发方案和计划。下述将对系统的技术、经济和操作可行性进行一系列的分析。3.1.1技术可行性本系统利用Android平台和Java编译语言进行开发,该平台提供了可视化的开发环境,开发页面直观,系统功能强大,使得系统开发的效率可以大大提高,而Java语言都是由对象组成,而集合了封装性、继承性和多态性的对象能够增强系统的可移植性、可拓展性和可重用性。作为计算机科学与技术专业的学生,有在课堂上学习到相关的技术并且加以练习和运用,所以可以提供系统顺利开发的保证。3.1.2经济可行性系统的经济可行性是需要对系统开发过程中的所有花费进行考虑。作为个人开发的项目工程,不需要花费太多资金来启动项目。而对于系统开发中要使用的搭载设备只需要本身的笔记本电脑就可以利用。系统开发是使用的开发工具可以在课件中或者网络自行搜索即可。综上,本次系统的经济成本很低。3.1.3操作可行性用户在使用该系统时能否顺利地使用系统也是很关键的。一个软件系统再好,如果用户不会使用,甚是没有用户使用,那么这个系统的开发是没有意义的。当今的程序进本上都是操作简单,逻辑清晰,流程顺畅,对于用户来说只要识字,没有任何学习成本就可以迅速地对系统有所了解。所以,本系统的操作可以轻松上手的。基于对以上可行性的分析可以得出,本次将要开发的基于Android的课堂考勤管理系统是一个值得开发并且推广的软件。3.2系统性能分析(1)可升级性:系统里总会存在某些Bug,这时候系统就需要进行下一步的升级。(2)存储性:本系统为课堂考勤管理系统,所以在开始课堂的时候会进行信息的频繁操作,这就需要强大的数据存储能力来存放大量数据。(3)可靠性:系统可以按照规定的程序,完成用户对系统的操作。(4)简单性:系统的设计和功能都是可以让用户很轻松地理解和操作。(5)一致性:保证录入的数据正确地存放于系统中,直到系统调用时,也和录入时的数据保持一致性。3.3系统功能分析本系统划分学生、管理员和教师三类功能模块,以下是对它们的详细介绍。3.3.1学生功能分析在注册登录学生账户后可,学生端的主要功能模块包括首页页面(班级信息功能模块、通知公告功能模块、考勤打卡功能模块、记事本功能模块)以及个人管理界面(个人资料功能模块、上传头像功能模块、在线留言功能模块),学生用例图如图3-1所示。图3-1学生用例图3.3.2管理员功能分析平台的操作系统管理员用户有一个,登陆到操作系统服务器后,就能够对整个客户端系统进行管理,功能主要包含了对app服务器应用的添加与移除,可以进行通和班级的管理操作,管理员用例图如图3-2所示。图3-2管理员用例图3.3.3教师功能分析教师在注册账户后并登入用户端,教师用户端的主要功能模块包括首页(班级签到、发起签到、班级信息、通知公告)、个人管理(个人资料、班级管理、通知发布、班级签到、上传头像、在线留言、课程设置),教师用例图如图3-3所示。图3-3教师用例图3.4系统流程分析3.4.1登录登录模块实现了三类账户的权限登录,点击用户端,系统会先跳出加载界面,加载页面过后就展示登陆页面,经过注册的账户可以直接登入,没有注册过的可以先注册符合自己身份的账户,按提示填写需要的注册信息,之后再点击登入,点击登录按钮后后,后台系统会验证用户名和密码的正确与否,如通过验证即可进入主页,没有通过验证则会保持在登入界面并提示输入的信息有误,登录图如图3-4所示。图3-4登录图3.4.2录入在后台系统里登入管理员账户后,可以可在主页选择用户模块、或者通知模块和班级模块,选择需要的模块进行信息的录入,录入信息后,点击录入,验证通过即为录入成功,不通过则会提示录入失败。在用户端分别登入教师和学生的账户后,可以在个人界面进行录入信息,如果显示录入失败,则需检查客户端和后台系统是否保持连接,保持连接就可以录入成功。三类账户都可进行录入操作,录入流程图如图3-5所示。图3-5录入流程图
4系统设计4.1系统设计要求(1)可用性。系统的功能齐全可以达到考勤管理的需求。本系统包含了后台信息管理功能、学生定位考勤功能、教师发布考勤功能等功能。(2)可靠性。能够持续不断地处理任务并且可以修正错误的操作。本系统搭载了基于MyEclipse的后台管理以及MySQL5.1版本的数据库,软件开发是在Androidstudio平台进行的,这些软件都是强大并且可靠的。(3)保密性。系统设计时应该要有保护所存放的数据的措施,做好各类账户的安全使用。系统的数据都存放在基于MyEclipse的后台管理系统,完全可以确保数据的安全。(4)可理解性。应该在简单明了的前提下来设计系统,方便用户容易使用和理解系统。系统的页面设计和逻辑设计都是通俗易懂,方便用户的使用和理解。(5)可拓展性。系统设计应保留升级空间。当系统需要升级时,只要在后台管理和开发软件里进行代码的更新即可。4.2系统开发流程设计本系统的研发过程开始是对系统进行需求分析,接着是对系统和数据库的整体和部分的规划和设计,然后才是对各个模块进行分析和代码撰写,最后再整合到一起进行测试系统。系统的开发流程如图4-1所示。图4-1开发流程图4.3系统结构设计系统结构设计是将原本复杂的大任务分化为多个简单的小任务的过程。因为本系统的用户对象为三类,所以先将本系统瓜分成三类模块,分别是教师模块、学生模块和管理员模块,然后在对三类模块进行详细的分开。系统结构图如图4-2所示。图4-2系统结构图4.4数据库设计数据库设计得越好,程序开发就能更快捷。数据库是由各样的数据、多样的数据表以及简洁的查询语句构成的。其中查询语句是最为关键的一部分,是它将数据表链接起来,因此要多加思考查询语句,才能设计去少量冗余的数据库来。4.4.1数据库E-R图设计E-R图也被称为是实体联系图,实体用方形的框线来表示,而属性则用椭圆形的线框来表示,再用实线来连接实体和属性,用这样的线和面的组合可以映射出现实环境的概念模型。本系统的E-R图如下所示:(1)管理员的实体具备编号、用户名和密码等属性。管理员实体属性图如图4-3所示。图4-3管理员实体属性图(2)班级的实体具备编号、名称和班级编号等属性。班级实体属性图如图4-4所示。图4-4班级实体属性图(3)考勤的实体具备编号、上课地点、课程名称、考勤日期、用户编号、用户名、班级、开始时间和结束时间等属性。考勤实体属性图如图4-5所示。图4-5考勤实体属性图(4)通知的实体具备编号、发布人、内容、图片、发布时间、标题和类别等属性。通知公告实体属性图如图4-6所示。图4-6通知实体属性图(5)学生/教师的实体具备编号、用户名、密码、QQ、电话、班级、状态、头像、学号/工号、角色和课程等属性。学生/教师实体属性图如图4-7所示。图4-7学生/教师实体属性图(6)行程的实体具备编号、用户编号、形成说明、标题和类型等属性。行程记录实体属性图如图4-8所示。图4-8行程实体属性图4.4.2数据库表设计本系统采用MySQL数据库,它强大的能力方便进行管理和操作。(1)以管理员信息表的主键为编号,编号不得为空,数据类型为int型,长度设置为十个字节,用户名和密码也均不得为空,数据类型为varchar,长度皆为四十五个字节。关于数据表管理员信息表如表4-1所示。表4-1cqb_admin管理员信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_usernamevarchar45否否用户名cqb_passwordvarchar45否否密码(2)以班级信息表的主键为编号,编号不得为空,数据类型为int型,长度设置为十个字节,名称和班级编号均为空,它们的数据类型为varchar,长度皆为一百个字节。关于数据表班级信息表如表4-2所示。表4-2cqb_classcircle班级信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_titlevarchar100否是名称cqb_banjicodevarchar100否是班级编号(3)以考勤信息表的主键为编号,编号不能为空,数据类型为int型,长度设置为十个字节,其他的数据均可以为空,它们的数据类型为varchar,长度皆为一百个字节,用户编号的数据类型为int型,长度为十个字节。关于数据表班级信息表如表4-3所示。表4-3cqb_kaoqin考勤信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_contentvarchar1000否是上课地点cqb_titlevarchar100否是课程名称cqb_upadtetimevarchar100否是考勤日期cqb_userid`int10否是用户编号cqb_usernamevarchar100否是用户名cqb_class_varchar100否是班级cqb_start_timevarchar100否是开始时间cqb_end_timevarchar100否是结束时间(4)以通知公告信息表的主键为编号,但编号不能为空,数据类型为int型,长度设置为十个字节,其他的数据均可以为空,它们的数据类型为varchar,长度皆为四十五个字节,内容的数据类型为int型,长度为一千个字节。关于数据表通知公告信息表如表4-3所示。表4-4cqb_biotech通知公告信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_authorvarchar45否是发布人cqb_content`varchar1000否是内容cqb_image_urlvarchar45否是图片cqb_pubdatevarchar45否是发布时间cqb_titlevarchar45否是标题cqb_typevarchar45否是类别(5)以学生/教师信息表的主键为编号,编号不能为空,数据类型为int型,长度设置为十个字节,其他的数据均可以为空,它们的数据类型为varchar,长度皆为四十五个字节,状态、角色和课程的数据类型为int型,长度为十个字节。关于数据表学生/教师信息表如表4-3所示。表4-5cqb_user学生/教师信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_usernamevarchar45否是用户名cqb_passwordvarchar45否是密码cqb_qqnumvarchar45否是QQcqb_phonevarchar45否是电话cqb_banjivarchar45否是班级cqb_statusint10否是状态cqb_image_url`varchar45否是头像cqb_studentvarchar45否是学号/工号cqb_countint10否是角色cqb_count_all`int10否是课程(6)以行程记录信息表的主键为编号,编号不能为空,数据类型为int型,长度设置为十个字节,行程说明、标题和类型的数据类型均为varchar型,其中行程说明的长度设置为一千个字节,其他的为四十五个字节,用户编号的数据类型为int型,长度为十个字节。关于数据表学生/教师信息表如表4-3所示。表4-6cqb_plan行程记录信息表列名数据类型长度是否主键是否可空说明cqb_idint10是否编号cqb_useridint10否是用户编号cqb_descriptionvarchar1000否是行程说明cqb_namevarchar45否是标题cqb_typevarchar45否是类型
5系统的实现5.1学生功能模块的实现5.1.1学生注册登录界面进入登陆界面,没有注册过可以先点击注册按钮进入注册界面,按照提示依次输入用户名、密码、学号和姓名,再选择所属班级和学生类别,最后点击马上注册,完成账号的注册。注册后就可以登录考勤系统,在登录界面输入账号和密码,选择登录的账户类型,点击登录按钮进行登录,登录界面展示如图5-1所示。图5-1登录界面图5.1.2首页界面进入首页界面后,可以根据自己的需求来选择不同的功能模块,学生账号可以选择四种功能模块,班级信息、通知公告、考勤打卡和记事本,首页界面展示如图5-2所示。图5-2首页界面图5.1.3考勤打卡界面进入考勤打卡界面就可以看到考勤信息和所在位置经纬度,点击打卡通知可以进行定位签到和上传行程信息。考勤打卡界面展示如图5-3所示。图5-3考勤打卡界面图5.1.4班级信息界面在班级信息界面可查看所有班级的信息,点击任意一个班级选项,可以查到所选班级的班级通讯录,班级信息界面如图5-4所示。图5-4班级信息界面图5.1.5记事本界面进入记事本界面进行看到已有的记事记录,也可以添加新的记事记录,记事本界面如图5-5所示。图5-5记事本界面图5.1.6在线留言界面点击在线留言模板可以查看先前的留言信息,也可选择对先前的留言信息进行再次留言,在线留言界面如图5-6所示。图5-6在线留言界面图5.2教师功能模块的实现5.2.1班级签到界面登录教师账户后后可查看某个班级的考勤情况,并可查询统计图表,班级签到界面如图5-7所示。图5-7班级签到界面图5.2.2发起签到界面教师在设置课程后可发起签到,填写上课地点,并且设置签到开始和结束时间。发起签到界面如图5-8所示。图5-8发起签到界面图5.2.3通知发布界面教师可通过该系统可发布通知,输入标题和内容,还能选择本地图片进行上传。通知发布界面展示如图5-9所示。图5-9通知发布界面图5.3管理员功能模块的实现5.3.1用户管理界面以管理员身份登录到系统后台,点击用户管理界面,可以查看当前数据库所存储的全部账户信息,并且删除已注册的账户信息。用户管理面展示如图5-10所示。图5-10用户管理界面图选择用户注册界面,可以注册新的用户,按指示填写相应信息,点击保存,便可创建一个新的账户,用户注册管理面展示如图5-10所示。图5-11添加用户界面图5.3.2班级管理界面点击班级管理界面,可以增加新的班级信息,也可以对已存的班级信息进行删除和修改,班级管理界面展示如图5-12所示。图5-12班级管理界面图5.3.3通知管理界面选择信息管理,可以看到已有的信息列表,也可以添加新的通知消息,还能对已发布的通知进行修改和删除,通知管理界面展示如图5-13所示。图5-13通知管理界面图
6系统测试6.1测试重要性测试环节是每个项目中一个必要且重要的环节,该环节在进行时若没有发现明显缺陷和错误,或着潜在的威胁,对于一个已经开发完成的项目来说是一种致命的伤害。而一个成功的项目必定少不了数次的测试和检验。当然,检验的过程是相对枯燥乏味的,因为它不能给予项目的测试员自豪感和成就感,会导致测试员提不起兴趣,从而使得工作效率大大降低。测试环节还有一点相当重要,小的开发项目可能因为测试人员不够,而安排自己开发人员来做测试人员的工作,这样很容易出现“不识庐山真面目,只缘身在此山中”的现象。开发人员在自己开发的项目里测试,会产生一种代入感,这种代入感会让开发者自己难以发现测试中的错误和问题。盲目的沉浸在自己所做成的项目中。所以,想要做好测试工作,我们首先不能小看这一环节,要通过自己的耐心和细心,发现漏洞,弥补开发人员在项目的不足,同时也不能抱着开发者来做测试就一定没问题的心态,做着本该测试员做的工作。6.2测试方案软件测试用例是为了更好地进行系统测试而设计的一些数据和操作,本考勤系统主要使用黑盒测试的测试方案。下面是本系统的一些测试用例如表6-1至表6-5所示。(1)用户注册测试,如下表6-1。表6-1前置条件:进入注册界面测试方法:黑盒测试输入数据:用户名:qb学号:2027019113姓名:陈泉斌密码:123选择班级选择老师账户或学生账户执行步骤:填写注册信息->提交预期输出:注册成功实际结果:注册成功结论:通过测试(2)学生签到测试,如下表6-2。表6-2前置条件:以学生身份登入应用测试方法:黑盒测试执行步骤:选择考勤打卡模块->选择发布的考勤->选择定位签到预期输出:签到成功实际结果:签到成功结论:通过测试(3)学生修改密码测试,如下表6-3。表6-3前置条件:以学生身份登入应用测试方法:黑盒测试执行步骤:选择个人模块->输入要修改的密码->再次确认输入密码->点击保存信息按钮预期输出:修改成功实际结果:修改成功结论:通过测试(4)教师发布签到,如下表6-4。表6-4前置条件:以教师身份登入应用测试方法:黑盒测试执行步骤:选择班级->选择发布签到模块->设置时间和地点->点击发布签到按钮预期输出:发布成功实际结果:发布成功结论:通过测试(5)教师查看考勤统计,如下表6-5。表6-5前置条件:以教师身份登入应用测试方法:黑盒测试执行步骤:选择班级信息模块->选择需要查看的班级->选择查看考勤图表预期输出:显示正确的班级和对应班级的考勤图表实际结果:显示正确的班级和对应班级的考勤图表结论:通过测试6.3测试结论综上用例测试,测试结果都为通过。在测试中也确认了以实现的功能都满足了各种需求,测试结果也为通过。本系统功能齐全,系统优良,操作简单,可以成为一个优秀的课堂考勤管理系统。7结论本次设计利用Java编程语言基于Androidstudio软件开发程序配合MyEclipse编译工具,数据库采用MySQl5.1版本,对课堂考勤管理系统进行开发设计,设计了包含管理员、教师和学生三种用户的考勤系统,并且实现注册登入功能模块、定位打开功能模块、考勤信息统计功能模块等,达到了此次开发设计的目的。在设计过程中,让我较不满意的是因为开始设计系统功能时,本人一心想着应该多加点考勤方式来体现考勤功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 6.2静态检测工具
- 壁画制作工技术突破考核试卷含答案
- 观赏鱼养殖工岗前协同应用考核试卷含答案
- 2025年智能家居控制移动端应用开发
- 2025年职称考试资料题库及答案
- 2025年职业卫生与放射卫生试题(答案)
- 2025年中国地震局事业单位公开招聘考试历年参考题库含答案详解(5套试卷)
- 2025年中级注安《建筑施工安全》考试真题及答案解析
- 2025年中医助理医师真题及答案
- 2025年智能家居用户体验设计动画设计
- 紧急订单交付应急预案
- 国家职业技术技能标准 6-31-03-03 生化检验员(试行) 2024年版
- 学校校服厂管理制度
- 银座运营管理制度手册
- 重医大《护理学基础》教学大纲
- 课件英语选择性必修三Unit3Usinglanguage
- 花时间了花就开了 小学二年级家长会 课件
- PCR原理完整版本
- DL∕ T 855-2004 电力基本建设火电设备维护保管规程
- 交投国企招聘笔试真题答案
- 贵州省康复医院环评报告
评论
0/150
提交评论