基于Android模拟考试系统开题报告.docx

上传人:b****4 文档编号:4264763 上传时间:2022-11-28 格式:DOCX 页数:7 大小:91.68KB
下载 相关 举报
基于Android模拟考试系统开题报告.docx_第1页
第1页 / 共7页
基于Android模拟考试系统开题报告.docx_第2页
第2页 / 共7页
基于Android模拟考试系统开题报告.docx_第3页
第3页 / 共7页
基于Android模拟考试系统开题报告.docx_第4页
第4页 / 共7页
基于Android模拟考试系统开题报告.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

基于Android模拟考试系统开题报告.docx

《基于Android模拟考试系统开题报告.docx》由会员分享,可在线阅读,更多相关《基于Android模拟考试系统开题报告.docx(7页珍藏版)》请在冰豆网上搜索。

基于Android模拟考试系统开题报告.docx

基于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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1