11
Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Embed Size (px)

Citation preview

Page 1: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Understanding Data Intensive Systems

Using Dynamic Analysis and Visualization

Nesrine NOUGHI

Page 2: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Motivation and Context Understanding = up to 50% of the cost of the software

maintenance

Data intensive systems Intensive usage of data ( towards Big Data) More and more dynamic systems (ORM, Web

Application, etc.)

Consequences The database often occupies a central place

Systems are more and more complex to understand

Page 3: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Objective

Focus : Capture SQL queries at run-time and visualize dynamically their impact on the database to ease program comprehension

Understanding the communication between the database and the programs becomes a prerequisite to data-intensive system comprehension

Page 4: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology

Logical Visualization Conceptual Visualization Workflow Detection

Page 5: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology Step 1 : Logical Visualization

Uses the logical schema as representation model

Takes one SQL trace and logical schema as input

Allows visualization at a low-level of abstraction (tables, columns, etc)

Page 6: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology Step 1 : Logical Visualization Example :

Logical schema

SQL trace

Logical visualization

Page 7: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology Step 2 : Conceptual Visualization

Uses the conceptual schema as representation model

Takes one SQL trace, both conceptual and logical schemas as input

Allows visualization at a higher-level of abstraction (concepts, relationships)

Page 8: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology

Logical schema Conceptual schema

Step 2 : Conceptual Visualization Example :

SQL trace

Conceptual visualization

Mapping

Page 9: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Approach and Methodology Step 3 : Workflow Detection

Takes several SQL traces as input

Allows the visualization of the data manipulation workflow of the program

Page 10: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Ongoing work Implementation of the first two steps

+ loop detection algorithm

Logical visualization Conceptual visualizationConceptual visualizationLogical visualization Conceptual visualization

Page 11: Understanding Data Intensive Systems Using Dynamic Analysis and Visualization Nesrine NOUGHI

Future directions

Complete and enrich the conceptual visualization

Define an experimental protocol for the evaluation of the prototype with real users

Use this visualization in order to animate the workflow of the program provide program documentation and diagrams