The client expected INSART to rise to the following challenges:
- Maintenance and reengineering of the existing remote device-management system.
- Development of an embedded device-management application.
- Delivery of a solution for a mobile device management (MDM) application.
- Provision of integration projects for telecom companies.
Maintenance and reengineering of the existing system
Business value: The remote device-management system had been operating for years before INSART was involved in its maintenance and further development. The system had tangled source code and monolithic architecture, and its maintenance had become tricky and demanding. Creating a new system from scratch in place of the existing one would enable improvement to its performance and scalability, and facilitate adding functionality.
Details: While maintaining the existing system, INSART built a new system with a microservices architecture, with each feature as an independent component. Using the Spring framework instead of EJB allowed us to easily modularize the system and simplified development due to the wide variety of development tools and functions available.
Using MongoDB allowed for the storage of data in denormalized form, which was the most efficient means for this project. The Spring Data framework simplified interaction with the database by considerably reducing the amount of source code created.
Using Spring Integration, we were able to create a distributed system with the possibility of adding significant new features and functions to the system in the future, without impacting the existing system. In order to save system resources, we also deployed the Tomcat servlet container and AngularJS and Bootstrap frameworks.
To make the system available to all types of users, we set up the infrastructure in the AWS (SaaS) and provided integration with a payments gateway.
Result: Using new technologies and creating new system architecture not only improved the system’s scalability and increased performance by more than 10 times, but it also reduced the time of development. Moreover, using the modified data structure allowed the new system to significantly simplify data processing and eliminated many problems specific to the legacy system (e.g., damaging data as a result of user error is impossible in the new system).
Development of an embedded device-management app
Business value: A TR-069 industry standard-based, embedded, OS- and hardware-independent software application could be used for device-management purposes. The client side of the application needed to support both wired and wireless devices.
Details: The application supports a number of standards that cover various aspects of network device management, including:
- TR-069 creates an extensive and secure communications layer, while also providing the basic gateway router and Wi-Fi configuration and management functionality.
- TR-098 enables QoS functionality, and provides configuration profiles to facilitate the deployment and management of gateway devices.
- TR-104 and TR-110 are combined to enable the remote management and configuration of VoIP devices.
- TR-106 and TR-111 are combined to enable the remote management of LAN-connected devices, even those using the private IP space behind a NAT gateway.
- TR-135 enables the configuration and management of set top boxes.
- TR-140 enables the configuration and management of network attached storage.
- TR-142 enables the configuration and management of PON devices.
- TR-196 enables support for Femtocell (cellular repeater) devices.
The application works based on the remote device-management system, and may be easily integrated with a variety of vendors.
To implement the project, INSART deployed a team of one software engineer and one QA engineer who were led by an experienced PM responsible for the client’s several projects being implemented by INSART.
Result: The client received a robust and powerful device-management application that has allowed them to significantly strengthen their product offering, and dramatically broaden the company’s market.
Delivery of a solution for an MDM application
Business value: This software technology is designed to free end users from device configuration and management, and can be readily applied to a wide range of networked products. INSART was expected to deliver the solution with the full support of several management protocols and standards. The client requested this complex solution due to the increasing demand for such products from end clients.
Details: The MDM application supports Android-based devices. The solution is designed to manage and monitor devices such as mobile phones, smartphones, tablet computers, etc. This solution was intended to increase traction for Android in the client’s traditional telco/MSO/network operator markets, and would be used by small and medium-sized businesses who are looking for viable and affordable device-management solutions. In addition, our client intended to package some of the features specifically for parental control use.
Process: INSART’s team ran the project using Agile methodology.
Result: We have delivered a proof of concept project.
Provision of integration projects for telecom companies
Business value: Integration of the client-side applications with the client’s ARM-based hardware platform enables efficient management of the TR-069 client functioning on embedded devices with a small RAM volume.
Details: An integration module is based on the remote device-management system and provides support for the latest TR-069 amendments. Within the project, the following tasks had to be performed:
- Compiling and running the code on the target platform (ARM).
- Implementing a pull mechanism for the polling of parameters and sending them to ACS.
- Mapping of the data model parameters to the actual callbacks on the device.
INSART created integration interfaces that enabled integration of the system without having to modify the client core.
Result: Implementing the project has allowed our client to significantly reduce the time and effort spent on the integration of any new versions of the embedded device-management application, as it has become a lot easier for them to add INSART’s code to their existing software.
- Server Side Stack: Java
- Application Servers: JBoss AS, Apache Tomcat, Weblogic
- Frameworks: Spring (previously EJB)
- Database Connectivity: JDBC, Hibernate
- Services Layer: SOAP WS, gSoap ToolKit
- Server Side Presentation Layer: JSP/JSF, Servlets, RichFaces
- Transport Layer: OpenSSL
- IDE: Eclipse, IntelliJ IDEA
- DBMS: MySQL, Oracle DB, SQLite, MongoDB
- Protocols: HTTP, HTTPS, FTP, TR-069
- XMPP (libstrophe)
President of Network Device-Management Software Company, Cupertino, California, USA
“We’ve been working with INSART for over three years now, starting slowly and carefully, but now heavily engaged due to the exceptional skills and economies they bring to the table. There is no doubt they have been a key contributor to the significant growth we’ve enjoyed over this period. We consider INSART to be our most important strategic partner and look forward to working with them for many years to come.”