We examine how to improve our understanding in stating and managing successfully requirements for large systems, because the current concept ofa system requirement is ill suited to develop true requirements for such systems. It regards requirements as goals to be discovered and solutions as separate technical elements. In consequence, current Requirements Engineering (RE) theory separates these issues and reduces RE to an activity where a technical solution is documented for a given set of goals (problems). In contrast, we advocate a view where a requirement specifies a set ofmappings between problem and solution spaces, which both are socially constructed and negotiated. Requirements are emergent and need to be discovered through a contracted process, which likens to a "garbage-can" decision-making. System requirements thereby embrace an emergent functional ecology of requirements. This leads to equate requirements engineering with heterogeneous engineering. The admitted heterogeneity of technological activity avoids a commitment to social (or technological) reductionism. Requirements engineers need to be seen as "heterogeneous engineers" who must associate entities that range from people, through skills, to artifacts and natural phenomena. They are successful only, ifbuilt socio-technical networks can remain stable in spite ofattempts ofother entities to dissociate them.
Available at: http://works.bepress.com/kalle_lyytinen/51/