Distribution and asynchrony in concurrent software engineering

Vahid Mashayekhi · 1995

Many software engineering tasks, such as design and code inspection, have a synchronous component that constrains the participants to meet together at the same place and time. The space constraint requires geographically dispersed participants to travel to the meeting site to meet with one another. The time constraint calls for participants to reserve the same block of time for the meeting. We propose distributing and asynchronizing software engineering tasks to relax the constraints that participants be present at the same place and time. Through distributing, geographically dispersed participants can engage in meeting activities from their offices or electronic meeting rooms. Through asynchronizing, participants working in dissimilar time zones and with different work schedules can conduct meeting activities at times that are convenient for each of them independently. We conjecture that support for distribution and asynchrony will enable software engineering teams to work together as effectively in different places and times as in the same place and time. We have chosen software inspection as our representative software engineering task because of its highly structured nature and wide spread use. We have designed, implemented, and performed pilot studies of prototypes for distributed and asynchronous inspections of software artifacts. We hypothesize that distributed and asynchronous inspection meeting models can replace the traditional face-to-face inspection model by allowing inspection teams to work together as effectively in different places and times as in the same place and time. Our implementation experience and pilot studies suggest that distribution across the space axis is feasible and that distributed software inspection might be as effective as face-to-face inspection. We believe distributed software inspection can replace face-to-face software inspection in some cases. Though our pilot studies suggest distribution across the time axis is feasible, we have found that in some cases it is not as effective as face-to-face inspection. We recommend that asynchronous inspection be used as a complement to face-to-face inspection, and not its substitute.

Read the paper · More papers on PaperTik