Ariadne - Managing Software Development Complexity
Students: Stephen Quirk, UC Irvine/ISR , Erik Trainer, UC Irvine/ISR
Advisor: David F. Redmiles, UC Irvine/ISR
Abstract: Large-scale software development becomes increasingly
difficult due to the overwhelming number of dependencies that can
arise between software engineers throughout the course of a software
project. These dependencies necessitate communication and coordination
that requires continuous effort on the behalf of developers. Combined
with existing empirical studies on awareness, our own studies have
confirmed that technical dependencies between software artifacts
create social dependencies among the developers implementing these
artifacts. This observation has motivated us to create Ariadne, a
plug-in for the Eclipse Integrated Development Environment. Ariadne
analyzes a software development project for technical dependencies and
collects authorship information from the project's associated
configuration management repository. After annotating the technical
dependencies with authorship information, Ariadne infers social
dependencies among developers. Leveraging Eclipse's well-established
user base and its popular plug-in format, we feel that there is a
significant need for such a tool. As such, we have designed Ariadne to
be tightly integrated with Eclipse in order to ensure that it
complements developers' activities in the IDE. We have evaluated
Ariadne in open source and commercial software development projects
and have shown that the information the tool provides is useful to
software developers.
Bio: Stephen Quirk is a second year Ph.D. student in the Department of
Informatics at the University of California, Irvine. He received his
B.S. in Information and Computer Science at UC Irvine in 2005.
Stephen's general research interests include computer-supported
cooperative work, human-computer interaction, and software
engineering.
Erik Trainer is a second year Informatics PhD student in the
school of Information and Computer Science at UC Irvine. He also did
his undergraduate work at UC Irvine, and received a B.S. in
Information and Computer Science in 2001. His research interests
include shared software visualizations to facilitate program
understanding, collaborative software development, and human-computer
interaction. Currently, he is researching the use of visualizations to
address communication and coordination needs in large software
development projects.
|