Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EGF"

(Introduction)
(Example of customization with generation patterns)
Line 1: Line 1:
=Example of customization with generation patterns=
+
=Introduction=
  
The following figure exemplifies a generation by factory component assembly: some factory components have an assembly role while others generate. This generation reuses a viewpoint provided by EGF, a M2T (model-to-text) generation pattern viewpoint for the definition of generation patterns. Those generation patterns, Jet-based today, supports pattern inheritance. This means a M2T generation can overload another one. In this example, by default, the EMF model/edit/editor generation is applied. It can be specialized by inherited patterns. The same principle can be applied to other generations other than EMF, for instance to web services or documentation.
+
The EMFT EGF project is [http://www.eclipse.org/emft/projects/  part of EMFT] (EMF Technology).
 +
 
 +
In order to improve software development industrialization, a major step consists in mass-producing software. This mass-production must be customizable, and must be able to support complex, large-scale and heterogeneous generations. Given the today’s available Eclipse tools, the issue here is not to provide either a new transformation engine (model-to-model, model-to-text, text-to-model, text-to-text) or DSL (Domain-Specific Language) editor but to realize their integration for flexible software mass-production. This is the purpose of EGF.
 +
 
 +
EGF federates generation around the pivotal element of factory component. A factory component is a unit of generation with a clear objective of generation. It has a contract to declare the factory component parameters. Contrary to a classic generation which aggregates all the generation parameters, generation data are organized by viewpoints, such as generation pattern, license description or deployment declaration. Altogether, viewpoints explicitly configure all the generation parameters. The generation orchestration is defined by a production plan. A generation step of the production plan can either be a Java task or, by assembly, an invocation to another factory component. Regarding the lifecycle, a factory component can be edited and executed.
 +
 
 +
A factory component encapsulates generation know-how. A portfolio is a consistent set of factory components with a common generation objective, valuable for a development team or a user community. The purpose is to create off-the-shelf factory components. For instance, a technical infrastructure factory provides all the needed mechanisms for an application development (e.g., transaction management, persistence policy).

Revision as of 10:56, 8 June 2009

Introduction

The EMFT EGF project is part of EMFT (EMF Technology).

In order to improve software development industrialization, a major step consists in mass-producing software. This mass-production must be customizable, and must be able to support complex, large-scale and heterogeneous generations. Given the today’s available Eclipse tools, the issue here is not to provide either a new transformation engine (model-to-model, model-to-text, text-to-model, text-to-text) or DSL (Domain-Specific Language) editor but to realize their integration for flexible software mass-production. This is the purpose of EGF.

EGF federates generation around the pivotal element of factory component. A factory component is a unit of generation with a clear objective of generation. It has a contract to declare the factory component parameters. Contrary to a classic generation which aggregates all the generation parameters, generation data are organized by viewpoints, such as generation pattern, license description or deployment declaration. Altogether, viewpoints explicitly configure all the generation parameters. The generation orchestration is defined by a production plan. A generation step of the production plan can either be a Java task or, by assembly, an invocation to another factory component. Regarding the lifecycle, a factory component can be edited and executed.

A factory component encapsulates generation know-how. A portfolio is a consistent set of factory components with a common generation objective, valuable for a development team or a user community. The purpose is to create off-the-shelf factory components. For instance, a technical infrastructure factory provides all the needed mechanisms for an application development (e.g., transaction management, persistence policy).

Back to the top