SE 386 Software Maintenance and Reengineering
Spring 2005
Instructor: Mike Rowe
Office: 215 Ullrich (Hopefully)
Phonees: 342-1511
Course Description:
- Study of the topics related to maintaining large-scale software systems.
Study and gain practical experience of software engineering topics such as
estimation, software quality assurance, configuration management,
verification & validation, inspections, and personal and team software process
as they relate to software maintenance projects. Coverage of traditional
analysis and design methods such as structured analysis and design. Multiple,
team-based projects: reengineering a small system to be object-oriented,
porting a moderate-sized system, and specifying and making changes to a
moderate-sized existing software project. Prerequisite: SE 2730. Corequisite: SE 3430.
Course Objectives and Syllabus:
- Upon completion of this course, students should be able to:
- Understand the role of maintenance in software development
- Perform a structured analysis and design on a small project
- Plan, analyze, design, implement, and test modifications to an existing software project
- Understand the issues and complete a software system port
- Understand the issues and complete a reengineering project
- Understand and have practical experience in the issues related to outsourcing software projects
- Work effectively in a team on a software maintenance project
Syllabus
(in MS Word Format)
Important Dates:
- Classes Begin: 19-Jan-2005
- Spring Break: 3/21/2005 through 3/28/2005
- Last Drop/Withdraw Date: 3/14/2005
- Last Project Submit: 5/6/2005/
- Final Test: 9-May-2005 1:00 PM
Preliminary Schedule for Assignments / Deliverables / Quizzes / Tests
Class Notes/Handouts
Presentation Related Material

Princeton Watches
CS and SE web site