Moose Overview

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite & 1 Group

    Moose Overview - Presentation Transcript

    1. Tudor Gîrba www.tudorgirba.com
    2. 1946
    3. 1956
    4. 1956
    5. 1956
    6. 1956 2006
    7. 1956 2006
    8. 1956 2006
    9. 1956 2006 ?
    10. Software is complex. 29% Succeeded 18% Failed 53% Challenged The Standish Group, 2004
    11. How large is your project?
    12. How large is your project? 1’000’000 lines of code
    13. How large is your project? 1’000’000 lines of code * 2 = 2’000’000 seconds
    14. How large is your project? 1’000’000 lines of code * 2 = 2’000’000 seconds / 3600 = 560 hours
    15. How large is your project? 1’000’000 lines of code * 2 = 2’000’000 seconds / 3600 = 560 hours / 8 = 70 days
    16. How large is your project? 1’000’000 lines of code * 2 = 2’000’000 seconds / 3600 = 560 hours / 8 = 70 days / 20 = 3 months
    17. Software development is more than forward engineering. Fo rw ar d en gin ee rin g { { { { { { } { { Actual development } } } } } } } } {
    18. Reverse engineering is needed to make sense of the code. Fo rw ing ar r ee d en gin gin n e ee se rin er g v Re { { { { { { } { { Actual development } } } } } } } } {
    19. Reverse engineering is creating high level views. ing r ee in ng e e s er ev R { { { { } } } } } {
    20. McCabe = 21 NOM 0 = 102 ,00 3 75 = C LO ... Metrics Queries Visualizations { { { { } } } } } {
    21. Metrics compress the system into numbers. 0 Cyclomatic complexity = 21 ,00 3 75 NOM = = 102 OC L { { { { } } } } } {
    22. Queries reduce the analysis space. { { { { } } } } } {
    23. Visualization compresses the system into pictures. { { { { } } } } } {
    24. 70% of our sensors are dedicated to vision.
    25. How many groups do you see?
    26. How many groups do you see?
    27. How many groups do you see?
    28. How many groups do you see?
    29. CodeCity Wettel, Lanza, 07 shows where your code lives.
    30. Distribution Map shows how properties spread. Ducasse etal, 06
    31. Polymetric views show up to 5 metrics. Lanza etal, 03 Width metric Height metric Position metrics Color metric
    32. System Complexity shows class hierarchies. attributes methods lines
    33. Class Blueprint shows class internals. Ducasse, Lanza, 05 Initialize Interface Internal Accessor Attribute invocation and access direction
    34. Class Blueprint shows class internals.
    35. Visualization compresses the system into pictures. { { { { } } } } } {
    36. McCabe = 21 NOM 0 = 102 ,00 3 75 = C LO ... Metrics Queries Visualizations { { { { } } } } } {
    37. Duplication detection McCabe = 21 Evolution analysis NOM 0 = 102 ,00 3 Dynamic analysis 75 = C LO ... Semantic analysis Metrics Queries Visualizations { { { { } } } } } {
    38. Moose provides an agile visualization scripting. Meyer etal, 2005 view := ViewRenderer new. view borderedRectangleShape. view nodes: classes forEach: [:each | view nodes: each methods. view gridLayout ]. view edgesFrom: #superclass. view treeLayout. view open.
    39. CVS hides the past
    40. But, who did this?
    41. We color the files according to the authors.
    42. Still, alphabetical order is no order.
    43. Ownership Map reveals developer patterns. Girba etal, 2005
    44. FAMIX Meta UI Mondrian EyeSee Repository Core
    45. FAMIX Meta UI Mondrian EyeSee Repository Core Java iPlasma MSE Smalltalk C++
    46. Chronia Cook CodeCity DynaMoose Hapax Softwarenaut SmallDude FAMIX Meta UI Mondrian EyeSee Repository Core Java iPlasma MSE Smalltalk C++
    47. CVS J-Wiretap MSE Source Chronia Cook CodeCity DynaMoose Hapax Softwarenaut SmallDude FAMIX Meta UI Mondrian EyeSee Repository Core Java iPlasma MSE Smalltalk C++
    48. CVS J-Wiretap MSE Source ... Concept BugsLife Clustering Subversion Analysis Chronia Cook CodeCity DynaMoose Hapax Softwarenaut SmallDude FAMIX Meta UI Mondrian EyeSee Repository Core Java iPlasma MSE Smalltalk C++
    49. Moose is a collective effort
    50. Current Team Previous Team Stéphane Ducasse Serge Demeyer Tudor Gîrba Michele Lanza Adrian Kuhn Sander Tichelaar Current Contributors Previous Contributors Hani Abdeen Ilham Alloui Tobias Aebi Frank Buchli Gabriela Arevalo Mihai Balint Thomas Bühler Calogero Butera Philipp Bunge Marco D’Ambros Daniel Frey Georges Golomingi Orla Greevy Markus Hofstetter David Gurtner Reinout Heeck Matthias Junker Adrian Lienhard Markus Kobel Michael Locher Martin von Löwis Mircea Lungu Pietro Malorgio Michael Meer Michael Meyer Damien Pollet Laura Ponisio Daniel Ratiu Sara Sellos Lucas Streit Matthias Rieger Azadeh Razavizadeh Toon Verwaest Roel Wuyts Andreas Schlapbach Daniel Schweizer Richard Wettel Mauricio Seeberger Lukas Steiger Daniele Talerico Herve Verjus Violeta Voinescu.
    51. Current Team Previous Team Stéphane Ducasse Serge Demeyer Tudor Gîrba Michele Lanza Adrian Kuhn Sander Tichelaar Current Contributors menPrevious Contributors ~ 100 years Hani Abdeen Ilham Alloui Tobias Aebi Frank Buchli Gabriela Arevalo Mihai Balint Thomas Bühler Calogero Butera Philipp Bunge Marco D’Ambros Daniel Frey Georges Golomingi Orla Greevy Markus Hofstetter David Gurtner Reinout Heeck Matthias Junker Adrian Lienhard Markus Kobel Michael Locher Martin von Löwis Mircea Lungu Pietro Malorgio Michael Meer Michael Meyer Damien Pollet Laura Ponisio Daniel Ratiu Sara Sellos Lucas Streit Matthias Rieger Azadeh Razavizadeh Toon Verwaest Roel Wuyts Andreas Schlapbach Daniel Schweizer Richard Wettel Mauricio Seeberger Lukas Steiger Daniele Talerico Herve Verjus Violeta Voinescu.
    52. Tudor Gîrba www.tudorgirba.com
    53. Tudor Gîrba www.tudorgirba.com creativecommons.org/licenses/by/3.0/

    + Tudor GirbaTudor Girba, 3 years ago

    custom

    1872 views, 1 favs, 4 embeds more stats

    More info about this document

    CC Attribution License

    Go to text version

    • Total Views 1872
      • 1673 on SlideShare
      • 199 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 36
    Most viewed embeds
    • 194 views on http://www.tudorgirba.com
    • 2 views on http://localhost:8008
    • 2 views on http://localhost:8080
    • 1 views on http://localhost:8001

    more

    All embeds
    • 194 views on http://www.tudorgirba.com
    • 2 views on http://localhost:8008
    • 2 views on http://localhost:8080
    • 1 views on http://localhost:8001

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Groups / Events