References
The C Language Standard
-
ANSI X3.159-1989, "Programming Languages - C", American National Standards Institute, 1989
-
The ANSI version of the language standard, subsequently published in nearly identical form as the ISO:C-90 Language Standard.
-
ISO/IEC 9899:1990, "Programming Languages - C", ISO, 1990.
-
ISO/IEC 9899:COR1:1995, "Technical Corrigendum 1, 1995", ISO, 1994.
-
ISO/IEC 9899:AMD1:1995, "Amendment 1, 1995", ISO, 1995.
-
ISO/IEC 9899:COR2:1996, "Technical Corrigendum 2, 1996", ISO, 1996.
-
Kernighan B.W., Ritchie D.M., "The C Programming Language", 2nd edition, ISBN 0-13-110362-8, Prentice Hall, 1988
-
ISO/IEC 9899:1999, "Programming languages - C", ISO, 1999.
-
ISO/IEC 9899:COR1:2001, "Technical Corrigendum 1, 2001", ISO, 2001.
-
ISO/IEC 9899:COR2:2004, "Technical Corrigendum 2, 2004", ISO, 2004.
-
ISO/IEC 9899:COR3:2007, "Technical Corrigendum 3, 2007", ISO, 2007.
The C++ Language Standard
-
ISO/IEC 14882:2003, "The C++ Standard Incorporating Technical Corrigendum 1", ISO, 2003.
-
MISRA Publications
-
MISRA-C:1998, "Guidelines for the Use of the C Language In Vehicle Based Software", ISBN 0-9524156-9-0, Motor Industry Research Association, Nuneaton, April 1998.
-
MISRA-C:2004, "Guidelines for the use of the C language in critical systems", ISBN 0-9524156-2-3, Motor Industry Research Association, Nuneaton, October 2004.
-
MISRA-C++:2008, "Guidelines for the use of the C++ language in critical systems", ISBN 978-1-906400-03-3, Motor Industry Research Association, Nuneaton, June 2008.
-
MISRA, "Development Guidelines for Vehicle Based Software", ISBN 0-9524156-0-7, Motor Industry Research Association, Nuneaton, November 1994.
-
MISRA, "Report 5, Software Metrics", Motor Industry Research Association, Nuneaton, February 1995.
Other Literature
-
Adams, N.E., (1984) "Optimizing preventive service of software products", IBM Journal Research and Development, Vol 28, Issue 1 pp 2-14.
-
A fascinating study which showed amongst other things that 30% of software
failures appear only after 5000 execution years and that most failures
are due to a relatively small number of faults.
-
Boehm, B., (1981) "Software Engineering Economics", Prentice-Hall, Englewood Cliffs, NJ.
-
A standard work on software cost, now a little dated but full of useful data.
-
Brandl, D.L. (1990), "Quality Measures in Design", ACM Sigsoft Software Engineering Notes, vol 15, 1.
-
A description of a dataflow type metric for interfaces.
-
Fenton, N.E. (1991) "Software Metrics - a rigorous approach", Chapman-Hall, ISBN 0-412-40440-0
-
An excellent and rigorous approach to the measurement of software systems.
-
Halstead, M.M. (1977) "Elements of Software Science", Elsevier, North-Holland inc., New York.
-
The standard reference for software science whereby programs are considered
as streams of operator and operand tokens leading to definitions of entropy
and difficulty inter alia.
-
Hatton, L. (1995) "Safer C: developing software in high-integrity and safety-critical systems", McGraw-Hill, ISBN 0-07-707640-0.
-
A detailed treatment of high-integrity systems generally, and the steps
which need to be taken with C in particular to render it capable of use
in such areas. Covers safer subsets and other testing issues.
-
Hatton L., Hopkins T.R. (1989) "Experiences with Flint, a software metrication tool for Fortran 77", Symposium on Software Tools, Napier Polytechnic, Edinburgh, Scotland.
-
A description of various measurements made on the NAG scientific subroutine library.
-
Leveson, N. G., (1995) "Safeware: System Safety and Computers", Addison-Wesley, ISBN 0-201-11972-2
-
A detailed treatise on safety in computer systems generally, written by an internationally recognised authority, covering many issues.
-
McCabe, T. (1976) "A complexity measure", IEEE Transactions on Software Engineering, SE-2, (4), p 308-320.
-
A standard work on cyclomatic complexity.
-
Musa, J., Iannino and Okumuto, (1987) "Software Reliability: Measurement, Prediction, Application", McGraw-Hill
-
Covers a wide range of issues on reliability in considerable detail.
-
Nejmeh, B.A. (1988), "NPATH: A measure of execution path complexity and its applications", Comm ACM, 31, (2), p. 188-200.
-
Definition and measurements of a path count complexity algorithm with a C pseudo-code implementation.
Index