The Role of Specification

  • V. S. Alagar
  • K. Periyasamy
Part of the Graduate Texts in Computer Science book series (TCS)

Abstract

Software continues to play a prominant and critical role in large business applications, technical endeavors in space missions, and control systems for airlines, railways, and telecommunications. Software for managing these applications is complex to construct. The source of complexity of a software product lies in the set of stringent requirements, system integrity constraints, and the vast amount of knowledge necessary to adequately describe the expected interaction of the software with its environment. When all requirements are not properly understood, recorded, and communicated within the development team, there is a gap between the documented requirements and the requirements actually needed for correct functioning of the system. The inability in mastering the complexity leads to this discrepancy, which is the root cause of software errors. Precise documentation of requirements with sufficient detail to cover unexpected worst-case scenarios is a good defense against system errors.

Keywords

Natural Language Software Complexity Life Cycle Model Behavioral Specification Silver Bullet 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    M. Alford, “SREM at the Age of Eight,” IEEE Computer, Vol. 18, No. 4, April 1985, pp. 36–46.CrossRefGoogle Scholar
  2. [2]
    V.R. Basili, “Quantitative Software Complexity Models: A Panel Summary” in V.R. Basili (Ed.), Tutorial on Models and Methods for Software Management and Engineering, IEEE Computer Society Press, Los Alamitos, CA, 1980.Google Scholar
  3. [3]
    F.P. Brooks, Jr., The Mythical Man-Month: Essays on Software Engineering, Addison-Wesley Publishing Company, Reading, MA, 1975.Google Scholar
  4. [4]
    F.P. Brooks, Jr., “No Silver Bullet: Essence and Accidents of Software Engineering,” IEEE Computer, Vol. 20, No. 4, April 1987, pp. 10–19.CrossRefGoogle Scholar
  5. [5]
    Computer Science Technology Board, “Scaling up: A Research Agenda for Software Engineering,” Communications of the ACM, Vol. 33, No. 3, 1990, pp. 281–293.CrossRefGoogle Scholar
  6. [6]
    B. Curtis, S.B. Sheppard, P. Milliman, M.N. Borst, and T. Love, “Measuring the Psychological Complexity of Software Maintenance Tasks with the Halstead and McCabe Metrics,” IEEE Transactions on Software Engineering, Vol. SE-5, No. 2, February 1979, pp. 96–104.MATHCrossRefGoogle Scholar
  7. [7]
    J.B. Goodenough and S. Gerhart, “Towards a Theory of Test Data Selection Criteria,” in R.T. Yeh (Ed.), Current Trends in Programming Methodology, Vol. 2, Prentice-Hall, Englewood Cliffs, NJ, 1977, pp. 44–79.Google Scholar
  8. [8]
    K.L. Heninger, “Specifying Software Requirements for Complex Systems: New Techniques and Their Application,” IEEE Transactions on Software Engineering, Vol. SE-6, No. 1, January 1989, pp. 2–12.CrossRefGoogle Scholar
  9. [9]
    K.L. Heninger, J.W. Kallander, J.E. Shore, and D.L. Parnas, “Software Requirements for the A-7E Aircraft,” (second printing), NRL Memorandum Report No. 3876, Naval Research Laboratories, Washington, D.C., 1980.Google Scholar
  10. [10]
    N.G. Leveson, “Software Safety in Embedded Computer Systems,” Communications of the ACM, Vol. 34, No. 2, 1991, pp. 35–46.CrossRefGoogle Scholar
  11. [11]
    B. Meyer, “On Formalism in Specifications,” IEEE Software, Vol. 2, No. 1, January 1985, pp. 6–26.CrossRefGoogle Scholar
  12. [12]
    W. Myers, “Can Software for the Strategic Defense Initiative ever be Error-free?” IEEE Computer, Vol. 19, No. 11, November 1986.CrossRefGoogle Scholar
  13. [13]
    P. Naur, “Programming in Action Clusters,” BIT, Vol. 9, No. 3, 1969, pp. 250–258.MATHCrossRefGoogle Scholar
  14. [14]
    D.L. Parnas, “Fighting Complexity,” Invited Talk, International Conference on Engineering Complex Computer Systems (ICECCS’95), Fort Lauderdale, Florida, November 1995.Google Scholar

Copyright information

© Springer Science+Business Media New York 1998

Authors and Affiliations

  • V. S. Alagar
    • 1
  • K. Periyasamy
    • 2
  1. 1.Department of Computer ScienceConcordia UniversityMontrealCanada
  2. 2.Department of Computer ScienceUniversity of ManitobaWinnipegCanada

Personalised recommendations