XBy browsing this site you agree to use cookies. Cookies are tiny files stored in your web browser to make your on line experience better, establish statistics of visits and sharing on social networks.More

Go mobile, go native for the B2B market

The remarkable acceleration of digital technology has resulted in a proliferation in the types of device, connection and software that we use. But while there is a expansion of technology, there is a convergence of expectations as users demand the same experience from B2B technology as they do in B2C. This means that many enterprises have found it hard develop a coherent approach to mobile applications. On the one hand they want to develop a consistent approach to each device, and on the other, they have to build and maintain applications for many different devices and operating systems.

They may have thought their only option is to build a mobile web site which can work on any mobile device, or build applications specific to each device. There is another way, the hybrid approach. Orange Business Services’ deal with Xamarin is an example of this.

Application development: three key processes

Companies refreshing their web site today know their latest build should be responsive, the web site must reflow to fit the window it is being viewed in. Developing one web site that can be viewed on an iPhone just as well as a desktop PC saves an organisation time and money.

If there is a limitation to responsive-designed web sites is that they are not applications, so they don’t appear in the iPhone or Android app stores and do not integrate with specific functionality in the phone. Delivering content to mobile devices via a native app gives access to the device’s APIs enabling the user experience to be closely optimised for the particular mobile device.

The hybrid approach to mobile app development combines the best of both approaches in order to come closer to a native experience. Write one set of code – much as you would do for a web site – but make the experience more specific to the actual device and make it visible in the app stores. User interface and other data are embedded and read through an HTML/JavaScript rendering engine specific to each platform.

Xamarin takes advantage of the hybrid approach and allows developers to create native applications in C# for iOS, Android, and Windows.

Native applications are a guarantee for performance and ease of use. Using native graphic components helps to preserve the ergonomics specific to each device/OS and so users have a rapid learning curve for a new app. Every device/iOS’ native APIs are now available in C#, along with a subset of the .NET framework.

From an implementation perspective and with a code-sharing strategy, it is possible to share libraries between all platforms. The MVVM (Model View ViewModel) architectural pattern is used for all developments with an ordered layer structuration which allows a customized testing strategy. Only layout organization needs to be done on the platforms. Afterwards, they are connected through common code. From a team perspective, every developer can contribute to this shared common code, even if they have their own system preference to build the interface.

Experience feedback

After almost a year of using Xamarin, experience feedback shows a reuse rate of 60% minimum in the least favourable case. This is indeed a competitive advantage for users in regards to production and experience. And, as it is usual to replace the mobile device fleet every 6 to 8 months, this also guarantee to maintain the best user experience proposal for an affordable price. From an industrialization perspective, as Xamarin evolves in a Microsoft ecosystem, the TFS (Team Foundation System) connection allows to meet the requirement of our industrialization strategy. The covering of engineering practices target requirement management, features, code, build, tests, continuous integration, quality measurement and correction/change management.

This leads to only one language to master and a unique development environment. An implementation compatible with the industrialization strategy, a reusable set of APIs and the MVVM approach offer a great project architecture and functionalities (Async, events, serialization) that simplifying development.

Native applications maintain the ergonomics specific to each device/OS and gather all business algorithms and data exchanges. This represents a significant saving of time for development and a better maintainability as bugs and changes are corrected on every platform. From a team management perspective, the transition to a new mobile OS by a developer is also greatly facilitated by this unique language.

Philippe Ensarguet

Philippe Ensarguet, Chief Technical Officer (CTO) of Orange Applications for Business, I am in charge of the technical strategy, software development industrialization and operational deployment, technological excellence animation and strategic partnerships. Passionate by innovation, agility and digital economy, I bring my expertise in this area in several accelerators / start-up incubators. My motto: "Making human and technological assets a factor of competitiveness for customers and employees."