Software Evolution Visualization - PowerPoint PPT Presentation

1 / 10
About This Presentation
Title:

Software Evolution Visualization

Description:

what is the structure of the project ? what is important ? what is ... cushions.drawColorClus... bSwitch = not bSwitch. yPos = yPos i. glDisable(GL_BLEND) ... – PowerPoint PPT presentation

Number of Views:140
Avg rating:3.0/5.0
Slides: 11
Provided by: Voi81
Category:

less

Transcript and Presenter's Notes

Title: Software Evolution Visualization


1
Software Evolution Visualization
Lucian Voinea
2
Why Software Evolution Visualization ?
  • Software understanding
  • what is the structure of the project ?
  • what is important ?
  • what is difficult ?
  • who work on it ?
  • what parts are connected to a given part ?
  • what parts refer to a given aspect ?
  • Product and process assessment
  • what is the process ?
  • what is the core team ?
  • where is the activity concentrated ?
  • what is stable ?

3
Challenges
  • Data acquisition
  • data source ? SW Configuration Management
  • long acquisition times
  • large storage space, large bandwidth
  • data parsing maintenance
  • Data analysis
  • - Enrich recorded evolution data E.g. evolution
    similarity metrics
  • Data visualization
  • multivariate 10s attributes (Demo 6
    attributes)
  • large data amount 100s files,10s versions,
    1000s lines
  • VTK 2700 files x 100 versions ArgoUML
    4452 files x 80 versions

SW Configuration Management?SW evolution mining
4
SW Evolution Visualization Toolset
data extraction

version control
management
system



CVSscan
CVSgrab
CVS

Project evolutionvisualization
File evolutionvisualization
5
CVSgrab
Color - encodes a file metric computed on a given
version E.g. File type, Version author, Size
increase, Release ID,Specific text, Activity
6
CVSgrab Example
Color encodes version author
Time
Files
7
CVSscan
if self.bShowClusterColor glBlendFunc(GL_ONE_MINU
S_... glEnable(GL_BLEND) yPos 0
bSwitch True for i in lCushionMap if
bSwitch cushions.drawColorCl.. else
cushions.drawColorClus bSwitch not bSwitch
yPos yPos i glDisable(GL_BLEND)
cushion clusters glBlendFunc(GL_ZERO,GL_...
glEnable(GL_BLEND) yPos 0 bSwitch True

Color - encodes a line metric
8
CVSscan
Line layout
9
CVSscan Example
Color encodes content
10
Conclusions
  • Toolset for visualization of software evolution
    CVSgrab CVSscan
  • Exploit source code history from CVS as main
    source for getting insight in the structure and
    development process
  • Complements existing reverse engineering and
    code navigation tools
  • Outlook Improve the data analysis step, find
    mechanisms for annotation management, improve
    selection mechanisms, enhance the visualization
    with new features, extend the data acquisition
    sources and types

www.win.tue.nl/lvoinea/VCN.html
Write a Comment
User Comments (0)
About PowerShow.com