Development and Testing of Mobile App for Wearable Device Case Study

The Client

Our client is a leading expert in creating well-designed heart rate wristbands and watches without chest straps, so that users can accurately track their fitness. They are pioneers in optical heart rate sensors for the wrist, and engineer the most accurate heart rate wearables that help to maximize training intensity, efficacy, and health visibility.

Optimus Role and Services

Optimus worked to integrate the client’s wearable devices with Apple and Android mobile devices via bluetooth using the SDK provided by client. The following services were provided by Optimus:

  • Project Planning: This included initial scope finalization in discussion with client, defining user stories, getting scope clarified, identification and mitigation planning of project risks, preparing the sprint plan and scheduling milestones.
  • Project Management: Throughout the project Optimus managed the requirements, developed use cases and the functional design.
  • Development: Optimus developed functionality for the wearable device using Objective-C for iOS and Java for Android as per agreed guidelines and standards using the client provided SDK. Optimus also collaborated with other geographically distributed teams in stabilizing the SDK by identifying and resolving many issues that were present in the SDK. Optimus also developed a logging framework to enable logging of configured errors and user activities for analytics and dashboarding.
  • Quality Assurance: Optimus performed the pre-final QA and certification prior to final acceptance by our client preceding production deployment. Optimus also did test case preparation and QA on the functionality developed by the customer.

The Challenge

The key initial challenges faced by the Optimus team were:

  • The integration with wristbands was done through SDK’s provided by the client. Often, a bug found in the SDK took a while to be fixed and a new SDK delivered to Optimus, which brought challenges to scheduled delivery.
  • The testing of wrist bands was a major challenge as it was dependent on several major environmental factors like location, distance of device from fitness band and compatibility of mobile devices with wrist bands.
  • There were challenges with reproducing some defects as they were observed on bands of only some specific end users.

How Optimus Helped

Optimus was given mockups and user stories for the functionality along with the SDK developed by the client and worked on analyzing and baselining the requirements and creating the test cases. The Optimus team also engaged with other client teams to understand the SDK and functionality to be developed.

User stories, use cases and test Cases were developed and reviewed with stakeholders. The functionality was developed as per the signed off use cases. The team performed QA certification and validation with actual different types of wristbands provided by the client. After successful QA, builds were uploaded to PlayStore and Appstore.

Technology Stack:

  • Programming Language – Objective-C (iOS), Java (Android)
  • Build Tool – Xcode (iOS), Eclipse (Android)
  • Unit Test Framework – XcTest (iOS), JUnit (Android)

Tools Used:

  • IDE – Xcode (iOS), Eclipse (Android)
  • Document Sharing – Google Drive, DropBox
  • Remote Access Tool – Team Viewer
  • Bug Tracking Tool – Redmine
  • Versioning Control System – Optimus Github
  • Online Conferences – WebEx / GoToMeeting