Skip to main content
Go to the home page of the European Commission (opens in new window)
English en
CORDIS - EU research results
CORDIS
Content archived on 2024-05-27
Easy Composition in Future Generation Component Systems

Article Category

Article available in the following languages:

Putting the pieces together

For building complex software systems the use of generative and component-based architectures have become a prerequisite. Of the set of components needed for a design, only a small portion has to be custom made, the rest are reused or re-factored existing pieces of software. Such program transformation applications are the primary intent of the RECODER framework.

Component-based software development is an emerging discipline that promises to take software engineering into a new era, the industrial age of Information Technology. Software is envisaged be assembled from components, in the same way that hardware is currently constructed from kits of parts. The EASYCOMP project, funded by the Information Society Technologies (IST) programme, sought to adapt software to its uses by developing tools for building software architectures based on components. RECODER is a framework aimed to deliver an infrastructure for invasive software composition based on static meta-programming. Since invasive composition is centred on standard languages, this sophisticated infrastructure supports diverse Java, C and C# analysis as well as transformations tools. Initially, a highly detailed program model, a meta model, is derived through parsing of the entities encountered in the source code and class files, along with relations between elements. For this purpose, a name and type analysis is performed which resolves references to logical entities and at the same time maintains cross-reference information. In the next phase, the meta model information is used by static Metaprograms to control the transformations of the source code model. The RECODER libraries provide a powerful platform for all kinds of Java, C and C# source-to-source transformation. These program transformations will possible generate small amounts of new code. The pretty printer provides for the reproduction of the source files afterwards, integrating the new code fragments seamlessly, while maintaining the code formatting. In the process of rewriting a system's source code to improve its structure and readability, the system becomes more maintainable and extensible, allowing development resources to be used elsewhere. At the same time, if the code is well structured, new requirements can be introduced more efficiently and with fewer problems. RECODER's refactoring features offer an automated and behaviour-preserving way to upgrade component-based applications to use newer version of components. This is a powerful tool that enables to accelerate the development of software applications apart from dealing with their inherent complexity.

Discover other articles in the same domain of application

My booklet 0 0