Cross Platform Application Development For Mobile Device Computer Science Essay

Published: November 9, 2015 Words: 2528

The mobile market is tremendously increasing and has achieve a range where some software company cannot disregard the need to contribute in it any longer. Designing a native mobile application entails lots of resources and this, might affect some of the issues with development and deployment.

At present, there are different mobile device manufacturers which have different devices and development tools. The main solution to solve this issue would be to design a cross-platform application which exist on all mobile operating systems (OS), as it operates in a some browser and consequently, can reach the major possible number of end-users.

Keywords

OS; cross-platform; User experience(UX); User Interface (UI); SDKs;.

INTRODUCTION

Mobile devices are the oncoming train of the future of computing. Some of the issues when developing a mobile application is basically how to build mobile apps that are applicable to many mobile devices.

In generally, there are different mobile devices today, with different operating systems, such as IOS (Apple), Android (Samsung , HTC) , Blackberry OS .

All these devices has one major difference which are the screen sizes and different attributes. Users prefers to make use of any mobile devices of their choice but everyone it would be amazing accessing a particular mobile apps on different devices.

Furthermore, developing a mobile app that runs on different devices requires the cross platform capability to brand more mobile apps accessible to users.

Over the last years software companies developed their own mobile platform with specific tools and application market (See Table 1) illustrates different mobile platform , programming languages, developers environment and application stores. The competition of mobile platform has enabled the large and rapid increase of mobile market .

The main aim of this thesis is to create a guideline for designing user-friendly cross-platform applications, taking advantages of multiple browsers and device capabilities. This guideline is based on the literature research and mobile usability.

Table 1

Mobile Platform

Vendors

Operating System

Programming Language

Developer Environment

Application Store

Apple

IOS

Objective C

X-code

iPhone App Store

Google and open handset alliance

Android

Java

Eclipse

Google Play

Microsoft

Windows Phone

Visual C# C++

Visual Studio

Windows phone Market place

RIM

Blackberry OS

Java

Eclipse

Blackberry App World

Nokia

Symbian OS

Java

Eclipse

Ovi Store

LITERATURE REVIEW

The purpose of this section is to provide an overall base of mobile platforms, the problem discussion as well as overall purpose and research questions. An endeavour in this section is to provide relevant literature relating to some of the research questions which focuses more on cross-platform application and user experience (UX).

- Cross-Platform Framework

This section discusses one of the research questions in the thesis listed (Refer RQ.6).

At present, In the mobile industry there are different kinds of mobile devices in the market that uses different platforms or operating system (OS) such as iOS (Apple), Android(Google), Blackberry and Windows mobile (ndottech, 2013)

Developers prefers to choose a platform that aids them to develop the applications in one common language that would be supported by all the popular platforms. This is called as the cross platform mobile development.

Across the world presently, some mobile application developers have started adopting PhoneGap framework to develop some awesome applications that runs on various mobile platforms. Developers can also use PhoneGap-Build that offered by this framework to build and accumulate applications without using SDKs, hardware and other tools. One can also access different functions like camera, compass, notifications, accelerometer and more while developing application on this framework

(mobileappsdevelopmentmart, 2013).

Cross platform mobile application development provides great result to the developer. At present, developer prefers to run some apps in different platform using various tools like PhoneGap, sencha, titanium and rhomobile (ezinemark, 2013). Based on research on (PhoneGap Framework : A Godsend Technology To Develop Cross-Platform Apps. mobileappsdevelopmentmart, 2013) it is obvious that most software companies have adopted the use of PhoneGap tool and other cross-platform framework in other to develop different mobile platforms.

- Why Choosing Cross Platform Mobile Application Development Over Native

This section discusses one of the research questions in the thesis listed (Refer RQ.3)

As mobile industry embraces multiple platforms, a lot of mobile phone users are exceedingly increasing. Cross Platform development are being used in every field these days.

a cross-platform application can deliver the same results as a native application if designed and developed in an efficient and user friendly way, is sure going to get in the hands of millions. It is up to the developer to handle things in a good standard and attribute to come up with an app that is simply superb (techblis, 2013)

Hybrid products which is also known as cross-platform are valued more and considered to be efficient than native application. Hybrid applications are those which are developed in multiple or mixed platforms. These applications can be designed on two or more of operating system(OS) such as iOS, Android, Blackberry OS, and Windows Phone 7. Cross Platform Mobile Application Development is not really guaranteed, there are both pros and cons to compare cross-platform and native applications.(techblis, 2013).

In other for end-users to decide a mobile platform, below are some of the pros and cons.

The Pros of Cross-Platform Application

1. Development takes less time and less investment

When developers use cross-platform technologies, the project ends-up faster and takes less time. some of the codes generated using these technologies can also be reused at primary level of other projects.

2. Access to plug-in that can be used in other projects

Cross-platform technologies like PhoneGap and Titanium framework provides easy access to plug-ins that developers can easily make use of in other tools and services. it also offer general links to camera, location sensors and accelerometers, which avoids the need of writing a separate code.

3. Web developers can easily use the code

Web developers can also re-use these frameworks as they are designed for scripting languages such as HTML5, CSS and JavaScript.

4. Desired support for cloud services

it also supports cloud services, if clients want integration of cloud services, these frameworks enables developers without difficulty doing so. There is also no need of a multiple security method as the apps functions similarly on both platforms.

The Cons of Cross-Platform Application

1. Update does not supporting all features

At present, Apple and Google keep adding new features to their platforms. This might create problems for developers as the framework they are using will need to be updated for the improvements made by both mobile companies in their platforms

2. Restrictive tools

Some mobile developers can implement various functionalities that may be different from the ongoing approach. This may require user learning the process all over again. It can be frustrating as well.

3. Slower codes increases the rendering time

Some of the apps resulted from cross-platform mobile development technologies might be slower than regular ones. This code may take long time in getting rendered as it has to churn out for each platform.

4. The code is ineffective

The code procured using this frameworks can be ineffective. Most times, developers do not use native languages when they make use of cross-platform development technologies. In this condition, the effectiveness of an application is been determined by the effectiveness of the translation engine that the tool has (goarticles, 2013).

- Mobile Usability

This section discusses one of the research questions in the thesis listed (Refer RQ.5) which is about cross-platform design and usability.

The usage of mobile devices is increasing ever year, same thing applies to users expectations of the mobile user experience. Generally, users prefer applications that are easy to work with, access it quickly and features attractive user interfaces. Applications designed, have to know what users want to achieve and to support them in carrying out any task. As easy as possible, this is one of the biggest challenges of a designer's job.

As a result, the main aim of this section is to provide an introduction to the topic of usability, which is very important to users and the principles of user interface design, which helps to design user-centered applications.

All the major operating systems have unique looks that serve different purposes. Apple operating system goes for a clean user interface which facilitates higher usability. it provides much of the experience people are looking for (Apple, 2013).

Android operating system makes a choice from a range of possibilities for something that is more functional and productive. Android provides a variety of pre-build UI components such as structured layout objects and UI controls. Also provides other user interface (UI) modules for special interfaces such as dialogs, notifications, and menus(Android, n.d)

Microsoft's Windows Phone's Metro interface is fast and meant to convey as much information as possible. Windows Phone provides a rich assortment of controls, textbox and text block (Microsoft, 2013).

Cross platform applications are not built with keeping a single user interface, they are developed for multiple platforms. So, they are not able to capitalise on the strengths of one interface and hence lose out in the long run (theappentrepreneur, 2012).

When designing an application, there are some constraints which developers and designers must take into consideration when designing and developing for mobile. If device type is the broadest of these, then screen size, differing form factor and physical user interface are part of pictures as well.

In-other to design a better mobile user experience, it is essential to understand the user point of view, how they behave in relation to the mobile experience that will be delivered and in relation to the entire mobile web experience (mobiforge, 2013).

Also Carol Barnum (Barnum, 2011, p. 11) analyzed this rather formal definition and highlights the importance of following elements of the previous usability definition which are as follows :

Specific users - the importance of specific users is that the focus is not on all users, but only on the target group for the particular product

Specific goals - specific goals mean that the product's goals are identical with those of its users

Specific context of use - users are using the application in a certain environment and it is essential that the application is designed to be used under those terms.

According to Jacob Nielsen describes Usability as a property of user interface with multiple components, which includes the following attributes learnability, efficiency, memorability, errors and satisfaction (Nielsen, 1993, p. 26).

(Barnum, 2011, p. 6). also describes it as how can effectiveness, satisfaction be measured. Usability can be measured in such a way where multiple users are trying to achieve a set of predefined tasks.

Bibliography

Allen, G.(2012). Beginning Android 4. New York, NY, USA: Apress.

Allen, S. Graupera, V. & Lundrigan, L., (2010). Pro Smartphone Cross-Platform Development: iPhone, BlackBerry, Windows Mobile and Android Development and Distribution. New York, NY, USA: Apress.

David, M. (2011). Building Webside with HTML5 to Work with Mobile Phones. Oxford, UK: Elsevier Inc.

International Organization for Standardization, (1998). Guidance on Usability. s.l.:ISO 9241-11.

Ostrander, J., (2012). Android UI Fundamentials. Berkeley, CA, USA: Peachpit Press.

Olson, S., Hunter, J., Horgen, B. & Goers, K., (2012). Professional Cross-Platform Mobile Development in C#. Indianapolis, IN, USA: John Wiley & Sons, Inc.

Apple Inc., (2012). iOS Human Interface Guidelines. Cupertino, CA, USA: Apple Inc.

References

Barnum, C. M., (2011). Usability Testing Essentials. Burliington, MA, USA: Elsevier.

Nielsen, J.(1993). Usability Engineering. Orlando, FL, USA: Academic Press.

Ndot, T. (2013).Cross platform mobile development. Retrieved from http://www.ndottech.com/cross-platform-mobile-development.html

mobileappsdevelopmentmart.(2013).PHONEGAP FRAMEWORK: A GODSEND TECHNOLOGY TO DEVELOP CROSS PLATFORM APPS. Retrieve from http://mobileappsdevelopmentmart.wordpress.com/2013/02/08/phonegap-framework-a-godsend-technology-to-develop-cross-platform-apps/

EzineMark.(n.d). PhoneGap development tool to quick access for cross platform mobile apps in Mobile. Retrieved from

http://mobile.ezinemark.com/phonegap-development-tool-to-quick-access-for-cross-platform-mobile-apps-7d38940c8069.html

Techblis, A.(2013). Why To Go For Cross Platform Mobile Application Development. Retrieved from

http://www.techblis.com/why-to-go-for-cross-platform-mobile-application-development/

Shubhangi, V.(2010). The Advantages and Disadvantages of Cross-Platform Mobile Application Development. Retrieved from http://goarticles.com/article/The-Advantages-and-Disadvantages-of-Cross-Platform-Mobile-Application-Development/7529057/

Pratik, K.(2012). App Entrepreneur's Dilemma: To Go Native Or Cross Platform?. Retrieved from http://theappentrepreneur.com/app-entrepreneurs-dilemma-to-go-native-or-cross-platform

mobiforge. (2013). Usability on the mobile Web: best practices and guidelines for designers and developers. Retrievedfrom http://mobiforge.com/designing/blog/usability-mobile-web-best-practices-and-guidelines-designers-and-developers

Apple. (2013). iOS Human Interface Guidelines. Retrieved from http://developer.apple.com/library/ios/#documentation/userexperience/conceptual/mobilehig/Introduction/Introduction.html

Android. (n.d) User Interface. Retrieved from http://developer.android.com/guide/topics/ui/index.html

Microsoft.(2013). User interface for Windows Phone, Retrieved from http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff967556(v=vs.105).aspx

Appendixes 1

Everything You Need To Know About The Fragmented Mobile Developer Ecosystem

Reference

Robin, W.(2010). Everything You Need To Know About The Fragmented Mobile Developer Ecosystem. Retrieved from http://techcrunch.com/2010/07/05/mobile-developer-economics-2010/

Appendix 2

PhoneGap: Excellent Mobile App Development Framework

An excellent cross-platform mobile application development framework, PhoneGap is an extremely popular framework that created by Nitobi software, and later, it was acquired by Adobe in the year 2011.

By using this framework, mobile app developers are able to create lots of mobile applications for different mobile platforms like BlackBerry, Android, iOS, Palm, Bada, Symbian, Windows and more. PhoneGap make s it easily possible for mobile app developers to create lots of mobile applications that support various mobile platforms without any hassle.

Before, it was not possible to develop only one application that supports with different mobile platforms; however, PhoneGap has helped a lot to developers as well as businessmen to save their time and money. With the help of JavaScript, CSS and HTML, PhoneGap enables developers to develop any type of application without facing any obstacles. This is the most popular framework on the web that uses high standard based web technologies to develop a range of mobile apps.

These days, you can find lots of businessmen, who are using PhoneGap framework in order to develop their multi device supported application by which they can save their lots of money. Now, mobile developers can easily create fruitful and resourceful apps as PhoneGap carries latest features and functions that make development process easy. Therefore, new and inexperienced developers can also use this framework and gain a variety of benefits. No matter, whether you are looking to develop a business app or an entertainment app, PhoneGap allows you to create any application that best meets your requirements.

Reference

Maria, B. (2013). PhoneGap: Excellent Cross-Platform Mobile App Development Framework. Retrieved from http://storify.com/mariabrean/phonegap-excellent-cross-platform-mobile-app-devel

Appendix 3.

USER CENTERED DESIGN

This article focuses on designing the user experience for mobile websites accessed from mobile phones with small screens, though the process can be applied to building apps as well. As a Web designer, the good news is that the process is similar to designing desktop websites - with some additional mobile-only considerations that go hand-in-hand with small screens, device features and constraints, and connectivity issues. The user-centered mobile design life cycle can be thought of as an ongoing process as shown below

User-Centered Mobile Design Starts With The User User-centered design relies on user involvement throughout the design process, leading to a solution that users will find useful and want to use. To achieve that, you first need to have a clear understanding of your users, grouped into a prioritized set of user groups whose needs can be thought of individually. For a pharmaceutical company, those groups could be patients, healthcare professionals and caregivers, with the first two groups being the primary user groups, and caregivers being a secondary user group with very similar needs to patients. Identifying your key user groups and creating personas will help you design better for your main users, the way BBC did when building their future mobile strategy.