Software Engineering -- CS511
Boston University -- Fall 2001
Books / Articles / Links
Software Engineering, 6th Edition. Ian Sommerville. Addison-Wesley, 2001. ISBN 0-201-39815-X.
Rapid Development. By Steve McConnell. Microsoft Press, 1996. ISBN 1-55615-900-5.
Code Complete. By Steve McConnell. Microsoft Press, 1993. ISBN 1-55615-484-4.
The Mythical Man-Month, 20th Anniversary Edition. By Frederick Brooks. Addison-Wesley, 1995. ISBN 0-201-83595-9. A classic.
Death March: The Complete Software Developer's Guide to Surviving Mission Impossible Projects. By Edward Yourdon. Prentice-Hall, 1997. ISBN 0-13-748310-4. A "new classic". Yourdon's writing is entertaining but breezy. You can skim the book pretty quickly to get the main ideas.
Debugging the Development Process. By Stephen A. Maguire. Microsoft Press, 1994. ISBN 1-55615-650-2. From a veteran development manager at Microsoft. This guy is one of the clearest thinkers around about software development. See also his programming book below.
Software Project Survival Guide. By Steve McConnell. Microsoft Press, 1998. ISBN 0-7356-0597-1.
Dynamics of Software Development. By Jim McCarthy. Microsoft Press, 1995. ISBN 1556158238.
Software Engineering Classics. By Maguire, McCarthy, McConnell. Microsoft Press, 1998. ISBN 0-7356-0597-1. The three books above in one package. Worth the price ($60).
Software Engineering: Theory and Practice. By Shari L. Pfleeger. Prentice Hall, 1998. ISBN 0-13-624842-X. One of the standard textbooks on software engineering.
C: A Software Engineering Approach, 3rd edition. By Peter Darnell and Philip Margolis. Springer-Verlag, 1996. ISBN: 0387946756. A great book to learn C, improve your existing skills, or keep as a reference. (Disclaimer: The authors are friends of mine.)
Writing Solid Code. By Stephen A. Maguire. Microsoft Press, 1993. ISBN 1-55615-551-4. Excellent programming advice.
Design Patterns: Elements of Reusable Object Oriented Software. By Gamma, Helm, Johnson, and Vlissides. Addison Wesley, 1995. ISBN 0-201-63361-2.
Shari Pfleeger's web site for her SE textbook. Many useful links.
A fascinating account of a (real) rocket explosion caused by software errors and faulty software design methods.
A good article from Scientific American about the function point method of estimating software size and complexity.
A description of a medical accident caused by bad software design.
A good article in Scientific American about the state of software engineering. (Note: This link is to someone's copy of the article, so it may disappear.)
The newsgroup about software engineering... (As with all newsgroups, there is a lot of clutter in here, but if you are interested in SE it is worth scanning occasionally.)