A Component Description Language & Environment as an Example of Reuse

In this section I describe a prototype environment that is being developed to support reuse courses at UW Aberystwyth. This development is part of the larger TIPSE teaching environment project.

The approach to reuse education proposed in this position statement is a traditional lecture course backed up with practicals. I envisage a lecture course covering the key principles of reuse at different levels of the lifecycle, together with an explanation of the tools and techniques that can be used to achieve this. This course would be applicable to advanced undergraduates, postgraduates and could be collapsed into a one week intensive course for industry.

The component description environment will be used as the practical element of the course. This gives the course participant the chance to use some of the tools and techniques, learning their use first hand. The most important part of the environment is support for a design level language for component description. Using the design level ensures that the student does not immediately think of the reusable component as source code, but as a representation of an idea, and as a relationship between a set of other ideas. Around this central reusable component representation and it's associated editor, there are reuse tools allowing the reuser to browse, select and edit reusable components in textual and graphical form. Finally there are a series of source code language editors and translation programs allowing a mapping too and from the design level description.

Going back to the summary in the section above, we can see how the component description and environment I have just described will provide a support for reuse education.