visual exploration of large-scale evolving software

Post on 21-Oct-2014

2.130 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

The presentation I gave at the ICSE 2009 doctoral consortium. Squeezing 3 years of work in a 10 minutes presentation is definitely a valuable exercise.

TRANSCRIPT

Visual Explorationof Large-Scale Evolving Software

Richard Wettel

University of Lugano, Switzerland

Supervisor: Michele Lanza

expensive

understanding software is

software systems are

software systems are

large

software systems are

largecomplex

software systems are

largecomplex

evolving

“Software is intangible, having no physical shape or size”.

[Ball & Eick, IEEE Computer 1996]

seeingis understanding

Visualization makes software more tangible, using metaphors.

Visualization makes software more tangible, using metaphors.

The use of a citymetaphor helps building a consistent mental model of software systems.

research hypothesis

the city metaphor

Richard Wettel, Michele Lanza. Visualizing Software Systems as Cities. In Proc. of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software for Understanding and Analysis), pp. 92 - 99, IEEE CS Press, 2007.

the city metaphor

Richard Wettel, Michele Lanza. Visualizing Software Systems as Cities. In Proc. of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software for Understanding and Analysis), pp. 92 - 99, IEEE CS Press, 2007.

class building

package district

the city metaphor

Richard Wettel, Michele Lanza. Visualizing Software Systems as Cities. In Proc. of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software for Understanding and Analysis), pp. 92 - 99, IEEE CS Press, 2007.

class building

package district

the city metaphor

Richard Wettel, Michele Lanza. Visualizing Software Systems as Cities. In Proc. of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software for Understanding and Analysis), pp. 92 - 99, IEEE CS Press, 2007.

class building

package district

number of methods (NOM) height

number of attributes (NOA) base size

the city metaphor

Richard Wettel, Michele Lanza. Visualizing Software Systems as Cities. In Proc. of VISSOFT 2007 (4th IEEE International Workshop on Visualizing Software for Understanding and Analysis), pp. 92 - 99, IEEE CS Press, 2007.

class building

package district

number of methods (NOM) height

number of attributes (NOA) base size

nesting level color

ArgoUML~2‘500 classes~150 packages

Application 1: program comprehension

ArgoUML~2‘500 classes~150 packages

Richard Wettel, Michele Lanza. Program Comprehension through Software Habitability. In Proceedings of ICPC 2007 (15th IEEE International Conference on Program Comprehension), pp. 231 - 240, IEEE Computer Society, 2007.

Application 1: program comprehension

ArgoUML~2‘500 classes~150 packages

massive buildings

Richard Wettel, Michele Lanza. Program Comprehension through Software Habitability. In Proceedings of ICPC 2007 (15th IEEE International Conference on Program Comprehension), pp. 231 - 240, IEEE Computer Society, 2007.

Application 1: program comprehension

ArgoUML~2‘500 classes~150 packages

skyscrapersmassive buildings

Richard Wettel, Michele Lanza. Program Comprehension through Software Habitability. In Proceedings of ICPC 2007 (15th IEEE International Conference on Program Comprehension), pp. 231 - 240, IEEE Computer Society, 2007.

Application 1: program comprehension

ArgoUML~2‘500 classes~150 packages

skyscrapersmassive buildings

parking lotsRichard Wettel, Michele Lanza. Program Comprehension through Software Habitability.

In Proceedings of ICPC 2007 (15th IEEE International Conference on Program Comprehension), pp. 231 - 240, IEEE Computer Society, 2007.

Application 1: program comprehension

ArgoUML~2‘500 classes~150 packages

skyscrapers

houses

massive buildings

parking lotsRichard Wettel, Michele Lanza. Program Comprehension through Software Habitability.

In Proceedings of ICPC 2007 (15th IEEE International Conference on Program Comprehension), pp. 231 - 240, IEEE Computer Society, 2007.

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

System Language NOP NOC kLOC

ArgoUML Java 141 2‘442 143

Azureus Java 457 4’734 274

iText Java 149 1’250 80

Jmol Java 105 1’032 85

JDK 1.5 Java 137 4’715 160

Moose Smalltalk 278 994 35

ScumVM C++ 17 1’331 80

case studies

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

0.10.1 0.12 0.14 0.16 0.18.1 0.20 0.22 0.24

2002 2003 2004 2005 2006 2007

Richard Wettel, Michele Lanza. Visual Exploration of Large-Scale System Evolution. In Proceedings of WCRE 2008 (15th Working Conference on Reverse Engineering), pp. 219 - 228, IEEE Computer Society, 2008.

ArgoUML8 major releases~5 years

Application 2: evolution analysis

Richard Wettel, Michele Lanza. Visually Localizing Design Problems with Disharmony Maps. In Proceedings of Softvis 2008 (4th ACM International Symposium on Software Visualization), pp. 155 - 164, ACM Press, 2008.

ArgoUML

Application 3: design assessment

Richard Wettel, Michele Lanza. Visually Localizing Design Problems with Disharmony Maps. In Proceedings of Softvis 2008 (4th ACM International Symposium on Software Visualization), pp. 155 - 164, ACM Press, 2008.

ArgoUML

Application 3: design assessment

Brain classes 8

God classes 30

Brain & God classes 6

Data classes 17

tool support

Richard Wettel, Michele Lanza. CodeCity: 3D Visualization of Large-Scale Software. In companion Proceedings of ICSE 2008 (30th International Conference on Software Engineering), Research Demonstration Track, pp. 921 - 922, ACM Press, 2008.

Richard Wettel, Michele Lanza. CodeCity. In Proceedings of WASDeTT 2008 (1st International Workshop on Advanced Software Development Tools and Techniques), 2008.

tool support

Richard Wettel. Scripting 3D Visualizations with CodeCity In Proceedings of FAMOOSr 2008 (2nd Workshop on FAMIX and Moose in Reengineering), 2008.

Richard Wettel, Michele Lanza. CodeCity: 3D Visualization of Large-Scale Software. In companion Proceedings of ICSE 2008 (30th International Conference on Software Engineering), Research Demonstration Track, pp. 921 - 922, ACM Press, 2008.

Richard Wettel, Michele Lanza. CodeCity. In Proceedings of WASDeTT 2008 (1st International Workshop on Advanced Software Development Tools and Techniques), 2008.

http://www.inf.unisi.ch/phd/wettel/codecity.html

tool support

Richard Wettel. Scripting 3D Visualizations with CodeCity In Proceedings of FAMOOSr 2008 (2nd Workshop on FAMIX and Moose in Reengineering), 2008.

Richard Wettel, Michele Lanza. CodeCity: 3D Visualization of Large-Scale Software. In companion Proceedings of ICSE 2008 (30th International Conference on Software Engineering), Research Demonstration Track, pp. 921 - 922, ACM Press, 2008.

Richard Wettel, Michele Lanza. CodeCity. In Proceedings of WASDeTT 2008 (1st International Workshop on Advanced Software Development Tools and Techniques), 2008.

current status

current status

current status

Prof. Rainer Koschkeexternal member

Prof. Michele Lanzaadvisor

Prof. André van der Hoekexternal member

Prof. Matthias Hauswirthinternal member

Prof. Cesare Pautassointernal member

current status

Prof. Rainer Koschkeexternal member

Prof. Michele Lanzaadvisor

Prof. André van der Hoekexternal member

Prof. Matthias Hauswirthinternal member

Prof. Cesare Pautassointernal member

current status

Prof. Rainer Koschkeexternal member

Prof. Michele Lanzaadvisor

Prof. André van der Hoekexternal member

Prof. Matthias Hauswirthinternal member

Prof. Cesare Pautassointernal member

current status: 10 months to go

contributions remaining work

1city metaphor VISSOFT 2007

contributions remaining work

1city metaphor VISSOFT 2007

2applications

contributions remaining work

1city metaphor VISSOFT 2007

2applications‣program comprehension ICPC 2007

contributions remaining work

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

ICPC 2007

SoftVis 2008

contributions remaining work

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

contributions remaining work

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

2 experimentalvalidation

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

2 experimentalvalidation

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

2 experimentalvalidation

Oct.2009

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

2 experimentalvalidation

Oct.2009

Mar.2010

writing

1city metaphor VISSOFT 2007

2applications‣program comprehension

‣evolution analysis

‣design assessment

ICPC 2007

WCRE 2008

SoftVis 2008

3tool ICSE 2008 (demo)

WASDeTT 2008

FAMOOSr 2008

contributions remaining work

1 relationships

2 experimentalvalidation

Apr. 2010

Oct.2009

Mar.2010

writing

defense

Richard Wettelhttp://www.inf.unisi.ch/phd/wettel

http://creativecommons.org/licenses/by/3.0/

top related