From Software Engineering to Software as Service: Computing Task Dependencies from Work Artifacts

  • Jim D. Herbsleb | CMU

Task dependencies are at the heart of coordination in collaborative work. If tasks share no dependencies, then communication and coordination are not required. To the extent that tasks *are* interdependent, the the attributes of the particular dependencies dictate the nature and extent of coordination that will be required. Organizational theory provides only highly stylized descriptions of dependency types, such as pooled, sequential, and reciprocal, which rarely occur in pure form in non-routine intellectual work. Having a way to predict actual task dependencies would allow us to fine-tune awareness and communication capabilities to actual coordination needs.

In this talk, I will describe a technique we have developed for computing the “coordination requirements” in software development projects, using data collected automatically by the change management and version control systems. I will present results from a large, multi-year software project, showing that when actual coordination behaviors match these computed coordination requirements, a condition we call congruence, the work of resolving change requests is performed significantly faster. Moreover, the most highly productive developers behave much more congruently than their less productive counterparts. I will conclude by noting that as software is delivered more frequently as a service, with data maintained centrally, the kinds of data needed to compute coordination requirements in many domains of intellectual work will likely become available.

Speaker Details

James D. Herbsleb is an Associate Professor of Computer Science and the Director of the Software Industry Center at Carnegie Mellon University. His research interests are in globally-distributed and open source software engineering, as well as coordination in collaborative work more generally. Prior to joining the faculty of Carnegie Mellon University, he initiated the Bell Labs Collaboratory project, leading a research team which designed, implemented, and deployed solutions for global development, including tools, practices, and organizational models. He has also published papers describing how open source software development actually works, its limitations, and the extent to which open source practices can be applied in industrial settings.http://conway.isri.cmu.edu/~jdh/

    • Portrait of Jeff Running

      Jeff Running