Case Study – ProBusiness (Now ADP)

, , , , ,

Project Overview
ProBusiness is a large processor of payroll, deductions, and other payroll processing services, and maintained a website for their customers to use which allowed individuals to log in and view their payroll information online.  The functionality included the ability to view an accurately represented image of their paychecks and deductions, change their deduction elections, and make other changes in their individual payroll processing.

All access to the system needed to be very secure, yet very responsive.  On payroll day, the site would receive thousands of requests per minute.  We were brought in on this project to help improve the performance of this mission critical website, and to help in re-architecting the site to handle projected growth.

The existing system was analyzed for trouble spots, including analysis of the database, network activity, and code.  The most critical changes were targeted and improvements were implemented each weekend for several months, ensuring continued availability of the system but also incrementally improving the user experience and stability.  Code was updated to improve the security and performance.

To ensure the sites’ ability to handle the predicted growth, the structure of the site and the design of the infrastructure were reviewed and a new plan was put in place that would accommodate the predicted growth, as well as unforeseen growth.
Technical Details
The site was built in ASP.NET and used a MS SQL Server back end for data storage.  The databases were mirrored using Windows Cluster Server and MS SQL Enterprise which supports failover clustering.  In the event any piece of hardware were to fail, a hot spare would immediately take over the duties of that server thus exposing only about 1 minute of downtime to the users.


Improved Customer Retention
The functioning of the site was causing […]

Case Study – Financial Navigator

, , , ,

Project Overview
Financial Navigator publishes a commercial software package that helps high net worth individuals manage the accounting problems that are unique to their situation.  We were brought aboard to reengineer an existing, dated, system to give it new life without trying to rewrite all of the existing code.
Our approach was to use modern technologies to make all planned feature additions, but to keep the existing functionality in the existing technology.  As features were built that overlapped the existing older technology, the old was replaced by the new, allowing the application to continue to meet release deadlines throughout the reengineering process.
Technical Details
The original system was written in VB6 using a MS Access back end.  We were brought in to update this technology to C# using SQL Server.  The decision as made to keep it running as a Windows application instead of porting it to the web, in order to continue providing the fast keyboard response the package had become known for.  This meant we built all new interface components using WPF and the MVVM pattern, while using a services pattern to slowly replace the existing VB code.

Improved Customer Service and Retention
The additional features we introduced filled the gaps in functionality that were in the product, and which the existing customers were asking for.  It also allowed us to deploy these features more quickly than if we had tried to rewrite the application from scratch in the new technology.
Increased Revenue
The additional features also provided more selling points the sales team could use when discussing the application with new customers.