| <div class="sideitem"> |
| <h3>EGF: a Software Factory Tool</h3> |
| <div class="content"> |
| <p> |
| 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. |
| <a title="Presentation of EGF" href="http://wiki.eclipse.org/images/6/66/EGF_Introduction.pdf">Introduction</a> |
| <div> |
| <table align="center" cellpadding="10"> |
| <tr> |
| <th><img src="resources/EGF_Overview.png" alt="EGF Overview" /></th> |
| <th> |
| <div class="featureDescription"> |
| <ul> |
| <li>Software production with factory components</li> |
| <li>Reuse of off-the-shelf factory components</li> |
| <li>Development by assembly</li> |
| <li>Adaptation to a specific context</li> |
| </ul> |
| </div> |
| </th> |
| </tr> |
| </table> |
| </div> |
| <div id="EGFConceptsText"> |
| <p>EGF is an engine based on four types of generation unit: |
| <ul> |
| <li><b>Task</b>: it enables to execute code written in a language (e.g., Java, Ant, JRuby) or tools (e.g., Acceleo, ATL, Jet)</li> |
| <li><b>Factory component</b>: it declares generation parameters and orchestrates calls to tasks or other factory components</li> |
| <li><b>Pattern</b>: 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)</li> |
| <li><b>Generation Chain</b>: it is a domain-specific model which enables to abstract generations</li> |
| </ul> |
| EGF is designed to be extensible and accept new types of generation unit. |
| On the other hand, because a task is able to execute code and tools, EGF is not strictly limited to generation. |
| </p> |
| </div> |
| <div> |
| <table align="center" cellpadding="10"> |
| <tr> |
| <th><a title="Activity Workflow With Java and Ruby" href="http://vimeo.com/15705526"> |
| <img src="resources/EgfActivityWorkflowJavaRuby.png"/> |
| <div class="overlay"></div> |
| </a></th> |
| <th><p>Video: <strong> Activity Workflow combining Java and JRuby</strong></p> |
| <p>Example of dynamic execution</p> |
| </th> |
| </tr> |
| </table> |
| </div> |
| <div> |
| <h3>Software Factories Portfolios</h3> |
| <p>A software factory portfolio provides an off-the-shelf generation solution. EGF is released with two portfolios: |
| <ul> |
| <li><b>Enhanced EMF Generation</b>: 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</li> |
| <li><b>Build chain editor and generator</b>: 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</li> |
| </ul> |
| </p> |
| </div> |
| <div> |
| <table align="center" cellpadding="10"> |
| <tr> |
| <th> |
| <a title="Generation Chain" href="http://vimeo.com/29472598"> |
| <img src="resources/EgfGenerationChain.png"/> |
| <div class="overlay"></div> |
| </a></th> |
| <th> |
| <p>Video: <strong> Generation Chain</strong></p> |
| <p>Generation chain and the EMF generation</p> |
| </th> |
| </tr> |
| </table> |
| </div> |
| </p> |
| </div> |
| </div> |
| |
| |
| <div class="news-list news-list-match-height"> |
| <div class="container"> |
| <div class="row"> |
| <div class="col-lg-10 col-lg-offset-2 col-md-12 news-list-col padding-bottom-50"> |
| <div class="news-list-icon text-center"> |
| <i data-feather="activity" stroke-width="1"></i> |
| </div> |
| <h2 class="text-center">News</h2> |
| <ul class="news-list-media list-unstyled"> |
| %%HEADLINES%% |
| </ul> |
| </div> |
| </div> |
| </div> |
| </div> |
| |