• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Eclipse Summit 2008 - Thales - SolFa
 

Eclipse Summit 2008 - Thales - SolFa

on

  • 1,327 views

SolFa is a software factory tool developed by Thales

SolFa is a software factory tool developed by Thales

Statistics

Views

Total Views
1,327
Views on SlideShare
1,326
Embed Views
1

Actions

Likes
1
Downloads
22
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Eclipse Summit 2008 - Thales - SolFa Eclipse Summit 2008 - Thales - SolFa Presentation Transcript

    • Deploying Eclipse Modelling on an industrial scale with software factories Benoît Langlois, Thales/EPM November 19th, 2008
    • SolFa mde solution factories Agenda • What is SolFa?, Why SolFa? • Demo • Summary 2 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories What is SolFa? • Objective: Tool for mass-producing software with flexibility Support for complex generations • Used techniques: Generative technique: M2M, M2T, T2T, T2M transformations Product Line: capitalization and customization of core development DSL (Domain-Specific Language): Facilitating software development 3 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Position of SolFa in Eclipse • SolFa is a Model-Driven Development tool • The SolFa foundation is fully Eclipse-based: Non-UI (JDT, PDE, Core), UI (SWT, JFace, Forms, Eclipse UI) EMF-based: Ecore, EMF Query, Validation, Transaction Transformation: JET, EMF Mapping • Purpose regarding component viewpoint: Not a new transformation engine or DSL editor Integration of available tools for software generation Introduction of needed formalism (e.g., generation pattern) and mechanism (e.g., generation orchestration) • Purpose regarding user viewpoint: Creation of off-the-shelf factories, common and specific to different user communities 4 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Why SolFa? • Need#1: Factory Component Unit of generation with a clear objective of generation Unit of generation with a clear contract Explicit declaration of generation data organised by viewpoints Orchestration of the generation with a production plan Assembly of factory components Delegation Creation of heterogeneous and complex generations 5 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Why SolFa? • Need#2: Exchange of Factory Components Capitalisation and reuse between projects Definition of Factory Component portfolios, .i.e. sets of FCs with a common objective 6 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Why SolFa? • Need#3: Abstraction Flexible, simple and practical solutions Technology/Business need-oriented DSL Domain Expert FC portfolios Implementation of technical solutions Tool-oriented development Developer 7 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Paradigm of Factory Component Meta-Domain Level: - Implementing a document editor - Implementing a document generator Executing FC Editing FC FC Asset Domain Model Developer Domain Asset Expert DSL Factory Component Domain Technology Domain-Level: - Generating a document Domain-Level: - Designing a document Sharing FC Example for document production 8 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories SolFa Architecture Domain Expert Factory Developer Tool Software Factory Portfolio Tools Application DSL [Technological Slot] Uses M2M,M2T,T2M,T2T FC Portfolio for a Application FC DSL FC technology: Web services, Java Code reverse engineering, Tool Infrastructure FC Common DSL FC business rules… Tool run from Java Core FC (basic, utilities…) SolFa Engine Bootstrap FC FC Edition Orchestration Pattern (M2T) FC Execution Java Task Eclipse 9 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo • Demo #1 Presentation of SolFa Engine: Factory component edition and execution Pattern (M2T) 10 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Case Study Model Model Mgt Generator API Model Model Library Application Library Model, Edit, Editor Model Edit Generator Model Editor Generator Domain Diagram Generator Diagram Model Documentation Domain HTML Web-Site Generator 11 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: SolFa Engine / Factory Component SolFa perspective FCs (Factory components) being developed Deployed FCs FC generation data by concerns Delegation FC parameters Orchestration Parameter values 12 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: SolFa Engine / Pattern Patterns in a pattern library 13 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: SolFa Engine / Pattern 14 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: SolFa Engine / Pattern Ordered list of pattern parameters, each parameter type = Model Class Condition to apply a pattern 15 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: SolFa Engine / Pattern List of pattern methods Order to apply methods JET1 16 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo • Demo #2 Portfolio example: DSL Family 17 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: Document DSL Domain Expert Html Report 18 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Demo: DSL Family Similarity Variation Document DSL Test DSL 19 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories DSL Family DSL Family DSL Factory Model Common DSL Generator Customization Document DSL Test DSL Document DSL Test DSL Model Model Document DSL Generator Test DSL Generator 20 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Features of SolFa Engine • Current state: Edition and execution of factory component Declaration of generation data organised by viewpoints Assembly of factory components and generation orchestration Generation performed by Java tasks or patterns Pattern: Example of viewpoint, with its own language and execution mode Pattern inheritance for generation customisation, e.g. EMF generation Provided: help, tutorials • Future work: [Started] Combination of Factory Component generation Pattern: Supporting other M2T engines than Jet1(e.g., Jet2, xPand) Supporting complex orchestrations Extensibility: ability to plug generation viewpoints 21 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Features of DSL Factory • Current state: Implementation of a DSL family portfolio: Generation of a DSL from a DSL model and a DSL factory Addressing common Query model needs, e.g. helper definition, test, document, diagram generation Common features: Foundations of an abstract syntax: For tool-independence, queries are modelled and actions are generic Definition of reusable DSL pieces, recursion… Generation of target artefacts from a DSL and FCs • Future work: Concrete syntax/Notation: Graphical-based on GMF 22 Deploying Eclipse Modelling on an industrial scale with software factories
    • SolFa mde solution factories Thank You! Questions benoit.langlois@thalesgroup.com Contributors: Stephane Fournier, Guillaume Brocard 23 Deploying Eclipse Modelling on an industrial scale with software factories