Abstract
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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Ananiadou, S., McNaught, J.: Text Mining for Biology and Biomedicine. Artech House, Norwood (2006)
Arango, G., Schoen, E., Pettengill, R.: Design as evolution and reuse. In: Proceedings: 2nd International Workshop on Software Reusability. Advances in Software Reuse, pp. 9–18. IEEE Computer Society Press, Los Alamitos (1993)
Bastos, L.R.D., Castro, J.F.B., Mylopoulos, J.: Integrating organisational requirements and socio-intentional architectural styles. In: Berry, D.M., Kazman, R., Wieringa, R. (eds.) Proceedings: STRAW 03 Workshop: Software Requirements and Architectures, pp. 114–121. IEEE Computer Society Press, Los Alamitos (2003)
Burnett, M.M., Baker, M.J.: Scaling up visual programming languages. IEEE Comput. 28(3), 45 (1995)
Callele, D., Neufeld, E., Schneider, K.: Emotional requirements in video games. In: Proceedings: 14th IEEE International Requirements Engineering Conference RE06, pp. 299–302. IEEE Computer Society Press, Los Alamitos (2006)
Choppy, C., Hatebur, D., Heisel, M.: Architectural patterns for problem frames. IRR Proc. Softw. 152(4), 198–208 (2005)
Chung, L., Nixon, B.A.: Dealing with non-functional requirements: Three experimental studies of a process-oriented approach. In: Proceedings: 17th International Conference on Systems Engineering, pp. 25–37. IEEE Computer Society Press, Los Alamitos (1995)
Clements, P., Northrop, L.M.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2001)
Conklin, J., Begeman, M.L.: gIBIS: A hypertext tool for exploratory policy discussion. ACM Trans. Off. Inf. Syst. 64, 303–331 (1988)
Davies, F.D.: Perceived usefulness, perceived ease of use and user acceptance of information technology. MIS Q. 13(3), 319–339 (1989)
Eason, K.D.: Information Technology and Social Change. Taylor and Francis, London (1988)
Erdogmus, H., Boehm, B.W., Harrison, W., Reifer, D.J., Sullivan, K.J.: Software engineering economics: Background, current practices and future directions. In: Proceedings: ICSE-02, Orlando, FL, 19–25 May 2002. ACM Press, New York (2002)
Fayad, M.E., Johnson, R.E.: Domain-Specific Application Frameworks: Frameworks Experience by Industry. Wiley, New York (2000)
Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: Harrison, M.D., Zave, P. (eds.) Proceedings: 1995 IEEE International Symposium on Requirements Engineering (RE ’95), York, 27–29 March 1995, pp. 140–147. IEEE Computer Society Press, Los Alamitos (1995)
Finkelstein, A., Harman, M., Mansouri, A., Ren, J., Zhang, Y.: Fairness analysis in requirements engineering. In: Proceedings: 16th IEEE International Requirements Engineering Conference RE08, Barcelona. IEEE Computer Society Press, Los Alamitos (2008)
Fischer, G.: Shared knowledge in cooperative problem-solving systems: Integrating adaptive and adaptable components. In: Schneider-Hufschmidt, M., Kuehme, T., Malinowski, U. (eds.) Adaptive User Interfaces: Principles and Practice, pp. 49–68. Elsevier Science, Amsterdam (1993)
Fischer, G.: Domain-oriented design environments. Autom. Softw. Eng. 1(2), 177–203 (1994)
Fischer, G.: Seeding, evolutionary growth and reseeding: Constructing, capturing and evolving knowledge in domain-oriented design environments. In: Sutcliffe, A.G., Benyon, D., VanAssche, F. (eds.) Domain Knowledge for Interactive System Design; Proceedings: TC8/WG8.2 Conference on Domain Knowledge in Interactive System Design, Switzerland, pp. 1–16. Chapman & Hall, London (1996)
Fischer, G., Giaccardi, E., Ye, Y., Sutcliffe, A.G., Mehandjiev, N.: A framework for end-user development: Socio-technical perspectives and meta-design. Commun. ACM 47(9), 33–39 (2004)
Fisher, S.: Multimedia Authoring: Building and Developing Documents. AP Professional, Cambridge (1994)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, Reading (1995)
Glinz, M.: On non-functional requirements. In: Sutcliffe, A.G., Jalote, P. (eds.) Proceedings: 15th IEEE International Requirements Engineering Conference RE07, New Delhi, India, 15–19 October 2007, pp. 21–28. IEEE Computer Society Press, Los Alamitos (2007)
Gordijn, J., Yu, E., Van Der Raadt, B.: e-Service design using i* and e3value modelling. IEEE Softw. 23, 26–33 (2006)
Green, W.S., Jordan, P.W.: Pleasure with Products: Beyond Usability. Taylor & Francis, London (2001)
Green, T.R.G., Petre, M.: Usability analysis of visual programming environments: A cognitive dimensions framework. J. Vis. Lang. Comput. 7, 131–174 (1996)
Haley, C.B., Laney, R., Moffett, J.D., Nuseibeh, B.: The effect of trust assumptions on the elaboration of security requirements. In: Proceedings: 12th IEEE International Conference on Requirements Engineering, Kyoto, 6–10 September 2004. IEEE Computer Society Press, Los Alamitos (2004)
Hall, J.G., Jackson, M.J., Laney, R.C., Nuseibeh, B., Rananotti, L.: Relating software requirements and architectures using problem frames. In: Greenspan, S., Saddiqi, J., Pohl, K. (eds.) Proceedings: IEEE Joint International Conference on Requirements Engineering, Essen, Germany, 9–13 September 2002, pp. 137–145. IEEE Computer Society Press, Los Alamitos (2002)
Hallett, C., Scott, D., Power, R.: Intuitive querying of e-health data repositories. In: Proceedings: UK e-Science All-Hands Meeting, Nottingham (2005)
Hansen, S., Berente, N., Lyytinen, K.: Requirements in the 21st century: Current practice and emerging trends, In: Proceedings: Design Requirements Workshop, Cleveland, 3–6 June 2007. Case Western University, Cleveland (2007)
Herlocker, J., Konstan, J., Treveen, L., Riedl, J.: Evaluating collaborative filtering recommender systems. ACM Trans. Inf. Syst. 22(1), 5–53 (2004)
Hofmeister, C., Nord, R., Soni, D.: Global analysis moving from software requirements and specifications to structural views of the software architecture. IEE Proc. Softw. 152(4), 187–197 (2005)
ISO: ISO 9241: Ergonomic requirements for office systems with visual display terminals (VDTs). International Standards Organisation (1997)
Jackson, M.: Problem Frames: Analysing and Structuring Software Development Problems. Pearson Education, Harlow (2001)
Kartseva, V., Gordijn, J., Tan, Y.H.: Value-based design of networked enterprises using control patterns. In: Sutcliffe, A.G., Jalote, P. (eds.) Proceedings: 15th IEEE International Requirements Engineering Conference RE07, New Delhi, India, 15–19 October 2007, pp. 91–100. IEEE Computer Society Press, Los Alamitos (2007)
Keller, G., Teufel, T.: SAP/R3 Process Oriented Implementation. Addison Wesley-Longman, Reading (1998)
Laney, R., Barroca, L., Jackson, M., Nuseibeh, B.: Composing requirements using problem frames. In: Proceedings: 12th IEEE International Requirements Engineering Conference, Kyoto, 6–10 September 2004, pp. 122–131. IEEE Computer Society Press, Los Alamitos (2004)
Lehman, M.M., Ramil, J.F.: Software evolution in the age of component based systems engineering. IEE Proc. Softw. 147(6), 249–255 (2000)
Lieberman, H. (ed.): Your Wish is My Command: Programming by Example. Morgan Kaufmann, San Francisco (2001)
Maimon, O., Rokach, L.: Data Mining and Knowledge Discovery Handbook. Springer, Berlin (2005)
Nardi, B.: A Small Matter of Programming. MIT Press, Cambridge (1993)
Norman, D.A.: Emotional Design: Why We Love (or Hate) Everyday Things. Basic Books, New York (2004)
Nuseibeh, B.: Weaving together requirements and architecture. IEEE Comput. 34(3), 115–117 (2001)
Oinn, T.M., Greenwood, R.M., Addis, M., et al.: Taverna: Lessons in creating a workflow environment for the life sciences. Concurr. Comput. Pract. Exp. 18(10), 1067–1100 (2006)
Prieto-Diaz, R.: Implementing faceted classification for software reuse. Commun. ACM 34(5), 88–97 (1991)
Rapanotti, L., Hall, J., Jackson, M., Nuseibeh, B.: Architecture-driven problem decomposition. In: Proceedings: 12th IEEE International Requirements Engineering Conference, Kyoto, 6–10 September 2004, pp. 80–89. IEEE Computer Society Press, Los Alamitos (2004)
Repenning, A.: Agentsheets: A tool for building domain oriented-dynamic visual environments. Technical Report, Dept. of Computer Science, CU/CS/693/93, Boulder CO, University of Colorado (1993)
Robertson, J., Robertson, S.: Mastering the Requirements Process. Addison Wesley, Harlow (1999)
Robinson, W.N.: Requirements monitoring for enterprise systems. Requir. Eng. 11(1), 17–41 (2006)
Robinson, W.N., Pawlowski, S.: Managing requirements inconsistency with development goal monitors. IEEE Trans. Softw. Eng. (Nov/Dec) (1999)
Schmid, K.: A comprehensive product line scoping approach and its validation. In: Proceedings: ICSE-02, Orlando, FL, 19–25 May 2002. ACM Press, New York (2002)
Schwanke, K.: Architectural requirements engineering: Theory and practice. In: Berry, D.M., Kazman, R., Wieringa, R. (eds.) Proceedings: STRAW 03 Workshop: Software Requirements and Architectures, pp. 1–8. IEEE Computer Society Press, Los Alamitos (2003)
Simos, M., Anthony, J.: Weaving the model Web: A multi-modeling approach to concepts and features in domain engineering. In: Devanbu, P., Poulin, J. (eds.) Proceedings: Fifth International Conference on Software Reuse, Victoria, BC, 2–5 June 1998, pp. 94–102. IEEE Computer Society Press, Los Alamitos (1998)
Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide. Wiley, Chichester (1997)
Sutcliffe, A.G.: The Domain Theory: Patterns for Knowledge and Software Reuse. Lawrence Erlbaum Associates, Mahwah (2002)
Sutcliffe, A.G., Fickas, S., Sohlberg, M.: Personal and contextual requirements engineering. In: Proceedings: 13th IEEE International Conference on Requirements Engineering, Paris, 29 August–2 September 2005, pp. 19–28. IEEE Computer Society Press, Los Alamitos (2005)
Sutcliffe, A.G., Thew, S., Venters, C., De Bruijn, O., McNaught, J., Proctor, R., Buchan, I.: ADVISES Project: Scenario-based requirements analysis for e-science applications. In: Proceedings: UK e-Science All Hands Conference 2007 (2007). Available online at http://www.allhands.org.uk/2007/. Accessed 30 June 2008
Vici, A.D., Argentieri, N., Mansour, A., d’Alessandro, M., Favaro, J.: FODAcom: An experience with domain analysis in the Italian telecom industry. In: Devanbu, P., Poulin, J. (eds.) Proceedings: Fifth International Conference on Software Reuse, pp. 166–175 (1998)
Weiss, D.M., Lai, C.T.R.: Software Product-Line Engineering: A Family-Based Software Development Process. Addison-Wesley, Reading (1999)
Wile, D.S.: Residual requirements and architectural residue. In: Proceedings: RE 01 5th International Symposium on Requirements Engineering, pp. 194–201. IEEE Computer Society Press, Los Alamitos (2001)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Sutcliffe, A. The socio-economics of software architecture. Autom Softw Eng 15, 343–363 (2008). https://doi.org/10.1007/s10515-008-0029-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10515-008-0029-5