Skip to main content

Non-functional requirements in the design of software

  • Conference paper
  • First Online:
Book cover Software Engineering Education (CSEE 1994)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 750))

Included in the following conference series:

Abstract

We argue for greater emphasis on design in software engineering courses, and for design under consideration of non-functional requirements. In particular we show that it is sometimes quite easy to determine early whether a design satisfies performance and reliability requirements. This is done by means of examples we have used in our courses. Performance and reliability analyses, which acquire particular importance with embedded real-time systems, require familiarity with probability and queueing theory. We recommend a special course on these topics.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Shaw: Prospects for an engineering discipline of software. IEEE Software 7, 6, 15–24 (Nov. 1990).

    Article  Google Scholar 

  2. A. Spector, D. Gifford: A computer science perspective on bridge design. Comm. ACM 29, 268–283 (1986).

    Article  Google Scholar 

  3. M. Dyer: The Cleanroom Approach to Quality Software Development. New York: Wiley 1992.

    Google Scholar 

  4. A. J. Offutt, R. H. Untch: Integrating research, reuse, and integration into software engineering courses. Proc. SEI Conference 1992 on Software Engineering Education (Springer-Verlag LNCS 640), 88–98.

    Google Scholar 

  5. W. Swartout, R. Balzer: On the inevitable intertwining of specification and implementation. Comm. ACM 25, 438–440 (1982).

    Article  Google Scholar 

  6. R. Balzer, T. E. Cheatham, C. Green: Software technology in the 1990's: using a new paradigm. Computer 16, 11, 39–45 (Nov. 1983).

    Google Scholar 

  7. R. T. Yeh: Notes on concurrent engineering. IEEE Trans. Knowledge and Data Eng. 4, 407–414 (1992).

    Article  Google Scholar 

  8. P. Dewan, J. Riedl: Toward computer-supported concurrent software engineering. Computer 26, 1, 17–27 (Jan. 1993).

    Article  Google Scholar 

  9. R. Kerr: A materialistic view of the software “engineering” analogy. ACM SIGPLAN Notices 22, 3, 123–125 (Mar. 1987).

    Article  Google Scholar 

  10. A. T. Berztiss: Engineering principles and software engineering. Proc. SEI Conference 1992 on Software Engineering Education (Springer-Verlag LNCS 640), 437–451.

    Google Scholar 

  11. B. W. Boehm: Software Engineering Economics. Englewood Cliffs, NJ: Prentice-Hall 1981.

    Google Scholar 

  12. C. A. R. Hoare: An overview of some formal methods for program design. Computer 20, 9, 85–91 (Sept. 1987).

    Google Scholar 

  13. A. Hall: Seven myths of formal methods. IEEE Software 7, 5, 11–19 (Sept. 1990).

    Article  Google Scholar 

  14. J. F. Rockart: Critical success factors. Harvard Business Review 57, 2, 81–91 (March–April 1979).

    PubMed  Google Scholar 

  15. B. M. E. De Waal, G. H. van der Heiden: The evaluation of user-friendliness in the design process of user interfaces. In Human Factors in Information Systems Analysis and Design, A. Finkelstein, M. J. Tauber, R. Traunmueller, Eds., 93–103. Amsterdam: North-Holland 1990.

    Google Scholar 

  16. D. L. Parnas: On the criteria to be used in decomposing systems into modules. Comm. ACM 15, 1053–1058 (1972).

    Article  Google Scholar 

  17. C. U. Smith: Performance Engineering of Software Systems. Reading, MA: Addison-Wesley 1990.

    Google Scholar 

  18. R. G. G. Cattell, J. Skeen: Object operations benchmark. ACM Trans. Database Systems 17, 1–31 (1992).

    Article  Google Scholar 

  19. A. O. Allen: Probability, Statistics, and Queueing Theory with Computer Science Applications. New York: Academic Press 1978.

    Google Scholar 

  20. J. C. Knight, N. G. Leveson: An experimental evaluation of the assumption of independence in multiversion programming. IEEE Trans. Software Eng. SE-12, 96–109 (1986).

    Google Scholar 

  21. R. K. Scott, J. W. Gault, D. F. McAllister: Fault-tolerant software reliability modeling. IEEE Trans. Software Eng. SE-13, 582–592 (1987).

    Google Scholar 

  22. J. D. Musa, A. Iannino, K. Okumoto: Software Reliability — Measurement, Prediction, Application. New York: McGraw-Hill 1987.

    Google Scholar 

  23. S. Brocklehurst, B. Littlewood: New ways to get accurate reliability measures. IEEE Software 9, 4, 34–42 (July 1992).

    Article  Google Scholar 

  24. R. W. Butler, G. B. Finelli: The infeasibility of experimental quantification of life-critical software reliability. Proc. ACM SIGSOFT '91 Conf. Software for Critical Systems (Software Engineering Notes 16, 5 (Dec. 1991)), 66–76. [Reprinted: IEEE Trans. Software Eng. 19, 3–12 (1993).]

    Article  Google Scholar 

  25. S. V. Hoover, R. F. Perry: Simulation, a Problem-Solving Approach. Reading, MA: Addison-Wesley 1989.

    Google Scholar 

  26. R. Jain: The Art of Computer Systems Performance Analysis. New York: Wiley 1991.

    Google Scholar 

  27. K. Kant: Introduction to Computer System Performance Evaluation. New York: McGraw-Hill 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jorge L. Díaz-Herrera

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Berztiss, A.T. (1993). Non-functional requirements in the design of software. In: Díaz-Herrera, J.L. (eds) Software Engineering Education. CSEE 1994. Lecture Notes in Computer Science, vol 750. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017628

Download citation

  • DOI: https://doi.org/10.1007/BFb0017628

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57461-3

  • Online ISBN: 978-3-540-48191-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics