Ultra Electronics Datel
Phil Wilcock describes how Datel have used Abstract Solutions’ Model Driven Architecture approach on the Highways Agency’s Meteorological Subsystem, a component of the HATMS (Highways Agency Traffic Management System)
Can software be like a good wine?
The Highways Agency through their seven Regional Control Centres manage the English motorway network. This involves a large communications infrastructure, down to the road-side, and a sophisticated control system at each RCC which works in conjunction with its neighbouring RCCs’ Control System. To give some idea of the scale of the system each RCC has provision for up to 20 operators, each with seven monitors at their desk, plus at least one large active wall display at the front of the operations room. The system runs 24x7x365. The control system itself is composed of a main hub system with a number of specialist subsystems which together comprise the complete Highways Agency Traffic Management System. These include subsystems to control Message Signs and Signals plus a number of others for various specialist functions. One of these is the Meteorological Subsystem, for which Ultra Electronics Datel are responsible.
The specification for the system is through a well-defined, and well controlled, set of requirements documents. The system has evolved and changed over a number of years becoming ever more sophisticated and adapting to the changing requirements of the motorway environment. It is this continual evolution which presents the greatest challenge to the system and particularly the software.
Datel were early adopters of the Shlaer-Mellor methodology, back in the mid-nineties. Having already used most of the CASE tools and methodologies of the time, Datel understood the potential for a model driven approach but it wasn’t until the Shlaer-Mellor method came along, with the tools to support it, that this could be realised. Abstract Solutions’ I-OOA product was one of those early tools. It requires a leap of faith to move to this type of approach, as most people seem to see the code as the most important aspect of the software. However, having made that leap thirteen years ago Datel have never looked back.
Far from the software degrading over time with multiple changes, the Meteorological Subsystem is better designed now than ever and continues to improve as we learn better modelling patterns. Everything is performed at the design level and every aspect is rigorously controlled through Class Diagrams and State Models. The implementation matching the diagrammatic representation exactly. Statistically, in UML terms, the Meteorological Subsystem has 8 packages, 352 classes, 210 of which are active (i.e. those with a State Chart).
Financial estimation for the project is more accurate because the estimation is lifted to the highest level. Configuration control and traceability is easier with the tight coupling between the design and implementation. Debugging is also performed at the model (design) level.
Names have changed over the years, we use iUML now, but the methodology, now implemented using the UML notation, is still solid and allows Datel not only to modify the system in a controlled and precise way, but also to gradually improve the design. The system has even been ported from one operating system to another with no impact on the application, due to its de-coupling from the architecture. It is still a mystery to us as to why the model driven approach isn’t more popular.