CASE STUDY

MeterSnap

One of the Africa's largest energy companies and producer of low-carbon electricity

Solution

Mobile Development
Digital Transformation

Industry

Energy

Outcome

Computools developed an intuitive and functional neural network-powered mobile application to meet client’s main goals: to expedite the inspectors’ work and prevent fraud. The application enabled client to transform its daily operations and improve customer experience. Thus, flexible management of multiple tariffs increased revenue with minimal extra resources. Moreover, employees’ roles and permissions definition prevented malpractice and fraud. Several key options we solved:

  • Auto-recognition of the meter’s serial number and readings due to a neural network.
  • A neural network training and implemented geolocation.
  • A state-of-the-art design, an intuitive interface, and smooth performance.

+82%
Throughput, Users
+58%
Average Order
-50%
Checkout Time
+45%
Increasing Revenue
- 38%
Reducing Costs
49%
Business Process Automation

PROJECT DESCRIPTION

Our client was one of the largest utility companies in Africa, providing electricity for private households and local businesses. With the growing number of power connections and new customers, the company’s profits did not see the expected raise due to outdated analog meters. The devices were cheap to install and maintain, however, they slowed down the inspectors’ work and enabled fraud causing significant losses.The company turned to Computools for Digital Transformation assistance. After analyzing the African utility market and evaluating business strength and weaknesses, we identified the bottlenecks and offered a simple and elegant solution - a mobile application to expedite the inspectors’ work and prevent fraud. The initial Digital Transformation costs were kept at a minimum, since the application was supposed to work with old analog meters.

Significant losses due to meter readings fraud

An established network of analog meters

Slow manual meter readings taking

Poor customer experience

Utility market leader among African companies

An established network of analog meters

Growing demand for electricity in Africa

Significant inspector workforce

Digital Transformation Communication Framework

Computools
Business Analyst
Team Lead
CLIENT
Project Coordinator
Operations Manager
Communication

The success of a Digital Transformation project relies on efficient communication. Following the initial meeting, we devised a transparent communication framework of regular video and audio conferences and email reports to keep the client apprised of the project’s progress.All aspects of the projects very carefully documented, and the client could access the Copmutools’ tasks management platform to follow the team’s progress. These measures ensured efficient communication and build trust between the client and the team.

Business Process Mapping

01
CONSULTING

Following a strategic meeting with the client to discuss the existing business processes, our team analyzed the company’s strengths and weaknesses and identified impediments to growth. Together with the client, we outlined the efficient business processes to be preserved and the constraints to be eliminated.

02
DESIGN

Striving to digitize the legacy business with minimum outlay, we recommended addressing the manual meter reading process in the first instance. Having analyzed possible solutions we offered to develop a neural network-powered application to automatically recognize the meter’s serial number and readings, thus improving inspectors’ efficiency.

03
ENGINEERING

To ensure successful implementation of the applications features, we devised a flexible step-by-step development plan. It comprised several major blocks, including core logic development, camera configuration, neural network training, and geolocation implementation. Armed with this plan, our team embarked on the development itself.

Interactive Prototype

After establishing the roadmap for digital transformation and assessing the client’s goals, our team modelled the application’s workflow. The Interactive Prototype, a Computools’ innovative approach, enabled our software engineers to visualize the application’s interface and operation before development began. The client had an opportunity to assess the concept and ensure it met his requirements and fulfilled the purpose.

Computools
Architect
Business Analyst
UX Designer
CLIENT
Project Coordinator
Operations Manager
Communication

Digital Platform & Technology

To build a state-of-the-art platform, we have carefully chosen a set of technologies with exceptional performance and security characteristics. Our chosen technologies were also highly efficient in terms of total cost of ownership and support.

Computools
Team Lead
Quality Assurance Engineer
CLIENT
Project Coordinator
Operations Manager
Communication
Native Library (C/C++, STL, Neural Networks)

The cross platform library was designed for image processing and recognition across desktop and mobile platforms. OpenCV was chosen for the input frame pre-processing, contour analysis, and recognition area setting. Image recognition was implemented using a neural network-based classifier.

Desktop Client/Trainer (C++, Qt 5.x, QML)

Our team developed a desktop application using Qt 5.x framework and Qt QML technology. This application was used for neural network training and control as well as for testing. Webcam was used instead of the mobile phone for data input.

Android Client (Java, Android SDK, Android NDK, RealmDB, rxJava, Retrofit2)

Our developers implemented the mobile application with Native library features for image recognition, domain logic for data analysis, and auxiliary functional units. To ensure offline operation of the application, the local RealDB database, a high-performance noSQL database for mobile platforms, was implemented.

Web API Server (Java, Spring Framework, MongoDB)

Centralized data storage and mobile client request processing were implemented in a Web Server, based on Java and Spring Framework. Our software engineers settled on MongoDB as a server database due to its high performance and speed parameters.

Specification

The application was designed for electricity meter reading automation, to be used by the company’s employees. The server administrator created personal accounts for each employee and transferred their login data to the inspectors. This eliminated the registration process, dispensing with the need for a registration field on the login screen.

The application’s interface included 4 tabs in the lower part of the screen: 1. Options 2. History 3. Route 4. Snap MeterHistory (Main screen) After successful login, the user saw the readings’ history screen with a list of electricity consumers. Each element of the list contains the following data: 1. Consumer name 2. Meter installation address 3. The last reading taken The electricity consumer list could be sorted by name or address. Upon a click on the entry, the consumer details screen opened.Consumer details screen The screen header comprised of the consumer's name and address. The scrollable element with 3 sections occupied the main part of the screen depicting: 1. The last readings taken 2. Electricity consumption over the last month 3. Electricity meter’s serial number.

COMPUTOOLS TEAM

To meet the client’s requirements and the project’s deadline, we chose 2 software engineers from Computools’ talent pool. Each member of the team was selected based on their previous experience and expertise level appropriate for this Digital Transformation project:

Business Analyst
Kate Vodolazkina
Team Lead
Vitaliy Kononenko
Project Manager
Andrey Melnichenko
Quality Assurance Engineer
Maria Grekova
Mobile Software Engineer
Sergey Komarov
UX Designer
Valeriy Panchenko
Software Engineer
Dmitriy Herutskyi

BACKSTAGE

The process of Digital Transformation really forced our developers to push their limits and come up with innovative solutions tailored to the client’s needs. The outstanding results were achieved through creative cooperation and mutual support.

Whiteboard Meeting
To align everyone’s efforts and visualize the project’s progress, Computool’s specialists gathered around the whiteboard. Regular sessions increased the pace of development and ensured well-coordinated teamwork.
Brainstorming
Faced with a complicated task of digitizing the client’s operations, our team members put their minds together in a brainstorming session. In a laptop-free zone with zero criticism, the most efficient development plan was born.
Dev Meeting
Through the use of digital collaborative tools and parallel coding, our software engineers boosted the project’s development momentum. This approach enabled continuous delivery and outstanding results at the end of each sprint.

Internal Communication Flow

To ensure efficient project management process, the Computools team used Jira and Redmine platforms for tasks assignment and progress control. Regular video and audio conferences with the client’s representatives ensured all challenges were timely addressed. Skype helped solve urgent matters, while Email was used for reports and tasks sharing.

Project Management Methodology

We chose the Scrum project management approach with 2-week sprints to ensure continuous delivery and accurate fulfillment of the development plans. Agile methodology necessitated a close cooperation with the client to introduce new ideas and approve adjustments. Every sprint was finalized with testing and the demonstration of the implemented features.

PROJECT TIMELINE

1 week
2 weeks
8 months
1
Background
Defining Scope
  • Customer’s Business Process Analysis
  • Identifying Strengths & Weaknesses
  • Setting Goals
2
Strategy
Digital Transformation Initialization
  • Business Process Mapping
  • Interactive Prototype Creation
  • Digital Platform & Technology Selection
  • Defining Specification, Tasks & Deadlines
Project Management Flow
  • Expertise-based talent evaluation and team formation
  • Establishing Internal Communication Flow
  • Choosing Project Management Methodology
Development Flow
  • Development Methodology
3
Implementation
Implementation
  • Environment Setting
  • Tasks Assignment
Application Build
  • Code Creating & Refactoring
  • Testing & Fixing
Application Launching
  • Deploy & Delivery

Design

Project architecture is crucial to building a robust, ergonomic design. The team pays special attention to the development of the product's functional elements and the ways these elements interact.

Computools
Project Manager
UX Designer
Architect
Communication

Engineering

Our software engineers ensured independent feature set implementation and flexible source code handling by designing the project’s subunit-based structure and using Git for version control. This approach enabled our team to develop the mobile application irrespective of library implementation. CMake cross platform project generator was chosen for library development due to its easy integration into software builders, including Gradle for Android. Desktop and mobile platform testing ensured the reliability of library code implementation and the recognition efficiency across a variety of conditions.

CODE SAMPLE

Scan QR code to find code sample

Or use link below

https://gist.github.com/grdima/b7a35bb93284e14e888248830b1cc362

Contact Us

Let's talk about your project.
Use the form to drop a line or write us an e-mail: info@computools.com

Thank you for your message!

Your request will be carefully researched by our experts. We will get in touch with you within one business day.

GET EXPERT ADVICE!

Computools will guide your company through a digital transformation.