上课点名系统方案.docx
《上课点名系统方案.docx》由会员分享,可在线阅读,更多相关《上课点名系统方案.docx(39页珍藏版)》请在冰豆网上搜索。
上课点名系统方案
盐城师学院
毕业设计
2013-2014学年度
基于Android的上课点名系统
学生
学院
专业软件工程
班级
学号
指导教师
2014年3月1日
基于Android的上课点名系统
摘要
上课点名系统主要利用当前成熟的web技术和当前流行的移动平台,为老师和班长提供对上课点名信息的提交和查询的功能。
本系统以Eclipse为开发工具,利用成熟的SSH框架,Android技术设计并开发,同时采用MySQL5.0完成数据库的设计及使用。
本系统的主要功能模块:
教师查询缺课信息模块,教师处理缺课申请模块,教师查询历史已处理模块,班长提交缺课信息模块,班长查询缺课信息模块,管理员管理用户信息模块,管理员管理课程信息模块,管理员管理学生信息模块。
本文先阐述了课题研究背景及主要容,又进行了系统的需求分析,接着进行系统设计和实现,最后对系统进行了相应的测试。
本系统具有操作简便,可靠性强,可扩展性好,适合我校的实际情况等特点。
【关键词】EclipseAndroid上课点名系统分析设计
ClassAttendanceSystembasedonandroid
Abstract
Themainadvantageofonlinemedicalmanagementsystemisnowwebtechnologies,providingmedicinesmanagementandqueryfunctionsforpharmacymanagers.ThissystemEclipsedevelopmenttools,theuseofsophisticatedSSHframework,whileusingSQLServer2005completethedatabasedesignanduse.
Themainfeaturesofthissystemarethebasisofinformationmanagementmodule,inventorymanagementmodule,salesmanagementmodule,querystatisticsmoduleandsystemsettingsmodule.Thispaperfirstdescribesthebackgroundandsignificanceofthecourse,andthendemandanalysis,thefinalsystemdesignandimplementationinaccordancewiththeneedsofthesystem,thefinaltestofthesystemaccordingly.Thesystemhasasimpleoperation,security,scalability,andothercharacteristicssuitablefortheneedsofthecurrentmedicalmanagement.
[Keywords]EclipseAndroidClassattendancesystemAnalysisDesign
1.引言
近年来,智能手机得到广泛的使用,它给我们的生活的许多方面带来了很大的便利。
我们可以利用移动端设备完成在PC端的一些功能,如网上购物,网银支付。
因此,利用当前流行的移动设备构建现代信息化课堂是可行的。
在讨论了Android应用系统开发环境的基础上,提出了基于Android的上课点名系统,该系统可以为老师和班长提供上课点名信息的提交、查询等功能,节省老师和学生的时间,有利于课堂出勤等信息的统计。
系统以Tomcat为Web服务器,MySQL为数据库管理系统,移动端和服务端的数据交互采用JSON技术。
1.1研究的背景及意义
计算机技术的发展使得计算机和手机逐渐成为人们生活中必不可少的一部分,与我们生活也息息相关。
伴随着我国教育的普及和当前全球围的知识经济的突飞猛进,利用当前的技术,为学生和老师实现一个可靠、安全、高效的上课点名系统是完全可以实现的。
该系统可以有效的节省老师和学生的时间,提高老师对学生出勤的监控,为老师能够顺利地完成教学计划提供有力的保障。
对于学生,能提高他们的出勤率。
这对于促进信息化课堂有很好的辅助作用。
1.2研究思路
选题之后,我和指导老师、同学进行沟通,了解系统的功能需求和性能需求。
根据我们的调查,学校多数学生使用Android移动设备,因此手机客户端利用Android技术开发,但是系统会预留好必要的接口,为以后开发其他移动端做好准备。
对于web服务端,采用成熟稳定的SSH框架,保障系统的稳定性和安全性。
采用Json数据格式进行移动端和服务端的数据交互。
为了尽量减少网络连接,经过讨论,本系统把一些必要的数据以xml的格式存放在客户端。
若数据有更新,服务器推送信息提示移动端进行数据更新。
在进行系统需求分析后,根据需求分析进行数据库设计,系统概要设计和详细设计,最后编码实现本系统并进行必要的系统测试。
2.环境语言及相关技术的介绍
经过讨论,我们知道,目前,开发此类系统的技术已经相当成熟,可提供的开发工具也很多。
在本课题中选择如下的开发环境:
开发环境:
Eclipse,MyEclipse
编程语言:
Java+SSH+Android
数据库:
MySQL
2.1Eclipse
Eclipse是一个可扩展的开发平台并且是开放的基于Java。
对于它本身而言,它只是一个框架和一组服务的集合,通过插件构建开发环境[1]。
2.2MyEclipse
MyEclipse是对EclipseIDE的扩展,利用它可以在开发web程序的时候,极大的提高我们的开发效率[2]。
2.3Spring+Struts+Hibernate
Spring是一个强大的框架,它解决了在web开发中许多常见的问题。
Spring提供了一致的方法来管理业务对象,帮助人们养成用注入接口的方式进行编程的习惯[3]。
Struts是一个MVC框架,基于SunJ2EE的平台,主要是用Servlet和JSP技术来实现的。
利用struts后,开发人员进行编程的时候,就不用再自己去编程实现全部的MVC模式了,很大的节省了开发人员的时间[4]。
Hibernate是一个开源的,对象和关系映射框架,它实现了对JDBC非常轻量级别的封装,使得java的程序员能够真正的利用面向对象的思想来操作当前成熟关系数据库[5]。
2.4Android技术
Android是一个手机平台,它是由Google公司最新推出的。
以Linux为核心,是真正的开放性的移动设备综合平台。
它给全球智能手机行业带来很大的改变。
3需求分析
上课点名系统主要有三个角色,分别是任课老师,班级,管理员。
任课老师可以实现对缺席学生的查询,处理他们的申请,查询历史已处理信息;班级角色,可以对本班级所上课程缺席人数的查询,对每次上课的缺席人数进行提交。
管理员则对每学期的上课信息和数据信息进行管理。
任课老师角色系统用例图如图2-1所示:
图2.1老师功能用例图
班级角色系统用例图如图2-2所示:
图2.2班长功能用例图
管理员角色系统用例图如图2-3所示:
图2.3系统管理员用例图
3.1功能性需求
3.1.1教师模块需求分析
教师的角色的功能主要有老师查询自己所教班级一段时间的学生缺课情况,处理学生的缺课撤销申请,查看已处理申请的功能。
任课老师用android手机以自己的账号和密码登入系统,进入系统后,一共有三个界面,一是查询界面,二是查看已处理请求,三是查看并处理未处理请求。
(1)教师查询功能:
任课老师登入系统后,切换到查询页面,选择需要查询的班级以及所要查询的课程,点击查询按钮后,系统为老师查询出某个班级某门课程学生上课缺席情况。
时序图如图2-4所示:
图2-4老师查询时序图
(2)教师查看已处理缺课信息功能:
由于很多学生经常有事请假,任课老师一次两次可能会同意他的缺课撤销申请,为了避免无缘无故的请假,系统提供此历史记录查询,供任课老师的处理缺课撤销申请提供参考。
任课老师登入系统后,切换到此功能,选择相应要查询的班级和课程,点击查询,系统为任课老师查找出某班级某课程的已处理的缺课信息。
时序图如图2-5所示:
图2-5老师查询历史记录时序图
(3)教师的处理缺课撤销申请功能:
有些学生有时会因为某些事缺席上课,任课老师要对缺课信息及时处理,是否同意本学生的某次缺课。
若同意,则在老师查询缺课信息时,不对本学生的此次缺课进行统计,即不做缺课处理。
若不同意,该学生的此次缺课最终纳入缺课信息统计,以便任课老师期末为其打出平时分。
时序图如图2-6所示:
图2-6老师查询历史记录时序图
3.1.2班级模块需求分析
班长角色的功能:
一是提交某门课程某次上课的学生缺课信息至后台服务器,以便任课老师对其进行处理,二是查询本班级某课程本班级学生的缺席情况,并提供分享功能,以警示那些经常缺课的学生。
(1)班级提交缺课信息的功能:
某班长利用本班级的账号登入系统并切换到提交页面,由于缺课学生人数的不确定性,系统提供动态添加功能。
班长选择相应的课程后点击增加按钮,系统跳出一个添加填写缺课学生的页面,班长填写后,点击确定,就会在原界面上增加一条学生缺课信息。
若有多人可以添加多个学生。
然后班长点击提交按钮,若提交至后台成功后,系统自动跳到短信界面,班长编辑短信发给任课老师,提醒老师对本次的缺课信息进行处理。
时序图如图2-7所示:
图2-7提交缺课信息时序图
(2)班级查询本班学生某课程的缺课情况:
某班长利用本班级的账号登入系统并切换到查询页面后,选择要查询的班级,点击查询按钮。
系统会以列表的形式给出相应的数据。
时序图如图2-8所示:
图2-8班级查询信息时序图
3.1.3管理员模块需求分析
管理员功能:
管理的相关功能在PC端。
一是导入老师上课信息,每个学期,管理员将本学院的教师上课信息提交到后台。
二是对本学院的学生信息进行更新。
三是每学期对数据库信息进行清空。
(加用户权限,导出)
(1)导入老师上课信息功能:
每学期老师的上课信息都不同,这就需要管理员在每个学期对老师的上课信息进行更新,在开学前对新的学期老师上课信息进行导入,让系统生成相应的XML文件供客户端下载,保证系统能够在新的学期进行正常使用。
并且可以修改相应的上课信息。
时序图如图2-9所示:
图2-9管理员导入上课信息时序图
(2)更新学生信息功能:
学院每个学年都会有很多新生入学,这就需要管理在每个学年里对本学院的学生信息进行更新。
管理在pc端登入系统后,选择到更新学生信息的功能,导入相应的excel表格即可。
时序图如图2-10所示:
图2-10管理员导入学生信息时序图
3.1.4客户端更新IP功能需求分析
有时服务端IP地址是动态变化,为了保证客户端能顺利的完成数据交互。
需要在客户端动态加载IP的功能。
若用户首次登入到界面,系统需要用户数据服务器的IP,以保证客户端能够与服务端保持网络通畅。
时序图如图2-11所示:
图2-11更新IP时序图
3.2非功能性需求
(1)操作便捷性:
在所有的操作中,系统只需要用户选择,无需过多的输入,真正节省用户的时间。
(2)安全性:
不仅仅具有权限控制操作,对数据库中的数据进行定期的备份,保证数据的安全性。
(3)开放性:
通过高聚