Skip to main content

Economics-Driven Architecting for Non Functional Requirements in the Presence of Middleware

  • Chapter
  • First Online:
Relating Software Requirements and Architectures

Abstract

The current trend is to build distributed software architectures with middleware, which provides the application developer with primitives for managing the complexity of distribution and for realizing many of the non-functional requirements like scalability, openness, heterogeneity, availability, reliability and fault-tolerance. In this chapter, we discuss the problem of evolving non-functional requirements, their stability implications and economics ramifications on the software architectures induced by middleware. We look at the role of middleware in architecting for non-functional requirements and their evolution trends. We advocate adjusting requirements elicitation and management techniques to elicit not just the current non-functional requirements, but also to assess the way in which they will develop over the lifetime of the architecture and their economics ramifications. These ranges of requirements may then inform the selection of distributed components technologies, and subsequently the selection of application server products. We describe an economics-driven approach, based on real options theory, which can assist in informing the selection on middleware to induce software architectures in relation to the evolving non-functional requirements. We review its application through a case study.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Sun MicroSystems Inc (2002) Enterprise javaBeans specification v2.1, Copyright© 2002 Sun Microsystems, Inc.

    Google Scholar 

  2. Object Management Group (2000) The common object request broker: architecture and specification, 24th edn. OMG, Framingham, MA, USA

    Google Scholar 

  3. Di Nitto E, Rosenblum D (1999) Exploiting ADLs to specify architectural styles induced by middleware infrastructures. In: Proceedings of the 21st International conference on software engineering. IEEE Computer Society Press, Los Angeles, pp 13–22

    Chapter  Google Scholar 

  4. Dawson R, Bones P, Oates B, Brereton P, Azuma M, Jackson M (2003) Empirical methodologies in software engineering In: Eleventh annual International workshop on software technology and engineering practice, IEEE CS Press, pp 52–58

    Google Scholar 

  5. Emmerich W (2000) Software engineering and middleware: a road map. In: Finkelstein A (ed) Future of software engineering. Limerick, Ireland

    Google Scholar 

  6. Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Sci Comput Program 20:3–50

    Article  Google Scholar 

  7. Anton A (1996) Goal-based Requirements Analysis. In: Proc. 2nd IEEE Int. Conf. Requirements Engineering. Orlando, USA

    Google Scholar 

  8. Othman O, O’Ryan C, Schmidt DC (2001) Designing an Adaptive CORBA Load Balancing Service Using TAO. IEEE Distributed Systems Online 2(4)

    Google Scholar 

  9. Othman O, O’Ryan C, Schmidt DC (2001) Strategies for CORBA Middleware-Based Load Balancing. IEEE Distributed Systems Online 2(3)

    Google Scholar 

  10. Bahsoon R, Emmerich W, Macke J (2005) Using real options to select stable middleware-induced software architectures. IEE Proc Softw Spec issue relating software requirements architectures 152(4):153–167, IEE press, ISSN 1462–5970

    Google Scholar 

  11. Erdogmus H, Boehm B, Harriosn W, Reifer DJ, Sullivan KJ (2002) Software engineering economics: background, current practices, and future directions. In: Proceeding of 24th International conference on software engineering. ACM Press, Orlando

    Google Scholar 

  12. Erdogmus H (2000) Value of commercial software development under technology risk. Financier 7(1–4):101–114

    Google Scholar 

  13. Schwartz S, Trigeorgis L (2000) Real options and investment under uncertainty: classical readings and recent contributions. MIT Press, Cambridge

    Google Scholar 

  14. Bahsoon R, Emmerich W (2004) Evaluating architectural stability with real options theory. In: Proceedings of the 20th IEEE International conference on software maintenance. IEEE CS Press, Chicago

    Google Scholar 

  15. Bahsoon R, Emmerich W (2003) ArchOptions: a real options-based model for predicting the stability of software architecture. In: Proceedings of the Fifth ICSE workshop on economics-driven software engineering research, Portland

    Google Scholar 

  16. Boehm B, Clark B, Horowitz E, Madachy R, Shelby R, Westland C (1995) The COCOMO 2.0 software cost estimation model. In: International society of parametric analysts

    Google Scholar 

  17. Medvidovic N, Dashofy E, Taylor R (2003) On the role of middleware in architecture-based software development. Int J Software Engineer Knowledge Engineer 13(4):367–393

    Article  Google Scholar 

  18. Rapanotti L, Hall J, Jackson M, Nuseibeh B (2004) Architecture driven problem decomposition. In: Proceedings of 12th IEEE International requirements engineering conference (RE’04). IEEE Computer Society Press, Kyoto

    Google Scholar 

  19. Sullivan KJ, Socha J, Marchukov M (1997) Using formal methods to reason about architectural standards. In: Proceedings of the 19th International conference on software engineering, Boston

    Google Scholar 

  20. Boehm B, Sullivan KJ (2000) Software economics: a roadmap. In: Finkelstein A (ed) The future of software engineering. ACM Press, Lemrick, Ireland

    Google Scholar 

  21. Baldwin CY, Clark KB (2001) Design rules – the power of modularity. MIT Press, Cambridge

    Google Scholar 

  22. Sullivan KJ, Chalasani P, Jha S, Sazawal V (1999) Software design as an investment activity: a real options perspective. In: Trigeorgis L (ed) Real options and business strategy: applications to decision-making. Risk Books, London

    Google Scholar 

  23. Sullivan KJ, Griswold W, Cai Y, Hallen B (2001) The structure and value of modularity in software design. In: The Proceedings of the ninth ESEC/FSE, Vienna, pp 99–108

    Google Scholar 

  24. Asundi J, Kazman R (2001) A Foundation for the Economic Analysis of Software Architectures. In: Proceedings of the Third Workshop on Economics-Driven Software Engineering Research

    Google Scholar 

  25. Kazman R, Klein M, Barbacci M, Lipson H, Longstaff T, Carrière SJ (1998) The architecture tradeoff analysis method. In: Proceedings of fourth International conference on engineering of complex computer systems (ICECCS ‘98). IEEE CS Press, Monterey, pp 68–78

    Google Scholar 

  26. Mylopoulos J, Chung L, Nixon B (1992) Representing and using nonfunctional requirements: a process-oriented approach. IEEE Trans Software Eng 18(6):483–497

    Article  Google Scholar 

  27. Black F, Scholes M (1973) The pricing of options and corporate liabilities. J Polit Econ 81(3):637–654

    Article  MathSciNet  Google Scholar 

  28. Emmerich W (2002) Distributed component technologies and their software engineering implications. In: Proceedings of the 24th International conference on software engineering. ACM Press, Orlando, pp 537–546

    Google Scholar 

  29. Nuseibeh B (2001) Weaving the software development process between requirements and architectures. In: Proceedings of STRAW 01 the First International workshop from software requirements to architectures, Toronto

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rami Bahsoon .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bahsoon, R., Emmerich, W. (2011). Economics-Driven Architecting for Non Functional Requirements in the Presence of Middleware. In: Avgeriou, P., Grundy, J., Hall, J.G., Lago, P., Mistrík, I. (eds) Relating Software Requirements and Architectures. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21001-3_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21001-3_20

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21000-6

  • Online ISBN: 978-3-642-21001-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics