Your SlideShare is downloading. ×
0
Ptidej: A Flexible Reverse
Engineering Tool Suite
Yann-Gaël Guéhéneuc
ICSM
Paris, France
2/10/07
GEODES Ptidej Team – OO P...
Outline
 Ptidej

in a Nutshell
 Brief History
 Main Characteristics
 Demo
– Reverse Engineering of JHD v5.1
– Identifi...
Ptidej in a Nutshell




3/16

Ptidej: Pattern Trace Identification, Detection,
and Enhancement in Java
Tool suite to de...
Brief History


1999: Birth



– Hervé Albin-Amiot creates DPL
(Design Pattern Language), a
meta-model for design motifs...
Main Characteristics
 Today

– 30 JDT projects
– 200 packages
– 1,150 classes
– 80,000 LOC
 Contributions

of several ma...
Main Characteristics


PADL meta-model
–
–
–
–



6/16

Composite
Observer
Visitor
(Singleton)



Ptidej framework
–
–
...
Main Characteristics
 Reflection

– Meta-model constituents
– Design motifs, design defects
– PADL analyses
– Ptidej UI a...
Main Characteristics
 Some

hot spots

to add new constituents
IBuilder to draw graphic representations
IPADLAnalysis to ...
Demo
Reverse Engineering
A

.ptidej file lists a set of file to be
parsed and their languages
[Ptidej Project]
Name = DPL...
Demo
Reverse Engineering


PADL Meta-model
– Pattern and Abstractlevel Description
Language
– Meta-mode to
describe objec...
Demo
Reverse Engineering

11/16
Demo
Identification of Design Motifs, Defects
 Design

motifs

– PADL meta-model
– Solutions of design patterns
– Explana...
Demo
Identification of Design Motifs, Defects

13/16

Composite Design Motif
Demo
Identification of Design Motifs, Defects

14/16

Swiss Army Knife
Demo
Model Transformations and External Tools

15/16

Dotty
Thoughts for Discussions
 More

information at www.ptidej.net

 Language

independence

– See WOOR’06 and ’07 workshop r...
Upcoming SlideShare
Loading in...5
×

Icsm07 tooldemo.pdf

134

Published on

Reverse-engineering, design patterns, anti-patterns, flexibility

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
134
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Icsm07 tooldemo.pdf"

  1. 1. Ptidej: A Flexible Reverse Engineering Tool Suite Yann-Gaël Guéhéneuc ICSM Paris, France 2/10/07 GEODES Ptidej Team – OO Programs Quality Evaluation and Enhancement using Patterns Group of Open, Distributed Systems, Experimental Software Engineering Department of Informatics and Operations Research University of Montreal © Guéhéneuc 2007
  2. 2. Outline  Ptidej in a Nutshell  Brief History  Main Characteristics  Demo – Reverse Engineering of JHD v5.1 – Identification of Design Motifs, Defects – Model Transformations and External Tools 2/16  Thoughts for Discussions
  3. 3. Ptidej in a Nutshell   3/16 Ptidej: Pattern Trace Identification, Detection, and Enhancement in Java Tool suite to develop theories and methods to evaluate and improve the quality of objectoriented programs by promoting the use of idioms, design patterns, and architectural patterns – Research – Education
  4. 4. Brief History  1999: Birth  – Hervé Albin-Amiot creates DPL (Design Pattern Language), a meta-model for design motifs  – Creation of the Ptidej Team to develop and enhance the tool suite at University of Montreal – Parser for AOL – Parser for AspectJ – Parser for a subset of C++ – DSL for design defects specification and identification – Identification of micro-patterns 2001–2003: Childhood – DPL becomes PADL to describe programs and motifs • Parser for Java – Caffeine is developed to analyse dynamically Java programs – Explanation-based constraint programming to identify motifs – Visualisation of systems, motifs, occurrences 4/16 2003–2007: Teenage days  2008: ?
  5. 5. Main Characteristics  Today – 30 JDT projects – 200 packages – 1,150 classes – 80,000 LOC  Contributions of several master and Ph.D. students  Used in several publications, see 5/16 www.ptidej.net/publications
  6. 6. Main Characteristics  PADL meta-model – – – –  6/16 Composite Observer Visitor (Singleton)  Ptidej framework – – – – – Observer Builder Template Method Abstract Factory (Singleton) See Yann-Gaël Guéhéneuc ; Ptidej: Promoting Patterns with Patterns ; BSUP, in 2005
  7. 7. Main Characteristics  Reflection – Meta-model constituents – Design motifs, design defects – PADL analyses – Ptidej UI analyses – Ptidej Viewer extensions 7/16
  8. 8. Main Characteristics  Some hot spots to add new constituents IBuilder to draw graphic representations IPADLAnalysis to add new PADL analyses IDesignMotif to add new design motifs IPtidejAnalysis to add new Ptidej analyses IExtension to extend the UI IWindow to add new window in the UI – IFactory – – – – – – 8/16
  9. 9. Demo Reverse Engineering A .ptidej file lists a set of file to be parsed and their languages [Ptidej Project] Name = DPL - JHotDraw v5.1 JavaCode = ../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/applet/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/application/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/contrib/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/figures/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/framework/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/samples/javadraw/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/samples/net/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/samples/nothing/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/samples/pert/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/standard/;../../../DPL - JHotDraw v5.1/bin/CH/ifa/draw/util/ 9/16
  10. 10. Demo Reverse Engineering  PADL Meta-model – Pattern and Abstractlevel Description Language – Meta-mode to describe objectoriented software systems and patterns 10/16
  11. 11. Demo Reverse Engineering 11/16
  12. 12. Demo Identification of Design Motifs, Defects  Design motifs – PADL meta-model – Solutions of design patterns – Explanation-based constraint programming  Design 12/16 defects – DSL language – Structural relationships, structural and lexical properties, metric values – Template-based code generation
  13. 13. Demo Identification of Design Motifs, Defects 13/16 Composite Design Motif
  14. 14. Demo Identification of Design Motifs, Defects 14/16 Swiss Army Knife
  15. 15. Demo Model Transformations and External Tools 15/16 Dotty
  16. 16. Thoughts for Discussions  More information at www.ptidej.net  Language independence – See WOOR’06 and ’07 workshop reports  Framework independence  Framework documentation 16/16 – API – Hot spots – Design patterns and defects
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×