Law-Governed Regularities in Object Systems;
Part 2: A Concrete Implementation
Naftaly H. Minsky and Partha Pal
Department of Computer Science
Rutgers University
New Brunswick, NJ 08903 USA
minsky@cs.rutgers.edu
partha@cs.rutgers.edu
Abstract
Regularities, or the conformity to unifying principles, are essential to the
comprehensibility, manageability and reliability of large software systems, and
should, therefore, be considered an important element of their architecture.
But the inherent globality of regularities makes them very hard to implement in
traditional methods. We have argued elsewhere that this difficulty can be
alleviated by means of law-governed architecture (LGA), under which a system
designers can establish a desired regularity (of a certain kind) simply by
declaring it formally and explicitly as the law of the system. Once such
a law-governed regularity is declared, it is enforced by the environment
in which the system is developed.
This paper, which is based on a recently developed environment called Darwin-E,
describes the application of LGA to object oriented systems written in the
Eiffel language. We introduce here the formalism for specifying laws under
Darwin-E, and give a sample of regularities that can be efficiently
established by such laws. In particular, we demonstrate how one can establish
a kernelized architecture} suitable for the construction of critical embedded
software, such as the software embedded in an intensive care unit.
keywords: regularities, object-oriented systems, law-governed
architecture, kernelized design, intensive-care unit.