Serious Specification for Composing Components

  • Mike Barnett ,
  • Wolfgang Grieskamp ,
  • Clemens Kerer ,
  • Wolfram Schulte ,
  • Clemens Szyperski ,
  • Nikolai Tillmann ,
  • Arthur Watson

Proceedings of the 6th ICSE Workshop on Component-Based Software Engineering: Automated Reasoning and Prediction |

We discuss the use of an industrial-strength specification language to specify component-level contracts for a product group within Microsoft. We outline how the specification language evolved to meet the needs of the component-based approach followed by that group. The specification language, AsmL, is executable which allows for testing to be done using runtime verification. Runtime verification dynamically monitors the behavior of a component to ensure that it conforms to its specification.