Coordinating User Interfaces for Consistency

GARY PERLMAN
Department of Computer and Information Science
The Ohio State University
Columbus, Ohio, USA
The philosophy behind multilingual/multitarget program specification is that software development must deal evenhandedly with all parts of software products if high quality software is going to be developed economically. The high cost of software is not due to the difficulty of coding, but in recoding and redocumenting software. Many expressions of the same ideas must be constructed and coordinated. Program code and comments, user interface and online help, and a variety of offline documents, all must be consistent. A solution to the coordination problem is presented in this paper. Multilingual/multitarget specification is a method of developing software that uses a database of information to generate multiple targets like commented program code, user interface, and documentation in a variety of languages. The method begins with an analysis of a domain to determine key attributes. These are used to describe particular problems in the domain and the description is stored in a database. Attributes in the database are inserted in idiomatic templates for a variety of languages to generate targeted solutions to the original problem. Because each of these solutions is based on the same source database of information, the solutions (documents, programs, etc.) are consistent. If the information changes, the change is made in the database and propagated to all solutions. Conversely, if the form of a solution must change, then only the templates change. The method saves much effort for updates of documents and...