Software Engineering Institute Carnegie Mellon

Product Line Systems Program
Predictable Assembly from
Certifiable Code
PACC Technologies
Collaborations
Downloads
Publications
Glossary
Workshops and Conferences
Software Product Lines
Software Architecture

Construction and Composition Language (CCL)

 

CCL is a notation for specifying components and their assemblies. From CCL, interpretations are defined that map assemblies to predictive models of assembly behavior—that is, to reasoning frameworks.

• CCL is an architecture description language that has been specialized to the Pin component technology.
• Component behavior in CCL is specified in a restricted dialect of UML 2.0 statecharts.
• CCL front end performs static semantic checks and produces an annotated abstract syntax tree (AST) for well-formed assemblies.
• CCL currently supports a Java and C-language interface to the AST and provides an XML externalization of the AST for tool interchange.
• Pin components and assemblies (controllers) can be automatically generated from CCL specifications.
• Interpretations from CCL to the ComFoRT reasoning framework and Lambda-star reasoning framework have also been developed.

A complete formal semantics for CCL is currently being developed.

The following items are now available:
  • CSPglossary icon semantics for component composition in CCL
  • High-level but informal description of CCL
  • BNF for the syntax of CCL.