Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Taming the IDE 

with fine-grained interaction data
Roberto Minelli, Andrea Mocci,

Romain Robbes, Michele Lanza
REVEAL @ ...
Footprints: History-rich tools for information foraging
A. Wexelblat, P. Maes
SIGCHI 1999, pp. 270–277
“The information pa...
An exploratory study of how developers seek, relate, and collect
relevant information during software maintenance tasks
A....
tabs-based
tabs-based
windows-based
tabs-based
windows-based novel paradigms
Autumn Leaves: Curing the Window Plague in IDEs
D. Roethlisberger, O. Nierstrasz, S. Ducasse
WCRE 2009, 237–246
“Developer...
How chaotic
is the UI of the IDE?
How chaotic
is the UI of the IDE?
Nonlinear dynamics and chaos.
J. M. T. Thompson and H. B. Stewart
John Wiley & Sons, 2002
DISCLAIMER



Our “chaos” has no...
developer IDE
developer IDE
navigate
developer IDE
edit
developer IDE
inspect
developer IDE
user input
developer IDE
user interface
developer
navigate
userinterface
userinput
edit
inspect
IDE
interaction
data
developer
navigate
userinterface
userinput
edit
inspect
IDE
I know what you did last summer: 

An investigation of how dev...
1,631 sessions
17 developers
28' 22" avg. session duration
Dataset
1,631 sessions
17 developers
28' 22" avg. session duration
>770h total time
40,140 # of windows
Dataset
1,631 sessions
17 developers
28' 22" avg. session duration
>770h total time
40,140 # of windows
> 102h User Interface Time...
How chaotic
is the UI of the IDE?
Space Occupancy Metrics
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space Metrics
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Space Occupancy Metrics
Screen
Space
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
High
Overlapping
(Depth: 4)
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
High
Overlapping
(Depth: 4)
Free
Space
Space Occupancy Metrics
Focus
Space
Scree...
Space Occupancy Metrics
+ +
+ +
+ +
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
Space Metrics Overlapping Metrics
Weig...
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
96.83%
Space Metrics Overlapping Metri...
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
96.83%
20.95%
2.76
69.05%
Space Metric...
Chaos Levels
Chaos Levels
Comfy Ok
Chaos Levels
Comfy Ok HellMess
Chaos Levels
Comfy Ok HellMess
100%0%
: Needed Space
Chaos Levels
Comfy Ok HellMess
100%0%
: Needed Space
200%75%
Chaos Levels
Comfy Ok HellMess
: Results
11%
21%
17%
51%
51.04% 16.98% 21.11% 10.88%
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
so
what?
Correlation Analysis I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A....
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli...
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli...
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli...
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli...
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
…and this impacts both 

UI and under...
How can we tame it?
Main IDE Windows
Main IDE Windows
Code browser
source code
Main IDE Windows
Code browser Debugger
source code
Main IDE Windows
Code browser Debugger Send / Implement
source code
Taming Strategies
Elision Layout
Elision Strategy
Elision Strategy
Layout Strategy
Screen
Space
Layout Strategy
Screen
Space
Taming Strategies in Practice
Screen
Space
Window
in focus
Taming Strategies in Practice
Elision
Screen
Space
Window
in focus
Taming Strategies in Practice
Layout
Screen
Space
Window
in focus
Chaos Levels
Comfy Ok HellMess
: Results
11%
21%
17%
51%
51.04% 16.98% 21.11% 10.88%
Chaos Levels
Comfy Ok HellMess
: Results
+17.73% -1.35% -8.08% -8.30%
3%
13%
16%
69%
11%
21%
17%
51%
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
@robertominelli
Taming the IDE 

with fine-grained interaction data
Roberto Minelli, Andrea Mocci,

Romain Robbes, Michele...
Taming the IDE with Fine-Grained Interaction Data
Prochain SlideShare
Chargement dans…5
×
Prochain SlideShare
Visualizing the Evolution of Working Sets
Suivant
Télécharger pour lire hors ligne et voir en mode plein écran

0

Partager

Télécharger pour lire hors ligne

Taming the IDE with Fine-Grained Interaction Data

Télécharger pour lire hors ligne

Integrated Development Environments (IDEs) lack effective support to browse complex relationships between source code elements. As a result, developers are often forced to exploit multiple user interface components at the same time, bringing the IDE into a complex, "chaotic" state. Keeping track of these relationships demands increased source code navigation and cognitive load, leading to productivity deficits documented in observational studies. Beyond small-scale studies, the amount and nature of the chaos experienced by developers in the wild is unclear, and more importantly it is unclear how to tame it.

Based on a dataset of fine-grained interaction data, we propose several metrics to characterize and quantify the ``level of chaos'' of an IDE. Our results suggest that developers spend, on average, more than 30\% of their time in a chaotic environment, and that this may affect their productivity. To support developers, we devise and evaluate simple strategies that automatically alter the UI of the IDE. We find that even simple strategies may considerably reduce the level of chaos both in terms of effective space occupancy and time spent in a chaotic environment.

  • Soyez le premier à aimer ceci

Taming the IDE with Fine-Grained Interaction Data

  1. 1. Taming the IDE 
 with fine-grained interaction data Roberto Minelli, Andrea Mocci,
 Romain Robbes, Michele Lanza REVEAL @ Faculty of Informatics – Università della Svizzera italiana PLEIAD @ Departamento de Ciencias de la Computación – University of Chile @robertominelli
  2. 2. Footprints: History-rich tools for information foraging A. Wexelblat, P. Maes SIGCHI 1999, pp. 270–277 “The information path obtained from navigation in an information space reveals the user’s mental model of the system.”
  3. 3. An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks A. J. Ko, B. A. Myers, M. J. Coblenz, H. H. Aung IEEE TSE 2006, vol. 32, no. 12, pp. 971–987 “Developers spend 35% of their time navigating the source code in search 
 for information.”
  4. 4. tabs-based
  5. 5. tabs-based windows-based
  6. 6. tabs-based windows-based novel paradigms
  7. 7. Autumn Leaves: Curing the Window Plague in IDEs D. Roethlisberger, O. Nierstrasz, S. Ducasse WCRE 2009, 237–246 “Developers are forced to open views on numerous source artifacts […], leading to a crowded workspace.”
  8. 8. How chaotic is the UI of the IDE?
  9. 9. How chaotic is the UI of the IDE?
  10. 10. Nonlinear dynamics and chaos. J. M. T. Thompson and H. B. Stewart John Wiley & Sons, 2002 DISCLAIMER
 
 Our “chaos” has nothing to do with “deterministic chaos”
  11. 11. developer IDE
  12. 12. developer IDE navigate
  13. 13. developer IDE edit
  14. 14. developer IDE inspect
  15. 15. developer IDE user input
  16. 16. developer IDE user interface
  17. 17. developer navigate userinterface userinput edit inspect IDE interaction data
  18. 18. developer navigate userinterface userinput edit inspect IDE I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 DFlow interaction data
  19. 19. 1,631 sessions 17 developers 28' 22" avg. session duration Dataset
  20. 20. 1,631 sessions 17 developers 28' 22" avg. session duration >770h total time 40,140 # of windows Dataset
  21. 21. 1,631 sessions 17 developers 28' 22" avg. session duration >770h total time 40,140 # of windows > 102h User Interface Time > 595h Understanding Time Dataset I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35
  22. 22. How chaotic is the UI of the IDE?
  23. 23. Space Occupancy Metrics
  24. 24. Space Occupancy Metrics Occupied Free Focus Needed Space Metrics
  25. 25. Space Occupancy Metrics Occupied Free Focus Needed Space Depth Space Metrics Overlapping Metrics Weighted
  26. 26. Space Occupancy Metrics
  27. 27. Space Occupancy Metrics Screen Space
  28. 28. Free Space Space Occupancy Metrics Screen Space
  29. 29. No Overlapping Free Space Space Occupancy Metrics Screen Space
  30. 30. No Overlapping Low Overlapping (Depth: 2) Free Space Space Occupancy Metrics Screen Space
  31. 31. No Overlapping Low Overlapping (Depth: 2) High Overlapping (Depth: 4) Free Space Space Occupancy Metrics Screen Space
  32. 32. No Overlapping Low Overlapping (Depth: 2) High Overlapping (Depth: 4) Free Space Space Occupancy Metrics Focus Space Screen Space
  33. 33. Space Occupancy Metrics + + + + + +
  34. 34. Space Occupancy Metrics Occupied Free Focus Needed Space Depth Space Metrics Overlapping Metrics Weighted
  35. 35. Space Occupancy Metrics Occupied Free Focus Needed Space Depth 48.22% 51.78% Space Metrics Overlapping Metrics Weighted
  36. 36. Space Occupancy Metrics Occupied Free Focus Needed Space Depth 48.22% 51.78% 32.66% Space Metrics Overlapping Metrics Weighted
  37. 37. Space Occupancy Metrics Occupied Free Focus Needed Space Depth 48.22% 51.78% 32.66% 96.83% Space Metrics Overlapping Metrics Weighted
  38. 38. Space Occupancy Metrics Occupied Free Focus Needed Space Depth 48.22% 51.78% 32.66% 96.83% 20.95% 2.76 69.05% Space Metrics Overlapping Metrics Weighted
  39. 39. Chaos Levels
  40. 40. Chaos Levels Comfy Ok
  41. 41. Chaos Levels Comfy Ok HellMess
  42. 42. Chaos Levels Comfy Ok HellMess 100%0% : Needed Space
  43. 43. Chaos Levels Comfy Ok HellMess 100%0% : Needed Space 200%75%
  44. 44. Chaos Levels Comfy Ok HellMess : Results 11% 21% 17% 51% 51.04% 16.98% 21.11% 10.88%
  45. 45. Developers spend more than 30% of their time 
 in highly chaotic IDE configurations…
  46. 46. Developers spend more than 30% of their time 
 in highly chaotic IDE configurations… so what?
  47. 47. Correlation Analysis I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 5% 8% 14% 70%
  48. 48. Correlation Analysis vs. I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 11% 21% 17% 51% Chaos Levels
  49. 49. Correlation Analysis vs. I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 Comfy Ok -0.34 -0.04 11% 21% 17% 51% Chaos Levels not statistically significant statistically significant
  50. 50. Correlation Analysis vs. I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 Comfy Ok Mess Hell -0.34 -0.04 0.16 0.42 11% 21% 17% 51% Chaos Levels not statistically significant statistically significant
  51. 51. Correlation Analysis vs. I know what you did last summer: 
 An investigation of how developers spend their time R. Minelli, A. Mocci, M. Lanza ICPC 2015, pp. 25–35 Comfy Ok Mess Hell -0.34 -0.04 0.16 0.42 Comfy Ok Mess Hell -0.27 0.05 0.11 0.26 11% 21% 17% 51% Chaos Levels not statistically significant statistically significant
  52. 52. Developers spend more than 30% of their time 
 in highly chaotic IDE configurations…
  53. 53. Developers spend more than 30% of their time 
 in highly chaotic IDE configurations… …and this impacts both 
 UI and understanding time!
  54. 54. How can we tame it?
  55. 55. Main IDE Windows
  56. 56. Main IDE Windows Code browser source code
  57. 57. Main IDE Windows Code browser Debugger source code
  58. 58. Main IDE Windows Code browser Debugger Send / Implement source code
  59. 59. Taming Strategies Elision Layout
  60. 60. Elision Strategy
  61. 61. Elision Strategy
  62. 62. Layout Strategy Screen Space
  63. 63. Layout Strategy Screen Space
  64. 64. Taming Strategies in Practice Screen Space Window in focus
  65. 65. Taming Strategies in Practice Elision Screen Space Window in focus
  66. 66. Taming Strategies in Practice Layout Screen Space Window in focus
  67. 67. Chaos Levels Comfy Ok HellMess : Results 11% 21% 17% 51% 51.04% 16.98% 21.11% 10.88%
  68. 68. Chaos Levels Comfy Ok HellMess : Results +17.73% -1.35% -8.08% -8.30% 3% 13% 16% 69% 11% 21% 17% 51%
  69. 69. Taming the IDE 
 with fine-grained interaction data
  70. 70. Taming the IDE 
 with fine-grained interaction data
  71. 71. Taming the IDE 
 with fine-grained interaction data
  72. 72. Taming the IDE 
 with fine-grained interaction data
  73. 73. Taming the IDE 
 with fine-grained interaction data
  74. 74. @robertominelli Taming the IDE 
 with fine-grained interaction data Roberto Minelli, Andrea Mocci,
 Romain Robbes, Michele Lanza

Integrated Development Environments (IDEs) lack effective support to browse complex relationships between source code elements. As a result, developers are often forced to exploit multiple user interface components at the same time, bringing the IDE into a complex, "chaotic" state. Keeping track of these relationships demands increased source code navigation and cognitive load, leading to productivity deficits documented in observational studies. Beyond small-scale studies, the amount and nature of the chaos experienced by developers in the wild is unclear, and more importantly it is unclear how to tame it. Based on a dataset of fine-grained interaction data, we propose several metrics to characterize and quantify the ``level of chaos'' of an IDE. Our results suggest that developers spend, on average, more than 30\% of their time in a chaotic environment, and that this may affect their productivity. To support developers, we devise and evaluate simple strategies that automatically alter the UI of the IDE. We find that even simple strategies may considerably reduce the level of chaos both in terms of effective space occupancy and time spent in a chaotic environment.

Vues

Nombre de vues

250

Sur Slideshare

0

À partir des intégrations

0

Nombre d'intégrations

4

Actions

Téléchargements

5

Partages

0

Commentaires

0

Mentions J'aime

0

×