SlideShare a Scribd company logo
1 of 25
Download to read offline
Yann-Gaël Guéhéneuc, Kim Mens, and Roel Wuyts
Department of Informatics
and Operations Research
University of Montreal
GEODES
Département d'ingénierie
informatique
Université catholique de Louvain
Département d'informatique
Université Libre de Bruxelles
A Comparative Framework for
Design Recovery Tools
CSMR 2006
Bari, Italy
2/25
Teaser
You need to recover the design of a
large, complex legacy-system...
Wouldn’t it be nice if
– You would have a catalogue of available
design recovery tools?
– You could use this catalogue to identify the
most adequate tools for your needs?
– You could compare adequate tools?
⇒ Comparative framework
3/25
Context (1/3)
Maintenance
– Many successes
• Y2K
• Mini-computers
• Universities information system ☺
• …
– Lots of research work still needed
• Costs/Time
• Automation
• Reengineering
4/25
Context (2/3)
In software maintenance, reverse-
engineering stands as a very important
activity, at the heart of most
maintenance efforts
5/25
Context (3/3)
Reverse-engineering is mainly
concerned with design recovery, to
recreate design abstractions from a
combination of source code, design
documentation, personal experience,
and general knowledge about problem
and application domains
(T.J. Biggerstaff)
6/25
Motivations
Help in improving design recovery
– Comparison of techniques and tools
• For example, logic queries, LSI, use case and
module/class interaction views, process graph
– Identification of interesting/unexplored
research avenues
• For example, search based SE
– Replication of controlled experiments and
case studies
• For example, Mozilla
7/25
Problems (1/3)
Comparisons of techniques and tools
– Rationale
• Developers/Users
• Needs/Features
– Problems
• Different purposes
• Different sources of data
• Different type of recovered designs
8/25
Problems (2/3)
Identification of interesting/unexplored
research avenues
– Rationale
• Researchers
• Needs/Features
– Problems
• Science vs. Techniques
• ¬Reinventing the wheel
9/25
Problems (3/3)
Replication of controlled experiments
and case studies
– Rationale
• Researchers/Users
• Case studies
• Controlled experiments
– Problems
• Design/Replication of empirical studies on
design recovery, reverse-engineering…
• Comparison of tools
10/25
Our Approach
1. Methodology to compare design
recovery tools
– Incremental/Iterative
2. Comparative framework
– 8 concerns
– 51 criteria
3. Application
– 10 tools and raising
– 2 tools in the paper: SOUL and Ptidej
11/25
1. Methodology (1/2)
From existing work
– Biggerstaff in 1989, 2-axis program
understanding landscape (9 tools)
– Bell and Gall in 1997, 4 functional
categories (4 tools)
– Gannod and Cheng in 1999, 4 categories
and 4 dimensions (16 tools)
– Ducasse and Tichelaar in 2003, 9-axis
design space (4 tools)
12/25
1. Methodology (2/2)
From live discussions
– 6th Workshop on Object Oriented
Reengineering at ECOOP 2005
– 1st Workshop on Empirical Studies in
Reverse Engineering at STEP/ICSM 2005
Incremental/Iterative
13/25
2. Comparative Framework
8 concerns
14/25
2. Comparative Framework
51 criteria
– Lifespan
– Methodology
– Range of Uses
– Settings
– UoD
– Long-term
– Short-term
– Acquaintance
– Experience
– Prerequisites
– Targeted User
– Type
– Assumptions
– Data Source
– Documentation
– Model
– Precision
– Representation
– Type of Data
– Versions
– Adaptability
– Automation
– Complexity
– Determinism
– Explicative
– Fuzzy-ness
– Granularity
– Incremental
– Iterative
– Language
– Maturity
– Method
– Scalability
– Semantics
– Human-readable
– Level of Detail
– Quality
– Representation
– Type of Data
– Dependencies
– Languages
– Maintained
– Platforms
– Documentation
– Multi-user
– User Base
– Kind of Licence
– Multi-user
– User Base
– …
15/25
2. Context
16/25
2. Intent
17/25
2. User
18/25
2. Input
19/25
2.Technique
20/25
2. Output
21/25
2. Implementation
22/25
2. Tool
23/25
3. Application
Currently,
– We classified 2 tools in details
– We classified 8 tools superficially
• JIAD, JFREEDOM, Refactoring Crawler,
Hammock graphs, Vanessa, web mining,
TraceScraper, FAMOOS
• Contact the authors
24/25
Conclusion
Comprehensive comparative framework
– Design recovery tools
– 8 concerns, 51 criteria
Improve criteria, ontology
Improve the use of the framework, web-
based questionnaires
Build a space of design recovery tools,
complete taxonomy
Benchmarks!
25/25
Future Work
We need YOU!
Tool builder? Know a cool tool? Please, contact us!
Soon to come, a web survey
7th WOOR’06 at ECOOP
guehene@iro.umontreal.ca, kim.mens@uclouvain.be, roel.wuyts@ulb.ac.be

More Related Content

Similar to Csmr06b.ppt

A.Levenchuk -- Systems Engineering Thinking
A.Levenchuk -- Systems Engineering ThinkingA.Levenchuk -- Systems Engineering Thinking
A.Levenchuk -- Systems Engineering ThinkingAnatoly Levenchuk
 
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...Computational Optimization, Modelling and Simulation: Recent Trends and Chall...
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...Xin-She Yang
 
Calculation of Reusability Matrices for Object Oriented applications
Calculation of Reusability Matrices for Object Oriented applicationsCalculation of Reusability Matrices for Object Oriented applications
Calculation of Reusability Matrices for Object Oriented applicationsIJMERJOURNAL
 
A Model-based Framework for Continuous Development and Runtime Validation of...
A Model-based Framework for Continuous Development and Runtime Validation  of...A Model-based Framework for Continuous Development and Runtime Validation  of...
A Model-based Framework for Continuous Development and Runtime Validation of...Hugo Bruneliere
 
2. leiviskä k (1996) simulation in pulp and paper industry. february 1996
2. leiviskä k (1996) simulation in pulp and paper industry. february 19962. leiviskä k (1996) simulation in pulp and paper industry. february 1996
2. leiviskä k (1996) simulation in pulp and paper industry. february 1996Huy Nguyen
 
CS8461 Operating System Lab Manual S.Selvi
CS8461 Operating System Lab Manual S.SelviCS8461 Operating System Lab Manual S.Selvi
CS8461 Operating System Lab Manual S.SelviSELVI SIVAPERUMAL
 
20160717 sbu dts colloquium on decision modeling and game theory sheikh
20160717 sbu dts colloquium on decision modeling and game theory sheikh20160717 sbu dts colloquium on decision modeling and game theory sheikh
20160717 sbu dts colloquium on decision modeling and game theory sheikhState University of New York, Korea
 
Lean Design - Literature survey
Lean Design - Literature surveyLean Design - Literature survey
Lean Design - Literature surveyAndrew Hall
 
Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Hugo Bruneliere
 
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...Academia de Ingeniería de México
 
131014 yann-gael gueheneuc - quality, patterns, and multi-language systems
131014   yann-gael gueheneuc - quality, patterns, and multi-language systems131014   yann-gael gueheneuc - quality, patterns, and multi-language systems
131014 yann-gael gueheneuc - quality, patterns, and multi-language systemsPtidej Team
 
Computational optimization, modelling and simulation: Recent advances and ove...
Computational optimization, modelling and simulation: Recent advances and ove...Computational optimization, modelling and simulation: Recent advances and ove...
Computational optimization, modelling and simulation: Recent advances and ove...Xin-She Yang
 
Model Manipulation for End-User Modelers
Model Manipulation for End-User ModelersModel Manipulation for End-User Modelers
Model Manipulation for End-User ModelersVlad Acretoaie
 
A Framework for Model-Driven Evolution in Families of Software Architectures
A Framework for Model-Driven Evolution in Families of Software ArchitecturesA Framework for Model-Driven Evolution in Families of Software Architectures
A Framework for Model-Driven Evolution in Families of Software ArchitecturesPooyan Jamshidi
 
UGent MIS research seminar June 2015
UGent MIS research seminar June 2015UGent MIS research seminar June 2015
UGent MIS research seminar June 2015Jan Claes
 
From Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringFrom Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringGlen Alleman
 

Similar to Csmr06b.ppt (20)

A.Levenchuk -- Systems Engineering Thinking
A.Levenchuk -- Systems Engineering ThinkingA.Levenchuk -- Systems Engineering Thinking
A.Levenchuk -- Systems Engineering Thinking
 
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...Computational Optimization, Modelling and Simulation: Recent Trends and Chall...
Computational Optimization, Modelling and Simulation: Recent Trends and Chall...
 
Calculation of Reusability Matrices for Object Oriented applications
Calculation of Reusability Matrices for Object Oriented applicationsCalculation of Reusability Matrices for Object Oriented applications
Calculation of Reusability Matrices for Object Oriented applications
 
A Model-based Framework for Continuous Development and Runtime Validation of...
A Model-based Framework for Continuous Development and Runtime Validation  of...A Model-based Framework for Continuous Development and Runtime Validation  of...
A Model-based Framework for Continuous Development and Runtime Validation of...
 
2. leiviskä k (1996) simulation in pulp and paper industry. february 1996
2. leiviskä k (1996) simulation in pulp and paper industry. february 19962. leiviskä k (1996) simulation in pulp and paper industry. february 1996
2. leiviskä k (1996) simulation in pulp and paper industry. february 1996
 
CS8461 Operating System Lab Manual S.Selvi
CS8461 Operating System Lab Manual S.SelviCS8461 Operating System Lab Manual S.Selvi
CS8461 Operating System Lab Manual S.Selvi
 
CAPE Green Engineering
CAPE Green Engineering CAPE Green Engineering
CAPE Green Engineering
 
control system.pdf
control system.pdfcontrol system.pdf
control system.pdf
 
20160717 sbu dts colloquium on decision modeling and game theory sheikh
20160717 sbu dts colloquium on decision modeling and game theory sheikh20160717 sbu dts colloquium on decision modeling and game theory sheikh
20160717 sbu dts colloquium on decision modeling and game theory sheikh
 
Lean Design - Literature survey
Lean Design - Literature surveyLean Design - Literature survey
Lean Design - Literature survey
 
Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...
 
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...
Derivación y aplicación de un Modelo de Estimación de Costos para la Ingenier...
 
131014 yann-gael gueheneuc - quality, patterns, and multi-language systems
131014   yann-gael gueheneuc - quality, patterns, and multi-language systems131014   yann-gael gueheneuc - quality, patterns, and multi-language systems
131014 yann-gael gueheneuc - quality, patterns, and multi-language systems
 
Computational optimization, modelling and simulation: Recent advances and ove...
Computational optimization, modelling and simulation: Recent advances and ove...Computational optimization, modelling and simulation: Recent advances and ove...
Computational optimization, modelling and simulation: Recent advances and ove...
 
Model Manipulation for End-User Modelers
Model Manipulation for End-User ModelersModel Manipulation for End-User Modelers
Model Manipulation for End-User Modelers
 
A Framework for Model-Driven Evolution in Families of Software Architectures
A Framework for Model-Driven Evolution in Families of Software ArchitecturesA Framework for Model-Driven Evolution in Families of Software Architectures
A Framework for Model-Driven Evolution in Families of Software Architectures
 
UGent MIS research seminar June 2015
UGent MIS research seminar June 2015UGent MIS research seminar June 2015
UGent MIS research seminar June 2015
 
Cascon06.ppt
Cascon06.pptCascon06.ppt
Cascon06.ppt
 
From Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringFrom Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems Engineering
 
Summary of pilot cases. New ways of working. Esa Nykänen, Jari Laarni, Hanna-...
Summary of pilot cases. New ways of working. Esa Nykänen, Jari Laarni, Hanna-...Summary of pilot cases. New ways of working. Esa Nykänen, Jari Laarni, Hanna-...
Summary of pilot cases. New ways of working. Esa Nykänen, Jari Laarni, Hanna-...
 

More from Yann-Gaël Guéhéneuc

Advice for writing a NSERC Discovery grant application v0.5
Advice for writing a NSERC Discovery grant application v0.5Advice for writing a NSERC Discovery grant application v0.5
Advice for writing a NSERC Discovery grant application v0.5Yann-Gaël Guéhéneuc
 
Ptidej Architecture, Design, and Implementation in Action v2.1
Ptidej Architecture, Design, and Implementation in Action v2.1Ptidej Architecture, Design, and Implementation in Action v2.1
Ptidej Architecture, Design, and Implementation in Action v2.1Yann-Gaël Guéhéneuc
 
Evolution and Examples of Java Features, from Java 1.7 to Java 22
Evolution and Examples of Java Features, from Java 1.7 to Java 22Evolution and Examples of Java Features, from Java 1.7 to Java 22
Evolution and Examples of Java Features, from Java 1.7 to Java 22Yann-Gaël Guéhéneuc
 
Consequences and Principles of Software Quality v0.3
Consequences and Principles of Software Quality v0.3Consequences and Principles of Software Quality v0.3
Consequences and Principles of Software Quality v0.3Yann-Gaël Guéhéneuc
 
Some Pitfalls with Python and Their Possible Solutions v0.9
Some Pitfalls with Python and Their Possible Solutions v0.9Some Pitfalls with Python and Their Possible Solutions v0.9
Some Pitfalls with Python and Their Possible Solutions v0.9Yann-Gaël Guéhéneuc
 
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...Yann-Gaël Guéhéneuc
 
An Explanation of the Halting Problem and Its Consequences
An Explanation of the Halting Problem and Its ConsequencesAn Explanation of the Halting Problem and Its Consequences
An Explanation of the Halting Problem and Its ConsequencesYann-Gaël Guéhéneuc
 
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)Yann-Gaël Guéhéneuc
 
On Java Generics, History, Use, Caveats v1.1
On Java Generics, History, Use, Caveats v1.1On Java Generics, History, Use, Caveats v1.1
On Java Generics, History, Use, Caveats v1.1Yann-Gaël Guéhéneuc
 
On Reflection in OO Programming Languages v1.6
On Reflection in OO Programming Languages v1.6On Reflection in OO Programming Languages v1.6
On Reflection in OO Programming Languages v1.6Yann-Gaël Guéhéneuc
 

More from Yann-Gaël Guéhéneuc (20)

Advice for writing a NSERC Discovery grant application v0.5
Advice for writing a NSERC Discovery grant application v0.5Advice for writing a NSERC Discovery grant application v0.5
Advice for writing a NSERC Discovery grant application v0.5
 
Ptidej Architecture, Design, and Implementation in Action v2.1
Ptidej Architecture, Design, and Implementation in Action v2.1Ptidej Architecture, Design, and Implementation in Action v2.1
Ptidej Architecture, Design, and Implementation in Action v2.1
 
Evolution and Examples of Java Features, from Java 1.7 to Java 22
Evolution and Examples of Java Features, from Java 1.7 to Java 22Evolution and Examples of Java Features, from Java 1.7 to Java 22
Evolution and Examples of Java Features, from Java 1.7 to Java 22
 
Consequences and Principles of Software Quality v0.3
Consequences and Principles of Software Quality v0.3Consequences and Principles of Software Quality v0.3
Consequences and Principles of Software Quality v0.3
 
Some Pitfalls with Python and Their Possible Solutions v0.9
Some Pitfalls with Python and Their Possible Solutions v0.9Some Pitfalls with Python and Their Possible Solutions v0.9
Some Pitfalls with Python and Their Possible Solutions v0.9
 
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
 
An Explanation of the Halting Problem and Its Consequences
An Explanation of the Halting Problem and Its ConsequencesAn Explanation of the Halting Problem and Its Consequences
An Explanation of the Halting Problem and Its Consequences
 
Are CPUs VMs Like Any Others? v1.0
Are CPUs VMs Like Any Others? v1.0Are CPUs VMs Like Any Others? v1.0
Are CPUs VMs Like Any Others? v1.0
 
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
 
Well-known Computer Scientists v1.0.2
Well-known Computer Scientists v1.0.2Well-known Computer Scientists v1.0.2
Well-known Computer Scientists v1.0.2
 
On Java Generics, History, Use, Caveats v1.1
On Java Generics, History, Use, Caveats v1.1On Java Generics, History, Use, Caveats v1.1
On Java Generics, History, Use, Caveats v1.1
 
On Reflection in OO Programming Languages v1.6
On Reflection in OO Programming Languages v1.6On Reflection in OO Programming Languages v1.6
On Reflection in OO Programming Languages v1.6
 
ICSOC'21
ICSOC'21ICSOC'21
ICSOC'21
 
Vissoft21.ppt
Vissoft21.pptVissoft21.ppt
Vissoft21.ppt
 
Service computation20.ppt
Service computation20.pptService computation20.ppt
Service computation20.ppt
 
Serp4 iot20.ppt
Serp4 iot20.pptSerp4 iot20.ppt
Serp4 iot20.ppt
 
Msr20.ppt
Msr20.pptMsr20.ppt
Msr20.ppt
 
Iwesep19.ppt
Iwesep19.pptIwesep19.ppt
Iwesep19.ppt
 
Icsoc20.ppt
Icsoc20.pptIcsoc20.ppt
Icsoc20.ppt
 
Icsoc18.ppt
Icsoc18.pptIcsoc18.ppt
Icsoc18.ppt
 

Recently uploaded

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 

Csmr06b.ppt

  • 1. Yann-Gaël Guéhéneuc, Kim Mens, and Roel Wuyts Department of Informatics and Operations Research University of Montreal GEODES Département d'ingénierie informatique Université catholique de Louvain Département d'informatique Université Libre de Bruxelles A Comparative Framework for Design Recovery Tools CSMR 2006 Bari, Italy
  • 2. 2/25 Teaser You need to recover the design of a large, complex legacy-system... Wouldn’t it be nice if – You would have a catalogue of available design recovery tools? – You could use this catalogue to identify the most adequate tools for your needs? – You could compare adequate tools? ⇒ Comparative framework
  • 3. 3/25 Context (1/3) Maintenance – Many successes • Y2K • Mini-computers • Universities information system ☺ • … – Lots of research work still needed • Costs/Time • Automation • Reengineering
  • 4. 4/25 Context (2/3) In software maintenance, reverse- engineering stands as a very important activity, at the heart of most maintenance efforts
  • 5. 5/25 Context (3/3) Reverse-engineering is mainly concerned with design recovery, to recreate design abstractions from a combination of source code, design documentation, personal experience, and general knowledge about problem and application domains (T.J. Biggerstaff)
  • 6. 6/25 Motivations Help in improving design recovery – Comparison of techniques and tools • For example, logic queries, LSI, use case and module/class interaction views, process graph – Identification of interesting/unexplored research avenues • For example, search based SE – Replication of controlled experiments and case studies • For example, Mozilla
  • 7. 7/25 Problems (1/3) Comparisons of techniques and tools – Rationale • Developers/Users • Needs/Features – Problems • Different purposes • Different sources of data • Different type of recovered designs
  • 8. 8/25 Problems (2/3) Identification of interesting/unexplored research avenues – Rationale • Researchers • Needs/Features – Problems • Science vs. Techniques • ¬Reinventing the wheel
  • 9. 9/25 Problems (3/3) Replication of controlled experiments and case studies – Rationale • Researchers/Users • Case studies • Controlled experiments – Problems • Design/Replication of empirical studies on design recovery, reverse-engineering… • Comparison of tools
  • 10. 10/25 Our Approach 1. Methodology to compare design recovery tools – Incremental/Iterative 2. Comparative framework – 8 concerns – 51 criteria 3. Application – 10 tools and raising – 2 tools in the paper: SOUL and Ptidej
  • 11. 11/25 1. Methodology (1/2) From existing work – Biggerstaff in 1989, 2-axis program understanding landscape (9 tools) – Bell and Gall in 1997, 4 functional categories (4 tools) – Gannod and Cheng in 1999, 4 categories and 4 dimensions (16 tools) – Ducasse and Tichelaar in 2003, 9-axis design space (4 tools)
  • 12. 12/25 1. Methodology (2/2) From live discussions – 6th Workshop on Object Oriented Reengineering at ECOOP 2005 – 1st Workshop on Empirical Studies in Reverse Engineering at STEP/ICSM 2005 Incremental/Iterative
  • 14. 14/25 2. Comparative Framework 51 criteria – Lifespan – Methodology – Range of Uses – Settings – UoD – Long-term – Short-term – Acquaintance – Experience – Prerequisites – Targeted User – Type – Assumptions – Data Source – Documentation – Model – Precision – Representation – Type of Data – Versions – Adaptability – Automation – Complexity – Determinism – Explicative – Fuzzy-ness – Granularity – Incremental – Iterative – Language – Maturity – Method – Scalability – Semantics – Human-readable – Level of Detail – Quality – Representation – Type of Data – Dependencies – Languages – Maintained – Platforms – Documentation – Multi-user – User Base – Kind of Licence – Multi-user – User Base – …
  • 23. 23/25 3. Application Currently, – We classified 2 tools in details – We classified 8 tools superficially • JIAD, JFREEDOM, Refactoring Crawler, Hammock graphs, Vanessa, web mining, TraceScraper, FAMOOS • Contact the authors
  • 24. 24/25 Conclusion Comprehensive comparative framework – Design recovery tools – 8 concerns, 51 criteria Improve criteria, ontology Improve the use of the framework, web- based questionnaires Build a space of design recovery tools, complete taxonomy Benchmarks!
  • 25. 25/25 Future Work We need YOU! Tool builder? Know a cool tool? Please, contact us! Soon to come, a web survey 7th WOOR’06 at ECOOP guehene@iro.umontreal.ca, kim.mens@uclouvain.be, roel.wuyts@ulb.ac.be