"Yes - What Does That Mean?" Understanding Distributed Requirements Handling

Requirements engineering is a process comprised of the requisite activities for creating and maintaining requirements documents. Different documents are produced at different stages of the development process. In most systems, requirements change. People develop a better understanding of what they want to do; companies and projects reorganise; when people change positions their successors may have a different understanding of problems and new ideas; modifications are made to hardware, software and organisational structures. Requirements engineering is concerned with managing changes in requirements. This paper describes requirements problems in a distributed software development project and describes them from the project members' ‘own point of view’. The research methodology used is that of empirical and qualitative ‘ethnomethodologically informed ethnography’. It results in a discussion divided in two parts. The first part is concerned with the precise benefits and drawbacks of using the methodology. The second part illustrates how the central problem of requirements engineering is not completeness but the production of collaborative theory building and mutual intelligibility. This central problem is compared with one particular requirements engineering perspective presented in a book where ethnomethodology and requirements engineering are discussed.