Developing Law-Governed Systems Using Aspects

By: Constantin Serban, Shmuel Tyszberowicz, Yishai A. Feldman, Naftaly Minsky


There is a consensus that the construction and maintenance of large software systems would greatly benefit from the existence of explicitly stated architectural principles. Such principles should specify the global rules that are to govern the structure and dynamic behavior of a system, providing a framework in which the system can be reasoned about and maintained. However, such a framework is of little use unless the architectural principles are automatically enforced during system development, guaranteeing compliance at all stages of the development. A Law-Governed System is a system that is developed and operates under an enforced set of architectural principles, called the law of the system. This paper describes an implementation of Law-Governed Systems that is able to cope with the highly dynamic features encountered in modern programming languages, such as reflection and dynamic loading. We employ Aspect-Oriented Programming techniques as our main tool for this implementation.

Cite as:

Constantin Serban, Shmuel Tyszberowicz, Yishai A. Feldman, Naftaly Minsky, “Developing Law-Governed Systems Using Aspects”, Journal of Object Technology, Volume 7, no. 9 (December 2008), pp. 25-46, doi:10.5381/jot.2008.7.9.a2.

PDF | HTML | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn