Success Stories

SevOne. Building Adapters for Data Collection.

Increased speed, efficiency, and ease of development

Overview

SevOne provides modern monitoring and analytics solutions for organizations that need to monitor their networks today, tomorrow and beyond. One of the key products supporting their leading position is their adapters - small pieces of pluggable software that collect data from a specific source and feed it into the monitoring system. The client faced some challenges, which led to an inability to develop adaptors quickly enough to accommodate business needs. To help them overcome these challenges, we developed a framework for adapter development that eases the development process. The solution was adopted company-wide and was chosen as the only appropriate way for adapter development.

Challenges

Four teams were building the adapters - Professional Services, Engineering, Sales team, and Customers. Each team had a different development approach and used its code and libraries, which resulted in an inability to develop adaptors quickly enough to accommodate business needs. This also brought a lot of issues in the process:

  • Support and fix issues in various adapter versions
  • It was difficult for two or more teams to work on the same adapter
  • There was no code reusability
  • Compatibility with the latest NMS version
  • The maintenance of the adapters was very time-consuming
  • Time-consuming and error-prone upgrade to new versions 

Each team had specific use cases and requirements, so we had to develop a solution that tackled the company's challenges whilst meeting all needs and conditions of the different groups. 

Solution

We developed an Adaptor Development Kit (ADK) from scratch - a framework for adapter development that eases the development process. We used a modular design for the framework architecture that enables custom modifications whilst providing the benefit of reusing libraries. This way, upgrading and downgrading individual components rather than the entire framework is possible.

We used proven PHP standards and Composer dependency manager to address the lack of code reusability and improve the overall code quality. This allowed individual developers to reuse already developed components/existing functionality instead of building them from scratch, which saves time and facilitates contribution.

To allow easier identification of and response to data collection issues, we build a self-monitoring framework functionality by using heartbeats and logs. This provided greater visibility of the overall state of data collection. Additionally, the team worked on developer-facing documentation, glossaries, live training, video tutorials, and procedures related to installing, maintaining, and updating adapters, effectively enforcing good development practices and reducing the learning curve.

The ADK was implemented company-wide as an official standard for adapter development. All in-house teams adopted the ADK and started contributing to its development. For 9 months, 40+ adapters were built with the ADK.

Results
  • Increased speed, efficiency, and ease of development
  • Greater visibility and easier issue monitoring and response 
  • Enabled the support and other teams to troubleshoot and address issues 
  • Allowed for custom modifications 
Quick Facts
Duration: 15 months

Technology Stack: PHP, MySQL, Perl, Python, JAVA, Linux/Unix systems, various cloud platforms (AWS, Docker, Openstack, Azure) 

Team: 1 Software Architect, 10 Software Engineers, 2 QA Engineers

Let's talk about your Ideas.

Contact Us