Relating Software Requirements and Architectures Using Problem Frames

Hall, Jon G.; Jackson, Michael; Laney, Robin C.; Nuseibeh, Bashar and Rapanotti, Lucia (2002). Relating Software Requirements and Architectures Using Problem Frames. Technical Report 2002/04; Department of Computing, The Open University.

DOI: https://doi.org/10.21954/ou.ro.00015ffc

Abstract

Problem frames provide a means of analyzing and decomposing problems. They emphasise the world outside of the computer, helping the developer to focus on the problem domain, instead of drifting into inventing solutions. However, even modestly complex problems can force us into detailed consideration of the architecture of the solution. This is counter to the intention of the problem frames approach, which is to delay consideration of the solution space until a good understanding of the problem is gained. We therefore extend problem frames, allowing architectural structures, services and artifacts to be considered as part of the problem domain; in essence, the machine domain of a problem frame is lifted from being a 'general purpose machine' to be a specialised 'architecture engine' (having architectural structures, services and artifacts 'built in'). The task of designing the machine domain is thus lifted to above the level that those architectural artifacts provide. Through a case study, we show how this extension enhances the applicability of problem frames in permitting an architecture-based approach to software development therein. We conclude that, through our extension, the applicability of problem frames is extended to include domains with existing architectural support.

Viewing alternatives

Download history

Metrics

Public Attention

Altmetrics from Altmetric

Number of Citations

Citations from Dimensions

Item Actions

Export

About

Recommendations