Research and Analysis of the Development Approaches in E-Business Mobile Application

. With e-Business rapidly spreads out in recent years, there is a significant trend that more and more consumers are using mobile applications in engaging with e-Commerce. In order to reach out to maximum consumers across diverse mobile platforms, how to choose a suitable e-Commerce mobile application development approaches with reliable compatibility and lower cost becomes a challenging solution. This paper starts with describing an overview of various development approaches in the field of e-Commerce mobile applications. The research will focus on examining the performance of e-Business mobile applications in terms of access to mobile features, advanced graphics and compatibility are developed using such frameworks. By analyzing the research data on several platforms, this paper will list the pros and cons in each development approaches under different commercial criteria. Finally, the paper summarizes the contributions and concludes with some possible future e-Commerce mobile development directions.


Preface
With digital technology rapid development in the last decade, more and more corporations build their e-Business to absorb more customers in worldwide without geographical limitation. Compared to a stable number in traditional retail sales, eMarketer [1] estimates that the global e-Commerce will occupy 10% total retail sales market with 23.2% growing speed in 2017. Based on eMarketer's [1] expectation, mobile commerce (m-Commerce) will play a major role in digital sales in the next year. According to the eMarketer's Research Report -" Worldwide Retail and Ecommerce Sales: eMarketer's Updated Forecast and New Mcommerce Estimates for 2016-2021" [2], the prospection becomes reality that m-Commerce sales has contributed 58.9% of global online marketing in 2017 which number is only 40.2% in 2015. Furthermore, the eMarketer's [2] report shows a conceivable future that m-Commerce will reach 72.9% total e-Commerce sales in 2021. Therefore, establishing a suitable m-Commerce solution becomes indispensable under global drastic e-Commerce competition.
However, one question always comes after another. Wasserman [3] points out that there are multiple types of mobile devices including iPhone Operating System (iOS), Android, Blackberry and more. Each mobile platform provides various development environments to build the mobile project and developers need to maintain the consistent of the same mobile application in diverse platforms. Therefore, cross-platform development tools appeared and significantly decrease the cost of developing mobile application [4]. In this paper, we will go to investigate different mobile development platforms and collect the essential information and evaluate the applicable solution in m-Commerce development with industry standard.

Mobile platforms 1.1 Apple iOS
Apple iOS is Apple's mobile products operating system and its official development tool is Xcode which allow development teams to build their application for all Apple Platforms [5]. According to Xcode's documents, the development environment supports many programming language such as Swift, C, C++, Objective-C. Furthermore, Xcode provides custom visualization and data analysis.

Google android
Google provides Android as an open source operating system to global mobile manufactures and its official development tool is Android Studio which allow development teams to build their application for all Android Devices [6]. According to Android Studio's documents, the development environment supports many famous programming language such as Koltin, C, C++ and Java. Furthermore, Android Studio provides powerful visual layout editor and fast emulator in augment reality (AR).

Blackberry OS
Compared to Android and iOS, Blackberry development environment contains more compatibility which not only supports Native development but also allows HTML5 web application and android project to transform to their platform [7]. Its official development tool is Blackberry Native SDK and its programming language is C++.

HTML and Android
The table shows that if a development team wants to build a native application in major mobile systems, they need to develop them in different official development environments. Although all platforms support C++ as their common point and have many similar development process, there are many unique tools or features in each software development kit (SDK). Therefore, these differences lead to developers cannot simply transfer the codes to another platform.
In fact, an e-Commerce application requires more in development and maintenance due to large amount of visitors and online transitions. Hosting festival or holiday discount activities every year is a normal phenomenon and e-Commerce application. However, if the application is developed by native environment, developers need to build the code three times due to diverse platforms' criteria. Therefore, a native application for diverse systems will cause inconvenience and higher cost.

Cross platform
Considered native development challenges, commercial corporations start to find a better solution to make the work more efficient. In fact, modern web front-end development does not use a single language or platform, it also requires developers to have professional front-end skills to combine Hyper Text Markup Language 5 (HTML 5) with Cascading Style Sheets 3 (CSS3) and advanced JavaScript to develop a commercial website with industry standard [8]. Compared to past version of HTML, HTML 5 includes more powerful features such as abundant UI components and responsive development [8]. Furthermore, modern mobile devices have installed a browser before retailing which means that all modern mobile devices support HTML 5 without any system limitation. Consequently, HTML 5 starts to be listed into potential cross platform solutions due to its powerful compatibility in browser.

Web application
In order to develop an application based on HTML 5, development team needs to analyze how to make a web application look like a native application. There is no doubt that the biggest difference between desktop website and mobile application is interactive method which is "click" and "touch". In a desktop system, the majority of interactive actions that consumers use the mouse to click the specific button to interact with website or system. However, mobile devices cannot contain a mouse so that its interactive action only relies on finger touch. Advanced JavaScript supports how the desktop "click" action transforms to the mobile "touch" platform [8].
Although HTML 5 tries to simulate native application with acceptable level in most of the interactive aspects, it still has a significant disadvantage that a web application cannot be granted full access to application programming interface (API) due to mobile system manufactures' policy. Mobile API means different features in mobile devices such as camera, album, contact, compass and so on [9]. The following table displays the limited accessing API right for HTML 5.

Proximity Sensors
Yes

Yes Yes
Task Scheduling

Touch Gestures
Yes Yes

Yes
The table demonstrates that a native application can reach 100% of major mobile API but the web application has limitation access. Although web applications are allowed to access some key API like camera, microphone, geolocation, payments, some advanced feature like AR/VR, Proximity Sensors are forbidden by system policy. Despite all of these advanced features, web application still cannot obtain access of blue tooth, contacts even ambient light. In short, web application cannot undertake comprehensive commercial requirements. Therefore, if a m-Commerce application like an online shopping application requires to share the consumer's contact so that it can extend consumers' social loop, web application is not a suitable development approaches.

Hybrid application
The web application has been considered as incapable solution and there is no doubt that pure HTML 5 is not a suitable solution. Therefore, if a development environment can combine the compatibility in HMTL 5 and native application language without API access issue, it will be a suitable solution for developing m-Commerce application. In fact, there are many hybrid applications appeared and Adobe Phone Gap is one of the famous developing environments. Adobe Phone Gap is a hybrid mobile application development framework and mix native and hybrid code to build the application [10]. Figure 1 Phone Gap Application working principle [12] The figure shows that how a hybrid application work as a native application. Phone Gap application is based on web front-end technologies such as HTML, CSS and Java Script. However, previous research already shows that web platform has limitation in mobile devices' API. Therefore, Phone Gap uses native application languages to develop different plug-ins to access most of Mobile API includes contacts, network, compass and so on. Then the web application uses Phone Gap's plug-in and the hybrid application will be rendered by HTML. This working principle let the hybrid application have compatibility with HTML 5 and obtain almost fully granted to access Native Mobile API.

Suitable development solution
Although Hybrid application has an appropriate balance between native and web application, choose development solution still depends on many different circumstances.
A web application can be considered if the corporation supposes to develop a pilot version of application with simple content display functions because hybrid or native development cost is much higher than a pure web application.
Compared to web application, native development has more comprehensive aspects to consider. If a corporation has many professional developers with multi platform skills, they should consider native development because their existing skills allow them to start in native approaches. Another native development circumstance is that the application requires high quality user interface and real time responsive while current HTML 5 technologies are not sufficient to satisfy with user experience such as chatting or game application.
Hybrid development combines web with native application's advantages together so that hybrid approaches are compatible with sufficient mobile features. A m-Commerce application should have the characteristics to maximum consumers across diverse mobile platforms. More importantly, HTML 5 is a rapidly growing technology in recent years. No matter which mobile platforms raise or down, HTML 5 still continues to be an important seat in mobile devices.

Conclusion and suggestion
This paper provides the description in both three different native mobile platforms to develop the application. Currently, native development is required to spend more time in narrowing down the diversity between different development environments and incurs unnecessary cost especially in m-Commerce projects.
This paper lists additional solutions for developing application includes web application and hybrid application. By analyzing the comparison data between web and native in accessing mobile API, it can be possible to conclude that the web approach is not suitable solution to develop an application with high frequency of accessing different mobile API. Hybrid development approach can combine the advantages between native and web application, and it is an appropriate solution for m-Commerce development.
The development in Phone Gap is based on a hybrid development environment to build the application in HTML 5 rendering engine with Phone Gap plug-ins to access mobile API. The hybrid working principle allows Phone Gap to access most of the mobile API.
Future works will extend our research field to discuss more hybrid development approaches and analyze their working principles to develop mobile application.