XP Track Login MediaRoom Blog

Home

Software Development

Technology Expertise

Our Know How

Customer Satisfaction

Your Team To Call

Employment

About Magpie

Contact Magpie

Re-Factoring

Client     Avaya is a global leader in communication systems, applications, and services for enterprises.  
   
Product     Communication Manager (CM) is Avaya’s flagship product. It integrates telephony call processing, call control, messaging, and a contact center into a highly scalable architecture, which is designed to support both circuit-based and IP-based telephony. CM is targeted for enterprise–wide distributed communications networks and provides a widely accepted application programming interface.  
   
Project     Magpie tackled the challenge of re-factoring over 10,000 lines of C++ code in the Registration subsystem of Avaya’s Communication Manager. The process included addressing over 200 modification reports that had been filed at Avaya (during the preceding 2 years), improving code quality, and adding automated tests.

One of the key improvements by Magpie was to decouple the main CM functionality from the underlying protocols. That enabled the CM code to easily support other protocols. In addition, Magpie trained engineers on the new design paradigm so future enhancements fit seamlessly within the re–factored CM.

Magpie examined the existing code by conducting "code smells" which uncovered everything from long methods (one was ~2700 lines), large classes, data clumps, and duplicated code, to comments and dead code. During re–factoring, Magpie also discovered and fixed approximately 30 previously undetected bugs, which involved everything from security holes and resource exhaustion, to improper error leg processing.

By fixing these problem areas, Magpie reduced the code breakage rate, greatly improved the code quality, and streamlined out the inefficiencies (the ~2700 line method was reduced to ~1000 lines of code). Another key Magpie accomplishment of the re–factoring process was the creation of automated unit tests within CM and conducting over 200 regression development tests.  
   
Outcome     The re–factored Avaya Communication Manager sub–system has been in use for several years now, with significant improvement to its stability, reliability, and extensibility. Only one modification report has been submitted on the re–factored code. Magpie delivered the re–factored CM with an estimated 30% reduction in code size and a performance improvement of about 18%. 
 


 Email Page    Print