Industrialization of Research Tools: the ATL Case Hugo Brunelire, - - PowerPoint PPT Presentation

industrialization of research tools the atl case
SMART_READER_LITE
LIVE PREVIEW

Industrialization of Research Tools: the ATL Case Hugo Brunelire, - - PowerPoint PPT Presentation

Industrialization of Research Tools: the ATL Case Hugo Brunelire, Jordi Cabot, Frdric Jouault, Massimo Tisi , Jean Bvizin AtlanMod INRIA & EMN Nantes, France massimo.tisi@mines-nantes.fr Research tools in SE Tools as proofs


slide-1
SLIDE 1

Industrialization of Research Tools: the ATL Case

Hugo Brunelière, Jordi Cabot, Frédéric Jouault, Massimo Tisi, Jean Bévizin

AtlanMod

INRIA & EMN Nantes, France massimo.tisi@mines-nantes.fr

slide-2
SLIDE 2

ATL Industrialization - 2/32

Research tools in SE

 Tools as proofs of concept for research ideas  A large user base would produce:

 empirical validation of research  feedback  visibility  collaboration opportunities

Unfortunately...

slide-3
SLIDE 3

ATL Industrialization - 3/32

...resources are limited!

Research groups focus on core research activities

also because of funding criteria

Companies don't adopt the tool because it lacks:

responsive user support complete and up-to-date tool documentation ergonomy long-term perspectives frequent upgrades interoperability with other tools extensibility, adaptability, and other -ities backward compatibility

slide-4
SLIDE 4

ATL Industrialization - 4/32

Open Source is not enough

 An open source license is not enough:

 only few projects are successfully involving external

contributors

[S. Krishnamurthy, Cave or community? an empirical examination of 100 mature open source projects]

 external users prefer to work on challenging tool

features

 e.g. other research groups

i

slide-5
SLIDE 5

ATL Industrialization - 5/32

Our context: MDE

 Model Driven Engineering  models as primary artifacts in SE

 growing industrial interest  without tools monopolizing the market

System Test cases Metrics ... Docs

slide-6
SLIDE 6

ATL Industrialization - 6/32

Our research tool: ATL

 Model-to-model (M2M) transformation language

 production of target models from source models  a set of declarative rules that

 match a subset of the source model  create an excerpt of the target model

slide-7
SLIDE 7

ATL Industrialization - 7/32

A look to ATL

slide-8
SLIDE 8

ATL Industrialization - 8/32

History of ATL

 2003: Phd of Frédéric Jouault  2004: French project CAR-ROLL/MOTOR  2004: ATL in the Eclipse-Modeling GMT project  2004-2006: MODELWARE European integrated

project

 2006: Eclipse M2M (Model-to-Model

Transformation) project

 2006-2010: MODELPLEX European integrated

project

slide-9
SLIDE 9

ATL Industrialization - 9/32

ATL Today

 ATL is the most popular model-transformation toolset today  Full Eclipse project  ATL IDE

 Editor, debugger, compiler, profiler, etc..

 Documentation

 user guide, developer guide, tutorials, more than one hundred open

source transformations, etc...

 Community

 Eclipse forum, mailing list, bugzilla, wiki, etc..

slide-10
SLIDE 10

ATL Industrialization - 10/32

How did we make it?

  • 1. Tool design

a) Modularity b) Standard technologies c) Interoperability d) Eating your own dog food

  • 2. Business model

 ATL Industrialization

slide-11
SLIDE 11

ATL Industrialization - 11/32

  • 1. Tool Design
slide-12
SLIDE 12

ATL Industrialization - 12/32

a) Modularity

 Modular structure + Eclipse extension mechanism

slide-13
SLIDE 13

ATL Industrialization - 13/32

b) Standard technologies

 Eclipse

 open development framework  solid open-source community, standard platform  standard extension mechanism (based on OSGi)

 EMF

 De facto standard solution for model handling today

slide-14
SLIDE 14

ATL Industrialization - 14/32

c) Interoperability

 Maximum independence from specific

technologies

 → longevity  → portability

 Example: the ATL Virtual Machine

 Specific for model manipulation

 to support a new model management system

 → new Model Handler Abstraction Layer

 to execute ATL transformations in other environments

 → porting the VM

Eclipse EMF Netbeans MDR Microsoft DSL Tools Java .NET

slide-15
SLIDE 15

ATL Industrialization - 15/32

d) Eating your own dog food

 Research groups as the first users of the tool

 If possible, for building the tool itself (bootstrapping)

 Benefits

 a non-trivial test for the tool  an improvement to a tool component improves all

the toolsuite

slide-16
SLIDE 16

ATL Industrialization - 16/32

  • 2. Business Model
slide-17
SLIDE 17

ATL Industrialization - 17/32

ATL Industrialization

Benefits for AtlanMod Benefits for Obeo

 Focus on new research

activities

 ATL reaches an industrial

quality attracting company users and a stable user base

  • Strategic positioning among

industries that use Eclipse modeling

  • Obeo becomes the lead

ATL training company

  • ATL completes the

proprietary Obeo offering

  • Privileged relationship with

the creators and lead research contributors of ATL

+

slide-18
SLIDE 18

ATL Industrialization - 18/32

Obeo responsibilities

1) Quality assurance

 reactively (bug reporting and correction)  proactively (optimization, e.g. scalability)

2) Interoperability 3) Continuity 4) User experience

 ergonomy, wizards, internationalization, etc..

5) Release management

 defining milestones, building, testing, packaging and distributing

6) User support

 documentation, free and subscription-based support and training

slide-19
SLIDE 19

ATL Industrialization - 19/32

ATL Research

 Both have open-source licence

 every update can be transferred between branches  third parties are guaranteed that any contribution will benefit

the whole research community

 ATL Research

 specific versions for particular

projects

 if interesting for the general

public, they move in ATL

 by directly importing  or re-engineering by Obeo

slide-20
SLIDE 20

ATL Industrialization - 20/32

Replicating the process

 We are replicating the industrialization model for:

MoDisco (software modernization tool)

 with 

Megamodeling (model management approach)

 with

The model can be generalized:

slide-21
SLIDE 21

ATL Industrialization - 21/32

Industrialization Triangle

1.Big users describe a challenging problem

 e.g. the industrial use

cases at the beginnings of ATL

slide-22
SLIDE 22

ATL Industrialization - 22/32

Industrialization Triangle

2.The lab decides whether it is a relevant research problem

slide-23
SLIDE 23

ATL Industrialization - 23/32

Industrialization Triangle

3.If it is, the lab

 conducts the

research

 (publishes papers)  implements a

proof-of-concept

slide-24
SLIDE 24

ATL Industrialization - 24/32

Industrialization Triangle

4.The big company decides whether to request an industrialized version

slide-25
SLIDE 25

ATL Industrialization - 25/32

Industrialization Triangle

5.In that case, the big company, with the help of the research lab, selects a technology provider

slide-26
SLIDE 26

ATL Industrialization - 26/32

Industrialization Triangle

6.The lab assists the technology provider during the industrialization

slide-27
SLIDE 27

ATL Industrialization - 27/32

Industrialization Triangle

7.The technology provider releases the tool

slide-28
SLIDE 28

ATL Industrialization - 28/32

Industrialization Triangle

 Open source is not mandatory

but

 facilitates communication  maximizes benefits

 the research group distributes the

code when publishing papers

 the technology provider

commercializes adaptations for

  • ther companies with the same

problem

slide-29
SLIDE 29

ATL Industrialization - 29/32

All together

 Application-driven

research

 ensures return of

investment for technology provider

slide-30
SLIDE 30

ATL Industrialization - 30/32

Summarizing

 Our contribution:

1.Experience with the industrialization of ATL

 Design principles  Business model

2.Proposed model

 Industrialization of the research prototypes thanks to the

partnership with a technology provider

 Validated in ATL and replicated in other projects

slide-31
SLIDE 31

ATL Industrialization - 31/32

Future work

 Formalized protocol for tool industrialization

 investigated in the OPEES European project

 For ATL:

 Fine-grained extension system for the ATL core  ATL Labs

 Web-based collaboration platform for ATL extensions  users compose specialized extensions to get a

specific ATL “flavor”

slide-32
SLIDE 32

Thanks