Another upgrade project. This was a distrubtion center running on convoluted code with poorly timed processes. Event driven processes, well organized object oriented programming, and good thread management was all they needed to speed things up.

Swiss Colony:

Upgrading Old Architecture

This job was really all about upgrading a VB6 application. Swiss Colony uses a set of windows applications and services to manage their package processing line.

Deployment

They asked me to add some additional functionality and remove a few quirky behaviors. Though the source code had been ported into .Net, the architecture was still mired in its VB6 roots. It was not object-oriented; minimal encapsulation, no Inheritance, no Interfaces, etc. So the first thing to do was to re-architect the software. Then I added the new functionality.

 The drawing below shows a top level reorganization of the assemblies.

Packages

Now the quirks are gone, the new functionality is in, and, as an added bonus, the line runs faster than before (by several packages a minute).

Stations