登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 物联网工程 > 正文

课堂考勤管理APP的设计与实现毕业论文

 2020-02-19 18:01:02  

摘 要

现在我们学校的课堂考勤主要还是靠点名记录来计算平时分,随着技术的发展我们也有一些方便的打卡系统,比如钉钉。但是这中APP主要的使用场景是工作打卡,与我们学校中的课堂考勤不是十分契合。现在网络上有许多课堂考勤的方案,使用了许多新的方法来提高课堂考勤效率,所以这次本文根据实际情况设计了一款基于Android系统的课堂考勤APP,可以在手机上记录考勤,可以让老师与学生查询到考勤记录,更加方便于统计计分,更加节约时间。本文从模块设计和实现过程的内容出发,阐述了主要的工作和应用Android平台开发过程,包括老师用户与学生用户的数据库设计、系统需求分析、概要设计和详细设计。本APP能够实现签到考勤、查询修改考勤、学生老师信息登陆,是一个完整的考勤系统。

关键词:Android;数据库;考勤

Abstract

Now our school's classroom attendance mainly depends on the roll call record to calculate the average score. With the development of technology, we also have some convenient punching system, such as nails. But the main use scenario of APP in this case is work card, which is not very consistent with classroom attendance in our school. Nowadays, there are many schemes for classroom attendance on the network, and many new methods are used to improve the efficiency of classroom attendance. So this paper designs an App for classroom attendance based on Android system according to the actual situation, which can record attendance on the mobile phone, let teachers and students inquire attendance records, more convenient for statistical scoring, and save time. Starting from the content of module design and implementation process, this paper elaborates the development process of Android platform, which is the main work guide service application, including database design, system requirement analysis, outline design and detailed design of teachers'and students' users. This APP is a complete attendance system, which can check in, query and modify attendance, and log in the information of students and teachers.

Key Words:Android;database;attendance

目 录

摘 要 I

Abstract II

第1章 绪论 1

1.1 研究背景 1

1.2 研究的目的及意义 1

1.3 相关技术 2

1.3.1 Android系统介绍与框架 2

1.3.2 LitePal介绍 5

第2章 系统分析与总体设计 6

2.1 需求分析 6

2.2 系统总体设计 6

2.3 系统模块划分 7

2.3.1 主界面模块 7

2.3.2 登陆注册模块 8

2.3.3 课程信息模块 9

2.3.4考勤功能模块 10

2.4 数据存储设计 11

2.5 开发环境配置 12

第3章 系统实现 14

3.1 主界面模块实现 14

3.1.1 主界面设计 14

3.1.2 主界面功能实现 15

3.2 登陆注册模块实现 16

3.2.1 登陆注册界面设计 16

3.2.2 登陆功能实现 17

3.2.3 注册功能实现 17

3.3 课程信息模块实现 18

3.3.1 添加课程界面设计 19

3.3.2添加课程功能实现 19

3.4 考勤功能模块实现 20

3.4.1 考勤界面设计 20

3.4.2 考勤功能实现 21

3.4.3 查询、修改考勤功能实现 22

第4章 系统测试 24

4.1 功能性测试 24

4.2 兼容性测试 26

第5章 总结与展望 27

5.1 总结 27

5.2 展望 27

参考文献 28

致 谢 29

第1章 绪论

在课堂上标记出勤率以及记录学生的考勤是老师很重要的一项教学要求,考勤是规范学生上课非常重要也是非常必要的手段。而传统的点名记录又很容易丢失也不容易统计。随着移动互联网的不断壮大和移动平台的飞速发展,可以利用安卓系统,搭建便捷有效的手机考勤管理系统[1]

1.1 研究背景

课堂考勤是学校教学质量的保障环节,不是每一位学生都能够自发的学习,即使是在我们期望和为了他们自己的前程的考虑下,所以课堂考勤是不可缺少也是非常必要的,但是目前高校考勤仍旧摆脱不了传统的纸质记录方法,我仍然记得刚上大学时候高数课两个专业的同学们都在一起上课,大教室里面每个班分散开来,老师在讲台上发布命令各个班的班长学委围绕着大教室一个一个清点自己班同学,最后再到讲台前给老师汇总,这样子的考勤往往会占用课间以及上课铃后的10分钟,这种大课的点名十分的浪费时间所以老师也不太愿意考勤。因此现在高校迫切的需求提高考勤效率的方法。虽然工作场所的考勤APP市面上有很多比如钉钉,但是钉钉主要是工作社交,打卡只是它的微末功能,而且工作场所的使用也不太适合课堂场所的使用。所以我想可以设计一款在课堂情况下使用的考勤系统。

目前国内外关于课堂考勤的研究有许多,有很多种提高考勤管理效率[2]的方案。有一些使用随机生成二维码给学生扫描[3]来记录考勤信息,也有使用企业微信平台连接学生手机使用“摇一摇”功能[4]记录考勤信息,最新的期刊上甚至有以人脸识别作为学生课堂考勤管理系统的核心部分[5]的方案。在文献上我们可以看到关于课堂考勤的发展趋势[6]会随着技术的发展越来越高效便捷。当然了本文不会讨论每一种方案,要基于自身现实条件,编程水平,参考文献中提供的方案思路,设计并实现一个可使用的基于Android的课堂考勤系统。

1.2 研究的目的及意义

一套健全的考勤系统可以有效的约束和管理目标,一个优秀的企业一定有一套健全且有效的考勤管理系统,目前人们熟知的考勤系统有web考勤系统,施工现场考勤系统,门禁考勤系统。课堂考勤在学校的学生的管理中发挥重要作用。我们现在学校仍旧使用传统的考勤方式,但是这种方法十分浪费上课时间所以很多时候不仅学生不愿意考勤,老师也不愿意考勤学生,而且学生在大教室中代签,多签弄虚作假也是常有的情况,这种考勤往往反应不了学生的真正情况。在纸上的记录也十分不便于统计、查询也容易丢失。现在高校管理日益规范,这种传统的考勤方式真的很难跟上高校管理的规范步伐,随着科技的发展,高校都在积极尝试各种提高考勤效率的方法,上节中诸多研究也早就提供了不少思路。

伴随着智能手机的发展,学生中几乎人手一部手机,而且Android应用的用户交互也设计的比较人性化方便操作。那么本文就基于Android平台设计并实现一款课堂考勤APP,提高课堂考勤效率。

1.3 相关技术

本文设计基于Android平台,数据库使用开源库LitePal。

1.3.1 Android系统介绍与框架

Android系统是Google公司开发的一款开源移动操作系统。Android完全开源,并且Android平台从底层操作系统到上层用户界面和应用程序都不存在任何阻碍创新的专业权限障碍。而且开源的情况下让Android平台的开发者队伍愈来愈多,并且他们会推动Android的发展,并且随着用户和应用的丰富,会使这种良性循环更好更快的运作。

Android是在Linux内核的基础上,使用“软件层级”的架构组织的。“软件层级”架构的意思是它包含有多个层次,Android可分为四层,如图1.1所示,从底向上分别是Linux内核层、系统运行库和运行环境层、应用程序框架层和应用程序层。

  1. Linux内核层

Android平台实现的基础,与硬件打交道。主要包括进程管理、安全、内存管理、网络栈等模块[7]。同时Linux内核层也是硬件抽象层为上层的Java API Framework提供相关服务,当需要开发Android驱动程序时,就得从Linux内核层入手开发。

  1. 系统运行库和运行环境层

本地库是主以C 辅助C语言写成的,本地库通过Android应用程序框架为用户提供服务。

Android应用是Java语言编写的,也就是需要Java的运行环境,每个Android应用程序都有一个专属的进程,而且不是多个程序公用一个虚拟机,每一个Android应用程序都有一个Dalvik虚拟机的实例。Android5.0之后Dalvik虚拟机被ART取代。

  1. 应用程序框架层

框架层是开发人员从事Android开发的基础,许多APP所用的API框架都是在这一层访问。这层可以让开发人员很方便的替换重用应用程序中的组件,也可以很方便的使用别的开发者上传的功能块。因为下层有Java运行环境,这一层可以很方便的使用Java语言开发。

  1. 应用程序层

Android设备上的应用程序都在这一层,也就是说应用层是设备与用户进行交互的层面,是Android系统的最顶层。

图1.1:Android系统架构

Android应用程序四大组件

  1. 活动Activity

活动是所有程序的根本,Android所有程序的流程都得运行在活动之中。活动也是Android开发者们遇到最多最基本的Android模块。活动的生命周期有七个方法,三种基本状态。

Resumed:活动处于屏幕的最上层,用户可以对其进行操作,就是运行状态,在任何时刻都只能让一个活动处于运行态。

Paused:一个活动不在最上层,但仍然是可见状态就是暂停态。此时的活动仍然位于内存中,只要有CPU时间片就能继续运行,当然此时系统没有分给它CPU时间片所以只能处于暂停态。处于暂停态时系统可以调用finish()杀掉活动。

Stoped:当一个活动被另一个活动完全覆盖的时候,该活动就处于停止态。这时候活动也是存在内存中,但是它不会被用户看到,而且当系统需要内存的时候可以把它释放。所以当活动处于停止态的时候比处于暂停态时更容易被杀死。

  1. 服务

服务是Android四大组件中与活动相似的组件,都是可执行的程序,只是服务对于用户来说是隐形的,因为服务没有用户界面,在后台运行。服务的生命周期包含有五种方法。服务有两种启动方式,一种是无绑定的直接通过startService()启动,这种启动方式的服务会一直在后台运行,直到服务调用者再次启动或调用stopService()关闭服务,因为没有绑定,当服务关闭后系统会销毁这个服务。另一种是bindServuce()启动服务,这种启动方式会把服务调用者与服务绑定,可以通过调用者回调服务的方法来操作服务,即使在停止服务后,只要调用者没有销毁,那么系统就不会销毁这个服务,也就是说绑定后服务与调用者是“共存亡”的了。

  1. 广播接收器

Android中普遍使用广播这种在应用程序之间进行信息传输的异步机制,异步就是指广播的发送方与接收方不是互相等待的。广播使用的是订阅—发送机制,广播的底层实现是发送方向发送列表中每一个目标都发送广播,而广播接收器可以过滤掉自己不感兴趣的外部事件,只对自己感兴趣的广播进行响应。

  1. 内容提供者

Android系统对于数据的保护是非常严格的,一个应用的数据信息是不允许其他应用直接访问的。但是Android系统也不会让应用变得孤立,内容提供者就是为存储和获取数据提供统一接口,使不同应用之间共享数据。

1.3.2 LitePal介绍

现在网络上关于Android的开源热潮让许多开发者受益,网络上有许多优秀的开源项目,让我们的工作大大提高了效率。

Android本身就提供了SQLite轻量级数据库,使用SQLiteOpenHelper类就可以方便的管理数据库,但是SQlite数据库还是使用SQL语句来操作数据库的,对于SQL语句不太熟悉的人来说还是太复杂。

LitePal就是一款Android开源的数据库框架,将常用的数据库功能进行封装,采用对象关系映射模式。可以不使用SQL语句操作数据库的增删改查,建表等。可以像面向对象一样调用API就可以执行增删改查命令,而且当API中的命令满足不了需求时,LitePal同样也兼容了SQL语句,可以支持原生的SQL语句操作。

第2章 系统分析与总体设计

本章是对课堂考勤APP的分析与设计,从需求分析开始,对系统的功能进行设计,划分。建立合理的框架,设计并完成合理的数据库存储方案。

2.1 需求分析

用户特征的分析:本APP用户群体是在校老师与学生,他们平时使用手机的场景很多,对于仅仅在课堂考勤使用的APP十分挑剔。我认识的同学们很多都不会愿意在手机上下载一个无用或者臃肿的APP所以本APP设计应该尽量简洁,界面美观大方。

功能性需求分析[8]:课堂考勤APP主要有学生信息、老师信息、课程信息的增删改查,考勤功能,查询考勤,登陆注册功能。

非功能性需求分析:一款APP的非功能性需求一般是两个方向,一是响应是否流畅,我们的手机上都有不少APP,我们操作的时候最直观的感受就是APP是否流畅,一款卡顿的APP我相信大家都不会留在手机上。所以本APP设计的时候应该避免不必要的资源占用。第二就是界面的美观,布局是否合理。一款APP的门面就是界面,布局的合理美观也是吸引用户的重要条件。

2.2 系统总体设计

经过对系统的需求分析,我们已经对系统功能有了划分,老师陆陆注册、学生注册,老师可以发布课程、考勤、查询考勤、修改考勤,学生可以选课、查询考勤。系统总体功能如图2.1

图2.1 课堂考勤系统的功能

再就是对主界面设计,我们可以看到老师端的功能要繁多一些,所以我们在对老师端的主界面进行设计的时候考虑到用户交互使用了侧滑菜单。学生端功能少可以直接在主界面设计按钮直观又简洁。

2.3 系统模块划分

通过上文系统功能的总体设计我们可以把系统划分为四个模块:主界面模块、登陆注册模块、课程发布/选择模块、考勤模块。

2.3.1 主界面模块

主界面是APP的门面,用户对这款APP的第一印象一定是想要一个好的主界面。可以毫不夸张的说,主界面是直接影响用户体验的第一窗口,就是决定APP生死的关键。在用户启动课堂考勤管理APP后,会自动进入主界面。老师端的主界面是使用的侧滑菜单,所以进去只看到欢迎使用的主背景,打开侧滑菜单可以看到上方是老师的个人信息,登陆之后会显示老师的名字和工号。下面就是功能选项了主要功能签到考勤、查询考勤、登陆、添加课程、退出系统都在上面显示。非常的美观,具体详情在下一章介绍。学生端的主界面功能较少所以直接在主界面上显示功能菜单,十分的简洁。主界面的用例说明如表2.1所示

表2.1主界面模块用例说明

用例编号

UI1

用例名称

主界面模块

活动者

用户

优先级

描述

本用例描述导游服务APP的启动,到显示主界面,以及主界面的结构布局及功能,。

前置条件

用户打开课堂考勤APP

基本流程

  1. 用户打开课堂考勤APP
  2. 主界面启动
  3. 描述主界面UI组件细节

异常流程

后置条件

完成APP主界面的显示

补充说明

2.3.2 登陆注册模块

用户在主界面点击登陆后会从主界面跳转到登陆界面。登陆界面输入账号密码可以选择记住密码功能。如果没有完成注册,可以点击注册按钮跳转进入注册界面,在注册界面提交后会返回登陆界面,并且会把注册好的账号密码自动填入输入框,从而可以直接登陆。登陆注册的用例说明如表2.2所示。

表2.2 登陆注册用例说明

用例编号

UI2

用例名称

登陆注册模块

活动者

用户

优先级

描述

本用例描述课堂考勤APP的登陆注册模块,首先介绍进入该模块的途径,然后介绍该模块的界面UI的布局结构和功能。

前置条件

用户通过点击登陆按钮进入

基本流程

  1. 进入登陆模块
  2. 输入账号密码点击登陆
  3. 点击注册按钮
  4. 进入注册界面

扩展流程

2a.如果点击的记住密码,当进入登陆界面时会自动填充输入框。

异常流程

后置条件

主界面会显示姓名和学号/工号

补充说明

2.3.3 课程信息模块

老师用户点击添加课程进入添加课程信息界面,学生用户点击添加课程进入选课界面。两个输入框接收课程名称和课程代码,两个按钮,添加和返回。老师输入课程名称,课程代码,点击添加就可以在数据库中创建课程记录,学生也可以选择课程。课程信息模块的用例说明如表2.3所示。

以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图