EGF: a Software Factory Tool
EGF (Eclipse Generation Factories) is a software factory tool with the purpose to generate software artifacts, such as code or application, in order to automate software development. Introduction
![]() |
|
---|
EGF is an engine based on four types of generation unit:
- Task: it enables to execute code written in a language (e.g., Java, Ant, JRuby) or tools (e.g., Acceleo, ATL, Jet)
- Factory component: it declares generation parameters and orchestrates calls to tasks or other factory components
- Pattern: it is a powerful formalism which enables to process resources (e.g., model, file), in a language (e.g., Java, Jet), with parameters (e.g., navigation strategy, post-processor, reporter)
- Generation Chain: it is a domain-specific model which enables to abstract generations
Software Factories Portfolios
A software factory portfolio provides an off-the-shelf generation solution. EGF is released with two portfolios:
- Enhanced EMF Generation: 1) it enriches the EMF generation with new generation topics (e.g., html doc, ecoretools diagrams, Java doc), 2) it opens the EMF Generation customization with the EGF patterns
- Build chain editor and generator: it provides 1) an editor to model a build chain for continuous integration, and 2) a generator with targets, by default, Hudson/jenkins and Buckminster