Enterprise Mobile Application Development with Wavemaker
Total Page:16
File Type:pdf, Size:1020Kb
ENTERPRISE MOBILE APPLICATION DEVELOPMENT WITH WAVEMAKER Abstract This whitepaper talks about the requirements of modern day Enterprise Mobile Applications and how WaveMaker can simplify and speed up the overall delivery of Enterprise Mobile Applications. Karthick Viswanathan ©WaveMaker, Inc. Introduction With every Enterprise adopting a Mobile first initiative to Application Development, the need for quick rapid mobile application development is greater than ever. Having said that, the methods, tools and development technologies used for mobile application development within Enterprises over the past few years, don’t match the expectations of easier and faster delivery of Mobile Applications. Also the requirements for Mobile Applications within enterprises have also changed. In this Paper we will discuss the various approaches to Mobile Application Development. We will talk about the capabilities required by Enterprises in today Mobile Applications. And finally we will see how WaveMaker can help Enterprises to deliver Mobile Applications faster, easier while adhering to Security, User Experience and Integration needs. With the emergence of Modern Rapid application Delivery platforms, Enterprises now have the capability to solve the continuous problem of delivering Apps at faster, easier while keeping intact Enterprise Architecture expectations. This Paper will focus on WaveMaker as a Rapid Application Delivery platform for developing Mobile Hybrid Applications. What are my Options today? There are multiple options for Enterprise developers to develop mobile applications today. As with any technology choice there are pros and cons of each approach. Let’s understand each approach and analyze which one of this would be suitable for modern day Enterprises looking for rapid delivery of mobile applications. Web Responsive In the late 90’s as mobile devices with the ability to host a browser inside them, enabled viewing web applications on the mobile device browser. The technology was very naïve and immature at that point and over the years, this technology has become very sophisticated and feasible. Today’s web responsive applications built using modern HTML5, JavaScript and Bootstrap CSS technologies are user friendly, and visually interactive to be viewed on the browsers of mobile devices. However they are heavy on performance and cannot match the sophistication and customization needs of mobile applications. Native applications In the late 2000’s we saw the emergence of Apps and App Stores. Today, every serious business whose entire business model depends on the single app, has a native mobile app for customers to use. Native Mobile Apps are built and designed for each device platform independently and offer highly customized and sophisticated user interfaces and interactions. However they are cost prohibitive and required highly skillful labor to develop them for each platform using device platform specific programming language. Mobile Hybrid (Best of Both Worlds) How do I get the best of both worlds? As an End User I would like good User Interactions and User Interface. As an Enterprise I would like to meet the Gartner Says by 2016, More growing demands of developing Mobile Apps at a rapid pace that keeps up Than 50 Percent of Mobile with business needs. This is where Mobile Hybrid Applications come to the rescue. Mobile Hybrid Applications are developed using standard HTML5, Apps Deployed Will be Hybrid JavaScript technologies that developers are used to and at the same time give the look and feel close to Hybrid Applications as well as allow the Enterprise Mobile Application Development with WaveMaker ©WaveMaker,Inc. 2016 Applications to access Device Capabilities. They use Cross Platform technologies like Apache Cordova, PhoneGap that builds the HTML5 applications for the target platform on which the application needs to be provisioned. See below a chart that shows the comparison of all the 3 development methodologies. The chart uses various attributes of application development and shows how each development approach fares in comparison with the others. Comparison of Mobile Application Development Methodologies Enterprise Mobile Application Development Requirements As Enterprises look at deploying Mobile Applications for internal as well as external applications, there are a set of capabilities required for the Applications to be feasible and meet the Enterprise architectural expectations. These are the following, Look & Feel Former NYTimes.com Design Director Khoi Vinh captured his common frustration in his seminal 2007 article. If it looks like a cow, swims like a dolphin and quacks like a duck, it must be Enterprise Software It was rightly said, as Enterprise applications lacked good UI and user experience. Over the years, Consumerisation of the Internet has forced a relook at Enterprise applications from the User Experience stand point. Today advancement of web technologies has made it possible to develop good looking applications. The bar on design for Mobile Applications has gone up even higher. Applications are today are custom designed based on the guidelines of the platform. See the figure below that shows the same widget customized on different devices. Enterprise Mobile Application Development with WaveMaker ©WaveMaker,Inc. 2016 Customization of look and feel of widgets based on device platforms Security Every Enterprise relies on a security infrastructure to keep its applications LDAP secure. With Mobile Applications the need for Security is even higher, as AD the risk is higher due to mobile workforce, location independence and employee personal devices being used. With more breaches happening in today’s world, Enterprise are very wary of Security within the applications. Applications need to support strong Authentication, fine grained Data Enterprise SSO Authorization and Custom Data Security based on business imperatives. It Security Security is essential that these apps can integrate to Enterprise Identity Management systems like LDAP, AD, SSO and IDM (Identity Management Systems like IBM Tivoli, Oracle Access Manager, CA SiteMinder and Ping Identity Systems to name a few. AuthN AuthZ Cross Platform Development Every Enterprise Application needs to be available on multiple platforms. These platforms include and not limited to Android, Apple and Windows. The cost of developing Mobile Application for each platform is high and also impeded the speed of delivering application to the business. Modern day cross platform technologies Apache Cordova help in addressing this by allowing developers to code the application once and allowing it to be built for various platforms without having to rewrite the application. The answer to meeting the need to develop Apps at pace of Business needs is cross platform development. Integration Enterprise data is stored in multitude of places, from Databases, File Systems, Legacy Systems, ERP Systems, Cloud Platforms and custom business logic. Mobile Applications that need to access this data, need to have an easier and faster way to integrate to these systems and manage the data. The ability to integrate seamlessly to these systems via APIs (REST, SOAP as well as Web Services) from within the Mobile Applications can make it easier and faster to develop. IT is very important to provide a clean interface and separation between Mobile Applications User Interface and integration via APIs to backend systems. Today Enterprises are creating micro services and developing apps using loosely coupled architectures. Mobile Apps are developed using Services (REST, Web Services). As the world moves towards creating services around every asset, there is a greater need to simplify the ability to integrate Mobile Apps to services. Enterprise Mobile Application Development with WaveMaker ©WaveMaker,Inc. 2016 Leverage Device Capabilities Today's Mobile Devices are becoming highly sophisticated in terms of features and functionality offered. Mobile Application can benefit in user experience and features offered by leveraging the device/hardware capabilities. Developers need a simpler way to access the device features and use them within the app to make them rich and contextual. Open Standards Based Platform While there are many platforms that offer Mobile Application Development, Enterprises are very wary of getting locked into proprietary and closed platforms. Mobile Applications can benefit from using Open Standard Enterprise Technologies in the app and thereby future proof investment and platform choice made. Rapid Application Delivery CIOs and CXOs are looking for faster innovation and time to market for mobile applications. The constant complaint from senior management is the lack of agility and speed for delivering mobile applications. This can be attribute to a number of factors and not limited to complexity of developing apps, creating apps for each platform, highly laborious process of developing apps using traditional coding approaches and finally lot of effort and time to setup, install and manage the overall development infrastructure of Application development. Here is where modern Rapid Application Delivery platforms like WaveMaker can help in greatly simplifying and providing a codeless development platform to design, develop and deploy Hybrid Mobile applications. WaveMaker Visual Mobile Application Development Methodology WaveMaker has a unique visual approach to mobile app development. Developers have to just drag and drop the UI controls onto a WYSIWYG canvas and see the