Instant Download

Download your project material immediately after online payment.

Project File Details


3,000.00

100% Money Back Guarantee

File Type: MS Word (DOC) & PDF

File Size: 3,391 KB

Number of Pages:103

ABSTRACT

 

The Java programming language is widely used in industry and business. Therefore, academic institutions worldwide include Java learning as a basic part of their Computer Science and Engineering curricula. At the same time, smart devices have become popular among university learners. This research tries to take advantage of this fact to promote Java learning. The main problem is that we cannot compile Java programs on smart devices due to the technical limitations of such devices. This research aims to leverage cloud computing, the availability, prevalence and affordability of smart devices and the ever-growing market of Android devices to provide users with text editors to create and modify Java programs and save them to a server. Users can also compile and execute created programs. A web-based version of the application is also provided for users who do not use Android devices that can be accessed via a browser on a PC or Smart device. The system uses an existing online compiler. The developed cloud-based compiler can be integrated into a smart multimedia learning system for learning the Java programming language.

 

TABLE OF CONTENTS

 

Abstract …………………………………………………………………………………………………………………… iii
Acknowledgement …………………………………………………………………………………………………….. iv
Dedication ………………………………………………………………………………………………………………… vi
List of figures ……………………………………………………………………………………………………………. ix
List of tables ………………………………………………………………………………………………………………. x
List of abbreviations ………………………………………………………………………………………………….. xi
CHAPTER ONE: INTRODUCTION ………………………………………………………………………. 1
1.0 Learning technology in the 21st century …………………………………………………………. 1
1.0.1 Mobile technology and mobile learning ……………………………………………………. 2
1.0.2 Smartphone OS market share ………………………………………………………………….. 4
1.0.3 The future of learning technology ……………………………………………………………. 5
1.1 Multimedia learning systems…………………………………………………………………………. 6
1. 2 Java programming language ………………………………………………………………………….. 7
1. 3 Problem statement ……………………………………………………………………………………….. 7
1.4 Purpose of the research…………………………………………………………………………………. 7
1.5 Target operating system ……………………………………………………………………………….. 8
1.6 Expected results and deliveries ……………………………………………………………………… 8
1.7 Scope of the work ………………………………………………………………………………………… 8
1.8 Thesis structure……………………………………………………………………………………………. 8
CHAPTER TWO: LITERATURE REVIEW …………………………………………………………… 10
2.0 Introduction ………………………………………………………………………………………………. 10
2.1 Compilers …………………………………………………………………………………………………. 10
2.1.1 Compiler architecture …………………………………………………………………………… 10
2.1.2 Phases of a compiler …………………………………………………………………………….. 12
2.2 Concept of cloud computing ……………………………………………………………………………… 12
2.2.1 Types of cloud computing …………………………………………………………………….. 15
2.2.1.1 Location of the cloud ……………………………………………………………………………. 15
2.3 Android operating system …………………………………………………………………………… 17
2.4 Review of existing works ……………………………………………………………………………. 19
2.4.1 Online C/C++ compiler using cloud computing …………………………………………….. 19
2.4.2 Cloud Compiler Based on Android ………………………………………………………… 22
2.4.3 Cloud-based “C – Programming” Android application framework …………….. 26
2.5 Proposed solution to limitations of the existing works ……………………………………. 29
viii
CHAPTER THREE: RESEARCH METHODOLOGY, SYSTEM DESCRIPTION AND ARCHITECTURE …………………………………………………………………….. 30
3.0 Introduction ………………………………………………………………………………………………. 30
3.1 Sphere Engine……………………………………………………………………………………………. 31
3.1.1 Sphere Engine API ………………………………………………………………………………. 31
3.1.2 Sphere Engine API methods …………………………………………………………………. 33
3.1.3 Status and result ………………………………………………………………………………….. 38
3.2 Description of the system ……………………………………………………………………………. 40
3.2.1 Functionalities of the system …………………………………………………………………. 40
3.2.2 Architecture of the system …………………………………………………………………….. 41
3.2.3 Dataflow diagram ………………………………………………………………………………… 44
3.2.4 Functional requirements ……………………………………………………………………….. 45
3.2.5 Other requirements ………………………………………………………………………………. 45
3.2.6 Database design …………………………………………………………………………………… 46
CHAPTER FOUR: IMPLEMENTATION OF THE SYSTEM ……………………………………. 49
4.0 Introduction ………………………………………………………………………………………………. 49
4.1 jsTree ……………………………………………………………………………………………………….. 49
4.2 EditArea Javascript editor …………………………………………………………………………… 50
4.3 The interfaces ……………………………………………………………………………………………. 52
4.3.1 Web browser interface ………………………………………………………………………………… 52
4.3.2 Android interface …………………………………………………………………………………. 53
4.4 Software tools used ……………………………………………………………………………………. 57
4.5 System testing……………………………………………………………………………………………. 59
CHAPTER FIVE: SUMMARY, CONCLUSIONS AND RECOMMENDATIONS …….. 61
5.0 Summary of results obtained ……………………………………………………………………….. 61
5.1 Conclusions ………………………………………………………………………………………………. 62
5.2 Limitations of the system ……………………………………………………………………………. 62
5.3 Recommendations and future work ………………………………………………………………. 62
References ……………………………………………………………………………………………………………….. 64
Appendix A ……………………………………………………………………………………………………………… 67
Appendix B ……………………………………………………………………………………………………………… 80

 

CHAPTER ONE

 

INTRODUCTION
In this chapter we examine learning technologies in the 21st century and how they affect learning among students. We also discuss mobile technology, mobile learning and multimedia learning systems. The chapter also discusses the increased use of smart mobile devices, the future of learning technologies and how we can leverage them to improve the use of mobile learning. These discussions lead us to formulate and present our problem statement as well as our aims and objectives.
1.0 Learning technology in the 21st century
Technology is found in most parts of our lives. Most homes have connected computers or internet-enabled devices (smart devices). Technology plays a very important role in 21st century education. When integrated into the curriculum, technology revolutionizes the learning process. More and more studies show that technology integration in the curriculum improves students’ learning processes and outcomes. Teachers who recognize computers as problem-solving tools change the way they teach. They move from a behavioural approach to a more constructivist approach.
Technology and interactive multimedia are conducive to project-based learning. Students are engaged in their learning using these powerful tools, and can become creators and critics instead of just consumers. Technology helps change student/teacher roles and relationships: students take responsibility for their learning outcomes, while teachers become guides and facilitators. Technology lends itself as the multidimensional tool that assists that process. For economically disadvantaged students, the school may be the only place where they will have the opportunity to use a computer and integrate technology into their learning. There is a growing body of evidence that technology integration positively affects student achievement
2
and academic performance. The Center for Applied Research in Educational Technology (CARET) found that, when used in collaborative learning methods and leadership aimed at improving the school through technology planning, technology impacts achievement in content area learning, promotes higher-order thinking and problem-solving skills, and prepares students for the workforce [5].
1.0.1 Mobile technology and mobile learning
The availability, prevalence and affordability of mobile phones, tablets and other connected devices have been on the increase over the last two decades. With this, wireless technology can dramatically improve learning and bring digital content to students. Students engage with mobile technology and use it regularly in their personal lives for taking pictures, playing games, using social media and so on. Effective use of mobile technology is less about the tools and more about learners’ digital literacy skills, including the ability to access, manage and evaluate digital resources [7].
Berking et al. in [8] define mobile learning as “leveraging ubiquitous mobile technology for the adoption of or augmentation of knowledge, behaviors, or skills through education, training, or performance support while mobility of the learner may be independent of time, location, and space”.
Mobile learning according to the author in [6], “encompasses the usage of portable computing devices (such as iPads, laptops, tablet PCs, PDAs, smart phones) with wireless networks to enable mobility, mobile learning, allowing teaching and learning to extend to spaces beyond the traditional classroom”.
3
As an integral part of students’ daily lives, mobile technology has changed how they communicate, gather information, allocate time and attention and potentially how they learn. The mobile platform’s unique capabilities, including connectivity, cameras, sensors and GPS have great potential to enrich the academic experience of learners. This is according to the result of a research carried out by [7].
Global mobile device ownership is high and continues to increase. The figures below give the growth rate of mobile devices and an estimated number of users among different age groups.
Figure 1.1: Global desktop and mobile device ownership
4
Figure 1.2: Global device ownership by age
1.0.2 Smartphone OS market share
In the year 2015, the worldwide smartphone market grew by 13.0% year on year with 341.5 million shipments, according to data from the International Data Corporation (IDC) Worldwide Quarterly Mobile Phone Tracker. In the past few years, the Android operating system has begun to dominate the world of smart devices – phones and tablets [12]. The figure below shows the percentage of smart devices that run on the various operating systems, obtained in the year 2015 according to Forbes.
5
Figure 1.3: Percentage of smart device OS users in 2012
Source: Trefis Team, 2015
As at the first quarter of the year 2015, Android dominated the smartphone market with a share of 82.8% [12]. The Android OS market share has been on the rise over in the past few years and is projected to keep rising.
1.0.3 The future of learning technology
The learning and development world has evolved rapidly during the last four to five years. There are many online learning platforms such as Khan Academy (www.khanacademy.com), Cousera (www.cousera.org) that offer video-based learning and Massive Open Online Courses (MOOCs). Then there is learning delivered through smartphones, tablets and cloud-based applications, not to mention the increase in webinars, podcasts and social media-based offerings across the digital world.
6
Technological advances, internet access and mobile device usage all play a significant role in enabling scalable access of learning across the globe. However, while organizations have started investing in these areas, there is still a low adoption of e-learning [9]. With the rapid growth of internet-enabled devices, it is important to note the future of learning technology is very bright. By developing more e-learning platforms in addition to the existing ones and motivating both learners and trainees to adopt these platforms, the many benefits associated with learning technologies can be achieved.
1.1 Multimedia learning systems
Mayer and Moreno define multimedia as “any computer-mediated software or interactive application that integrates text, color, graphical images, animation, audio sound, and full motion video in a single application”. Multimedia learning systems consist of animation and narration, which offer potential avenues for improving student understanding [29].
With the rapid advances the internet and information and communications technology have made, it has become extremely important to utilize these technologies to enhance teaching, learning and education. This will be of immense value to both the educator and the learner. For educators, it makes available a convenient platform to present information in interactive and media-enhanced formats in contrast to the usual methods they are used to. For learners, information offered through these channels and methods is easier to understand, deal with and retrieve, and this in turn improves the whole learning process for all parties. Multimedia has the potential to create high-quality learning environments, with the ability to create a more realistic learning context through different media. It also helps by allowing a teacher to take better control of the classroom, especially when the class size is large.
7
1. 2 Java programming language
Java is a programming language first developed by James Gosling at Sun Microsystems, which is now a part of Oracle Corporation. It was released in 1995 as a part of Sun Microsystems’ Java platform. Much of its syntax is derived from C and C++. Java applications are usually compiled to bytecode (a class file) that can run on any Java Virtual Machine (JVM). Java is currently one of the most popular programming languages in use [10].
1. 3 Problem statement
In view of the important role learning technology plays in education in the 21st century coupled with the relative affordability and affordability of internet-enabled smart devices, it has become imperative to develop a smart multimedia learning system for the Java programming language which comprises a lecture slides module, a reading topics module, a flash cards module, video lectures module, and an integrated development environment (IDE) module for learning, compiling and running Java programs on learners’ smart devices.
This research focuses on the development of a cloud-based compiler for smart devices to compile and run Java programs on learners’ smart devices which would be incorporated into a smart multimedia learning system for the Java programming language, together with other components in the future.
1.4 Purpose of the research
The research aims to achieve the following:
a. Design and develop an IDE for the Java language to run on smart devices on a chosen operating system.
b. Implement a cloud-based server that hosts the Java compiler.
8
1.5 Target operating system
Android is an open-source operating system introduced by Google and the OHA (Open Handset Alliance) in September 2008. It is the most widely used mobile operating system, with more than 80% of the world’s mobile operating systems being Android. The popularity of the Android OS, its affordability and readily available programming kits makes it an easy choice for this research. Although the application to be developed is targeted for the Android OS, a web-based version is also to be developed for non-Android users.
1.6 Expected results and deliveries
The following are the expected deliverables of this research
1. An Android application via which a user can type a program in Java and press a compile button to send the written code to the cloud server for processing.
2. A web-based version of the developed Android application
1.7 Scope of the work
This research entails the development of a mobile application to compile and run Java on smart devices. A web-based version of the application was also built for those who do not use the target operating system the application was built on. The server side of the project could not be completed in time and as a result an existing online compiler was used to achieve the results.
1.8 Thesis structure
Chapter 2 gives an insight into concepts relating to compilers, cloud-based computing, the Android operating system and a review of current literature.
Chapter 3 discusses the research methodologies, architecture and describes the system.
9
Chapter 4 gives a detailed discussion of the implementation of the system.
Chapter 5 rounds up by discussing results, summary, conclusions and suggestions for future work.

GET THE FULL WORK

DISCLAIMER: All project works, files and documents posted on this website, projects.ng are the property/copyright of their respective owners. They are for research reference/guidance purposes only and the works are crowd-sourced. Please don’t submit someone’s work as your own to avoid plagiarism and its consequences. Most of the project works are provided by the schools' libraries to help in guiding students on their research. Use it as a guidance purpose only and not copy the work word for word (verbatim). If you see your work posted here, and you want it to be removed/credited, please call us on +2348157165603 or send us a mail together with the web address link to the work, to hello@projects.ng. We will reply to and honor every request. Please notice it may take up to 24 or 48 hours to process your request.