© 1997 by British Computer Society
Software Constraints for Large Application Systems
1 Department of Informatics, University of Oslo, PO Box 1080 Blindern, N-0316 Oslo, Norway Email: Dag.Sjoberg{at}ifi.uio.no, 2 Department of Computing Science, University of Glasgow, 17 Lilybank Gardens, Glasgow G12 8QQ, UK
As application systems live longer and grow in size and complexity, there is an ever increasing need for methods and tools that can support software builders in constructing maintainable, well-structured and consistent systems. This paper describes the notion of software constraints as an aid to developing such systems. Software constraints make rules and conventions commonly agreed to in a given programming environment explicit and automatically checkable. The potential usefulness of software constraints was investigated in both industrial and research environments. A framework for categorization of such constraints is defined. Constraints are proposed that are generally applicable and others that are tightly connected to and support a certain programming method. Tools for automatic checking are crucial if software constraints are to be used. An architecture for such tools and two realizations are described.
Received October 16, 1996. revised December 2, 1997.