Requirements decision making through architecturally significant requirements
Software requirements are of significant importance to project success, yet the software industry still exhibits inadequate requirements practice. The intertwining between requirements and architecture has been recognized for more than three decades, yet most requirements research is still performed in isolation from considering the architectural perspective. With software systems becoming more complex and integrated, however, the contemporary RE environment has been changing. As a result, the intertwining between requirements and architecture is accelerated with growing criticality and popularity; architecture is becoming central in driving requirements; and Architecturally Significant Requirements (ASRs) is proposed to manage contemporary requirements process.
In this context, this thesis project therefore was started with the idea to improve requirements and architecture decision making through co-developing them, leveraging the concept of ASRs and discarding the differentiation of functional or non-functional requirements. When the project was started, however, two more fundamental problems emerged which were not initially foreseen. Firstly, there is insufficient understanding of requirements decision making context in practice, especially about what and how different factors (e.g. stakeholders) influence the decision making. Secondly, the notion of ASRs is far from mature, lacking of comprehensive knowledge upon how to define and identify them. Facing this situation, this thesis was then opted to investigate these problems.
To obtain a comprehensive understanding of the decision making context, this thesis reports on an in-depth, in-vivo participant observation study. It explores the requirements decision making process in an enterprise software development environment. A comprehensive portrayal of architects‟ influence on requirements decision making is derived. Also derived from the study is a stakeholder contribution pattern in requirements decision making. More importantly, a conceptual model is constructed, projecting how requirements decisions are made. To investigate how to identify ASRs, a grounded theory study was conducted, comprising two phases: first, observing seven architectural review board meetings and analysing 22 ARB presentation files; second, exercise-based interviews with 5 architects respectively.Grounded in the data, a framework for identifying ASRs is constructed, consisting of five dimensions.
Underlying the two problems introduced above rests an incentive question concerning the identification of requirements issues and challenges facing practitioners. The purpose of answering this question is to more sharply pinpoint directions for improving requirements decision making and also to provide empirical evidence that justifies the appropriateness of using ASRs for that improvement. In this regard, this research offers a collection of empirical evidence that describes requirements challenges, issues and opportunities as experienced by practitioners, derived mainly from a survey study.
The resultant findings were validated through expert interviews. Based on these results, a set of recommendations for practice is derived for improving requirements decision making through the employment of ASRs, in the context of enterprise software development.
- Faculty of Science and Engineering
First supervisorNorah Power
Second supervisorJ.J Collins
Other Funding informationFinally, I owe gratitude to the Chinese Scholarship Council for providing the financial support.
Also affiliated with
- LERO - The Irish Software Research Centre
Department or School
- Computer Science & Information Systems