A Software Architecture for Industrial Automation
The Aspect Integrator Platform (AIP) from ABB was designed to build the next generation of industrial automation applications. This platform is part of a set of products that provide the means to model, control and supervise continuous or discrete processes in various market domains, ranging from chemical and metal to paper and consumer industries. Each product works at a different level in the manufacture process, having distinct safety and real time requirements, but all of them rely on a common architecture for interoperability. The architecture proposes a set of components that can be reused in the different products. The current implementation of the architecture provides considerable flexibility in terms of modelling domain information and dynamically modifying it at run-time. On the one hand, this is a feature required by applications that must run 24 hours a day. On the other hand, this flexibility adds complexity to the maintenance of the installed application because dependencies among its components change dynamically. In this paper, we study the different kind of dependencies that can arise between components and show them in the context of an example from automotive industry. We then show how dependency tracking and consistency among components can be improved by representing them in XML, thanks to the structuring and validation properties of XML Schemas. Finally, we also outline the advantages that the use of XML would provide to future developments of the platform in the areas of data manipulation, transmission and storage.