COM 3205 Fundamentals of Software Engineering
Fall 2002

Covers software life cycle models (waterfall, spiral, etc.), domain engineering methods, requirements analysis methods (including formal specifications), software design principles and methods, verification and testing methods, resource and schedule estimation for individual software engineers, component-based software development methods and architecture, languages for describing software processes. Includes a project where some of the software engineering methods (from requirement elicitation to implementation) are applied in an example.

The only prerequisite is a solid background in object-oriented programming.

The textbook for this course is The Pragmatic Programmer. A recommended book (but not required) is Bernd Bruegge and Allen Dutoit Object-Oriented Software Engineering Conquering Complex and Changing Systems Prentice-Hall, 2000. ISBN 0-13-489725-0

Schedule

Assignments

Project

General Information

University Policy


Schedule

The Final Exam is a take-home exam that counts for 35% of the course grade.

The schedule given below indicates the order in which topics will be covered, along with the reading assignment for each topic.

1/8Introduction Software Engineering and UML. Chapter 1, Sections 2.1-2.3
1/15Martin Luther King, Jr. Day -- University Closed
1/22UML Details, Communication Section 2.4, Chapter 3
1/29Project Management Chapter 11
2/5Software Processes Chapter 12
2/12Mid-Term Exam. Requirements. Sections 4.1-4.4
2/19Analysis Sections 4.4, 4.5, 5.1, 5.2, 5.3
2/26Design Sections 5.4, 5.5, 6.1, 6.2, 6.3
3/5Objects Sections 6.4, 6.5, Chapter 7
TBAManaging Change Sections 8.1 - 8.3, 9.1 - 9.3, 10.1 - 10.3
3/15Final Exam

Assignments

There will be several assignments, each corresponding to a phase of a project. In addition, there will be a take-home final exam. The assignments count for 65% of the course grade.

IDVTCS Project

The project is to build a Law of Demeter checker and reengineering tool.

The project will be in four parts:

PhaseTeam Meeting DatesDue DateValue
Inception1/8/01 and 1/22/011/28/0125%
Project Management1/29/01 and 2/5/012/11/0120%
Analysis and Design2/12/01 and 2/19/012/25/0120%
Object Design (Final Exam)2/26/01 and 3/5/013/11/0135%

There is no provision for late submissions. If you haven't completed the documents, then turn in what you have on the due date. If nothing is turned in by the due date, then your score for the assignment is 0. The grader will acknowledge receipt of all assignments.

General Information

My office number is 237 CN and telephone number is x2077. My email address is lieber@ccs.neu.edu. My home page is at http://www.ccs.neu.edu/home/lieber. My home page has my current office hours. The course home page is com3205.

If you have questions about the course material, please send me email. I will usually post my response to the course home page. If you request it in your question ("hide my identity please"), no trace of your identity will appear in the posting.


Karl Lieberherr
237 Cullinane Hall
College of Computer Science
Northeastern University
360 Huntington Avenue
Boston, MA 02115