28
+ Click to edit Master title style Tesseract: Interactive Visual Exploration of Socio-Technical Relationships in Software Development Anita Sarma, Larry Maccherone, Patrick Wagstrom, and James Herbsleb Institute for Software Research, School of Computer Science Carnegie Mellon University

, and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+Click to edit

Master title

style

Tesseract: Interactive

Visual Exploration of

Socio-Technical

Relationships in

Software Development

Anita Sarm

a, Larr

y M

acchero

ne, Patric

k W

agstrom

, and Jam

es H

erb

sle

b

Institute for Software Research, School of Computer Science

Carnegie Mellon University

Page 2: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

2 2Some Questions in Software

Development

�Who do I go to for help?

�Which other artifacts are affected by my changes?

�Which developeris affected by my changes?

�Whose changes are affecting my changes?

�Who should be assigned to this task?

�Which tasks need to be completed before the other?

�Which artifacts are brittle or buggy?

�…

Source Code

Discussions

Defects/Feature

requests

Answ

ering these questions is non-trivial

Page 3: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

3 3Problem

�Need for coordination arises because of

complex relationships among project elements

�Data is siloed

�These relationships change over time

�Social and technical relationships are tightly

coupled

�Lack of interactive exploratory environment for

software projects

Page 4: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

4 4Objective

�Provide an interactive project exploration

environment

�aggregate data across data different sources

�cross-link and visualize relationships

�present changes in relationships over time

�treat social and technical relationships as first order

objects

�Allow the ‘lay user’to explore relationships and

project dynamics

Page 5: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

5 5Research Challenges

�Where to get the

information?

�How to meaningfully

extract and relate

linkages?

�Which information

should be displayed?

�How to deal with scale?

�Allow investigating a

particular problem

�Help find interesting

patterns

Page 6: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

6 6Tesseract

�Interactive and explorative environment to correlate

and understand the complex relationships among:

�code

�developers

�communication records

�tasks (issues/ features)

�time

Page 7: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

7 7Tesseract

Page 8: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

8 8Design Decisions

�Decoupling data collection

from data consumption

�Easy substitution of linkage

heuristics

�Easy substitution of

visualization components

Data Extractor

Server

Client

database

bug discussions

email discussions

bug activities

code commits

filter settings

preprocessed relational data

current selection

& drill down data

model

display panels

filters

view

user input

model

model

model

view

bindings

Page 9: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

9 9Information Flow Extracting

Analyzing

Filtering

Visualizing

XML files

Server

Client

Collecting

cross-linked

highlighting

input filter settings /

drill down to some nodes

Page 10: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

10 10Information Flow

Extracting

Analyzing

Filtering

Visualizing

XML files

Server

Client

Collecting

cross-linked

highlighting

input filter settings /

drill down to some nodes

•Collect existing data from

project archives

Data Sources

•CM system

s

•Mailing lists

•Bug trackers

Page 11: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

11 11Information Flow

Extracting

Analyzing

Filtering

Visualizing

XML files

Server

Client

Collecting

cross-linked

highlighting

input filter settings /

drill down to some nodes

Extracting

•Explicit

•developer –file

•developer –bug

•Heuristics

•file –file

•dev id norm

alization

•Team policies

•bug –file

•reply all

Page 12: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

12 12Information Flow

Extracting

Analyzing

Filtering

Visualizing

XML files

Server

Client

Collecting

cross-linked

highlighting

input filter settings /

drill down to some nodes•C

ross Link data

•relationships am

ong code,

developers, bugs

•Create Networks

•file to file association

•who should talk to whom?

•who is talking to whom?

Page 13: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

13 13File Association

�Logical Coupling

�Frequently co-committed files are logically associated

with each other (Gall, Hajek, Jazayerri1988)

�Especially useful in situations where

�code base contains different programming

language files

�call site separated from target (e.g., network

connection or even transmitted by event bus)

�Better measure of dependency for our purposes

(Cataldoet al. 2006, 2008, 2009)

Page 14: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

14 14Developer Testimony

“The im

plicit d

ependency s

tuff, th

at, I thin

k

could

be really u

sefu

l in

and of itself. So things

that which end up being changed together but don't

necessarily have an inheritance relationship, or

compositional --knowing that, I've changed this thing

it looks like something in isolation, but in reality

whenever someone changes something here, these

thirty other things change because ofsom

e rip

ple

effect, that would

be u

sefu

l…”

Page 15: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

15 15Developer Network

Coordination Requirem

ents

Communication Pattern

Congruence

Page 16: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

16 16Developer Testimony

“this [developer pane] is a project manager view.

What I know is, I am this person, three people have

red flag and one person has green flag.M

y

dashboard

says you n

eed to talk

to

[develo

per]

because h

e m

ade these

changes…”

Page 17: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

17 17Information Flow

Extracting

Analyzing

Filtering

Visualizing

XML files

Server

Client

Collecting

cross-linked

highlighting

input filter settings /

drill down to some nodes

•Project activity view

•Drill down

•Thresholding

•density of file, developer

association

•total commits in a set

•file types

•communication type

•Text search

Page 18: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

18 18Tesseract Visualization

Page 19: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

19 19Tesseract Visualization

Page 20: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

20 20Tesseract Visualization

Page 21: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

21 21Tesseract Visualization

Page 22: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

22 22Tesseract Visualization

Page 23: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

23 23Tesseract Visualization

Page 24: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

24 24Developer Testimony

Without Tesseract

“It's usually just talking to people about what happened, going back to the

CVS and trying to see what happened with the file changes [is]kin

da

fruitle

ss.”

With Tesseract

“…from a grunt developer standpoint, the file listing and cross reference

of who has worked before–th

at would

be very

, very

nic

e.”

But probably not much use for experienced developers

“..This stuff most useful for the initial developers…they err…for getting to

know the code base. I have b

een for eig

htyears

…have this

stu

ff in m

ind…If someone new, help in how to find stuff…”

Page 25: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

25 25Formative Evaluation

�Instrumented with GNOME data

�10 years data

�1,000 developers, 48,000 commits

�200,000 bugs

�Usability studies

�five tasks to evaluate the understanding of cross-panel

referencing

�five participants

�Open source developer feedback

�interview to verify the need and usage scenario

�five open source developers from different projects

Page 26: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

26 26Conclusions

�Allow Interactive explorations of project relationships

-cross-linked across different data sources

-over time

�Treat both social and technical relationships as first order

elements

�Use logical coupling for file associations

�Determine fit between communication needs and behavior

�Formative evaluations that demonstrate the need for such an

approach

Page 27: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

27 27Future Work

�Summative user evaluation

�Visualization Enhancements

�hierarchical grouping of nodes (e.g., packages, directories)

�clustering algorithm (Newman grouping)

�sticky layout of networks

�integration with source repositories

�Analysis

�other analyses (temporal consideration for congruence, SNA

metrics)

�difference in networks between two time slices

Page 28: , and James Herbsleb Anita Sarma, Larry Maccherone ...€¦ · Click to edit Master title Tesseract: Interactive Visual Exploration of style Socio-Technical Relationships in Software

+

28 28Authors gratefully acknowledge support from the following agencies:

�NSF IIS-0414698, IIS-0534656

�IBM Jazz Innovation and Faculty grants

�Alfred P. Sloan Foundation (2008-09)

Questions!

Demo presentation on Friday 11am, Salon C