EclipseCon 2007 March 5-8, Santa Clara California

Faster, better and more consistent: adding Software Factories to Eclipse

Bastiaan Schönhage (Compuware)

· Short Talk

Wednesday, 10:40, 10 minutes | Ballroom GHAB


Consistency, at design, architecture and code levels, is an important ingredient of successful development projects. Developers use patterns, best-practices and partial code generators to achieve consistency at these levels. But often the consistency cannot be guaranteed and/or enforced. By using a software factory, it is possible to specify portions of the target software architecture by means of pre-defined model transformations and code generators.

In big systems, much of the code can be very similar. Copy-paste programming is an often used -but for a lot of reasons wrong- practice employed to speed up the development. This is the practice of copying similar code adapting where needed usually resulting in hard to adapt and maintain code-base. Using a model-driven approach in combination with custom code generators (in the context of a software factory), developers no longer need to use copy-paste programming. Instead, custom model-driven code generators are created that can generate all required code.

Software Factories are comprised of both model transformations as well as code generators. Additional components, such as user-defined UI, automatically generated wizards and settings, can also be included into the Software Factory. With Software Factories, it is possible to generate a complete application from a user-defined platform independent domain model or from a user-defined DSL.

With Software Factories, it is possible to:

In this short talk, we will look at how a software factory can indeed make your development process faster, better and more consistent. We will do so by touching upon the concepts of an automated software factory as well as briefly showing how a software factory works in practice.

Dr. Bastiaan Schönhage is currently working as Product Manager for OptimalJ in Compuware's Product Management & Strategy department. Prior to that Bastiaan was the lead developer for several projects at the Amsterdam Development Lab including the OptimalJ built on Eclipse project. Before joining Compuware he worked at Object Technology International (fully-owned subsidiary of IBM) where he worked on a European Research (IST) project for component-based development in the embedded market (PECOS). Dr. Schönhage is the recipient of both an MSc and a PhD from the Vrije Universiteit in Amsterdam.

Floor Plan

Gold sponsors

Ingres logo

BEA logo

IBM logo

Business Objects logo

Klocwork logo

Windriver logo

Red Hat logo

Actuate logo

Silver sponsors

Compuware logo

Sybase logo

Google logo






Code Gear




Innoopract logo

Lynux Works

Media sponsors

Eclipse Magazine logo logo

Methods and Tools logo

Eclipsezone logo

Addison-Wesley logo

Eclipse Magazin logo

Embedded Computing logo

SD Times logo

Enterprise Open Source logo

ACM Queue logo

TheServerSide Java Symposium

Eclipse Review logo

Software Test & Performance logo

Eclipse Developers Journal logo

Eclipse Source logo