1、摘要现如今无线移动设备飞速发展,手机已经发展到人人都有的情 况,使用Android系统的人也在急速提升,Android应用程序方便我 们的生活。近些年来Android系统得到了我们许多人的认可和使用,据2017年的数据显示,Android系统占据全球智能手机操作系统市 场86%的份额,中国市场占有率为87%。Android系统也从1.5发展 到9.0,以及平板电脑系统4.2。在上学的时候,很多学生包括本人经常因为课程混从而不知道上 课的时间和地点。因此我想以Android平台作为出发点建立学生课程 管理系统帮助学生准时上课。设计的主要功能有每节课的上课时间跟 地点、每周的课表查询、课程变更的消
2、息提醒。关键词:android;课程管理目录1设计背景与意义.11.1设计背景.11.2设计意义.12系统需求分析.22.1概述.22.2系统可行性分析.22.3业务流程图.32.4功能需求分析.42.5系统用例.42.6设计目标.53系统设计.63.1系统总体结构设计.63.2系统功能结构.64数据库设计.75系统实现.125.1系统运行环境和开发平台.125.2权限设计.125.3基本配置设计.135.4用户注册.135.5用户登录.145.6课程管理.145.7课表查看.155.8日历查看.165.9日程管理.165.10个人信息管理.17总结.18致 谢.19参考文献.201设计背景与
3、意义1.1设计背景自从乔布斯发明了智能手机以来,在我们生活中手机的使用频 率越来越高。在大学中,由于大家的时间多,爱好广泛,对手机的依 赖更加明显。当然事务都有它的两方面性,可以采取一定的方式,使 智能手机更好的服务大学生活。通过仔细观察,学校中普遍存在一个现象就是,大家在上课时 常常忘记了在哪个教室上哪门课。主要的原因是课程比较多,而且上 课地点和时间都比较分散。通过对以往所学的专业知识梳理,结合上 述现象,想到了可以利用android技术,开发一个APP,实现每位学 生每节课的课程管理。1.2设计意义本设计采用eclipse作为集成开发工具,以Android系统为基础,主要应用四大组件 A
4、ct ivity、Cont entProvider、BroadcastReceiver、Service来完成一个大学课程APP设计。它的主要功能是根据每位学 生需求,查找出指定课程所在的上课地点和上课时间,并设计有进行 提醒的功能模块。希望这个app让我们的大学生活更方便。12系统需求分析2.凝系统分析其实就是要在系统实现前分析系统各方面的需求和功 能,要明确确认系统的功能的业务逻辑,再将系统分成几个部分然后 仔细研究。包括系统的流程,在总体的规划指导下,确定新系统的逻 辑功能。本着面向用户的原则,分析系统的过程。2.2系统可行性分析系统的可行性分析,这个目的是要看原来我们设想的目标在各个 方
5、面能不能实现,其实就是以另一种不是很具体的方式来做系统的一 个整体的分析和设计。2.2.1技术可行性技术可行性是对于这个软件项目技术问题的策略,要在硬件设备 上和技术上都能支持系统的成功实现。本系统的开发采用SQL Server 2008作为系统的数据库,它是一 个支持多用户的新型数据库,适用于大中规模的数据量需求。本系统以eclipse作为开发工具,eclipse在安全性、准确性和 运行速度方面都存在着一定优势,而且具有良好的报错功能。在这个 毕业设计准备期间,本人深入的学习了 Android技术,逐渐的又在掌 握程序开发,而且还学会了在程序中添加一些必要的语句用来达到特 2定的目的。综合以
6、上分析,本设计在技术上是可以实现的。2.2.2应用可行性本系统是一个小型的学生课程管理系统,所需要耗费的资源很 小,在市面上的手机在硬件设备和软件都能满足使用条件。学生课程 管理app有一定的使用人群没有违反法律跟国家政策。因此本系统在 应用上是可行的。2.3业务流程图工作过程。在制作业务流程图的过程中,我们可以知道了解出工 作运行的具体过程,制作业务流程图的过程,也可以让我们很好分析 和整理结果,可以帮助我们分析出这其中可能存在的问题和不合理的 地方,如图2-1所示。图2-1业务流程图32.4功能需求分析本软件的主要功能1、可以显示是哪一周、哪一个年级、哪一个学期,日期。2、可以查看本周的课
7、程内容,也可以查看其他周的课程内容,页面显示课程内容有:课程的名称,上课的老师,上课的地点,上课 的时间。3、可以在APP上自己添加课程信息(第几周到第几周,哪一节 课,在哪里上课,什么时候上课,哪个老师上课)4、有日历板块查看日历5、有添加、修改、删除管理日程信息的功能。6、有提醒用户日程的设计。2.5系统用例用户用例图如图2-2所示。系统主要提供的功能如下:用户百程提逗D登录二信息蓄直 快程管氟二 百程管图2-2用户用例图Q42.6设计目标目的想要设计与实现一个以Java语言作为平台的安卓课程日历appo为了可以帮助用户对课程信息的管理与查询。(1)方便快速操作(2)节约资源,提高课程管理
8、的精确度53系统设计3.1系统总体结构设计在此次系统的总体结构设计过程中,在持久化层经过筛选,使用 SQL it e来进行。3.2系统功能结构学生课程管理app系统主要是由前台使用和后台数据库组成。用 户能够在前台进行操作使用,可以进行信息管理,因为界面需要面对 用户,所以在外观设计上进行了设计,设计了操作的方便性和简洁性。应用从前台方面进功能设计,系统的主要功能包括个人信息的管理、日程的管理、课程的管理、日程的提醒等功能。如图3-1所示。学性课程管理叩P闾程管理 课程管理个人信息管理 日程提醒登录注册图3-1系统功能结构图64数据库设计为了方便对数据库的管理与维护,本系统的数据库包括:学生用
9、 户表、学生信息表、课程信息表、班级信息表、教师信息表、教师课 程记录表、学生课程记录表,具体如表4-1所示。表4-1数据库表设计的说明表名说明xsyhb xsb学生用户表 学生表kcb课程表bjb班级表jsb教师表jskcjlb教师课程记录表xskcjlb学生课程记录表(1)学生用户表:用于保存学生的用户名、用户密码、身份。ER图 与表字段分别如下图4-1、表4-2所示。表4-2学生用户表列名名称数据类型是否为空备注sh学号Varchar(20)否yhmm用户密码Varchar(20)否sf身份Varchar(50)否7(2)学生信息表:用于保存学生的学号、姓名、性别、院系、入学 时间、政治
10、面貌、备注,如表4-3所示。ER关系如图4-2所示。表4-3学生信息表列名名称数据类型是否为空备注xh学号Varchar(50)否xm姓名Nvarchar(50)否xb性别Char(2)否yx院系Varchar(50)否rxsj入学时间smalldatetime否zznun政治面貌Nvarchar(50)否bz备注text(4)课程信息表:用于保存学生的课程名称、课程号、课程类型、学时、学分,如表4-4所示。ER图如图4-3所示。表4-4课程信息表8列名名称数据类型是否为空备注kch课程号Char(10)否kcmc课程名称Nvarchar(50)否xf学分int否xs学时int否kclx课程类
11、型text否学时课程名称(课程)课程号/课程类型图4 3课程信息表ER图(4)班级信息表:用于保存班级号、班级名称、班主任号、所在系别,如表4-5所示。ER图如图4-4所示。表4-5班级信息表列名名称数据类型是否为空备注bjh班级号Varchar(20)否b jmc班级名称Varchar(50)否szxb bzrh所在系别 班主任号Varchar(50)Nchar(10)否否(5)教师信息表:用于保存教师编号、姓名、性别、政治面貌、院 系名称、职称,如表4-6所不。ER图如图4-5所不。9表4-6教师信息表列名名称数据类型是否为空备注jsbh教师编号Char(10)否xm姓名Nvarchar(
12、50)否xb性别Char(2)否yxmc院系名称Nvarchar(50)否zc职称Char(10)否zzmm政治面貌Char(16)否(6)教师课程记录表:用于保存教师ID、教师号、教师所任课程号、教师所任班级号,如表4-7所示。ER图如图4-6所示。表4-7教师课程记录表列名名称数据类型是否为空备注jsid教师IDint否jsh jssrkch教师号教师所任课程号Varchar(50)Varchar(50)否否Jssrbjh教师所任班级号Varchar(50)否10教师ID教师号教师课程所任课程所任班级图4 6教师课程记录表ER图(7)学生课程记录表:用于保存学生ID、学号、课程号,如表 4
13、-8所示。ER图如图4-7所示。表4-8学生课程记录表列名名称数据类型是否为空备注xsid xh学生ID学号bigintVarchar(20)否 否kch课程号Varchar(50)否图4-7学生课程记录表ER图115系统实现5.1系统运行环境和开发平台设计本系统所运行环境以及开发平台,主要是pc上开发,在手 机终端上做调试和运行。具体有移动端操作系统Android,SQLite嵌 入式数据库,Eclipse集成开发平台,ADT工具包。5.2权限设计Android中的权限基本上可以分为两类。一种是正常权限:涵盖 应用需要访问其沙河外部数据或资源,但对用户隐私或其他应用操作 风险很小的区域,此类
14、权限如:网络访问,WIFI设置,音量设置等。另 一种是危险权限:涵盖应用需要涉及用于隐私信息的数据或资源,或 者核能对用户存储的数据或其他应用的操作产生影响的区域,此类权 限如:读取通讯录,读写存储器数据,获取用户位置等。对于正常的权限,可以在AndroidManifest.xml中通过 uses-permission声明,声明后即可使用。此类权限会在应用程序安 装时告知用户。对于危险权限,不但需要在AndroidManifest.xml中声明,而且 还需要用户明确授予,如果设备运行的是Android 6.0(API级别23)或更高版本,并且应用的targetSdkVersion是23或更高版
15、本,则应用 在运行时向用户请求权限。用户可随时调用权限,因此用户在每次运 行时均需检查自身是否具备所需的权限如果设备运行的是Andorid 125.1(API级别22)或更低版本,并且应用的targetSdkVersion是22或 更低版本,则系统会在用户安装应用时要求用户授予权限。如果将新 权限添加到更新的应用版本,系统会在用户更新应用时要求授予该权 限。如下图5-2所示。android;name android,permission.A0GtS5_Nt:IWUKK_SI AI/?图5-2权限设计5.3基本配置设计这里可以配置内存大小、程序的名称、文字的大小和颜色等。如下图么3所图5-3基本
16、参数设置5.4用户注册当目前没有注册的用户数量时,需要要先注册,才可以进入系统。使用的流程是,用户先找到注册的界面,然后输入容易记忆的用户名 和密码,密码最好包含数字、大写字母和小写字母三种字符的组合。13用户注册界面如图5-1所示。|Android课程表日历app用户注册zhangfei张飞1332224334图5-4用户注册页面5.5用户登录输入正确的账号密码便可登陆系统。使用流程是,先找到登陆的 界面,然后输入正确的账号跟密码即可。用户登录界面如图5-5所示。登陆赚号0图5-5用户登录页面5.6课程管理用户可以添加课程名称、上课地点与时间、老师等信息,可以查14 看课表信息,可以删除修改
17、课程信息,课程添加界面如图5-6所示。图5-6课程编辑Q编辑课程信息课程名称:.请输入谬程名称教室地点:请输入教室地点老师姓名:请输入老师姓名上课周数:总周数或单双周取消确认5.7课表查看这是课程管理app的课程表界面,用户可以查看课表的信息。课 表界面如图5-7所示。课表信息日四五六12课程:高等教学老师:张老师课程:高等数学老师:张老师地点:502周敌1地点:50去周故:7456图5-7课表查看155.8日历查看当用户想要查看日历时,可以在APP中打开日历界面查看日历信 息,日历页面如图5-8所示。我的所有日程图5-8日历查看5.9日程管理用户可以自主添加、修改、删除日程信息,在设置完时间
18、跟做什 么事情之后,点击完成。到了设置的时间就会提醒我们该干什么了。日程添加界面如图5-9所示。16添加日程保存图5-9日程管理5.10个人信息管理当用户需要修改个人信息时,可以进入APP中的信息修改界面来 操作,个人信息修改界面如图5-10所示。个人信息萱陆赚号 zhangfei肯陆密码:,123456姓名强飞手机号:1332224334图5-10个人信息管理17总结因为经验不足和时间限制,所以在这个系统设计的过程中,会存 在一些缺点。对于这个课程管理的了解也没有非常的充分,所以未能 做到完美。本设计阐述了我对于基于Andriod的学生课程管理app的 方案设计。基于Andriod的学生课程
19、管理app基本功能设计开发。本系统具 有以下优点:在手机上就能操作,操作方式简单易懂,能够根据每位学生需求,查找出指定课程所在的上课地点和上课时间,有进行提醒的功能,方 便用户查看。18致 谢本设计是在陈玉林老师的指导下完成的,陈玉林老师在我毕业设 计期间帮助了我很多,我的毕业设计的选题、内容到最后的修改、完 成都给予了我很大的帮助。因此我非常的感谢陈玉林老师。在我完成毕业设计的期间,我的同学和老师都帮助我很多,尤其 是在我迷茫无助的时候,他们及时的给我伸出了援助之手,非常的感 谢他们。没有他们的帮助我完成不了这个毕业设计。这些东西将会对 我以后的工作和生活都有很大的启发。时间过得很快,三年大
20、学生活马上就要结束了,匆匆三年过去,我在大学校园里的时光,有苦也有乐,但是我的收获更多,感谢各位 老师在我们的学习上还有生活上给我们很多的按照,向我们传授知 识,也教给我们做人的道理。毕业设计虽然很难,但是好在我都克服 了,我感觉到了充实,我相信能够让我的三年大学生活画上圆满句号,并且对以后也会是一番新的启示。19参考文献1 明日科技.Android项目开发实战入门M.吉林大学出版社.20172 沈立炜,宁柯丞,赵文耘.面向用户使用习惯的安卓应用自适应 方法J.计算机科学.20173 陈志德.安卓编程指南及物联网开发实践M.电子工业出版社,20164 陈希文.基于安卓的移动信息采集系统的设计与
21、实现D.武汉邮 电科学研究院,2016.5 王红凯,龚小刚,夏威,吴科庆.基于安卓的安全测试分析J.信 息安全与技术.20156 盖索林.Android开发入门指南(第二版)M.北京:人民邮电 出版社,20127 邹治军.3G Android应用程序数据存储的实现方法J.商业文化,20178 王水,张晓民.软件工程素质导论M.河南:河南科学技术出版 社,20179 张磊.基于Android平台的应用开发研究J.计算机光盘软件 与应用,201410 韩超,粱泉.Android系统原理开发要点详解.北京:电子 工业出版社,201611 刘平.Android手机访问服务器的一种数据交互方法J.西安20 财经学院网络与现在教育技术中心,201512 马志强.基于Android平台即时通信系统的设计与实现D.北京 交通大学201313 高洪岩.Java多线程编程核心技术.机械工业出版社M,200614 王珊,陈红.数据库系统原理教程M.北京:清华大学出版社,201415 赵亮,张维.基于Android技术的界面设计与研究D.徐州:徐州建筑职业技术学院,201621