Mediation and Software Maintenance
Gio C. M. Wiederhold · 1995
This paper reports on recent work and directions in modern software architectures and their formal models with respect to software maintenance. Related earlier work, now entering practice, provides automatic creation of object structures for customer applications using such models and their algebra, and we will summarize that work. Our focus on maintenance intends to attack the most costly and frustrating aspect in dealing with large-scale software systems: keeping them up-to-date and responsive to user needs in changing environments. We introduce the concept of domain-speci c mediators to partition the maintenance e ort. Mediators are autonomous modules which create information objects out of source data. These modules are placed into an intermediate layer, bridging clients and servers. These mediators contain knowledge required to establish and maintain services in a coherent domain. A mediated architecture can reduce the cost growth of maintenance to a near-linear function of system size, whereas current system architectures have quadratic factors. The domain knowledge in a mediator de nes the terms and relationships among the source elements and desired information. It is represented as an ontology which models the domain. These models provide the means for the maintainer to share knowledge with the customer. We sketch a conservative algebra for interoperation among these models. The customers can become involved in the maintenance of their task models without having to be familiar with the details of all the resources to be employed. These resources encompass the many kinds of databases that are becoming available on our networks. The functionality of mediators will only be touched upon and referenced within this paper. Software maintenance is su ciently important towarrant our attention for a while. 1.