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.