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.
Measuring Navigation

Efficiency in the IDE
Roberto Minelli, Andrea Mocci, Michele Lanza
REVEAL @ Faculty of Informatics

...
What is Interaction Data?
developer IDE
What is Interaction Data?
developer IDE
navigate
What is Interaction Data?
developer IDE
navigate
edit
What is Interaction Data?
developer IDE
navigate
edit
inspect
What is Interaction Data?
developer IDE
navigate
userinput
edit
inspect
What is Interaction Data?
developer IDE
navigate
userinterface
userinput
edit
inspect
What is Interaction Data?
developer IDE
navigate
userinterface
userinput
edit
inspect
interaction
data
DFlow: Interaction Profiler
developer IDE
navigate
userinterface
userinput
edit
inspect
interaction
data
DFlow
I know what...
DFlow: Conceptual Model
DFlow: Conceptual Model
Event
Timestamp
Window ID
DFlow: Conceptual Model
Entities
Meta Event
Navigation Event Inspect Event Edit Event
Event
Timestamp
Window ID
DFlow: Conceptual Model
Position
User Input Event
Attributes
Mouse Event
Key Combination
Keystroke Event
Mouse Moved Mouse...
DFlow: Conceptual Model
Position
User Input Event
Attributes
Mouse Event
Key Combination
Keystroke Event
Mouse Moved Mouse...
Our Dataset
765 sessions
6 developers
211k total events
>500 h total time
40 min avg. session duration
214 (29) navigation...
Navigation Efficiency
ideal navigation effort
real navigation effort
Navigation Efficiency
ideal navigation effort
real navigation effort
Navigation Efficiency
Number of
Navigation Events
ideal navigation effort
real navigation effort
Navigation Efficiency
Number of
Navigation Events
?
Ideal Navigation Effort
The sum of the navigation costs

needed to reach the edited entities
Ideal Navigation Effort
The sum of the navigation costs

needed to reach the edited entities
Navigating Source Code
Navigating Source Code
package
Navigating Source Code
package class
Navigating Source Code
package class protocol
Navigating Source Code
package class methodprotocol
source
code
Navigating Source Code
package class methodprotocol
cost = 1 cost = 2 cost = 3 cost = 4
Navigating Source Code (alternative)
Navigating Source Code (alternative)
cost = 1
Ideal Navigation Effort
The sum of the navigation costs

needed to reach the edited entities
Ideal Navigation Effort
The sum of the navigation costs

needed to reach the edited entities
Interaction History
t
Edited Entities
viewed entity
Program Entities
t
Edited Entities
t
viewed entity
edited entity
Program Entities
Edited Entities
tA B A.m1 A.m1A.m1 B C B.m2 B.m3
Edited Entities
tA B A.m1 A.m1A.m1 B C B.m2 B.m3
Working Sequence
Edited Entities
A B
A.m1 A.m1
A.m1
B
CB.m2 B.m3
Working Set
ideal navigation effort
real navigation effort
Navigation Efficiency
Navigation Efficiency
Navigation Efficiency
Navigation Efficiency
Working Sequence
Unitary cost
Max cost
9.6%
38.7%
Navigation Efficiency
Navigation Efficiency
Navigation Efficiency
Working Sequence
Unitary cost
Max cost
9.6%
38.7% 1.6x
9x
Navigation Efficiency
Navigation Efficiency
Navigation Efficiency
Working Set
Unitary cost
Max cost
5.1%
20.6%
Working Sequence
Unitary cost
Max cost
9.6%
38.7% 1.6x
...
Navigation Efficiency
Working Set
Unitary cost
Max cost
5.1%
20.6%
Working Sequence
Unitary cost
Max cost
9.6%
38.7%
19x
1...
Developers navigate 

code with a raft...
...what about this 

for the future?
@robertominelli
Measuring Navigation Efficiency in the IDE
Prochain SlideShare
Chargement dans…5
×
Prochain SlideShare
SAMOA – A Visual Software Analytics Platform for Mobile Applications [ICSM2013]
Suivant
Télécharger pour lire hors ligne et voir en mode plein écran

0

Partager

Télécharger pour lire hors ligne

Measuring Navigation Efficiency in the IDE

Télécharger pour lire hors ligne

My slides for IWESEP 2016 (7th IEEE International Workshop on Empirical Software Engineering in Practice)

Livres associés

Gratuit avec un essai de 30 jours de Scribd

Tout voir
  • Soyez le premier à aimer ceci

Measuring Navigation Efficiency in the IDE

  1. 1. Measuring Navigation
 Efficiency in the IDE Roberto Minelli, Andrea Mocci, Michele Lanza REVEAL @ Faculty of Informatics
 University of Lugano, Switzerland @robertominelli
  2. 2. What is Interaction Data? developer IDE
  3. 3. What is Interaction Data? developer IDE navigate
  4. 4. What is Interaction Data? developer IDE navigate edit
  5. 5. What is Interaction Data? developer IDE navigate edit inspect
  6. 6. What is Interaction Data? developer IDE navigate userinput edit inspect
  7. 7. What is Interaction Data? developer IDE navigate userinterface userinput edit inspect
  8. 8. What is Interaction Data? developer IDE navigate userinterface userinput edit inspect interaction data
  9. 9. DFlow: Interaction Profiler developer IDE navigate userinterface userinput edit inspect interaction data DFlow 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
  10. 10. DFlow: Conceptual Model
  11. 11. DFlow: Conceptual Model Event Timestamp Window ID
  12. 12. DFlow: Conceptual Model Entities Meta Event Navigation Event Inspect Event Edit Event Event Timestamp Window ID
  13. 13. DFlow: Conceptual Model Position User Input Event Attributes Mouse Event Key Combination Keystroke Event Mouse Moved Mouse Button Mouse Wheel DirectionButton IDStart Point End Point Entities Meta Event Navigation Event Inspect Event Edit Event Event Timestamp Window ID
  14. 14. DFlow: Conceptual Model Position User Input Event Attributes Mouse Event Key Combination Keystroke Event Mouse Moved Mouse Button Mouse Wheel DirectionButton IDStart Point End Point User Interface Event Attributes Window Event Window Collapsed Window ExpandedWindow Moved Window Resized Window Activated Window Closed Window LabelledWindow Opened Old Label New Label Initial Position Initial Extent Old Position New Position Old Size New Size Entities Meta Event Navigation Event Inspect Event Edit Event Event Timestamp Window ID
  15. 15. Our Dataset 765 sessions 6 developers 211k total events >500 h total time 40 min avg. session duration 214 (29) navigation events (entities) 11 (5) edit events (entities) 51 (7) inspect events (entities)
  16. 16. Navigation Efficiency
  17. 17. ideal navigation effort real navigation effort Navigation Efficiency
  18. 18. ideal navigation effort real navigation effort Navigation Efficiency Number of Navigation Events
  19. 19. ideal navigation effort real navigation effort Navigation Efficiency Number of Navigation Events ?
  20. 20. Ideal Navigation Effort The sum of the navigation costs
 needed to reach the edited entities
  21. 21. Ideal Navigation Effort The sum of the navigation costs
 needed to reach the edited entities
  22. 22. Navigating Source Code
  23. 23. Navigating Source Code package
  24. 24. Navigating Source Code package class
  25. 25. Navigating Source Code package class protocol
  26. 26. Navigating Source Code package class methodprotocol source code
  27. 27. Navigating Source Code package class methodprotocol cost = 1 cost = 2 cost = 3 cost = 4
  28. 28. Navigating Source Code (alternative)
  29. 29. Navigating Source Code (alternative) cost = 1
  30. 30. Ideal Navigation Effort The sum of the navigation costs
 needed to reach the edited entities
  31. 31. Ideal Navigation Effort The sum of the navigation costs
 needed to reach the edited entities
  32. 32. Interaction History t
  33. 33. Edited Entities viewed entity Program Entities t
  34. 34. Edited Entities t viewed entity edited entity Program Entities
  35. 35. Edited Entities tA B A.m1 A.m1A.m1 B C B.m2 B.m3
  36. 36. Edited Entities tA B A.m1 A.m1A.m1 B C B.m2 B.m3 Working Sequence
  37. 37. Edited Entities A B A.m1 A.m1 A.m1 B CB.m2 B.m3 Working Set
  38. 38. ideal navigation effort real navigation effort Navigation Efficiency
  39. 39. Navigation Efficiency Navigation Efficiency
  40. 40. Navigation Efficiency Working Sequence Unitary cost Max cost 9.6% 38.7% Navigation Efficiency Navigation Efficiency
  41. 41. Navigation Efficiency Working Sequence Unitary cost Max cost 9.6% 38.7% 1.6x 9x Navigation Efficiency Navigation Efficiency
  42. 42. Navigation Efficiency Working Set Unitary cost Max cost 5.1% 20.6% Working Sequence Unitary cost Max cost 9.6% 38.7% 1.6x 9x Navigation Efficiency Navigation Efficiency
  43. 43. Navigation Efficiency Working Set Unitary cost Max cost 5.1% 20.6% Working Sequence Unitary cost Max cost 9.6% 38.7% 19x 1.6x 9x 4x Navigation Efficiency Navigation Efficiency
  44. 44. Developers navigate 
 code with a raft...
  45. 45. ...what about this 
 for the future?
  46. 46. @robertominelli

My slides for IWESEP 2016 (7th IEEE International Workshop on Empirical Software Engineering in Practice)

Vues

Nombre de vues

284

Sur Slideshare

0

À partir des intégrations

0

Nombre d'intégrations

4

Actions

Téléchargements

4

Partages

0

Commentaires

0

Mentions J'aime

0

×