Orchestrating Change: An Artistic Representation of Software Evolution

513 views
424 views

Published on

Several visualization tools have been proposed to highlight interesting software evolution phenomena. These tools help practitioners to navigate large and complex software systems, and also support researchers in studying software evolution. However, little work has explored the use of sound in the context of software evolution. In this paper, we propose the use of musical interpretation to support exploration of software evolution data. In order to generate music inspired by software evolution, we use parameter-based sonification, i.e., a mapping of dataset characteristics to sound. Our approach yields musical scores that can be played synthetically or by a symphony orchestra. In designing our approach, we address three challenges: (1) the generated music must be aesthetically pleasing, (2) the generated music must accurately reflect the changes that have occurred, and (3) a small group of musicians must be able to impersonate a large development team. We assess the feasibility of our approach using historical data from Eclipse, which yields promising results.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
513
On SlideShare
0
From Embeds
0
Number of Embeds
97
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Orchestrating Change: An Artistic Representation of Software Evolution

  1. 1. Orchestrating Change An Artistic Representation of Software Evolution Shane McIntosh SOFTWARE ANALYSIS & INTELLIGENCE LAB Katie Legere Ahmed E. Hassan @shane_mcintosh shanemcintosh@acm.org
  2. 2. What does software sound like? …And it doesn’t sound awful !2
  3. 3. Sonification What does software sound like? Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] …And it doesn’t sound awful !2
  4. 4. Sonification What does software sound like? Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension …And it doesn’t sound awful !2
  5. 5. Sonification What does software sound like? Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension When bugs sing P.Vickers, J. L. Alty [IWC 2002] …And it doesn’t sound awful !2
  6. 6. Sonification What does software sound like? When bugs sing P.Vickers, J. L. Alty [IWC 2002] Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension Software Visualization with Audio Supported Cognitive Glyphs S. Boccuzzo and H. Gall [ICSM 2008] …And it doesn’t sound awful !2
  7. 7. Sonification What does software sound like? When bugs sing P.Vickers, J. L. Alty [IWC 2002] Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension Software Visualization with Audio Supported Cognitive Glyphs S. Boccuzzo and H. Gall [ICSM 2008] Sonification Design Guidelines to Enhance Program Comprehension K. Hussein, E. Tilevich, I. Bukvic, SB. Kim [ICPC 2009] …And it doesn’t sound awful !2
  8. 8. Sonification What does software sound like? When bugs sing P.Vickers, J. L. Alty [IWC 2002] Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension Software Visualization with Audio Supported Cognitive Glyphs S. Boccuzzo and H. Gall [ICSM 2008] Sonification Design Guidelines to Enhance Program Comprehension K. Hussein, E. Tilevich, I. Bukvic, SB. Kim [ICPC 2009] …And it doesn’t sound appealing? Can software evolutionsound awful !2
  9. 9. Sonification What does software sound like? When bugs sing P.Vickers, J. L. Alty [IWC 2002] Taxonomy and definitions for sonification and auditory display T. Hermann [ICAD 2008] Program Comprehension Software Visualization with Audio Supported Cognitive Glyphs S. Boccuzzo and H. Gall [ICSM 2008] Sonification Design Guidelines to Enhance Program Comprehension K. Hussein, E. Tilevich, I. Bukvic, SB. Kim [ICPC 2009] …And it doesn’t sound appealing? Can software evolutionsound awful !2
  10. 10. Why in the (world) should we care about beauty? !3
  11. 11. Why in the (world) should we care about beauty? !3
  12. 12. Why in the (world) should we care about beauty? Open source projects need to raise funds for ! infrastructure and basic personnel !3
  13. 13. Why in the (world) should we care about beauty? Open source projects need to raise funds for ! infrastructure and basic personnel $20.00 !3
  14. 14. Why in the (world) should we care about beauty? Open source projects need to raise funds for ! infrastructure and basic personnel $20.00 $5.00 !3
  15. 15. Why in the (world) should we care about beauty? Open source projects need to raise funds for ! infrastructure and basic personnel How about: The Sounds of Firefox $20.00 $??? !3 $5.00
  16. 16. Why not have open! source concerts? !4
  17. 17. Why not have open! source concerts? !4
  18. 18. “Sonifying” Software Evolution:! Three dimensions !5
  19. 19. !5 M2 M1 Module “Sonifying” Software Evolution:! Three dimensions
  20. 20. M2 M1 Module “Sonifying” Software Evolution:! Three dimensions T1 !5 T2 T3 Time
  21. 21. “Sonifying” Software Evolution:! Three dimensions M2 M1 Module Developers T1 !5 T2 T3 Time
  22. 22. Modules & Motifs Module Motif M1 M2 !6
  23. 23. Modules & Motifs Module Motif M1 M2 !6
  24. 24. Modules & Motifs Module Motif M1 M2 !6
  25. 25. Modules & Motifs Module Motif M1 M2 !6
  26. 26. Modules & Motifs Module Motif M1 M2 !6
  27. 27. M2 M1 Module Time Periods & Measures T1 T2 !7
  28. 28. M2 M1 Module Time Periods & Measures T1 T2 !7
  29. 29. Developers & Timbre !8
  30. 30. “Sonifying” Software Evolution! Three dimensions M2 M1 Module Developers T2 T3 Time T1 !9
  31. 31. “Sonifying” Software Evolution Three challenges M2 M1 Module Developers T1 !10 T2 T3 Time
  32. 32. Musicality “Sonifying” Software Evolution Three challenges M2 M1 Module Developers T1 !10 T2 T3 Time
  33. 33. Musicality “Sonifying” Software Evolution Three challenges Representativeness M2 M1 Module Developers T1 !10 T2 T3 Time
  34. 34. Musicality “Sonifying” Software Evolution Three challenges Representativeness M2 Cost-Effectiveness M1 Module Developers T1 !10 T2 T3 Time
  35. 35. Challenge - Musicality! Select motifs from the classical era !11
  36. 36. Challenge - Representativeness! Musicians select granularity and tempo ! Tempo Fast? Medium-pace? Slow? Granularity Commits? Days? Months? !12
  37. 37. ! Challenge - Representativeness! Consult an expert! Musicians select granularity and tempo ! Tempo Fast? Medium-pace? Slow? Granularity Commits? Days? Months? !12
  38. 38. Challenge - Cost-Effectiveness! Infrequent contributors map to percussion !13
  39. 39. Challenge - Cost-Effectiveness! Infrequent contributors map to percussion !13
  40. 40. Eclipse Feasibility Study Foundational Period Maintenance Period May 2001 - Oct 2002 Jan 2005 - Dec 2005 261 commits 315 commits 14 committers 24 committers 9 modules 27 modules !14
  41. 41. Eclipse Foundational Period! Bursty Periods of Activity !15
  42. 42. Eclipse Foundational Period! Bursty Periods of Activity !15
  43. 43. Eclipse Maintenance Period! Consonance vs. Dissonance !16
  44. 44. Eclipse Maintenance Period! Consonance vs. Dissonance Frequent cochange incident !16
  45. 45. Eclipse Maintenance Period! Consonance vs. Dissonance Frequent cochange incident Rare cochange incident !16
  46. 46. @shane_mcintosh shanemcintosh@acm.org

×