Client started development of Device Connection Platform (DCP) with internal resources. Since dynamic requirements on other projects changed availability of internal resources there was risk to prolong development phase too much and miss project deadlines.
Device Connection Platform (DCP) is a cloud service which enables the operators to offer connection management for business users. It enables operators to address new revenues, based on a variety of devices, while simplifying the process and reducing the connecting costs. This platform supports the operators in building M2M business from three perspectives, such as managing connectivity through life cycle, sales preparation and business expansion.
Core system functionalities include aggregation and processing of large amount of input data from multiple data sources. Other system abilities comprise data persistence, data interpretation from sources (sensors), source categorization (hierarchy), data analysis and implementation of different input interfaces. Generic nature of the system architecture and implementation allows application to various industries with minor to no modifications (e.g. automobile industry, telecommunications, banking, medicine etc.).
Serengeti team was responsible for various platform enhancements which included simplification of existing features, upgrading platform feature set with new functionalities, standardization of Continuous Integration / Continuous Delivery build jobs and platform containerization.
Serengeti implemented Team Extension model, which is best practice in setting up and leading distributed teams, to help client speed up the development phase.
Because of the high engagement of client’s key technical people on other projects, it was important for the team to work autonomously and maximally effective. This was the responsibility of Serengeti’s team leader who was negotiating and clarifying Sprint backlog with client and transferring agreed requirements to other team members. Previous team leader’s technical knowledge of IoT systems was very valuable.
The system is based on Open-Source technologies from Java platform ecosystem. System Core is implemented according to OSGi principles, running on Apache Karaf platform, and data, depending on its nature, is stored into two database types: Relational database PostgreSQL and NoSQL Cassandra database. Data analytics and the rest of asynchronous tasks are executed on the Apache Spark platform. All system middleware instances are nodes of larger distributed system, while the whole system is built upon Linux operating systems using Dockers and Kubernetes.
Serengeti enabled client to reduce time to market period, generate new sources of revenue and strengthen its market position. All project deadlines were met.
Serengeti involvement in projects resulted in numerus important improvements and new platform features.
IoT Device management simplification as a platform wide functionality enabled faster and simpler device provisioning for the end user. Additional caching mechanism implementation was introduced which boosted up platform performance. New scheduling module standardized platform asynchronous tasks. Additional complex device provisioning features enabled modification of big amount of data stored in database, which resulted in less actions needed from the end user. Continuous Integration / Continuous Delivery parts were refactored which enabled standardized build jobs. Complete platform migration from dedicated operating systems to containerized environment using Docker and Kubernetes vastly contributed to platform distribution architecture as well as underlying operating system independence.
Serengeti and client achieved long-term cooperation, working together on different projects, helping client get instant engineering capacity when needed and flexibility, and achieving its ambitious plans for growth.