SOFA (component system)


SOFA 2 is a component system developed by Distributed Systems Research Group at Charles University in Prague. It provides many advanced features: ADL-based design, behavior specification and verification based on behavior protocols, software connectors supporting different communication styles and providing transparent distribution of applications. SOFA 2 can be used not only for modeling component-based applications but also as a complete framework supporting all the stages of an application lifecycle from development to execution.

SOFA 2 basis

The SOFA 2 system includes a component model, repository of components, runtime environment and tool support.

Component Model

SOFA 2 component model is defined by means of its meta-model which captures core concepts and states relation among them.

Repository

SOFA 2 provides a repository of a components which is automatically generated from the meta-model.

Tool support

Cushion - is a text-based tool which allows development of SOFA 2 applications and manipulation with a repositorySOFA IDE - is a graphical tool MConsole - is a plugin for Eclipse monitoring and maintaining SOFA 2 runtime environment

SOFA application lifecycle

  • application design
  • component development, adaptation
  • application assembly
  • application deployment
  • application execution - monitoring, maintaining