A method for identifying unobvious requirements in globally distributed software projects
We present a method and an assisting toolset to identify unobvious requirements in globally distributed projects. We demonstrate use of social software principles and technologies in distributed and collaborative requirements elicitation with a purpose to detect unobvious requirements. In our experience, stakeholders are rarely clear on their requirements. During requirements elicitation workshops (that involve face-to-face communications), they are not able to visualize all the pertinent scenarios. They can typically articulate `first-order' scenarios resulting out of direct interactions (among stakeholders and between stakeholders and proposed systems), but they find `second-order' scenarios that result out of multiple stimuli hard to detect a-priori. We refer to such `hard to detect' requirements as the `unobvious' ones. In globally distributed situations, this challenge becomes even more pronounced due to lack of frequent and informal communications that allow iterative refinements of stakeholder inputs. We describe an approach that addresses this problem. Our approach includes identification of representative roles and construction of method chunks that include a step-by-step guidance for roles to practice the method chunks relevant to them. Towards this purpose, we have developed a web 2.0 based toolset that presents the method chunks to appropriate roles, synchronizes activities performed by the roles by providing relevant notifications and automates some of the activities recommended in the method. Web2.0 has been chosen as a platform to deliver our method in the light of architecture of participation that it offers. The identification of unobvious requirements has been demonstrated through the results of a case study in Insurance domain.
Full Text: PDF