Reuseware Composition Framework
Components, Modules, Aspects or something new?
Introduce new Composition Techniques into your Language of Choice with Reuseware!



On this page we present some applications and examples developed with Reuseware. Many of these applications can be directly installed from the Reuseware update site (see Reuseware Download). Once installed, an example project of the application can be created in Eclipse using the New Wizard (Reuseware category).

UML Activity Diagram Extension

This composition system allows the definition of cross-cutting extensions to UML Activity Diagrams and a flexible reuse of pre-defined partial activities. It is presented in the paper On Language-Independent Model Modularisation.

Network Modelling Tool with Abstraction and Reuse Support

This application consists of a set of composition systems for a DSL for network modelling. The DSL conforms to the Common Information Model (CIM) standard.

Aspect Weaving

This application demonstrates how to integrate Aspect Oriented Modeling (AOM) into different languages namely Ecore, UML and Java. The demonstrated example contains a core model and several advice models that can be composed into the core at different point cuts. It shows how one composition system can be integrated into different languages.

Example DSL: Taipan

This application shows how modularity can be added to a Domain Specific Language (DSL) during its design with Reuseware. It is presented in the paper On Language-Independent Model Modularisation.

UML-based Exercises

Two exercises that practice the use of Reuseware on UML. Feel free to send us your solutions.

Java Reuse Extension

This application is introducing a composition system into the Java programming language. JaMoPP is utilised to process Java programs as models. The extended Java (Reuse Java) is also available on the update site.

ModelSoC: MDSD with Multi-Dimensional SoC

This application shows how a software system can be developed model-driven using Reuseware composition systems only (instead of model transformations). This improves the separation of concerns during development.

Story Diagram Templates

Here we use Reuseware to specify Story Diagram Templates.

Modular Syntax Definitions

This application is based on a modified version of the 0.5-branch of Reuseware (see History).

Today, parsers for textual languages are often created by using parser generators. EBNF grammars and regular expressions are common concepts in parser specification languages to declarativly specify textual syntax. However, those languages often lack an appropriate module support. We demonstrate how Reuseware can be used to create a composition system for parser specification languages. The composition system is based on a generic metamodel that is mapped to the concrete Syntax of the SableCC and JavaCC tools.