登入選單
返回Google圖書搜尋
Modeling Consistency in Software Systems
註釋Abstract: "An important aspect in the software development process is the consistency between various parts of the software system being designed and implemented. During the development of a system we are aware of such consistency problems and we usually solve these by special arrangements developed as part of the system development. In general the approaches taken for some specific system cannot be reused for other systems. The main purpose of this paper is to introduce a general understanding of consistency and the techniques and tools for handling it. We introduce a concept called description, that among others covers software fragments such as source code, parse trees, and machine code. The interpretation of a description is defined as a mapping into the set of objects, that the description is supposed to describe. Consistency of descriptions is defined as relations between the interpretations of the descriptions. The description and consistency relation concepts are used as a framework for modeling consistency in software systems. The model includes interfaces, control parts and representations for descriptions in a system, and a specification of the consistency relations, that are relevant for the system. The model provides consistency as a new and very important perspective on software systems. It provides a graphical notation, which gives an overview of the consistency relations in a software system being designed. The model is very general and it does therefore apply to a number of different types of software systems. This restricts the level of detail in the model of consistency, but the model allows enhancement of the specification once the type of software system has been selected. We define four basic techniques for handling consistency in systems modeled in terms of descriptions. By combining these techniques we are able to describe the handling of consistency in a given software system. We see these techniques and the graphical consistency modeling language as a first step towards an engineered approach to the construction of consistent software systems."