Almost every developer has tried creating mobile applications, and some have ventured further and published their mobile applications in one of the online stores. Building mobile applications is easy, but the challenge comes when you think of mobile applications for the enterprise. We are not speaking about the kind of mobile applications that take pictures from your device and upload them to your Facebook page or send a tweet; we are speaking about complex applications that allow a salesperson to scan a customer’s items, make a transaction on their credit card and send it to the back-end servers, or applications that allow a salesperson to do a real-time store inventory check for an item a customer can’t find on the shelf.
These complex applications are the second wave of mobile applications. Developing them is not as simple as what has been developed in wave one, as described above. Enterprises are realizing that what has been the common practice in the last two years for mobile application development will not cut it anymore. There is huge risk involved in today’s complex applications: think about the security exposure when devices are lost or the potential exposure of confidential corporate data on a subway ride by surrounding eyes, and so on.
Enterprises have realized that it is about time to catch the mobile application development wagon, but when they start to build their mobile development practices they face five key challenges:
- Lack of experienced resources that can code on all the various devices that exist
- Lack of an integrated development platform that allows for development on all available devices
- The huge challenge of testing applications on so many devices, with on-the-device testing being critical to the success or immediate failure of any of these mobile applications
- Back-end integration to enterprise services, where the key value of a mobile enterprise application is realized
- Security of the mobile applications on the device, and specifically the corporate data stored locally on the device and being accessed in real time
The good news is that these challenges have been addressed, and there are very mature solutions for most of them.
Regarding skill development, let’s defer discussing that until we discuss challenge two.
IBM is leading the market with their latest offering, IBM Mobile Development Lifecycle Solution. While other companies are offering just development platforms, IBM gets it and can offer a full lifecycle solution that is already integrated with everything you need. At the top of the stack they have IBM Worklight, the leading mobile application development solution. Worklight is an Eclipse-based Integrated Development Environment (IDE) that integrates well with Rational Team Concert (RTC). RTC is one of the most powerful collaboration platforms; with our teams spread all over the world there is no alternative to using a collaborative tool that allows everyone to see where everyone else is. This new offering also comes with Rational Quality Manager, which is essential in order to have an integrated development/test lifecycle.
Now, if we go back to challenge one above, using a comprehensive tool wins half the battle, for all we have to do is bring in good developers, train them on this integrated life cycle tooling and we are good to go.
Challenge three is the hardest to address, and most companies are still struggling with it. How can you do on-the-device testing when there are hundreds of devices in the market with various versions of operating systems, and with various telco operators? It is an exponential problem. We couldn’t handle three different browsers in the web era; now imagine the magnitude of our problem, with each device having different form factors, different sensors (cameras, GPS, accelerators) and so on.
Some companies have addressed this problem by offering a device cloud service, such as PerfectoMobile.com, in which they rent time on these devices through a web interface. But the field for this challenge is wide open, and everyone is trying to find the ultimate solution.
For challenge four, again IBM rose to the challenge and introduced Cast Iron as part of their Mobile Foundation, which is a market-leading solution with a huge number of adapters for out-of-the-box integration with back-end services. That tight integration IBM developed in their tooling allows for easy of delivery of enterprise-level solutions with a guaranteed high level of quality that no other company is able to claim.Divide.com, are working on enterprise-level containers to completely isolate the corporate data from personal data. Having a separate container that is more secure has two advantages:
- Ease of mind for the corporate security officers: they know their data is secure and that they can wipe the container remotely if there is any risk of security breach.
- Ease of mind for the device owner: they do not need to secure their entire device and they have no fear of losing their personal data if the enterprise container needs to be wiped.
As you can see in the graphic above, IBM has also introduced Endpoint Manager for Mobile as part of their IBM Foundation and has integrated it with Worklight.
The maturity of any organization in their mobile delivery practice relies on how well they have addressed these five challenges. And, as I said before, the field is wide open on most of these challenges, which creates a lot of opportunity for innovation.