With Windows Mobile and Windows CE effectively end of life, enterprise IT organizations are now forced to strategize a move to modern platforms. This article will walk you through our experiences, giving you a glimpse of our point of view on Windows Mobile 10, Android, and iOS, how best to utilize each, and insight into how we evaluate an enterprise mobile platform.  

BlueFletch Experience with Windows, Android and iOS in the Enterprise

Windows CE, enterprise mobile app development atlanta

Windows CE
We have experience using Windows CE in transportation/logistics, warehousing, retail, field services and MDM and device management. Our team’s projects include the United  States Postal Service’s first ever rollout of 320K+ mobile devices, and we have worked with Windows CE install bases with a number of customers between 20-80K devices.

Windows 8, windows 8.1, enterprise mobile app development atlanta

Windows Handheld 8/8.1
Our experience with Windows Handheld 8 and 8.1 is limited to POC prototyping, device support tooling and evaluations. We spent 12 months on architecture and design for one client but found too many shortcoming and eventually the program switched to Android.

android, enterprise mobile app development atlanta

Android
Our experience with Android in the enterprise is robust. We have worked with close to 100K devices in three major national big box retailers. Devices types include Zebra MC40s, Zebra TC70/75s, Honeywell CT50, BlueBird BP30 and Toshiba Touchpad X1. Android has by far been the most successful platform for enterprise mobile.

iOS, Apple, enterprise mobile app development atlanta

iOS
Our consumer facing apps for the food and beverage, retail and healthcare industries often utilize iOS and have included loyalty and Buy Online Pick-Up In-Store applications, surveys, consumer beacon offer applications and mobile payment applications for consumers, showrooms, managers and employees on iOS devices and tablets.

Evaluating Enterprise Mobile Platforms

When evaluating an enterprise mobile platform, the following are key areas we factor into our consideration, including developer resources, development tooling, enterprise use cases, end-user experience, and deploy/support.

developer resources, enterprise mobile app development atlanta

Developer Resources

As we evaluate a platform, we take into consideration the short term and long term impact on a company’s development resources.

The following are some key considerations:

Current Resource Availability
Are there enough developers available to support development efforts?

Android developers outnumber iOS 4:3 and Windows Mobile 20:1.

Resource Costs
How expensive is it to acquire talent skilled in this technology?

According to a recent survey by The Register, Windows Mobile developers are twice as expensive as iOS or Android developers.

Future Availability
Over the next 5 years, will the skills associated with this platform be widely available?

The overall trends of interest in Windows Mobile development are continuing to decline. Major universities, including MIT, GA Tech, and Stanford, currently offer classes in iOS and Android development, but do not include Windows Mobile in their curriculum.

Conversion CostsHow easy will it be to convert current development resources to support the platform? Bootcamps and training for iOS and Android are widely available. Xamarin is the current primary bridge language for C# developers, but still requires native iOS and Android experience for any complex UI. Traditional Java dev and C# dev are very close to the constructs used in Android Java Development.

Mobile OS for the enterprise, enterprise mobile app development atlanta

Development Tooling

When developers are comfortable and productive you can expect the absolute best from them. Having community support, developer tools and documentation are just the start of things you need to consider when making a technology selection. Below are a few more key considerations:

Software Dev IDE
How robust and what does it cost to develop for a platform?

Both Android Studio and Visual Studio are based on long standing stable products.  The IntellJ product, on which Android Studio is based, has been around since 2001 while Visual Studio was introduced in 1997. Google continues to invest heavily in the growth of Android Studio and is on the 2.0 beta release as of Feb 2016. The cost for Visual Studio ranges from $499-2600;  Android Studio is free of cost.  Xcode is free with OS X.

Hardware Requirements
Do I need new or different hardware for development?

To develop Win 10 Mobile with Visual Studio, you need Windows 8.1+ and a System that supports Hyper-v.  Android Studio supports Windows XP+, OS-X, and Linux.   iOS development require an Apple computer running OS X.

Nexus devices provide widely available reference hardware for Android OS level testing and modification. Reference hardware for Windows Mobile is limited in availability and OS level modifications are restricted to Microsoft. iOS has no concept of OS level builds.

Build / Automation Flexibility
How effectively can you build an Agile Continuous Integration process for a platform?

Android supports continuous integration build tools such as Jenkins, Circle CI, and Travis CI. Xcode has multiple integration points for automated build including Jenkins and Xcode Server. Microsoft TFS supports CI, but requires additional licensing costs.  There are limited open source examples of CI with Windows Mobile.

Libraries / Community
How available are libraries and community support for development acceleration?

ANDROID iOS WINDOWS MOBILE
GitHub Available projects: 314,419 114,814 862
Stack Overflow Question Threads: 801,915 414,925 20,914
Cordova / PhoneGap Plugins: 1035 865 85

 

Enterprise Use Cases

Each enterprise has it’s own culture and the impact of change will vary. When determining the cost of change, below are some key considerations when selecting a specific technology.

Hardware Interfaces
Are custom hardware APIs available to interact with specific devices?

For enterprise hardware interfaces such as custom USB, payment interfaces, or scanner hardware, the peripherals must be controlled through Microsoft’s APIs, which are limited when compared with Android hardware APIs (e.g. Zebra EMDK).  Apple devices also share limited hardware interface APIs.

Enterprise APIs
How robust are the APIs needed to perform enterprise functionality?

Microsoft controls APIs to perform platform or system level functionality (e.g. device management, network state, time setting, Bluetooth connections, background processing).  Our experience with Windows 8.1 has shown limitations in the ability to build enterprise grade software (similar to limitations in iOS).  Android vendors like Zebra and Honeywell do a good job exposing secure enterprise APIs.

Consumer Software
What has existing software done on the platform?

The easiest way for us to answer the question: “Can it be done in this platform” is to look for existing off-the-shelf applications that perform a specific or similar function.  The lack of breadth of Windows Mobile apps makes it very difficult to ascertain the possibility of specific functionality without re-engineering. Android and iOS have plenty of examples, but Apple has been known for deprecating or tightening APIs between iOS releases.

Ruggedized Devices
How mature is the Platform in the device type ecosystem?

Android has a multi-year head start over Windows Mobile 8+ in ruggedized devices and overall number of available devices in the ecosystem.  Apple has no ruggedized support, but there are a large number of 3rd party cases that attempt to fill the need.

UX, enterprise mobile app development atlanta

End-User Experience

The end-user experience can sometimes be the most overlooked area to gain productivity and increase the return on technology investment. Saving 10-20 minutes a day at scale across a workforce adds real value to the bottom line. Below are some key considerations when evaluating the impact of UI/UX when selecting a specific technology.

Platform Familiarity
How familiar are end-users with the platform?

Platform familiarity helps users move quickly through basic functionality on a system.  Android is far more familiar to most users. Android has 52% of North America consumer market share (82% globally) compared to Windows at 2.6%. In addition, mobile device usage skews heavier toward Android in the sub $75K income level. While iOS was the initial leader in the mobile app space, development hardware requirements have caused limitations outside of high-end developers.

Design Patterns
How common are the visual design patterns for the platform?

Design patterns in UI/UX for mobile devices have impact around how quickly users can visually perform tasks.  When a user is not familiar with an OS they will typically look for patterns similar to what they know (e.g. iOS and Android).  The guidelines for Universal Windows Platform have been met with mixed reviews and have been found to be difficult to understand (e.g. pagination, swiping down to close an app, and lack of visual cues for action areas).

Training
How much training will it take to become familiar with the OS?

Based on the above two items, we look at how easy it is to re-train users to understand the UI/UX paradigms for a platform.  With Windows 8.1 we have observed that the lack of rapid penetration of Windows 8 and 10 into the desktop space has slowed users’ ability to pick up on new UI Paradigms. Windows 8+ still has less than 26% of the Desktop OS market share.  Due to market adoption of iOS and Android, most users easily grasp visual concepts in Android or iOS apps that follow the platform design standards.

 

Mobile OS for the enterprise, enterprise mobile app development atlanta

Deploy/Support

We evaluate the impact of deployment and support based on how easy it is to install, but also to support on day 2.

The following are some key considerations:

MDM Integration
How well do MDMs support the platform?

As iOS became the de-facto carry devices for executives in the late 2000s, MDM providers such as AirWatch, Soti, and Good flocked to build enterprise support for iOS into their products. iOS is the most mature and securable platform from an MDM standpoint. Growing adoption of Android in the enterprise has spurred MDM providers to build more robust Android support over the last 4 years. Conversely, limited Windows Mobile adoption coupled with Microsoft pushing IT solutions (In-Tune, SCCM) have resulted in less than adequate MDM support for WEH.

Analytics Tools
What tools are available for enterprise analytics for the platform?

Application Analytics tools like Crashlytics or Hockey currently only provide support for iOS and Android.

OS Updates
How does the platform handle patches and OS updates?

Historically, companies have had issues with automated iOS platform updates.  Apple has started to focus on more of the enterprise control scenarios. Windows Mobile suffers from many of the same OS update problems as iOS, but the limited consumer adoption makes the problems with OS patches more likely. Android devices are generally good around supporting patch or OS update pushing through MDM solutions or through side-loading.

Mobile OS for the enterprise, enterprise mobile app development atlanta

Enterprise Mobile OS POV – Key Takeaways

Windows Mobile 10
Microsoft has stated that they are focused on closing the gaps in the above areas with Windows Mobile 10.  Based on the pace of releases and their continued delays, we believe that the platform will continue to remain 1-2 years behind Android from an enterprise readiness standpoint.  If an organization is planning on going with Windows Mobile 10 (WEH),  we recommend that they take into consideration the current shortcomings of the platform and build in additional operational and project cost to compensate for the areas that we have called out.

iOS

Apple is still the leader in consumer mobile experience.  In scenarios where the devices will be used for limited shifts in an executive or consumer facing role, iOS may be a good selection.  Some of the hardware limitations (not mentioned in this POC) may hold Apple devices back from being good multi-shift or line of business (LOB) supporting devices.

Android

Early concerns around platform security due to its open-ness have made some companies slow to adopt Android (similar to Linux adoption in the 2000s).  For inside-the-four-walls devices and scenarios where companies want to have a highly customized end-user experience, Android is the way to go.  Despite iOS being ahead of Android in certain development tools, we still perceive Android as a better long term bet in the enterprise.

 



Related Posts

Brett Cooper

Brett Cooper

Partner - As a co-founder of BlueFletch, Brett specializes in strategy, infrastructure, project management, security, and enterprise system implementation. He is experienced working with clients to identify, communicate, and solve complex business and technical issues. Brett has led client projects in numerous industries in both project manager and adviser roles. He holds an MBA from the Goizueta Business School at Emory University and a BS in Computer and Electrical Engineering from Georgia Tech.