Towards an Approach to Stimulate Architectural Thinking during Requirements Engineering Phase
Preethu Rose Anish · 2016
[Context/Motivation:] The major role of a software architect in the software development life cycle is to design an architectural solution that satisfies the functional and non-functional requirements of the system to the fullest extent possible. However, the details they need to make informed architectural decisions are often missing from the software requirements specifications. Architects therefore either make assumptions or go back to the business analysts for clarifications or conduct additional stakeholder interviews. All of these result in potential project delays. [Question/Problem:] There is very little known about how architects gather this missing information that is crucial to architectural decision-making. Further, there is dearth of knowledge on how we can leverage the requirements analysis phase by empowering business analysts to gather architecturally significant information pertinent to a given requirement. [Principal ideas / Results:] Based on qualitative interview study with software architects from large organisations, this research will (a) investigate how architects cope with missing information in real-world large scale projects and (b) leverage the knowledge of experienced software architects and make it available to business analysts so that they are equipped to elicit a more complete set of requirements that feed sufficient information into the architecture design process. This research further explores the use of machine learning techniques to gauge the potential to introduce automation to the process of gathering the architecturally significant information missing in the software requirement specification.