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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
M. Alford, “SREM at the Age of Eight,” IEEE Computer, Vol. 18, No. 4, April 1985, pp. 36–46.
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.
F.P. Brooks, Jr., The Mythical Man-Month: Essays on Software Engineering, Addison-Wesley Publishing Company, Reading, MA, 1975.
F.P. Brooks, Jr., “No Silver Bullet: Essence and Accidents of Software Engineering,” IEEE Computer, Vol. 20, No. 4, April 1987, pp. 10–19.
Computer Science Technology Board, “Scaling up: A Research Agenda for Software Engineering,” Communications of the ACM, Vol. 33, No. 3, 1990, pp. 281–293.
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.
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.
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.
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.
N.G. Leveson, “Software Safety in Embedded Computer Systems,” Communications of the ACM, Vol. 34, No. 2, 1991, pp. 35–46.
B. Meyer, “On Formalism in Specifications,” IEEE Software, Vol. 2, No. 1, January 1985, pp. 6–26.
W. Myers, “Can Software for the Strategic Defense Initiative ever be Error-free?” IEEE Computer, Vol. 19, No. 11, November 1986.
P. Naur, “Programming in Action Clusters,” BIT, Vol. 9, No. 3, 1969, pp. 250–258.
D.L. Parnas, “Fighting Complexity,” Invited Talk, International Conference on Engineering Complex Computer Systems (ICECCS’95), Fort Lauderdale, Florida, November 1995.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer Science+Business Media New York
About this chapter
Cite this chapter
Alagar, V.S., Periyasamy, K. (1998). The Role of Specification. In: Specification of Software Systems. Graduate Texts in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-1-4757-2920-7_1
Download citation
DOI: https://doi.org/10.1007/978-1-4757-2920-7_1
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4757-2922-1
Online ISBN: 978-1-4757-2920-7
eBook Packages: Springer Book Archive