Quick viewing(Text Mode)

Mendix for Mobile App Development White Paper Table of Contents

Mendix for Mobile App Development White Paper Table of Contents

MENDIX FOR DEVELOPMENT WHITE PAPER TABLE OF CONTENTS

Market Demand for Enterprise Mobile 3 Approaches 4 Native Apps 4 Apps 4 Hybrid Apps 5 Mendix Vision for Mobile App Development 6 JavaScript Pervasive as Base Technology 6 Hybrid is the New Native 7 Mendix Hybrid App Development 8 Create Powerful Mobile Enterprise Apps Without Code 8 Responsive UIs 9 Native Device Functions 10 Instant Testing 11 Publish to App Stores 12 End-to-End Mobile App Dev Flow 13 Open Platform For Any Mobile App Technology 14 The Platform To Mobilize The Enterprise 14 Conclusion 16

Mendix for Mobile App Development 2 Market Demand for Enterprise Mobile

With the explosive increase in example, customer complaints issued and tablet use, along with through a mobile app may be part of the massive consumer adoption of a larger customer service application innovative apps and services, we are whereby the customer service staff in the midst of a mobile revolution. And view the complaints through desktop this revolution is fueling fundamental computers. In this instance, staff changes to application architecture. members benefit from greater context This is similar to, and probably even by leveraging multiple data sources that more impactful than, the earlier shift all converge and produce a 360-degree from monolithic systems to /server view of the customer. architectures. A recent survey from DZone of more Modern applications require multi- than 1,000 global IT professionals channel clients and a scalable revealed that the biggest pain points for infrastructure. Moreover, they need to mobile app development are centered be easily deployed and rapidly changed around multi-platform development and based on user feedback. testing. Building native apps for multiple platforms (50%), testing efficiently (53%) For enterprise apps in B2B or B2C and lack of skilled mobile developers context, it’s critical to realize that mobile (40%) were mentioned as main apps are typically not stand-alone but obstacles. part of larger applications targeted to engage customers and deliver a great This white paper describes the experience in context. This means that capabilities in the Mendix App Platform it’s not just about developing appealing for mobile app development and our apps running on a particular device. vision on the technology developments in the mobile space. The paper targets Instead, it’s about supporting end-to- Architects, Business Analysts and IT end processes across various business executives who would like to learn more functions tied into back-end systems about the Mendix offering for enterprise and () services with bi-directional mobile solutions. exchange of data and information. For

Mendix for Mobile App Development 3 Mobile App Development Approaches

The three main approaches for mobile will have to invest in expertise for each app development are: native, web, and target platform and repeat the app hybrid. Each has inherent benefits and development effort for each platform. limitations. Mendix offers out-of-the This obviously has significant cost support for the web and hybrid approach implications. and offers platform to connect and integrate native apps into larger end-to- Mobile Web Apps end applications built in Mendix that are connected with various back-ends. Mobile web apps are essentially common web applications optimized From that perspective, Mendix does for look and feel and to function well not prescribe just one way of working. on mobile devices. Widely adopted Customer needs and demands will web development languages, such as determine the right approach. HTML5, CSS3, and JavaScript, as well as frameworks like AngularJS, provide the logic behind a web app. Native Apps Native apps are built for a specific mobile The most prominent advantages of Operating System using the platform’s mobile web app development are multi- SDK and optimized for that system. The platform support, availability of expertise apps are published in the platform’s app and the low cost of development. store and can be downloaded by users to run locally on the device. Despite these advantages, there are limitations as well, mainly due to the fact The use of the platform’s SDK means that the native device functions and OS that these apps have no APIs cannot be leveraged fully, which limits in terms of access to APIs causes the user experience to be quite and device features, performance different from native apps. In addition, optimization, and the use of the these apps lack an efficient distribution platform’s GUI toolkit for mechanism, performance could be design. compromised due to lack of local storage and offline use is not supported. Unfortunately, the native app code Depending on the requirements for the cannot be used across platforms. To mobile app, these may be prohibiting deliver multi-channel apps, organizations factors for taking this approach.

Mendix for Mobile App Development 4 Mobile App Development Approaches

Hybrid Apps The hybrid approach combines elements / Adobe PhoneGap. of native app development and mobile web app technologies. Hybrid apps are Hybrid apps combine the best of both built in a cross-platform environment and worlds, offering a near-native user brought to the device through a native experience for apps built in a cross- wrapper that makes the app package- platform toolset. Particularly for use able and downloadable from app stores. cases where apps focus on transaction A native bridge allows the app to use and interaction versus pure consumer device-specific functions. A widely apps like for gaming, this style of mobile adopted technology for this is the use of app development is gaining popularity.

Figure: Pros and cons for styles of mobile app development

PROS CONS

Optimal UX on Complexity of management NATIVE APPS each device across the lifecycle

High performance High cost of development

Non-optimal UX for pure HYBRID APPS play consumer apps. Cross-platform (e.g. games)

JavaScript development more complex than native Leverage device functions langauges Near-native UX for transactional apps

Non-optimal UX for all apps WEB APPS Cross-platform Inability to access device functions Ease of management across the lifecycle No distribution mechanism

Low performance

Mendix for Mobile App Development 5 Mendix Vision for Mobile App Development

Enterprises can greatly benefit from a that are future proof. The mobile clients single platform that supports the various should communicate with the back-end styles of mobile app development for server through REST services for typical multiple devices and provides common mobile back-end services as well as mobile back-end services. the cross platform application logic and connection to other back-end systems. JavaScript Pervasive as Base Technology A generic JavaScript library is required to be applied in both native and hybrid The rapid evolution of standards scenarios. It can be used as a core (back- like HTML and the wide adoption of end) library for data caching, security, frameworks to bridge the native device user management, messaging, etc. On functions provide an ever-richer user top of this library, specific JavaScript experience for cross-platform apps. libraries for the UI and user experience And from a logic perspective, JavaScript can be embedded in HTML5 or native is a powerful platform-independent, platform code. back-end technology, even in native clients. There’s a shift going on from The Model-Driven Development native languages towards JavaScript, approach of Mendix eliminates the where JavaScript gets more and more dependency on scarce resources for embedded in native programming programming languages like Javascript. languages to raise the level of reusability The core library is offered as a set of code across platforms. of standard services in the platform. Specific libraries required for an optimal From an architectural point, it is crucial UI and user experience are built once to establish a decoupled architecture and then offered as reusable widgets. through use of clear APIs to build sophisticated cross-platform mobile apps

Mendix for Mobile App Development 6 Mendix Vision for Mobile App Development

Hybrid is the New Native Analyst firm Gartner predicts that by As hybrid is becoming the new native, 2015 90% of mobile apps in the B2B offline capabilities will become more space will be using hybrid (60%) or and more part of the fabric of hybrid mobile web (30%) technologies. So from mobile enterprise apps. This includes that perspective, hybrid is becoming the the integration of native front ends with “new native.” mobile back-end services as well as the expansion of application models to We observe blurring lines between the along with local data the various mobile app development storage, enabling developers to develop technologies with hybrid app once and deploy to any mobile device at development that includes offline usage, any location. a native user experience and use of native device functions increasingly becoming the norm when building transactional mobile apps for B2B and B2C use cases.

Figure: Mendix vision for mobile app support

ONLINE OFFLINE

WEB APPS B uild O n Mendi ce, D HYBRID APPS e plo x y A ny wh er NATIVE APPS Native OS Specific Tools e

Mendix for Mobile App Development 7 Mendix Hybrid App Development

Create Powerful Mobile Enterprise Apps Without Code The Mendix App Platform enables visual models for the various application business users and developers to build components such, as the domain and deploy sophisticated multi-channel model, User Interface and process and apps with a model-driven development application logic. platform that is much more efficient and easier to learn than traditional While the application’s domain model technologies. With this approach, and logic are typically the same across companies can deliver fully integrated multiple channels, for the development multi-device enterprise apps often of hybrid apps it is key to ensure an multiple times faster than with traditional optimal user experience for the target approaches. device type: smartphone and tablet as opposed to desktop use. Also being able Model-Driven Development (MDD) to leverage the mobile device functions, has emerged as one of the leading such as the camera, geo-location, approaches for enabling rapid, contacts, etc., is critical to give more collaborative development. Because context to the application. it uses visual models for defining application logic, process flows, or Mendix combines its highly efficient user interfaces, MDD empowers both model-driven development, the support developers and business users to rapidly of native device functions with the build applications, without the need integration of Adobe PhoneGap to for labor-intensive, low-level coding. generate appealing hybrid apps that Consequently, it’s significantly faster than immediately work on many devices and using programming languages. can be easily deployed to all the major app stores incl. Apple, and In addition, the Mendix App Platform . provides core capabilities for non- functional application requirements, The following sections describe the such as security, performance, scalability specific platform features that support and manageability, out of the box. In hybrid app development. Mendix, applications are built by defining

Mendix for Mobile App Development 8 Hybrid App Development - Features

Responsive UIs Made Simple Mendix allows business engineers experience per device type is minimal. to create an optimal user experience Mendix supports responsive design through pre-defined Layouts for through automatic scaling of the UI smartphone, tablets and desktop user for the form factor of the respective interfaces. device type. From a styling point of view, the Mendix offers a variety Layouts are used to structure the user of templates based on open source interface. They allow you to define a initiatives such as Bootstrap. default page structure, which can be reused as a template. The advantage Here we serve the goal of enabling of using Layouts is that the common functionally oriented developers to build UI elements for the app that are great and appealing multi-channel apps independent from the device type can without risk of getting stuck in device- be associated with the relevant Layout. specific UI adoptions through coding. Hence the effort to optimize the user

Figure: Responsive UIs displayed on mobile, tablet, and

Mendix for Mobile App Development 9 Hybrid App Development - Features

Native Device Functions To leverage the mobile device APIs, While the widgets themselves are Mendix offers out-of-the-box widgets written in JavaScript and the open for native device functions. Widgets source code is maintained in GitHub, a are reusable UI components that allow Mendix developer, building a hybrid app you to quickly compose UI pages. The can easily drag and drop a widget as a widgets are open source components building block into an app without any downloadable from the Mendix App further coding. Store. They are built by Mendix and the Mendix developer community.

Figure: Mobile Widgets in the Mendix App Store

Mendix for Mobile App Development 10 Hybrid App Development - Features

Instant Testing on Mobile Devices The Mendix Developer App allows you scanned by the device using the Mendix to quickly test hybrid mobile apps on any Developer App. This App supports auto device, including native device APIs. login as well.

This app, available for iOS, Android and The benefit of the Mendix Developer , allows developers App is that the PhoneGap widgets will to develop locally and see changes automatically work when you test the instantly on a mobile device. This is app. So you can test the widgets you done by pairing the device to the local included in the app using the native APIs development environment. Mendix of the device. generates a QR code that can be

Figure: Mendix Developer App integration from Mendix Business Modeler

Mendix for Mobile App Development 11 Hybrid App Development - Features

Publish to App Stores Once testing has been completed, you Figure: Publishing an app in Mendix can get the app ready to be published to public App Stores incl. Apple, Google and Microsoft by Mendix’s 1-click publishing mechanism. Mendix offers two channels:

• Automatically create packages that can then be published to your devices Mendix currently supports iOS, Android and Windows Mobile. In Mendix you can simply connect to your Adobe PhoneGap Build account and use its cloud-based service to package mobile apps in the cloud Figure: Managing icons and splash screens and prepare packages for app store submission.

• Get a Mendix deployment package and build mobile packages yourself using PhoneGap / Cordova tools and your enterprise distribution solution.

In addition to general information about the app that will show up in the target platform app store, Mendix supports the management of all relevant icons for device types and platform OS combinations.

Mendix for Mobile App Development 12 Hybrid App Development - Features

End-to-End Mobile App Dev Flow • Once testing has been completed, Mendix supports the end-to-end mobile a deployment package is created with app development flow, making it simple a single click, which triggers the Build and intuitive for any developer to build Server to create the package and sophisticated and appealing mobile apps place it in the Package Repository. that can be part of larger multi-channel applications integrated with back-end • From the Cloud Portal, the app apps and services: is published for the target mobile platforms. The back-end part of the • The mobile app development takes app is automatically deployed in an place in the Mendix Business Modeler, App Environment. connected to the Team Server that stores all the development artifacts. • Once the app is in the respective mobile platform app store, and • To use native device functions in the provisioned to or downloaded by the UI, widgets can be downloaded from end user, the mobile app can be used. the App Store. • Instant testing is supported through the Mendix Developer App.

Figure: Hybrid App Development flow in Mendix

App Store Packages Developer Build App LIVE APP Packaging

Testing Launch App

Device Pairing Team Cloud Server PCloudortal Portal Models Models Deployment Packages Mendix Business Server Device Widgets Deployment Packages App Business Build Package Store Modeler Server Repository

Development 1-Click Publishing Deployment

Mendix for Mobile App Development 13 Open Platform for Any Mobile App Technology

In addition to hybrid app development, As a result, businesses now demand Mendix supports the development of tools that support multi-channel clients, mobile web applications out of the box. provide a scalable infrastructure, ease In that case, the PhoneGap / Cordova deployment and enable rapid change widgets, test and build services are based on user feedback. simply left out of the equation. Mendix offers a game-changing solution If there are specific needs that would by offering out-of-the-box support for require the development of native mobile app development in the Mendix apps, the Mendix App Platform can App Platform. This unique approach be leveraged as Mobile Backend-as- helps our customers realize the a-Service (MBaaS) and for integration following key benefits: with various back-end systems for the development of pure native apps on the High-productivity through low-code platform of your choice. Model-Driven Development

The Platform to Mobilize Increase project success rate the Enterprise through Business & IT collaboration The demand for mobile apps has Frictionless experience throughout increased significantly and there is the App Delivery Cycle a clear need for modern application architectures. Many organizations are faced with challenges due to the One platform that does it all costs associated with building and testing multi-platform applications (not to mention the challenge of finding qualified resources to bring your roadmap to fruition).

Mendix for Mobile App Development 14 The Platform to Mobilize the Enterprise

High-Productivity Through Low- Increase Success Rate Through Code Model-Driven Development Business & IT Collaboration Model-driven development allows for Too often application development building apps through visual modeling projects are challenged in terms of cost of domain objects, UI and process and override, scope creep, long timelines application logic. It reduces the need and misaligned end user expectations. for coding to the minimum. Mendix has driven this approach to perfection by Mendix aligns business and IT and offering a rich repository of reusable fosters collaboration throughout building blocks and services to further the lifecycle of the application, from increase productivity. requirements gathering to development, to deployment and management of the This approach delivers two key benefits: apps. Collaboration also calls for a highly it significantly speeds application iterative approach and instant feedback development and it unlocks a pool mechanisms in every stage of the of resources without a technology lifecycle. background. These additional resources may lack traditional coding experience, In the context of mobile app but they have a deep understanding of development, the integration with the business to develop innovative and PhoneGap / Cordova and the Mendix differentiating apps. Developer App allows for immediate testing of hybrid apps modeled in In the context of mobile app Mendix by developers, business analysts development, MDD allows business and business stakeholders. engineers to build sophisticated hybrid apps without the coding obstacles that typically impede mobile app projects. Mendix puts mobile app development in the hands of every developer, eliminating the resource bottleneck for native platform language and JavaScript development.

Mendix for Mobile App Development 15 The Platform to Mobilize the Enterprise

Frictionless Experience One Platform That Does It All Throughout the App Life Cycle With Mendix, you’ll have the complete Mendix supports the full cycle of cloud platform that does it all. Business building mobile apps. The integration of and IT can easily work together to PhoneGap / Cordova with the Mendix design, build and test your app, integrate App Platform for testing and publishing it with other systems, deploy it instantly hybrid apps, as well as the native device and run it securely and efficiently 24/7. function widgets that are available in the Mendix App Store, provides business engineers a frictionless experience to build sophisticated mobile apps.

Mendix for Mobile App Development 16 Conclusion

A critical success factor for the roll-out of enterprise mobility solutions is to move beyond expensive, disconnected and hard to maintain standalone mobile tools but rather leverage a fully integrated platform for multi-channel app development.

Mendix’s vision for mobile app development is clear: leverage the power of the Mendix App Platform for app development and delivery, the mobile back-end services as well as the openness of the platform to support the main approaches of mobile app development. Combined, the Mendix App Platform provides a future proof choice for enterprise mobility solutions.

Get first hand insight into our mobile app development platform.

Start building with Mendix today

Mendix for Mobile App Development 17 mendix.com

Mendix is the app platform company for the enterprise. We enable companies to build, integrate and deploy web and mobile applications faster and with better results, effectively driving ROI in days not months. Learn more, join our user community and get started for free at now.mendix.com.

© Mendix Inc. 2014. All Rights Reserved. Mendix, the Mendix logo, and the Mendix App Platform are trademarks or registered trademarks of Mendix, Inc. Other product and company names are property of their respective owners.