基于Android模拟考试系统开题报告.docx
- 文档编号:4264763
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:7
- 大小:91.68KB
基于Android模拟考试系统开题报告.docx
《基于Android模拟考试系统开题报告.docx》由会员分享,可在线阅读,更多相关《基于Android模拟考试系统开题报告.docx(7页珍藏版)》请在冰豆网上搜索。
基于Android模拟考试系统开题报告
基于Android模拟考试系统开题报告
开题报告
基于Android模拟考试系统
一、选题的背景、意义
选课的历史背景:
智能手机发展以及3G技术发展
2009年1月7日,工业和信息化部位中国移动、中国电信和中国联通发放3张第三代移动通信(3G)牌照,词句标志着我国正式进入3G时代。
中国3G正式商用和规模建网,App商店在全球被运营商和终端厂商热捧;中国移动App商店不久上线,这些背景,共同决定了中国基于Android的应用程序开发将在未来处于一个爆发和蓬勃成长时期,这也为软件开发者提供了一个淘金的好机会,也促使大量此前不熟悉Android开发的程序员要迅速进入此领域,以便在经历了单机计算时代和传统互联网时代之后,能在移动互联网时代的元年开始赶上这趟快车,成为了许多程序员的愿望[1]。
根据时代背景,智能手机的出现,是人类发展史上一个里程碑,随着它的不断研发、日益普及,且基于Intenet的产生、网络化,手机在人们日常生活中所扮演的角色越来越不可缺少也越来越重要。
智能手机全球化时代,人们已经不能满足于从电话、书籍、口头等日常方式来获取他们所需要的信息,更多的是通过便携的手机,这个无形的、巨大的载体,甚至不仅仅局限在信息的获取,更多的是要求获取信息时的便捷性、时效性、速效性等。
移动电话(MobilePhone)的原本含义是和固定电话对应的,是一个通信工具,其主要功能是通过移动网络进行通信。
然而经过20年的发展,移动电话的功能已经远远超过了语音通信工具的功能。
目前,随着3G技术的发展,移动电话正向着智能化的方向迈进,未来的移动电话将成为多种工具的功能载体。
其包含:
通讯工具、网络工具、媒体播放器、媒体采集设备、多类型连接设备、信息感知终端、视频通话和电子付费终端等高度集成的一个设备。
着眼于自身发展背景,对于在计算机科学与技术专业的近四年的学习中,通过理论课程的学习、实践环节的编程等方式,一定程度上丰富了自身的计算机应用知识和能力,在此利用毕业设计环节,在导师的指导下,通过编写一个综合性的系统程序,及对它的开发,将自己所学知识进行有机的串联,以项目为基础,稳固计算机相关知识,并通过实用性系统编程,使自己的专业技能水平更具竞争力。
基于系统的面向群体,众多的学生是高新科技普及走在较前列的群体之一。
在校的学生每天面对着形形色色的各种考试,对于能够更好的更加有效率的复习所学知识,测试知识的掌握程度,一个智能手机的模拟考试系统能非常便携高效的完成,做到随时随地。
该模拟考试系统以Eclipse3.6+JDK1.6+AndroidSDK2.2为开发环境利用Android手机操作系统实现相关试题联系、模拟测试、随机测试等功能,并且为系统提供评判功能。
介于对该系统研发的可行性分析和成熟的技术路线保障,确定了毕业论文选课:
基于Android模拟考试系统。
发展趋势
随着Android系统的持续火爆,运行Android系统的智能手机将不断增加,人们肯定会越来越多跨入Android的阵营,而模拟考试系统也必定会越来越广泛的被使用。
二、研究的基本内容与拟解决的主要问题
研究的基本内容:
研究的基本内容从技术角度而言,包括:
基于Android技术的相关应用;Eclipse3.6开发环境的运用;SQLite轻便型数据库的使用。
解决的主要问题
Android的相关知识的研究与学习:
下图显示的是Android操作系统的主要组件。
每一部分将会在下面具体描述。
Android系统架构由5部分组成,分别是:
LinuxKernel、AndroidRuntime、Libraries、ApplicationFramework、Applications。
Eclipse平台的相关知识的研究和学习:
Eclipse最初是由IBM公司开发的替代商业软件VisualAgeforJava的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(EclipseFoundation)管理。
Eclipse的基础是富客户机平台(RichClientPlatform,即RCP)。
RCP包括下列组件:
1、核心平台(启动Eclipse,运行插件)
2、OSGi(标准集束框架)
3、SWT(可移植构件工具包)
4、JFace(文件缓冲,文本处理,文本编辑器)
5、Eclipse工作台(即Workbench,包含视图(views)、编辑器(editors)、视角(perspectives)、和向导(wizards))
Eclipse采用的技术是IBM公司开发的(SWT),这是一种基于Java的窗口组件,类似Java本身提供的AWT和Swing窗口组件;不过IBM声称SWT比其他Java窗口组件更有效率。
Eclipse的用户界面还使用了GUI中间层JFace,从而简化了基于SWT的应用程序的构建。
Eclipse的插件机制是轻型软件组件化架构。
在富客户机平台上,Eclipse使用插件来提供所有的附加功能,例如支持Java以外的其他语言。
已有的分离的插件已经能够支持C/C++(CDT)、PHP、Perl、Ruby,Python、telnet和数据库开发。
插件架构能够支持将任意的扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。
Eclipse的设计思想是:
一切皆插件。
Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。
Eclipse基本内核包括:
图形APISWT/Jface,Java开发环境插件(JDT),插件开发环境(PDE)等[2]。
SQLite的相关知识的研究和学习:
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
SQLite第一个Alpha版本诞生于2000年5月.至今已经有10个年头,SQLite也迎来了一个版本SQLite3已经发布。
SQLite特性:
1.ACID事务
2.零配置?
无需安装和管理配置
3.储存在单一磁盘文件中的一个完整的数据库
4.数据库文件可以在不同字节顺序的机器间自由的共享
5.支持数据库大小至2TB
6.足够小,大致3万行C代码,250K
7.比一些流行的数据库在大部分普通数据库操作要快
8.简单,轻松的API
9.包含TCL绑定,同时通过Wrapper支持其他语言的绑定
10.良好注释的源代码,并且有着90%以上的测试覆盖率
11.独立:
没有额外依赖
12.Source完全的Open,你可以用于任何用途,包括出售它
13.支持多种开发语言,C,PHP,Perl,Java,ASP.NET,Python
三、研究的方法与技术路线、研究难点,预期达到的目标
研究的方法与技术路线
应用程序框架(ApplicationFramework)
普通的开发者可以使用Android核心应用程序使用的系统API。
Android中的应用开发框架设计的非常巧妙,通过这套应用框架,各种组件可以被用户的应用重复利用,各种服务也可以被各种应用重复利用。
下边列举了每一个应用程序有可能会使用到的应用框架的部分。
一组Views(UI组件)。
这些UI组件包括列表(List)、文本框(textbox)、按钮(button)等。
通过这些UI组件,可以构建应用程序的视图部分,这部分也就是用户能看到的部分。
ContentProviders。
通俗的理解ContentProvider就是提供了一种机制,通过这种机制,应用程序可以实现数据的互访和共享。
ResourceManger。
它负责管理非代码的访问。
如本地的图片资源、涉及布局的XML文件及国际化的字符串等。
NotificationManager。
它能让程序将自己的警示信息显示在状态栏上,例如,当有短信的时候,可以再状态栏上显示出新短信的信息。
ActiviyManager。
它管理着应用的生命周期,并且提供了应用页面退出的机制。
在Android应用中,每一个应用一般是由多个页面组成的,而每个页面的单位就是Activity,在通俗一点讲,可以认为Android的应用是由多个Activity的交互构成的(当然有些应用只有一个Activity)。
库(Libraries)和运行环境(RunTime)
这部分已经开始设计底层。
Android包含一些C/C++库,这些库能被Android系统中不同的组件使用,它们通过Andorid应用程序框架为开发者提供服务,以下是一些核心库。
系统C库。
一个从BSD继承来的标准陈希同函数库(libc),它是专门为基于嵌入式Linux的设备定制的。
媒体库。
基于PacketVideoOpenCORE,该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。
编码格式包括MPEG4、H.264、MP3、AAC、AMR、JPG、PNG。
SurfaceManager。
对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。
LibWebCore。
一个最新的Web浏览器引擎,用来支持Android浏览器和一个可嵌入的Web视图。
SGL。
底层的2D图形引擎。
3Dlibraries。
基于OpenGLES1.0APIs实现,该库可以使用硬件3D加速(速度可用),这使用高度优化的3D软加速。
FreeType。
位图(bitmap)和矢量(vector)字体显示。
SQLite。
一个对于所有应用程序可用,功能强大的轻型关系型数据库引擎。
Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。
每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。
Dalvik被设计成一个设备,该格式文件针对小内存使用坐了优化。
同时虚拟机是基于寄存器的,所有的类都经由Java编译器编译,然后通过SDK中的“dx”工具转化成dex格式,由虚拟机执行。
Dalvik虚拟机依赖于Linux内核的一些功能,例如,线程机制和底层内存管理机制,
Android的核心系统服务依赖于Linux2.6内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。
Linux内核也同时作为硬件和软件栈之间的抽象层。
[3]
SQLite数据库
每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库--大名鼎鼎的SQLite。
SQLite是一款轻量级数据库,它的设计目的是嵌入式,而且它占用的资源非常少,在嵌入式设备中,可能只需要几百KB,这也是Android系统采用SQLite数据库的原因之一。
SQLite有如下几个特点:
轻量级:
使用SQLite只需要带一个动态库,就可以享受它的全部功能,而且那个动态库的尺寸想当小。
独立性:
SQLite数据库的核心引擎不需要依赖第三方软件,也不需要所谓的“安装”。
隔离性:
SQLite数据库中所有的信息比如表、视图、触发器等都包含在一个文件夹内,方便管理和维护。
跨平台:
SQLite目前支持大部分操作系统,不至电脑操作系统更在众多的手机系统也是能够运行,比如:
Android。
多语言接口:
SQLite数据库支持多语言编程接口。
安全性:
SQLite数据库通过数据库级上的独占性和共享锁来实现独立事务处理。
这意味着多个进程可以在同一时间从同一数据库读取数据,但只能有一个可以写入数据。
研究难点
通过系统程序开发前的问题定义、可行性研究、需求分析等阶段的摸索,预计了在系统研发过程中可能出现的难点,现说明如下:
(1)模拟考试系统题库数据库的设计。
模拟考试系统题库数据库的整理是实现系统功能必须要克服的难点,数据录入、读取的正确性,直接反映了系统设计的可靠性能,也是整个系统最基本的功能。
其难点在于:
要对数据库有全面体统的掌握,对SQLite和Java语言编程方法要掌握。
(2)模拟考试系统UI设计。
一个好的系统应该要有一个人性化的UI界面,才能让使用者有比较良好的用户体验。
软件设计的初衷是给用户使用,人性化的界面设计是系统的基本要求。
(3)考试答案评判。
习题答案的正确性的评判是本系统的重要组成部分。
其评判的正确性直接影响到本系统的实用性。
(4)Android系统应用程序框架的掌握和使用。
预期达到的目标
通过Eclipse的平台,开发一个基于Android的模拟考试系统,具备以下功能:
1、可以完成试题的维护,并可以进行随机练习、顺序练习、模拟测试等基本功能。
2、完成试题随机抽取功能与组卷功能。
3、具备评判功能以及正确答案显示功能。
四、论文详细工作进度和安排
第七学期第10周至第18周(2011年01月06日前):
文献检索和资料收集,完成毕业论文(设计)文献综述、开题报告和外文翻译;
第八学期第1周?
至第3周(2011年03月11日前):
撰写论文提纲,完成毕业论文(设计)初稿、需求分析和概要设计;
第八学期第4周?
至第12周(2011年05月13日前):
详细设计、系统调试、和毕业论文(设计)完成定稿;
第八学期第13周(2011年05月20日前):
完成应用软件系统的设计和毕业论文(设计)送指导老师和评阅老师评阅,准备答辩;
第八学期第14周:
参加毕业论文(设计)答辩。
五、主要参考文献:
[1]?
美伯内特?
著,张波等译.Android基础教程[M]北京:
?
人民邮电出版社,2006
[2]?
美罗杰等著,李耀亮?
译.?
Android应用开发[M].北京:
人民邮电出版社,2010
[3]?
杨丰盛?
著.?
Android应用开发揭秘[M].?
北京:
机械工业出版社,2010
[4]?
E2EColud工作室?
编著.深入浅出Google?
Android[M].?
北京:
?
人民邮电出版社.2009
[5]?
张利国,代闻,龚海平?
编著.Android移动开发案例详解[M].?
北京:
?
人民邮电出版社.2010
[6]靳岩,姚尚朗编著Android开发入门与实战[M].?
北京:
?
人民邮电出版社.2009
[7]余志龙陈昱勋郑名杰陈小凤郭秩均著GoogleAndroidSDK开发范例大全[M].?
北京:
?
人民邮电出版社.2010
[8]EdtitedbySusannahDavrdsonPfalzerHello,AndroidIntroducingGoogle’sMobileDevelopmentPlatform,3rdEdition[M]EdBurnette
[9]EdtitedbySayedY.HashimiSatyaKomatineniDaveMacLeanProAndroid2[M]Apress
[10]AFastMobileFaceRecognitionSystemforAndroidOSBasedonEigenfacesDecomposition[M]Appress
[11]EdtitedbyRetoMeierProfessionalAndroid2ApplicationDevelopment
[12]EdtitedbyMarkL.MurohyBeginningAndroid2[M]Appress
[13]吴亚锋苏亚光编著Android2.0游戏开发实战宝典[M]人民邮电出版社.2010
[14]杨丰盛编著Android应用开发揭秘[M]机械工业出版社.2009
[15]汪永松编著Android平台开发之旅[M]机械工业出版社.2010
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 模拟考试 系统 开题 报告