Software Development Books

According to Construx Software's Professional Software Engineering Pyramid, only about 3% of US-based developers read books on software engineering. There is a lot to be learned from the experiences of others. Particularly from those that have been doing something longer than you have. Here is a list of books that have prevented me from wasting months and even years working out the solutions to common software development issues. With solutions to the common issues in hand, I am able to focus on the unique, project-specific obstacles I encounter when building software applications.

About Face: The Essentials of User Interface Design


by Alan Cooper
About Face: The Essentials of User Interface Design
Comments: A lot of people talk about user-centered design. Then they go on to build systems that focus too narrowly on a user's tasks rather than actually examining a user's goals. This distinction was quite an eye-opener for me and I am guessing it would be for a lot of other developers, designers, and project managers.

Code Complete: A Practical Handbook of Software Construction


by Steve McConnell
Code Complete: A Practical Handbook of Software Construction
Comments: I have seen a few companies spend months discussing a set of company-wide coding standards. If it were up to me I would have everyone read this book and then sit down for a day or two and decide on which chapters to use and which chapters to ignore. That subset of chapters would then become the company's coding standards.

Information Architecture for the World Wide Web


by Louis Rosenfeld & Peter Morville
Rapid Development
Comments: An excellent look at how information should be organized and disseminated. Many of the topics are common to most websites regardless of their size, complexity, or target audience. Of particular interest to me were the chapters on navigational systems and labeling.

Manager's Handbook for Software Development


by the Software Engineering Laboratory of NASA
Manager's Handbook for Software Development
Comments: NASA builds some of the most mission-critical software applications in the world. Their software development efforts are extraordinary. Yet while managing to achieve productivity levels equal to or better than the average software development shop, they can simultaneously improve quality by 10 to 20 times. While reading this handbook I was continually amazed at the amount of quantitative data that NASA's Software Engineering Lab has gathered to help with estimating project time and cost, measuring system complexity, and determining optimum team size. NASA has even developed a formula (specific to their environment) to express the number of pages of documentation that will likely have to be written per line of code.

Rapid Development: Taming Wild Software Schedules


by Steve McConnell
Rapid Development
Comments: While McConnell's books Code Complete (above) and Software Project Survival Guide (below) are targeted at developers and project managers respectively, this is the book for lead developers. This book is a mix of both technical and managerial practices which I found very helpful in my many positions as Lead Web Developer.

Software Project Survival Guide


by Steve McConnell
Software Project Survival Guide
Comments: Chapter 2 provides a quick test for evaluating the chances that a software development project will succeed. This test provides a quantitative way to measure the improvement in one's project management skills since, by following the guidelines in this book, each successive project should score higher over time. This test alone makes the book worth purchasing.

The Mythical Man-Month: Essays on Software Engineering


by Frederick P. Brooks, Anniversary Edition
The Mythical Man-Month: Essays on Software Engineering
Comments: Ever wonder where the idea that adding more people to a late project makes the project run even later? Brooks explains the logic behind this idea. Another interesting essay is “No Silver Bullet” in which Brooks theorizes that in the next 10 years, from the time the essay was written, there would not be any new technologies or processes that would significantly improve the art of software development. This anniversary edition is an excellent revival of several influential essays on software engineering.

Web Navigation: Designing the User Experience


by Jennifer Flemming
Rapid Development
Comments: The first 100 pages of this book are fairly weak because the topics discussed are covered in more detail in other books. However, the second half of the book delves in to specific design ideas for different types (shopping, entertainment, information, learning, etc.) of sites. Furthermore, the discussions include a practical examination of a handful of live sites of each type.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 4.00 out of 5)
Loading...

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail.