Stabilizing Cost Accounting via Data-Driven Testing for a European Telecom Market Leader

checklist
  • Duration: 4 years 8 months
  • Industries: Telecom Industry
  • Services: Backend Development; Frontend Development; Manual Testing Services; Early-Stage Innovation, R&D Services; Software Reengineering, Refactoring and Modernization. Cloud Migration; Software Maintenance and Support Services
  • Software Categories and Types: Workflow Management & Business Process Automation; Document Management Systems (DMS); Analytics Systems, Data Analysis & Visualization; Expense and Cost Management Systems
  • IT Architecture Paradigms and Approaches: Test Driven Development (TDD); Data Driven Testing (DDT)
  • Technical Expertise: Java Server Side Development; Web Development; Databases
  • DevOps Expertise: CI/CD Basics
  • Technologies: Hibernate; JUnit / TestNG; Data Bases; Java Standard Edition (SE); JSP Standard Tag Library (JSTL); CI/CD Automation Servers; Apache Maven; Ubuntu; Jenkins; Java Persistence API (JPA); Operating Systems; Linux; Java Enterprise Edition (EE); Apache Subversion (SVN); PL/SQL; Java; Apache Struts; Oracle DB; Build and Dependency Platforms and Tools; Backend; Spring Security; Android; Spring; AChartEngine; Mockito; Test Automation; Source Code Management (SCM); Java Servlets; CI/CD and DevOps; Web Frameworks; JavaServer Pages (JSP); JDBC; Java Architecture for XML Binding (JAXB); Software Engineering and Management Tools; Other Technologies; Ehcache; ORM & Persistence; Java Libraries; Apache Commons; DB Languages; Apache POI; Super CSV
project-team
  • Team size (2):
  • 2 Project Manager

Project summary

A seemingly simple task was set before our team – to consider and to implement a new design of a portal according to the customer’s requirements.

However, besides the standard work on the redesign, we accepted into work the wish not only to perform the redesign, but also to create a new version of the financial analytics module for the existing system in the telecommunications industry.

The main tasks, we had to solve and successfully solved within this project:

  • Analysis of the new format of input CSV files.
  • Adaptation of the system for a new file format, and also support of the old format.
  • Development of the design for a new file format, taking into account the usability of the system and quick search of the necessary information.
  • To provide for switching between the designs for different file formats.

After completed work on the redesign, the updated system represents a single entry point of receiving the information about all the customer’s accounts (mobile, fixed, RAS, data), and provides as an organization reporting service on all levels: corporate, regional and national levels, on local and custom levels.

With the help of analytics and diversified detailed reports this system gives an overall view of the costs that helps to analyze and to make a decision on the company’s telecommunications expenses optimization.

Technical description of the project

The system represents multi -module Maven application.

The system uses Oracle as a database. Interaction with the database is implemented with Hibernate and JPA. In some cases JDBC Connection is involved for achievement of better productivity.

The server part of the whole system is implemented in Java using widely known Struts2 and Spring frameworks.

During the work on the new design version we changed the structure of the database to store new information, updated the data model for work with the new file format.

The web part for updated file format was developed using MVC pattern, the new pages were implemented with JSP, CSS, JS, TAGS, and their internal logic was implemented with such frameworks as Struts2, Spring, Hibernate, JPA.

For processing of the new CSV files format the functionality of the server component, which processes events, was extended. The integration of the component and the client’s infrastructure was established, we updated the existing events supporting the new file format and their handlers in the existing system.

Technologies

Stack: Java, Maven, JPA (Hibernate), JDBC Connection, Servlet API, TagLib, JSTL, Jaxb, SuperCSV, Apache commons, Apache POI.

Infrastructure: Jenkins, SVN.

Frameworks: Struts2, Spring, Spring security.

Test Automation libraries: Mockito, JUnit.

DB: Oracle, PL/SQL.

Other libraries: Ehcache, Achartengine.

Screenshots

What we did on the project, our responsibilities

  • During the work on the application, the team performed the following work:
  • Prototypes preparation for new pages and taking into account changes for the existing pages.
  • New file format researching, analysis of the provided information.
  • The functionality expansion of the existing system for multiple formats support.
  • Changing the structure of the database for storing new financial information in the field of telecommunications expenses of the company.
  • Implementation of a new design to display information.
  • Documentation establishment for the functionality processing the new file format.
  • The stability supporting of the existing application.
  • Demonstration of the performed work to the customer after each completed iteration.

Project features

  • A large number of legacy code in the existing system.
  • Long-term collaboration with the customer, going beyond this project.
  • The project management according to Scrum methodology: daily stand-ups, two-week sprints, at the end of each sprint the demonstration of the accomplished work to the customer was held.
  • Using Jira as a project management tool and for communication with the customer.
  • Work with a distributed multilingual team.

Project results

  • The existing system was analyzed and refactored.
  • The project team offered and implemented several architectural solutions to improve system stability.
  • A new functionality was implemented and the existing system bugs were fixed.
  • All project phases were completed successfully.
  • The decision was documented and transferred to the customer.

Company’s achievements during the project

  • A business analysis of the customer’s requirements was carried out; options for improving and optimal work of applications were offered.
  • Deficiencies in the generation of CSV files on the customer’s side were identified.
  • Approaches to the process of merging changes into the existing system were formalized.
  • The key vulnerability in the architecture of the existing system, due to which the system could not withstand high loads, was found and fixed.
  • The documentation for the new file format was created.
  • The ongoing bug fixing of the existing customer’s systems was performed throughout the whole period of the new functionality development.

Clients about cooperation with JazzTeam

Youtube preview
Youtube preview

Related projects

By industries:Telecom Industry

Recent Work

    Contact Us

    What happens next?
    • 1

      Leave your project request. We will contact you and schedule a call.

    • 2

      Signing of the NDA to ensure the project info confidentiality.

    • 3

      Negotiation of your request and the required services.

    • 4

      Team forming, coordination of workstages.

    • 5

      Contract signing and project start.