Coordinating Software Evolution via Two-Tier Programming

  • Authors:
  • Amnon H. Eden;Jens H. Jahnke

  • Affiliations:
  • -;-

  • Venue:
  • COORDINATION '02 Proceedings of the 5th International Conference on Coordination Models and Languages
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Progress in the science of programming is reflected by the evolution of programming languages. We propose that the next step in this evolution is a more comprehensive kind of programs: To redefine the way programs are perceived and, consequently, to redefine what constitutes the activity of programming. Rather than treating architectural specifications as separate, we argue that they need be treated as part of the program. Thus, a program is specified through two tightly integrated representations: 1. Intentional tier: A generic ("abstract") representation of design and architectural properties (constraints) of the program which, in conformance with the principle of least constraint [15], is phrased in generic terms. 2. Extensional tier: The second specification layer which consists of the traditional source code.As software evolves continuously, our approach stresses the relevance of the design and architectural specifications throughout the evolution of a program.