Date post: | 21-Oct-2014 |
Category: |
Technology |
View: | 2,127 times |
Download: | 0 times |
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/