uml to code with acceleo

12
UML to code with Acceleo Tarun Telang December 12, 2011 Publi c

Upload: tarun-telang

Post on 11-May-2015

4.749 views

Category:

Education


4 download

DESCRIPTION

UML to Code Transformation using Acceleo Introduction to Papyrus Eclipse modeling Tooling Components

TRANSCRIPT

Page 2: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 2Public

Agenda

Motivation

Acceleo

• Introduction

• Download & Installation

• Demo

Papyrus

• Introduction

• Download & Installation

• Demo

Page 3: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 3Public

Motivation

Software Development has become a very diverse field

• Large number of platforms (Windows, Mac OSX, Linux, … )

• Large number of devices (PCs, Smart phones, Tablets … )

• Large number of frameworks (Java, .NET, SAP, Adobe Flash, … )

• Large number of delivery channels ( Cloud, Mobile, Browser, Market places .. )

• Large number of languages ( Java, C#, ABAP, Python, C/C++, Objective C … )

Page 4: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 4Public

Importance of Model Driven Development

Software Companies

• Reduce cost of Development.

• Increase speed of Software Development.

• Improve Developer Productivity.

Developer

• No Need to learn/unlearn different technology.

Page 6: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 6Public

Acceleo

An eclipse based model (e.g. UML2, Ecore, SysML.. ) to text (e.g. code, documentation, tests .. ) transformation tool. (http://www.eclipse.org/acceleo/).

Acceleo is the result of several man-years of R&D started in the French company Obeo.

Features:

1. Model to Code Generation

2. Low Learning Curve : using the provided example projects and the powerful completion feature of the Acceleo editor, it is very easy to get started and understand the basic principles.

3. Simple Syntax

Page 7: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 7Public

Acceleo Template

[template public classToJava(c : Class)]

class [c.name/]

{

// Constructor

[c.name/]()

{

}

}

[/template]

class Employee

{

// Constructor

Employee ()

{

}

}

Page 8: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 8Public

Installing Acceleo

Page 10: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 10Public

Papyrus

An eclipse based graphical (or textual) modeling tool (http://www.eclipse.org/modeling/mdt/papyrus/).

Features:

1. Papyrus is graphical editing tool for UML2 as defined by OMG.

2. Every part of Papyrus may be customized: model explorer, diagram editors, property editors, etc.

3. Papyrus provides also a complete support to SysML in order to enable model-based system engineering.

4. It is possible to edit model elements using contextual text editors enabling syntax highlight, completion and content assist.

Page 11: Uml to code with acceleo

© 2011 SAP AG. All rights reserved. 11Public

Installing Papyrus