OO Design and Architecture

15 years experience in object oriented design and architecture across numerous large C++ and Java projects.

Experience in different methodologies starting with the original Booch methodology progressing through OMT to today using UML.

Extensive experience with different design tools including Rational Rose, MagicDraw and Paradigm Plus.

Avis Europe PLC

  • Designed, using UML in MagicDraw, and built several Java algorithm services, to improve the accuracy of the forecast data.
  • Co-designed and built an Optimiser service, using Java to connect to the Dash Xpress-BCL Optimisation library. Optimiser produced stop sell recommendations and car shuttling recommendations across a network of rental stations.
  • Conducted a thorough review of System Architecture, providing recommendations to improve reliability, performance and scalability of the forecasting product.

Manugistics Ltd

  • Designed, using Rational Rose, and built object oriented C++ class framework, containing locking, security and data services. The framework was specifically designed to allow new operational research algorithms and data to be easily plugged into the system.
  • Designed, built and tested several C++ applications within the forecasting suite, used Operational Research defined algorithms to create booking based demand curves, demand forecasts and de-constrained bookings.
  • Designed and built a Scheduling application using C++ to allow flexible scheduling and partitioning of work packages within the batch process.

British Airways PLC

  • Designed and built Unix servers, initially using Topend middleware to connect to VB clients. Server used UML designed C++ classes.
  • Designed and built additional Tuxedo servers to manage data stored on a Versant object database. Designed messaging to VB clients using XML, and designed the persistent object schema for Versant.


  • Designed and built Object Orientated data access classes to populate and extract data from the Petroleum Industry POSC data model. Designed class libraries using OMT methodology, classes were written using Visual C++.
  • Designed and built classes to access relational databases via an objected orientated interface, classes produced SQL and returned results as objects. The design allowed either Sybase or Oracle to be used.
  • Designed and built a business object library, this turned complex data mapping information into a simple API to access petroleum business objects from the database.
  • Designed and built a GUI based macro language parser and interpreter to allow Petroleum engineers to write macros to perform complex calculations using data stored in the business objects.

British Airways PLC

  • Designed using Booch methodology, and coded C++ ghantt chart base classes, used to display aircraft downtimes, employee work allocations, etc. These were updated on client screens in real time using messaging from the server and other BA systems.
  • Designed and coded C++ database classes to interface with Oracle tables using SQL. Utilised the multi-threaded and pre-emptive multitasking capabilities of OS/2.