m-tutor for android based mobile devices

7
M-Tutor for Android Based Mobile Devices a M-Learning Application Bhagyashri N. Vaikos Department of Computer Science and Engineering, Government College of Engineering, Aurangabad, Maharashtra, India [email protected] Prof. Kshirsagar V. P. Department of Computer Science and Engineering, Government College of Engineering, Aurangabad, Maharashtra, India [email protected] Abstract—Android is a Operating System commonly used in mobile devices like smartphones and tablet. Now a day’s smartphones and Tablet are becoming common among students and employees as they are available at quite affordable price range. Android add a rich look and feel for mobile devices. M-Learning or Mobile Learning is becoming more and more popular as mobile devices with good hardware configuration are in the market from multiple international vendors like Samsung, HTC, LG, Motorola, etc. In this paper we present how M-Learning achieve by implementing m-tutor, a application which lets its users learn and assess from anywhere and at anytime. M-Tutor is a client server application which allows instructors to easily share and sync study material and assessment tests through web interface and students to go through study material and assess themselves from their android based mobile device. Keywords- Smartphone; Google; Android; M-Learning; Android SDK I. INTRODUCTION Technology is assisting human beings in almost every aspect of life, making a life more and more comfortable by reducing the efforts and time. The increasing development of electronic devices and network communication provides a foundation for improving the learning and teaching environment through technology removing barriers like keeping up with schedule and following time tables of traditional classrooms. Mobile learning [M-Learning] is considered more innovative and student-centered than typical e-learning or classic distance education methods, representing an effective pedagogical method as any other conventional method [1,2]. Moreover, the lifelong learning is also a requirement of this era and mobile technologies are helping to meet this challenge. M-Learning will not only make teachers and students academic life more contented but also assist them in quick and accurate assessment. M-Tutor is inspired from observing of difficulties faced by students who are learning and at the same time working somewhere to reduce their educational expenses or fulfilling financial requirements of the family beside their education. The paper is organized as follows. In Section II, we present android background containing reasons behind its growth and popularity and system architecture of android operating system in brief. Then follows the section III related works. Here comparison and analysis of two learning methodologies classroom learning and M-Learning is highlighted followed by list of android features which make android as best suited platform for m-tutor

Upload: bhagyashri-vaikos

Post on 05-Sep-2014

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M-Tutor for Android Based Mobile Devices

M-Tutor for Android Based Mobile Devices

a M-Learning Application

Bhagyashri N. VaikosDepartment of Computer Science and Engineering,

Government College of Engineering,Aurangabad, Maharashtra, India [email protected]

Prof. Kshirsagar V. P.Department of Computer Science and Engineering,

Government College of Engineering,Aurangabad, Maharashtra, India

[email protected]

Abstract—Android is a Operating System commonly used in mobile devices like smartphones and tablet. Now a day’s smartphones and Tablet are becoming common among students and employees as they are available at quite affordable price range. Android add a rich look and feel for mobile devices. M-Learning or Mobile Learning is becoming more and more popular as mobile devices with good hardware configuration are in the market from multiple international vendors like Samsung, HTC, LG, Motorola, etc. In this paper we present how M-Learning achieve by implementing m-tutor, a application which lets its users learn and assess from anywhere and at anytime. M-Tutor is a client server application which allows instructors to easily share and sync study material and assessment tests through web interface and students to go through study material and assess themselves from their android based mobile device.

Keywords- Smartphone; Google; Android; M-Learning; Android SDK

I. INTRODUCTION

Technology is assisting human beings in almost every aspect of life, making a life more and more comfortable by reducing the efforts and time. The increasing development of electronic devices and network communication provides a foundation for improving the learning and teaching environment through technology removing barriers like keeping up with schedule and following time tables of traditional classrooms. Mobile learning [M-Learning] is considered more innovative and student-centered than typical e-learning or classic distance education methods, representing an effective pedagogical method as any other conventional method [1,2]. Moreover, the lifelong learning is also a requirement of this era and mobile technologies are helping to meet this challenge. M-Learning will not only make teachers and students academic life more contented but also assist them in quick and accurate assessment.

M-Tutor is inspired from observing of difficulties faced by students who are learning and at the same time working somewhere to reduce their educational expenses or fulfilling financial requirements of the family beside their education.

The paper is organized as follows. In Section II, we present android background containing reasons behind its growth and popularity and system architecture of android operating system in brief. Then follows the section III related

works. Here comparison and analysis of two learning methodologies classroom learning and M-Learning is highlighted followed by list of android features which make android as best suited platform for m-tutor implementation. This section also describes some M-Learning related projects. Section IV focuses on m-tutor architecture where system architecture is explained with the help of a block diagram. In section V details of m-tutor design and implementation details are summarized. Section VI presents some of the limitations observed in m-tutor application. Finally, in Section VII, conclusions are made and future work is presented.

II. ANDROID PLATFORM

A. Growth and Popularity

Some of the main reasons behind this tremendous growth and popularity of Android is because [3]

Large numbers of vendors which are well known in the area of mobile devices like HTC, Samsung, LG, and Motorola are introducing new models hosting android operating system. This is unlike Apple smart phone where users are not having much choice for device but going with limited choice of AT&T.

Android phones ship with a rich array of built in applications like Web browser, mail, map application, etc.

Google has offered Android SDK free. So large number of developers started developing Android Apps. Apple App store is gated but Android market is open and developers can self publish their developed applications.

B. System Architecture of Android Operating System

The Android operating system is built on the modified Linux Kernel (Figure 1) [3]

Page 2: M-Tutor for Android Based Mobile Devices

Figure 1. Android system architecture: The Android software stack contains Java applications on top of a Linux kernel.

The software stack contains JAVA applications running on virtual machine and system components are written in Java, C, C++ and XML. The core of Android operating system is built on top of LINUX kernel, since the kernel has a proven driver model as well as security model with a lot of available drivers. So LINUX is serving as the hardware abstraction system in Android device.

III. RELATED WORKS

A. Classroom Learning Vs M-Learning

Now a days there are many different learning methods are available [4]. To keep up with the technology and for maximum benefits of its students educational institutions opt to use best fitting learning options. We carried out a study in educational institutions about their views on classroom learning and m-learning. In classroom learning approach students are supposed to keep up with schedules and are restricted to the physical space. But in M-Learning study material can be accessed anytime and anywhere. In classroom training most of the students are in passive mode of learning. But in m- learning it is observed that students are more interested and proactive. It is also observed that M-Learning is very much helpful to students who are carrying out their education along with working somewhere. Some pitfalls of M-Learning can be thought of as in M-Learning sometimes students feel isolated but in classroom learning, learning activity is carried out with other students in the classroom inclusively. In some cases learning time is increased in m-learning. Most important requirement in M-Learning is study material must be sync with the latest published study material. Mobility and accessibility are important characters of m-learning, since it focuses on the use of mobile devices like smartphones and tablets. Traditional learning horizons are expanded in M-Learning as learning can take place anywhere and at anytime. In M-

Learning students can study when they in classrooms, at home, at workplace or when they are traveling. In M-Learning study material/assessment test answers are downloaded/uploaded so, good connectivity through wireless networks is needed.

B. Features of Google Android

In this section we will highlight reasons behind selecting Android for m-tutor. A study has shown that as of June 2011 Google said that 550,000 new Android devices were being activated every day and more than 100 million devices have been activated [5]. Android hit 300,000 activations per day back in December 2010. On July 14, 2011 550,000 Android devices are now activated by Google each day with growth 4.4% per week [5]. On the 1st of August 2011 Canalys estimates Android has about 48% of the smartphone market share[5]. On October 13, 2011, Google announced that there are 190 million Android devices in the market [6].

Below are the features of Android operating system helpful for M-Tutor implementation:

1) Storage: Android support SQLite, a lightweight relational database for data storage purposes.

2) Connectivity: Android supports connectivity technologies including GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX.

3) Multiple language support: Android supports multiple human languages. The number of languages more than doubled for the platform 2.3 Gingerbread [7].

4) Java support: Java classes are compiled into Dalvik executables and run on Dalvik, a specialized virtual machine designed specifically for Android and optimized for battery-powered mobile devices with limited memory and CPU. J2ME support can be provided via third-party applications.

5) Media support: Android supports the following audio/video/still media formats: WebM, H.263, H.264 (in 3GP or MP4 container), MPEG-4 SP, AMR, AMR-WB (in 3GP container), AAC, HE-AAC (in MP4 or 3GP container), MP3, MIDI, Ogg Vorbis, FLAC, WAV, JPEG, PNG, GIF, and BMP [8].

6) Streaming media support: RTP/RTSP streaming (3GPP PSS, ISMA), HTML progressive download (HTML5 <video> tag). Adobe Flash Streaming (RTMP) and HTTP Dynamic streaming are supported by the Flash plug-in [9]. Apple HTTP Live Streaming is supported by RealPlayer for Mobile [10], and by the operating system in Android 3.0 (Honeycomb) [11].

7) Bluetooth: Supports A2DP, AVRCP, sending files (OPP), accessing the phone book (PBAP), voice dialing and sending contacts between phones. Keyboard, mouse and joystick (HID) support is available in Android 3.1+, and in earlier versions through manufacturer customizations and third-party applications [12].

8) Multitasking: Multitasking of applications is available [13].

Page 3: M-Tutor for Android Based Mobile Devices

C. Related Projects

It has to be noted that, nowadays, M-Learning is a very active research field, with the development of important and interesting projects. In [14], Frohberg et al. made a deep and critical analysis of mobile learning projects published before the end of 2007. Mobile learning is rapidly growing from a set of research projects into worldwide deployment of services for classrooms, field trips, workplace training and informal education, among other areas. Major projects have concentrated on the generic platforms development for M-Learning and explored new supports for a kind of technology mediated learning across locations and life transitions [15, 16]. Smaller projects are more directed to develop new pedagogical solutions for specific cases and to explore how learning on handheld mobile devices interweaves with personal interests and individual learning needs [17]. It is important to know projects like MOBIlearn [18] since it pretends to deliver a generic M-Learning architecture to support creation, brokerage, delivery and tracking of learning and information contents, using ambient intelligence, location dependence, personalization, multimedia, instant messaging (text, video) and distributed databases. Another proposal, MADEE [19], is an execution environment and application development tool that supports and makes easier the development of mobile and wireless information systems that run on handheld devices, allowing communication and information sharing among users in an organization.

As we aware, there is no application with features like study material synchronization, support for different forms of study material like audio/video/text, support for timely assessment and viewing assessment result. On the top of all these features M-Tutor will be a freely available for trial period. Thus the principle behind ubiquitous M-Tutor is to provide the users with intelligent learning system that supplement their everyday learning activities with easy online & offline access to study material (offline access possible as material resides on their handset).

IV. M-TUTOR ARCHITECTURE

Figure 2. M-Tutor system architecture

M-Tutor has a typical client - server architecture. M-Tutor backend consists of multiple servers responsible for various tasks. Application hosting server is main backend

server and this server is responsible for communicating with M-Tutor clients and other backend servers. It requires a file server responsible for storing study material. A database server is also needed which is responsible for storing user centric data like login information and keeps track of latest material to be published along with its path on file server.

M-Tutor client is a lightweight application. It keeps track of study material on smartphone or tablet and if needed syncs it with latest published study material of server. It also lets users to assess themselves after going through the learning material followed by submitting their answers to the server.

V. M-TUTOR DESIGN AND IMPLEMENTATION

As explained in system architecture above M-Tutor is a client-server application. Various technologies used in M-Tutor implementation are enlisted as below along with brief description [4]:

A. MySQL

To create the remote database, standard SQL language was used since it was decided to use the MySQL DBMS (Database Management System). It allows the creation and management of databases in a simple and free way, being very robust and having all the necessary professional features.

B. PHP

To link the application on the mobile device to the remote database on the server, it was decided to develop an PHP API (a set of PHP scripts) to communicate with the remote database through HTTP connections.

C. JSON

It was also used the JSON programming language to encode the content of the tables from the remote database and extract it from the Java code using PHP scripts. These scripts run on the server side and the mobile application, through the HTTP connections, can receive the contents from the remote database.

D. Android SDK

It is a software development kit for Android since it contains all the standard software classes and libraries indispensable for android programming.

E. Java

It was chosen the Java programming language to develop the Android-based mobile application because it is open source and it is the most suitable in such applications as it is object-oriented.

F. Eclipse Indigo

It is a development environment that provides tight integration with the Google Android operating system, providing a special plug-in, called ADT, developed for programming on Android-operated devices.

Page 4: M-Tutor for Android Based Mobile Devices

G. SQLite

For the creation of the local (mobile) database, it was chosen to use SQLite since this library is already included in the Android SDK and enables seamless integration with Android applications. This is a "light" library to be used in mobile devices with low storage capacity (compared with PC).

H. XML

It was also decided to make use of XML (eXtended Markup Language) to handle the user interface and to store some global variables that remain with the values defined in the last time the application was executed, even after stopping the application execution.

Figure 3. Flowchart showing workflow in M-Tutor client

The flowchart shown in above figure depicts actual flow on client side of m-tutor. It starts when user launches application. M-Tutor after starting shows a login screen and user is prompted to enter username and password. In case of incorrect username and/or password user is again redirected to login page. Once user enters his/her username and password correctly, client application checks if study material is latest published material. If it is not up to date client application attempts to download latest published material and keep itself synced with the server. Once latest study material is available locally user is redirected to home page. From this home page user can perform various actions

like going through the index of study material to see what all new contents is added. Then user decides if user wants to go through study material or user can appear for assessment test based on study material. Once user completes assessment test his answers are uploaded on server for review. Server replies M-Tutor client with the assessment result. User can view assessment result. Thus users of M-Tutor are free to learn and get assessed anytime and anywhere.

VI. LIMITATIONS

M-Tutor requires good storage capacity and processing capability so as to cater with different forms of study material like audio, video and text. Also for keeping of study material up to date and latest it requires good network bandwidth. Network connection is needed to submit assessment work and get assessment results. Noisy environments might affect performance of m-tutor. It also will have device display limitations for viewing textual and multimedia data files.

VII. CONCLUSIONS

If M-Tutor is properly conceptualized and built, it will become an efficient complimentary tool to the traditional learning methods. M-Learning is getting more and more attention from all fields of educational organizations. Additionally smartphones and tablets with good hardware configurations are available at reasonably low prices. Indian Government is also promoting use of tablet to professional students by making such devices available at discounted prices. About the Android platform, the increasing sales numbers of Android based mobile devices and the fact that Google software is hitting new highs in popularity implies that the decision made is good. All these points, along with those of presented throughout the paper, makes project as interesting, innovative, beneficial.

As part of future work, M-Tutor can be enhanced with two factor authentication and it could be supporting more types of learning materials along with facility of archiving them (files) on client side.

In an attempt to continuous improvement to achieve better usefulness and application popularity, we will continue with the strengthening of the application, focusing on new features like Newsgroups where students can publish their queries and innovative ideas, building a private cloud among college teachers, alumni and students etc.

ACKNOWLEDGMENT

First author would like to thank Mr. Vinay Sathe, managing director and CEO of Softspin Services Pvt. Ltd. Pune for his continuous guidance and valuable inputs at various points during this work.

REFERENCES

[1] C. Romero, S. Ventura and P. Bra,“Using Mobile and Web-based computerized Tests to Evaluate University Students”, Computer Applications in Engineering Education journal, vol.9999, Published online in Wiley Interscience [www.interscience.wiley.com],2009, DOI 10.1002/cae.20242.

Page 5: M-Tutor for Android Based Mobile Devices

[2] R. N. Madeira, V. F. Pires, O. P. Dias and J. F. Martins, “Development of a Mobile Learning Framework for an Analog Electronics Course”, Proc. Int. Conf. IEEE Education Engineering [ EDUCON ], Madrid, Spain, 2010, pp. 561-567.

[3] Margaret Butler, “Android: Changing the Mobile Landscape”, Pervasive Computing, IEEE Volume: 10 Issue: 1 Issue Date: Jan.-March 2011

[4] Marco André Guerra, Lisboa, Portugal, Rui Neves Madeira, “PortableLab: Implementation of a Mobile Remote Laboratory for the Android Platform”, Global Engineering Education Conference (EDUCON), 2011 IEEE, 4-6 April 2011

[5] "Google activates 500,000 Android devices a day, may reach 1 million in October". Yahoo News. 28 June 2011.

[6] Erick Schonfeld (13 October 2011). "Larry Page: Mobile Revenues At $2.5 Billion Run-Rate, 190 Million Android Devices". TechCrunch. http://techcrunch.com/2011/10/13/page-google-plus-40-million-mobile-2-5-billion/. Retrieved 24 October 2011.

[7] “Android 2.3 Platform Highlights". Android Developers. 6 December 2010. http://developer.android.com/sdk/android-2.3-highlights.html. Retrieved 2010-12-07.

[8] "Android Supported Media Formats". Android Developers. http://developer.android.com/guide/appendix/media-formats.html. Retrieved 2009-05-01.

[9] "Flash Flayer 10.1 for Android 2.2 Release Notes". Adobe Knowledgebase. http://kb2.adobe.com/cps/860/cpsid_86018.html. Retrieved 27 January 2011.

[10] "RealNetworks Gives Handset and Tablet OEMs Ability to Deliver HTTP Live Content to Android Users". realnetworks.com. 10 September 2010. http://www.realnetworks.com/pressroom/releases/2010/RealPlayer-

for-Mobile-Delivers-HTTP-Live-Content-to-Android.aspx. Retrieved 27 January 2011.

[11] "Android 3.0 Platform Highlights". Android Developers. 26 January 2011. http://developer.android.com/sdk/android-3.0-highlights.html. Retrieved 2011-01-26.

[12] "Android 3.1 Platform Highlights". Android Developers. http://developer.android.com/sdk/android-3.1-highlights.html#UserFeatures. Retrieved 26 August 2011.

[13] Bray, Tim (28 April 2010). "Multitasking the Android Way". Android Developers. http://android-developers.blogspot.com/2010/04/multitasking-android-way.html. Retrieved 2010-11-03.

[14] D. Frohberg, C. Göth, and G. Schwabe, Mobile Learning projects – a critical analysis of the state of the art. Journal of Computer Assisted Learning, vol. 25, no. 2009, pp. 307–331.

[15] C. H. Muntean, and G. Muntean, Open Corpus Architecture for Personalised Ubiquitous E-learning. Personal Ubiquitous Computing journal, vol. 13, no. 3, 2009, pp. 197-205.

[16] M. Sharples, The Design of Personal Mobile Technologies for Lifelong Learning, Computers and Education, vol. 34, no. 3, 2000, pp. 177-193.

[17] A. Hamid, and S. Hafizah, WE-learning – Electronic and Mobile Learning Environment, The Public Institutions of Higher Learning R&D Exposition, Kuala Lumpur, Malaysia, 2003.

[18] MOBIlearn project website, MOBIlearn – the wings of learning, http://www.mobilearn.org/.

[19] G. Licea, L. Aguilar, J. R. Juárez, and L. G. Martínez, Teaching Mobile and Wireless Information Systems Development in Engineering Courses, Computer Applications in Engineering Education Journal, vol. 9999, Published online in Wiley InterScience (www.interscience.wiley.com), 2009.