Code Complete
Encyclopedia
Code Complete is a software development
book, written by Steve McConnell
and published in 1993 by Microsoft Press
, urging developers to get past code and fix programming and the "big design up front" waterfall model
. It is also a compendium of software construction techniques, from naming variables to deciding when to write a subroutine.
McConnell defines the main activities in construction as:
Although he does not dismiss the value of other aspects of software development such as requirements and documentation, McConnell emphasizes the construction of software because:
in 1993.
Software development
Software development is the development of a software product...
book, written by Steve McConnell
Steve McConnell
Steven C. McConnell is an author of many software engineering textbooks including Code Complete, Rapid Development, and Software Estimation...
and published in 1993 by Microsoft Press
Microsoft Press
Microsoft Press is the publishing arm of Microsoft, usually releasing books dealing with various current Microsoft technologies. Microsoft Press' first introduced books were The Apple Macintosh Book by Cary Lu and Exploring the IBM PC by Peter Norton in 1984 at the West Coast Computer Faire...
, urging developers to get past code and fix programming and the "big design up front" waterfall model
Waterfall model
The waterfall model is a sequential design process, often used in software development processes, in which progress is seen as flowing steadily downwards through the phases of Conception, Initiation, Analysis, Design, Construction, Testing, Production/Implementation and Maintenance.The waterfall...
. It is also a compendium of software construction techniques, from naming variables to deciding when to write a subroutine.
McConnell defines the main activities in construction as:
- detailed designSoftware designSoftware design is a process of problem solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design or employ designers to develop a plan for a solution...
- construction planning
- coding and debugging
- unit testing
- integration, and
- integration testingIntegration testingIntegration testing is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before validation testing...
Although he does not dismiss the value of other aspects of software development such as requirements and documentation, McConnell emphasizes the construction of software because:
- Construction is a large part of software development.
- Construction is the central activity in software development.
- With a focus on construction, the individual programmer's productivity can improve enormously.
- The source code defines the operation of the software; if code and documentation disagree, the documentation is wrong.
- Construction is the only activity that's guaranteed to be done.
Reception
Code Complete has received outstanding reviews, being widely regarded as one of the leading must-reads for software developers. It won a Jolt awardJolt Awards
The Jolt Awards are awards in the software industry.Since 1990, the Dr. Dobb's Jolt Product Excellence Awards have been presented annually to showcase products that have "jolted" the industry with their significance and made the task of creating software faster, easier, and more efficient.Jolt Cola...
in 1993.
Editions
- ISBN 978-1556154843 First edition (1993)
- ISBN 978-0735619678 Second edition (June 2004)