基于安卓的智能课程表课程设计-农业信息化

上传人:ye****ng 文档编号:48511414 上传时间:2018-07-16 格式:DOCX 页数:47 大小:606.97KB
返回 下载 相关 举报
基于安卓的智能课程表课程设计-农业信息化_第1页
第1页 / 共47页
基于安卓的智能课程表课程设计-农业信息化_第2页
第2页 / 共47页
基于安卓的智能课程表课程设计-农业信息化_第3页
第3页 / 共47页
基于安卓的智能课程表课程设计-农业信息化_第4页
第4页 / 共47页
基于安卓的智能课程表课程设计-农业信息化_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《基于安卓的智能课程表课程设计-农业信息化》由会员分享,可在线阅读,更多相关《基于安卓的智能课程表课程设计-农业信息化(47页珍藏版)》请在金锄头文库上搜索。

1、基于安卓的智能课程表课程设计基于安卓的智能课程表课程设计姓姓 名名 张竞超张竞超 学学 号号 1630100001 院、院、 系系 信息学院信息学院 专专 业业 农业信息化农业信息化 指导教师指导教师 夏江夏江 摘要:随着智能手机的快速发展,各种应用软件也得到了越来越多的人的关注。目前,在安卓软件市场中我们可以找到各种需求的软件,课程表管理类的软件也是随处可见的。本系统基于 Android 平台为学生用户群体设计一款新的课程管理软件。实现了每日视图、周视图、上课提醒、上课期间响铃模式切换、单双周(默认全部)等基本功能,另外还提供了当前周设计、签到记录设计、考试提醒、签到与成绩统计分析、分享等功

2、能,以更好地满足用户对一款课程表应用需求。关键词关键词:Android;课程表;SQLite目录目录1. 引言.12. 系统分析.22.1. 系统实现目标.22.2. 系统运行环境.22.3. 系统开发环境.32.4. 后台数据库.33. 总体设计.43.1. 系统总体设计描述.43.2. 系统模块图.53.2.1. 系统总体结构.53.2.2. 系统模块描述.63.3. 数据库总体设计.73.3.1. 数据库设计介绍.73.3.2. E-R 图 73.3.3. 数据库表设计.84. 详细设计和系统实现.94.1. 详细设计和系统实现.94.2. 功能模块的设计和实现.94.2.1. 课程数据

3、增、删、改模块.104.2.2. 数据库读写模块.234.2.3. 系统设置模块.264.2.4. 系统中其他功能的实现.285. 评估测试.335.1. 测试环境.335.2. 测试计划.345.2.1. 交互测试.345.2.2. 功能测试.355.3. 测试结果与评价.396. 结 论.401.1. 引言引言随着智能手机的快速发展,各种应用软件也得到了越来越多的人的关注。目前,在安卓软件市场中我们可以找到各种需求的软件,课程表管理类的软件也是随处可见的。其中智能课程表在 Android 市场中占有一定的空间,甚至一些公司也开发了这一类的应用软件,例如:超级课程表。这款软件得到很多学生的大

4、力支持。在大学生中,所学课程的种类繁多、上课地点的不断变化、课程的临时修改和添加,让学生们疲于不断的记忆上课的教室、地点和是否有更改。这类软件操作复杂,界面不宜辨识。另一类软件,基本上都是只实现了课程表设置、查询和上课时间提醒功能等。根据学校教学纪律规定,在课堂教学时间段内,学生和教师都不容许接听电话。目前在上课时,教师和学生一般都是把手机设置为静音或震动模式,没课时再设置回来。学生和老师都经常可能会发生上课时忘记设置手机的情况。正上着课,手机铃声突然响起来了,既分散了学生的注意力,也打断了老师的讲课思路。出于这两点,我想做一款解决这两个矛盾的课程表,也就是自己的课题设计。2.2. 系统分析系

5、统分析2.1.2.1.系统实现目标系统实现目标目标 1:既然作为一款课程表类 app,自然是需要课程的基本管理即增、删、改、查,其中“增”的方式是手动添加;删除录入的信息,但是在数据库中不是真正的删除,作为一个字段的标记式删除,首先这么设计的原因是系统不会处理过多数据,这也让 Undo Bar 的实现成为可能;“改”提供了对录入信息的修改;“查”在系统的各处都有体现,从数据库拉取数据,提供各种信息的显示。目标 2:上课提醒、以及上课自动切换震动模式。可以让学生在上课前知道下一节是什么课,上课切换震动也是为学生提供便利防止上课铃声响打断老师的讲课思路。目标 3:课程总表,对一星期的课表一目了然,

6、同时可以直接在总表中创建课程,还有快速判断时间的设计。目标 4:签到统计,每周每次课的签到信息,集中显示以了解自己的上课情况,对自身做出监督。目标 5:考试提醒,对考试的设定以及提醒功能。目标 6:考试成绩与签到的分析柱状图,提供一个图谱用来了解自己上课情况与成绩的关系。目标 7:分享,将上课、签到、成绩信息分享到其他应用程序。2.2.2.2.系统运行环境系统运行环境“智能课程表”是基于移动平台,如今的移动领域有 Apple 的 iOS,Google的 Android,以及 Microsoft 的 Windows Phone 三大平台,其中 Android 的市场份额在三大平台中是最大的,因为

7、 Android 的框架结构中处于顶层的是应用开发层,且是基于 Java 语言的开发。本“智能课程表”故采用 Android 平台为广大的大学生提供一个课程管理的解决方案。为了设计更好的用户体验,系统采用 Android 4.4 的 SDK 开发,这直接导致的是低于此版本的 Android 是无法使用本应用的,因为应用到了 4.4 所特有的特性。系统运行环境:平台 Android,SDK 版本 4.4+。2.3.2.3.系统开发环境系统开发环境Android 的应用层软件的开发是基于 Java 的,故开发环境选择的是 Eclipse,开发 Android 需要安装 Google 提供的 ADT

8、 插件,虽然 Google 在 发布了自己的基于 idea 的开发工具 Android Studio2.2 版本,但是由于目前市场教程大部分还是关于 Eclipse,故继续使用 Eclipse 来调试。Android 的 SDK使用版本是 4.4,另外 JDK 版本是 1.6。2.4.2.4.后后台数据库台数据库SQLite 简介:SQLite 是一个开源的嵌入式关系数据库,它在 2000 年由 D.Richard Hipp 发布,它的减少应用程序管理数据的开销,SQLite 可移植性好,很容易使用,很小,高效而且可靠。SQLite 嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是单独

9、的一个进程。 SQLite 的数据库权限只依赖于文件系统,没有用户帐户的概念。SQLite 有数据库级锁定,没有网络服务器。它需要的内存,其它开销很小,适合用于嵌入式设备。需要做的仅仅是把它正确的编译到你的程序。SQLite 具有零配置、可移植、Compactness、简单、灵活、可靠的特点。SQLite 架构:SQLite 采用了模块的设计,它有三个子系统,包括八个独立的模块构成。因此移动平台的数据库解决方案大多是采用 SQLite,能够满足开发者的一般数据的存储需求。3.3. 总体设计总体设计3.1.3.1.系统总体设计描述系统总体设计描述系统的设计阶段的需要解决的问题是构建整个项目的大体

10、框架,因为如果自己没有一个明确的框架,那么代码写到后面的话也就是越来越乱,剪不断理还乱的结果了。所以说设计的阶段很重要,例如建房子需要先把图纸画好,就算是动工也是先打好框架。同样软件工程也是一门工程学,所以同样需要对要设计的系统“画”一个设计的框架。总体设计是软件开发人员根据软件需求说明书的要求,运用结构化程序设计思想,将软件自上而下逐层分解成多个软件模块,直到分解成每一个模块只具有单一的功能,能用一个或几个程序实现的树形结构为止。总体设计阶段还要定义个模块的数据传递关系,数据的存储关系,输入输出格式,已经对运行环境的要求。经过需求分析阶段的工作,课程管理系统所需要完成的功能即需要做什么已经了

11、然于心了,现在就是设计整个系统的工作了。总体设计过程可分为两个主要阶段:功能设计,根据大学生们对课程管理的需求做出相应的功能上的决策,结合网上调研跟线下的调查决定设计这个应用的相应功能;结构设计,确定整个软件的结构,由哪些子类别所组成。其中功能设计是在需求分析的基础上进行的,这里的“功能”其实是泛指,例如软件所要实现的功能,还包括系统设计时候的数据处理,实现功能的算法。而结构设计,是将整个系统按照不同的功能和层次划分为一个个相对简单而独立的模块,每个模块实现系统的某一项具体功能,自顶向下,逐步细化,这样增加了软件的可复用性,且对于代码的结构则更加清晰明了,阅读起来也更加的有条理。3.2.3.2

12、.系统模块图系统模块图3.2.1.3.2.1. 系统总体结构系统总体结构模块层次图,是描述软件层次特性的工具,描述某个模块负责管理控制哪些模块以及上下级模块或者是统计模块之间的数据传递关系,能够清楚的表明系统的结构,并可用来粗略的估计系统的规模。优点也是显而易见的,能够很清楚的表达系统结构,保证思路清晰,缺点是只能粗略的表达而不能表达整个系统的逻辑。根据需求分析得到的数据流图,由用户的需要以及完善系统所添加的一些功能得到系统的模块层次图。系统主要实现数据录入(添加课程)、数据查询(显示课程的各种信息)、数据统计(签到统计等)以及数据分析(与成绩的关联对比分析)。见图 3.1。图 3.1 总体模

13、块图其中数据显示是一个稍微复杂些的模块,数据处理包括数据的增、删、改、已经保存和系统数据库表数据维护,数据增加包括了上课科目信息的录入、教学楼的录入、上课课程信息的录入还有考试信息的录入,把课程显示进行进一步细化得到图 3.2。图 3.2 显示模块细化3.2.2.3.2.2. 系统模块描述系统模块描述系统模块描述:1)课表管理系统功能:用于协调管理整个系统;2)数据库读写模块功能:统一系统的读写数据库操作;3)数据显示视图模块功能:将数据按照不同的展示要求呈现给用;4)系统设置模块功能:设置系统的偏好信息,如上下课时间、一学期周数、当前周等;5)数据的增、删、改模块功能:用户添加、修改或是删除

14、教学楼、科目、课程和考试的条目;6)其他功能:用于便捷处理的工具类,例如计算当前周、分享模块等。3.3.3.3.数据库总体设计数据库总体设计3.3.1.3.3.1. 数据库设计介绍数据库设计介绍数据库是指自描述的完整记录的集合。数据库除了包含用户的源数据外,还包含关于它本身结构的描述。另外,数据库还包含用来表示数据之间的关系和提高数据库应用的性能的索引。最后,数据库还包含关于使用数据库的应用程序的数据。本系统为课程管理,即管理学生一个学期内的所有课程。正如我们所知道的,一节课它有上课的课程名、老师、上课的地点、时间等这些基本属性。而这些基本属性中课程名与老师可以作为一个单独表存在,即科目表。某

15、一科目所有的基本属性有两个科目名和教师,而上课地点与时间并不能作为科目表中的字段,因为某一科目在一周中可能有多节课而且在不同的时间段。而上课的地点即教学楼信息同样可以作为单独的一张表,减少了课程表中的重复。3.3.2.3.3.2. E-R 图图概念模型是对信息世界建模,所以概念模型能够方便、准确地表示出信息世界中的常用概念。概念模型的表示方法很多,其中最为著名最为常用的是 P.P.S.Chen 于 1976 年提出的实体-联系方法(Entity-Relationship Approach)。该方法用 E-R 图来描述现实世界的概念模型,E-R 方法也称 E-R 模型。E-R 图由实体、实体的属

16、性以及实体之间的关系三部分组成,实体是具有相同的性质并且彼此之间可以相互区分的现实世界对象的集合;属性是实体所具有的特征,它是描述实体或者关系的性质的数据项,实体之间的关系通过直线连接。在本课程管理系统中,主要有以下实体:科目、教学楼、课程、考试。科目的属性有_id、科目名、教师名,未包含开课以及结课的周数,因为这个并不是固定的,且其中 ID 是自增长而且是唯一编号;教学楼的属性有_id 与教学楼名称;课程实体包含的属性相对来说多一些,主要有星期几、第几节、科目 ID、上课周数、教学楼 ID、教室号码、备注、签到信息、颜色、提前提醒时间等;考试的属性有引用的科目 ID(这个 ID 只有被课程引用才会出现在考试表中)、考试的具体时间、考试的教学楼、考试的教室号、考试最后的分数和科目的总分、颜色、考试提醒。图 3.2 实体关系图如图 3.3 所示,图中实体的

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号