On Non-Functional Requirements in Software Engineering

  • Lawrence Chung
  • Julio Cesar Sampaio do Prado Leite
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5600)

Abstract

Essentially a software system’s utility is determined by both its functionality and its non-functional characteristics, such as usability, flexibility, performance, interoperability and security. Nonetheless, there has been a lop-sided emphasis in the functionality of the software, even though the functionality is not useful or usable without the necessary non-functional characteristics. In this chapter, we review the state of the art on the treatment of non-functional requirements (hereafter, NFRs), while providing some prospects for future directions.

Keywords

Non-functional requirements NFRs softgoals satisficing requirements engineering goal-oriented requirements engineering alternatives selection criteria 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Mylopoulos, J., Chung, L., Nixon, B.: Representing and Using Nonfunctional Requirements: A Process-Oriented Approach. IEEE Trans. Softw. Eng. 18(6), 483–497 (1992), http://dx.doi.org/10.1109/32.142871 CrossRefGoogle Scholar
  2. 2.
    van Lamsweerde, A.: Goal-Oriented Requirements Engineering: A Guided Tour. In: Proceedings of the 5th IEEE international Symposium on Requirements Engineering, August 27-31, 2001, p. 249. IEEE Computer Society, Washington (2001)Google Scholar
  3. 3.
    Chung, L., Nixon, B.A., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. International Series in Software Engineering, vol. 5, p. 476. Springer, Heidelberg (1999)MATHGoogle Scholar
  4. 4.
    Barbacci, M., Longstaff, T.H., Klein, M.H., Weinstock, C.B.: Quality Attributes, Technical Report CMU/SEI-95-TR-021, ESC-TR-95-021 (December 1995)Google Scholar
  5. 5.
    IEEE Standard 1061-1992 Standard for a Software Quality Metrics Methodology. Institute of Electrical and Electronics Engineers, New York (1992)Google Scholar
  6. 6.
    Freeman, P.A.: Software Perspectives: The System is the Message. Addison-Wesley, Reading (1987)Google Scholar
  7. 7.
    QFD Institute, Quality Function Deployment, http://www.qfdi.org/
  8. 8.
    Hauser Jr., Clausing, D.: The house of quality. Harvard Business Review 66(3), 63–73 (1988)Google Scholar
  9. 9.
    Yeh, R.T., Zave, P., Conn, A.P., Cole, G.E.: Software Requirements Analysis — New Directions and Perspectives. In: Vick, C.R., Ramamoorthy, C.V. (eds.) Handbook of Software Engineering, Van Nostrand Reinhold Co. (1984)Google Scholar
  10. 10.
    Glinz, M.: On Non-Functional Requirements. In: 15th IEEE International Requirements Engineering Conference (RE 2007), pp. 21–26 (2007)Google Scholar
  11. 11.
    Paech, B., Kerkow, D.: Non-Functional Requirements Engineering - Quality is Essential. In: 10th Anniversary International Workshop on Requirements Engineering: Foundation for Software Quality, REFSQ 2004 (2004), http://www.sse.uni-essen.de/refsq/downloads/toc-refsq04.pdf
  12. 12.
    Landes, D., Studer, R.: The Treatment of Non-Functional Requirements in MIKE. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, vol. 989, pp. 294–306. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  13. 13.
    A lexical database of English, http://wordnet.princeton.edu/
  14. 14.
    ISO/IEC 9126-1:2001(E): Software Engineering - Product Quality - Part 1: Quality Model (2001)Google Scholar
  15. 15.
    Jureta, I.J., Faulkner, S., Schobbens, P.-Y.: A more expressive softgoal conceptualization for quality requirements analysis. In: Embley, D.W., Olivé, A., Ram, S. (eds.) ER 2006. LNCS, vol. 4215, pp. 281–295. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Roman, G.-C.: A Taxonomy of Current Issues in Requirements Engineering. IEEE Computer, 14–21 (April 1985)Google Scholar
  17. 17.
    Boehm, B.W., Brown, J.R., Kaspar, H., Lipow, M., MacLeod, G.J., Merritt, M.J.: Characteristics of Software Quality. North-Holland, Amsterdam (1978)MATHGoogle Scholar
  18. 18.
    Grady, R., Caswell, D.: Software Metrics: Establishing a Company-wide Program. Prentice-Hall, Englewood Cliffs (1987)Google Scholar
  19. 19.
    Bowen, T.P., Wigle, G.B., Tsai, J.T.: Specification of Software Quality Attributes, Report RADC-TR-85-37, vol. I (Introduction), vol. II (Software Quality Specification Guidebook), vol. III (Software Quality Evaluation Guidebook), Rome Air Development Center, Griffiss Air Force Base, NY (February 1985) Google Scholar
  20. 20.
    Bass, L., Nord, R., Wood, W., Zubrow, D.: Risk Themes Discovered Through Architecture Evaluations, Technical Report CMU/SEI-2006-TR-012, ESC-TR-2006-012 (2006)Google Scholar
  21. 21.
    Robertson, S., Robertson, J.: The Volere requirements process, Mastering the Requirements Process. Addison-Wesley, London (1999)Google Scholar
  22. 22.
    Ross, D.T.: Structured Analysis (SA): A Language for Communicating Ideas. IEEE Trans. Softw. Eng. 3(1), 16–34 (1977), http://dx.doi.org/10.1109/TSE.1977.229900
  23. 23.
    Chung, L., Supakkul, S.: Representing nFRs and fRs: A goal-oriented and use case driven approach. In: Dosch, W., Lee, R.Y., Wu, C. (eds.) SERA 2004. LNCS, vol. 3647, pp. 29–41. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  24. 24.
    Herrmann, A., Paech, B.: MOQARE: misuse-oriented quality requirements engineering. Requir. Eng. 13(1), 73–86 (2008)CrossRefGoogle Scholar
  25. 25.
    Cysneiros, L.M., do Prado Leite, J.C.: Using UML to reflect non-functional requirements. In: Stewart, D.A., Johnson, J.H. (eds.) Proceedings of the 2001 Conference of the Centre For Advanced Studies on Collaborative Research. IBM Centre for Advanced Studies Conference, vol. 2. IBM Press (2001)Google Scholar
  26. 26.
    Alexander, I.: Misuse cases help to elicit non-functional requirements. Computing & Control Engineering Journal 14(1), 40–45 (2003)CrossRefGoogle Scholar
  27. 27.
    de Sousa, T.G.M.C., Castro, J.F.B.: Towards a Goal-Oriented Requirements Methodology Based on the Separation of Concerns Principle. In: Anais do WER 2003 - Workshop em Engenharia de Requisitos, Piracicaba-SP, Brasil, November 27-28, 2003, pp. 223–239 (2003), http://wer.inf.puc-rio.br/WERpapers/artigos/artigos_WER03/georgia_souza.pdf
  28. 28.
    Leite, J.C., Hadad, G., Doorn, J., Kaplan, G.: A Scenario Construction Process. Requirements Engineering Journal 5(1), 38–61 (2000)CrossRefGoogle Scholar
  29. 29.
    Gunter, C., Gunter, E., Jackson, M., Zave, P.: A Reference Model for Requirements and Specifcations. IEEE Software, 37–43 (2000)Google Scholar
  30. 30.
    Yu, E.S.K.: Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the Third IEEE International Symposium on Requirements Engineering, pp. 226–235 (1997)Google Scholar
  31. 31.
    Castro, J., Kolp, M., Mylopoulos, J.: Towards requirements-driven information systems engineering: the Tropos project. Information Systems 27(6), 365–389 (2002)CrossRefMATHGoogle Scholar
  32. 32.
    Amyot, D., Mussbacher, G.: URN: Towards a new standard for the visual description of requirements. In: Sherratt, E. (ed.) SAM 2002. LNCS, vol. 2599, pp. 21–37. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  33. 33.
    Dutoit, A.H., Paech, B.: Rationale-based use case specification. Requirements engineering 7(1), 1–3 (2002)CrossRefMATHGoogle Scholar
  34. 34.
    Potts, C., Bruns, G.: Recording the reasons for design decisions. In: Proceedings of the 10th international Conference on Software Engineering. International Conference on Software Engineering, Singapore, April 11-15, 1988, pp. 418–427. IEEE Computer Society Press, Los Alamitos (1988)Google Scholar
  35. 35.
    Kunz, W., Rittel, H.W.J.: Issues as Elements of Information Systems, Working Paper No. 131 (July 1970); Studiengruppe für Systemforschung, Heidelberg, Germany (reprinted, May 1979)Google Scholar
  36. 36.
    Dutoit, A.H., McCall, R., Mistrík, I., Paech, B. (eds.): Rationale Management in Software Engineering. Springer, Heidelberg (2006)Google Scholar
  37. 37.
    Simon, H.A.: The Sciences of the Artificial, 3rd edn. The MIT Press, Cambridge, MA (1977)Google Scholar
  38. 38.
    Cysneiros, L.M., Leite, J.C.: Nonfunctional Requirements: From Elicitation to Conceptual Models. IEEE Trans. Softw. Eng. 30(5), 328–350 (2004), http://dx.doi.org/10.1109/TSE.2004.10 CrossRefGoogle Scholar
  39. 39.
    Liaskos, S., Lapouchnian, A., Yu, Y., Yu, E.S.K., Mylopoulos, J.: On Goal-based Variability Acquisition and Analysis. In: RE 2006, pp. 76–85 (2006)Google Scholar
  40. 40.
    Yu, Y., Lapouchnian, A., Liaskos, S., Mylopoulos, J., Leite, J.C.: From goals to high-variability software design. In: An, A., Matwin, S., Raś, Z.W., Ślęzak, D. (eds.) Foundations of Intelligent Systems. LNCS, vol. 4994, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  41. 41.
    González-Baixauli, B., Laguna, M.A., Leite, J.C.: Using Goal-Models to Analyze Variability. In: First International Workshop on Variability Modelling of Software-Intensive Systems, VaMoS 2007, Proceedings, Limerick, Ireland, January 16-18, 2007, pp. 101–107, Lero Technical Report 2007-01 2007 (2007)Google Scholar
  42. 42.
    Giorgini, P., Mylopoulos, J., Nicchiarelli, E., Sebastiani, R.: Reasoning with Goal Models. In: Spaccapietra, S., March, S.T., Kambayashi, Y. (eds.) ER 2002. LNCS, vol. 2503, pp. 167–181. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  43. 43.
    Kaiya, H., Horai, H., Saeki, M.: AGORA: Attributed Goal-Oriented Requirements Analysis Method. In: Proceedings of the 10th Anniversary IEEE Joint international Conference on Requirements Engineering, September 09-13, 2002, pp. 13–22. IEEE Computer Society, Washington (2002)CrossRefGoogle Scholar
  44. 44.
    Liu, L., Yu, E., Mylopoulos, J.: Security and Privacy Requirements Analysis within a Social Setting. In: Proceedings of the 11th IEEE international Conference on Requirements Engineering, September 08-12, 2003, IEEE Computer Society, Washington (2003)Google Scholar
  45. 45.
    Gonzalez-Baixauli, B., Leite, J.C., Mylopoulos, J.: Visual Variability Analysis for Goal Models. In: Proceedings of the Requirements Engineering Conference, 12th IEEE international, September 06-10, 2004, pp. 198–207. IEEE Computer Society, Washington (2004), http://dx.doi.org/10.1109/RE.2004.56 Google Scholar
  46. 46.
    Horkoff, J., Yu, E.S.K.: Qualitative, Interactive, Backward Analysis of i* Models. In: iStar 2008, pp. 43–46 (2008)Google Scholar
  47. 47.
    Oliveira, A.P.A., Leite, J.C., Cysneiros, L.M.: AGFL - Agent Goals from Lexicon - Eliciting Multi-Agent Systems Intentionality. In: iStar 2008, pp. 29–32 (2008)Google Scholar
  48. 48.
    Niu, N., Easterbrook, S.M.: Managing Terminological Interference in Goal Models with Repertory Grid. In: RE 2006, pp. 296–299 (2006)Google Scholar
  49. 49.
    González-Baixauli, B., Leite, J.C., Laguna, M.A.: Eliciting Non-Functional Requirements Interactions Using the Personal Construct Theory. In: RE 2006, pp. 340–341 (2006)Google Scholar
  50. 50.
    Cysneiros, L.M., Werneck, V., Kushniruk, A.: Reusable Knowledge for Satisficing Usability Requirements. In: RE 2005, pp. 463–464 (2005)Google Scholar
  51. 51.
    Cleland-Huang, J., Settimi, R., BenKhadra, O., Berezhanskaya, E., Christina, S.: Goal-centric traceability for managing non-functional requirements. In: Proceedings of the 27th international Conference on Software Engineering, ICSE 2005, St. Louis, MO, USA, May 15-21, 2005, pp. 362–371. ACM, New York (2005), http://doi.acm.org/10.1145/1062455.1062525 Google Scholar
  52. 52.
    Cleland-Huang, J., Marrero, W., Berenbach, B.: Goal-Centric Traceability: Using Virtual Plumblines to Maintain Critical Systemic Qualities. IEEE Trans. Softw. Eng. 34(5), 685–699 (2008), http://dx.doi.org/10.1109/TSE.2008.45 CrossRefGoogle Scholar
  53. 53.
    Grundy, J.C.: Aspect-Oriented Requirements Engineering for Component-Based Software Systems. In: Proceedings of the 4th IEEE international Symposium on Requirements Engineering, RE, June 07-11, 1999, pp. 84–91. IEEE Computer Society, Washington (1999)CrossRefGoogle Scholar
  54. 54.
    Moreira, A., Araújo, J., Brito, I.: Crosscutting quality attributes for requirements engineering. In: Proceedings of the 14th international Conference on Software Engineering and Knowledge Engineering, SEKE 2002, Ischia, Italy, July 15-19, 2002, vol. 27, pp. 167–174. ACM, New York (2002), http://doi.acm.org/10.1145/568760.568790 Google Scholar
  55. 55.
    Yu, Y., Leite, J.C., Mylopoulos, J.: From Goals to Aspects: Discovering Aspects from Requirements Goal Models. In: 12th IEEE international Proceedings of the Requirements Engineering Conference, September 06-10, 2004, pp. 38–47. IEEE Computer Society, Washington (2004), http://dx.doi.org/10.1109/RE.2004.23 Google Scholar
  56. 56.
    Brito, I., Moreira, A.: Integrating the NFR framework in a RE model. In: EA-AOSD 2004: Workshop on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design, held in conjunction with the 3rd International Conference on Aspect-Oriented Software Development, Lancaster, UK, March 22-26 (2004), http://trese.cs.utwente.nl/workshops/early-aspects-2004/Papers/BritoMoreira.pdf
  57. 57.
    Alencar, F., Silva, C., Moreira, A., Araújo, J., Castro, J.: Identifying Candidate Aspects with I-star Approach. In: Early Aspects 2006: Traceability of Aspects in the Early Life Cycle, pp. 4–10 (2006)Google Scholar
  58. 58.
    de Padua Albuquerque Oliveira, A., Cysneiros, L.M., do Prado Leite, J.C., Figueiredo, E.M., Lucena, C.J.: Integrating scenarios, i*, and AspectT in the context of multi-agent systems. In: Proceedings of the 2006 Conference of the Center For Advanced Studies on Collaborative Research, CASCON 2006, Toronto, Ontario, Canada, October 16-19, 2006, p. 16. ACM, New York (2006), http://doi.acm.org/10.1145/1188966.1188988 CrossRefGoogle Scholar
  59. 59.
    da Silva, L.F., Leite, J.C.: Generating Requirements Views: A Transformation-Driven Approach. ECEASST 3 (2006)Google Scholar
  60. 60.
    Yu, Y., Niu, N., González-Baixauli, B., Mylopoulos, J., Easterbrook, S., Leite, J.C.: Requirements Engineering and Aspects. In: Design Requirements Engineering: A Ten-Year Perspective. Lecture Notes in Business Information Processing, pp. 432–452. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  61. 61.
    Parnas, D.L., Madey, J.: Functional Documentation for Computer Systems. Science of Computer Programming 25(1), 41–61 (1995)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Lawrence Chung
    • 1
  • Julio Cesar Sampaio do Prado Leite
    • 2
  1. 1.Department of Computer ScienceThe University of Texas at DallasUSA
  2. 2.Departamento de InformáticaPontifícia Universidade Católica do Rio de JaneiroBrazil

Personalised recommendations