Socio-technical CoordinationSpeaker: James D Herbsleb – Pittsburgh, PA, United States
Topic(s): Information Systems, Search, Information Retrieval, Database Systems, Data Mining, Data Science
Coordination, or managing dependencies among tasks, has long been recognized as one of the most difficult, pervasive, and persistent problems in large-scale software development. A great many techniques have been developed over the last half-century to address this problem, including software and systems processes, development methods and models, communication practices, collaboration tools, and awareness-enhancing development environments. These various techniques are often helpful, but their value seems unpredictable. They are sometimes effective but may fail completely in seemingly similar circumstances. We have little understanding of when, why, and how they work, how to systematically improve them, or how to decide what to use in a given context.
This is a common situation in the development of technology -- a rote technique is initially used, widely copied, and thus proliferates, but remains brittle and advances slowly if at all. Sometimes, the advance of knowledge provides an epistemic base for a technique, i.e., a description of how and why the technique works, grounded in systematic and general knowledge about the world. Rapid and sustained progress can then often be made. I argue that we should be working toward an epistemic base to underpin our coordination techniques in software engineering, and I propose and empirically test a socio-technical theory of coordination as a step in that direction.
The theory is based on the idea that a project can be characterized as a network of mutually constraining engineering decisions. This decision network poses the coordination problem -- all the decisions must be made without violating constraints. In order to field a successful product, the organization must not only make good technical decisions at each node of the network, it must solve the specific coordination problem posed by the network of constraints. Organizations apply various coordination techniques to accomplish this. If the techniques employed are a good match, i.e., congruent, with the coordination problem, then fewer constraints will be violated during development, leading to higher quality and productivity.
The empirical work described in this talk develops a method for characterizing aggregated decision networks, and applies this method to two cases, using data from two different commercial firms. We then observe the application of several coordination techniques in these firms during development, and compute the degree of match, or congruence, of technique application to the specific coordination problem posed by the engineering work. Using the data from several thousand work items, we build regression models to evaluate the impact of congruence on quality and productivity measures, and the results provide strong support for the theory.
The theory directs attention to a set of research questions addressing fundamental characteristics of decision networks, coordination techniques, and congruence.
About this LectureNumber of Slides: 59
Duration: 45 minutes
Languages Available: English
Request this Lecture
To request this particular lecture, please complete this online form.
Request a Tour
To request a tour with this speaker, please complete this online form.
All requests will be sent to ACM headquarters for review.