Sunday, October 9, 2016

What's in Repeated Requirements Research for Practitioners?

For many things said in requirements engineering (RE) research, practitioners may know whether they can apply the research in their current or future projects, and yet they may not know. For the things said and done (i.e., evaluated by the RE researchers), practitioners can gain a more detailed understanding about the research's scope of applicability. For the same research done repeatedly, practitioners are much more informed: knowing better about under which conditions the research can be applied, under which it cannot, what benefits are expected and how much, what limitations there are and how to overcome them, and more importantly, what's in common and what varies when the research is repeated.

In a replication study, we re-tested the work by Easterbrook and his colleagues [1]. They reported that, when approaching a conceptual modeling problem, it was better to build many fragmentary models representing different perspectives than to attempt to construct a single coherent model. Their case study, illustrated by the following figure, was carried out by two teams using different processes to build i* models for the Kids Help Phone (KHP) organization [1]: The global (G) team worked together whereas the viewpoints (V) team worked individually on separate, loosely coupled, yet overlapping models before explicitly merging their viewpoints together.

The results? The V team gained a richer domain understanding than the G team. The take-away for practitioners? Adopting viewpoints in requirements modeling, especially for multi-stakeholder, socio-technical, large-scale, distributed projects. Well, not that fast. The V team's richer domain understanding was gained, according to [1], at the cost of slowness. That is, the viewpoints process was so slow that no merged model was ever produced. That's why only the model slices (shown in the above figure) were presented to the KHP stakeholders. Viewpoints or not? To practitioners, the results in [1] were mixed at best.

How have things changed since [1]? We took theoretical replication's advantage to improve the study design. Among the improvements, we paid specific attention to i* modeling tools that were developed in the past decade. We asked our G and V teams to use OpenOME [2] in constructing their models for the Scholar@UC project [3]. Our results? Not only did our study confirm the deeper domain understanding achieved by the V teams, but the viewpoints modeling was no longer slower. In fact, with OpenOME, the 2 V teams in our study spent less time in generating the final, integrated models than the 2 G teams.

The take-away from our repeated research? Viewpoints-based requirements modeling is a valuable approach to adopt for practitioners in many domains, such as IoT and smart cities, because the process leads to better understandings in terms of hidden assumptions, stakeholder disagreements, and new requirements. With the tech transfer of research tools like OpenOME, the more valuable process also becomes faster and more practical.