And you thought you knew Template Based Generators?
This talk will discuss the evolution of a code generator, the problems encountered during its development and the solutions created in Acceleo in order to handle those problems. We will start with a presentation of the Acceleo project and its position in the modeling community. Then we will talk about its language and history before detailing some of its key features. We will explain the behavior of the Acceleo editor and how it can ease the creation of a generator. We will then move on to the different views available in Acceleo, especially the Result view that provides the traceability information for all the generated elements. Finally we will show a glimpse of the behavior of some advanced features like the profiler and the debugger.
After that, we will present how Acceleo helps the user during the evolution of its generators. We will also discuss the problems encountered with code generation like the modification of the generated code and different tools used to help during the different steps of the lifecycle of a code generator.
Finally we will look into the problem of the maintenance of a code generator with Acceleo and Obeo Traceability. Following an introduction of Traceability, we will look into the solution created to handle the modification of the generated code. We will also see how to override the behavior of an existing code generator to introduce new features in the generated code.
We will conclude this presentation with our solution to the synchronization problems that cripple code generation projects with a demonstration of the synchronization tooling of Traceability.
Benefits of participating:
People attending the talk will be able to discover the Acceleo project and Obeo Traceability. You will also get a glimpse of the prototype based approach used to initialize a generator, then you will see how Acceleo and Traceability provides you with the tooling necessary to handle the maintainability and the evolutions of your generators. Finally, we will show how to improve and modify complex existing generators safely with the Traceability.
Process & timetable:
- Presentation of the Acceleo project (description, history, features)
- Creation of a generator from a prototype and demonstration of the prototype based approach and presentation of the Acceleo tooling.
- How Acceleo supports the user during the improvements of its generator with a presentation of the features dedicated to this approach with a live example.
- Short presentation of Obeo Traceability and demonstration of the use of Acceleo and Traceability to maintain and customize existing generators with a live example and a discussion on the different problems encountered during the live of a code generator.
Beginner. Strongly recommended if you are interested by code generation: developers, architect, etc.