The paper argues that strategic decisions about software architectures need to be based on a social and economic analysis of which designs are likely to succeed and become accepted by users. Software architecture is increasingly having to take account of customisation, reuse, end-user development and system configuration. The relationship between architecture and end users' requirements is investigated, to propose a cost-benefit framework to support reasoning about architectural choices from the perspective of end users. The relationships between architectural decisions and non-functional requirements is reviewed, and the impact on architecture is assessed using a case study of developing configurable, semi-intelligent software to support medical researchers in e-science domains.
- Cost-benefit analysis
- End-user development