Vast breadth and depth of the apps made for a complex user experience challenge—all amongst the shifting sands of Android’s WEBERTC libraries and new IDE.
We used automated testing to maintain a clear picture of the functional landscape amidst API changes.
Demonstrated to Bell’s senior management team, and very well received. Demonstration version fully delivered.
Bell oneNumber is a telecommunications application based on the latest in Web RTC and RCS technology. The App allows the user use their Bell phone number from any iOS or Android device and also desktop browsers such as Google Chrome. The application allows users to chat, make voice and video calls, plus share location, files and whiteboard functionality.
The project involved high complexity in server-side integration with network telephony systems. We were responsible for the user experience of the application, which tightly integrated with the device services.
On initial engagement with Bell, Marino Software committed to delivering a demonstration of the application functionality at an early stage of the project. We completed a simple peer-to-peer calling demo within one month. Once the demo was reviewed by Bell, we began implementing the full project. This involved working with other suppliers, Mavenir and Vennetics, to build the client functionality integrated with Bell's IMS network. We took a two-track approach, beginning engineering and design at the same time.
While Bell have very strong brand guidelines, the vast breadth and depth of the application provides a complex user experience challenge. Along with the Bell design team, we took part in a 6-month design process to deal with the complexity and flow of the application.
The initial focus of the project was an Android client. This was a highly technical project, not least due to the fact that the WEBRTC libraries for Android were highly unstable. APIs changed significantly during the development of the project, and Android development moved from the Eclipse IDE to Android Studioall of which meant reworking the application to maintain functionality.
We implemented an abstraction layer to maintain a common API between all versions and platforms, used automated testing to maintain a clear picture of the functional landscape, and used XCode Continuous Integration and Jenkins CI for Android. Combined with a suite of unit tests for the API functionality, maintained functionality despite specification changes.
The application was demonstrated to members of Bell's senior management team in February 2015 and was very well received.