Textbooks and other materials:

Required: Simon, The Sciences of the Artificial, MIT Press, 1996. I expect that you will have read this book in its entirety by week 4.

Required: Winograd, Bringing Design to Software

Required: Jackson, Software Requriements and Specifications, Addison-Wesley, 1995.

Another interesting text, Jackson, Problem Frames, Analyzing and structuring software development problems, Addison-Wesley, 2001.

For a good introduction to Software Engineering (especially if you do not have much experience), get Hamlet, Maybee, The Engineering of Software, Addison -Wesley, 2001.


Several textbooks are highly recommended reading as noted in class!

WEB RESOURCES for software engineering bibliographies can be found here and here among other places. Have a look around!

Lecture one slides for this class are available in powerpoint here.

*** FIRST READINGS: Find 3 papers to read for second week discussions here. Also, please read this one, handed out in class but referenced here also Shaw. It is simple and to the point. It gives a general overview of the nature and direction of software engineering research. The class will write papers and follow these guidelines as we work to understand, criticize, and enhance the research and practice in the field.

NOTE: Some sample criteria for evaluation of requirements documents can be found here for your use.

My own suggestions for reading and analyzing research papers can be reviewed here.
Slides from the TCAS (Requirements State Machines Language) documentation effort are given here, more advice on how to analyze (or write) a good paper. Some suggestions for the paper proposal . Further note: Review the new Software Engineering Code of Ethics approved and published by both the IEEE and ACM.  This code is written for those claiming to be, or involved in "software engineering." Have a copy and read it regularly.  Think about it.  Make friends with it, or at least understand its general principles if you do not agree with it (which is just fine!)


Here are some of the assignments and references to papers we'll read. Don't count on this as anything near complete. The course content is dynamic and will change on the fly.