How to Engineer Software

by Steve Tockey

Software can be engineered. Software should be engineered. But true engineering—in the sense of civil engineering, chemical engineering, mechanical engineering, aeronautical engineering, industrial engineering, etc.—of software requires more than just claiming “software engineer” as a job title. This book:

  • Defines what software engineering should really mean and shows how and why software needs to be developed this way
  • Presents the true nature of code—what lines of code actually mean—and draws out vital implications from that
  • Explains how the common difficulties experienced on mainstream software projects are avoided when this approach is applied

The approach in this book derives from work started in 1987 and has been used on a variety of software projects including real-time / embedded, scientific & engineering, and business data processing. All of these projects met or favorably exceeded stakeholder expectations for schedule, cost, content, software quality and long-term maintenance.

This book is aimed at the software development and maintenance technical community: developers, development leads, architects, etc. with intent to prepare them to be true Software engineers. Business analysts and Software Quality Assurance (SQA) professionals can also benefit from sections in the book.

Buy the Book

About the author

Steve Tockey is the Principal Consultant at Construx Software. He has been employed in the software industry since 1977, and has worked as a programmer, analyst, designer, researcher, consultant, and adjunct professor. During his career, which has included stints at Lawrence Livermore National Laboratory, The Boeing Company, and Rockwell Collins, Inc., Steve has obtained an in-depth knowledge of software engineering practices, including project management, estimation, quality techniques, object-oriented development and distributed object computing.

Steve has a Master’s of Software Engineering from Seattle University as well as a Bachelor of Arts in Computer Science from the University of California, Berkeley.