Facts

 

The Coordination Development Environment (CDE) was conceived for putting into practice a Systems Engineeering Methodology based on  Coordination Contracts. The version that we are making freely available addresses the development of Java applications.

Coordination contracts are a modelling primitive with precise semantics and implementation strategy that facilitates evolution through dynamic reconfiguration of systems. As a modelling primitive, it supports interactions to be externalised as first-class citizens, allowing coordination mechanisms to be dynamically superposed over system components. This leads to architectural models that are easier to understand and change in ways that reflect, directly, changes in application domain.

The strategy that was followed for their implementation, based on a micro-architecture that makes use of well-known design patterns, allows the deployment of contracts over objects without having to reprogram them, in a "plug and play" mode, and even without them being aware of the coordination mechanisms that are being superposed on them.

The current version of the Coordination Development Environment (CDE) supports the superposition of contracts on top of Java components. In particular, it provides the following functionalities, at the development level:

  • Registration: Java components are registered as candidates for coordination.

  • Edition: Contract types are defined by the user connecting registered components. Coordination rules and constraints are defined on those contracts using a mixture of abstract and Java specifications.

  • Deployment: the Java code necessary to implement the coordinated components and the contract semantics in the final system is produced by generating the necessary parts according to the contract micro-architecture.

  • Animation: An animation tool is provided for specifying configurations of components and contracts and observe, using UML sequence diagrams, their run-time behaviour.

The CDE is written in Java and requires JDK 1.2 or later to run. It has been tested under Windows 2000, but it can also run in other Windows platforms.

The CDE is a development environment for coordination contracts, not Java programs. It must be used together with a Java development environment (JDE) in which the components under potential coordination and the rest of the application can be developed.The CDE is, in fact, a stand-alone tool in the sense that it is independent of any specific Java environment in which you develop your Java applications.

A pictorial representation of our proposal of a development process that incorporates CDE is the following:




 







 

 

 

 

 

 

© Copyright 2001 ATX Software SA. All rights reserved.



 

 

         Benefits

  • Easier and Faster Software Evolution 
  • Library -based development and "black-box" reuse
  • Reengineering of existing applications 
  • Independence of any other environment
  • Easy to learn