This is the second of two courses in the Software Engineering Real Client Team Project sequence, which forms the core of the Master of Science in Computer Science with specialization in Software Engineering. The Fall Software Engineering I course enables students to both learn and apply the skills involved in the systems engineering of software-intensive systems. These skills include operational concept formulation; system and software requirements negotiation, prototyping, and architecting; software project and life cycle planning; and development of evidence of the system and software feasibility. The Spring Software Engineering II course focuses on software product creation, integration, test and maintenance with an emphasis on quality software production. Much of the content is organized around the key practices in the SEI Integrated Capability Maturity Model (CMMI).

This course will focus on the application of software engineering process models and management approaches that are scalable for the definition and development of large software systems. Students will work in teams and be required to understand and apply the Incremental Commitment Spiral Model (ICSM) for system and software engineering to real-world projects. Mastery of the ICSM is facilitated both by the ICSM textbook and the ICSM Electronic Process Guide on the class web site.

Past projects have included development of software-intensive systems for clients on the USC campus; in USC neighborhood small business and community service organizations; and in local government agencies. The resulting project experiences and software project definition and execution portfolios provide students with evidence of their ability to develop successful software-intensive systems, that has been found to be highly valuable both in job interviews and students' subsequent careers.

The DEN students will be responsible for "Independent Integrated Verification and Validation" (IIV & V). Verification and validation is one of the software engineering disciplines that helps build quality into the software. V & V is a collection of analysis and testing activities across the full life cycle and complements the efforts of other quality-engineering functions. It determines that the software performs its intended functions correctly, performs no unintended functions and measures the quality and reliability of the software. The DEN students will be assigned a single project for which they will play the role of IIV & V.

Course Prerequisite:
   Graduate standing

Lecture Time and Location:
   W, 6:40 - 9:20 pm, OHE 136

Assignments and Grading (Approximate Distribution)

Individual Assignments 35%
Individual Critique 10%
Individual Contribution 5%
Project (Team assignments) 45%
Client Evaluation 5%


Boehm, Lane, Koolmanojwong, and Turner, The Incremental Commitment Spiral Model: Principles and Practices for Successful Systems and Software, Addison Wesley, 2014. Available in the USC campus bookstore.

Content of other relevant books is provided via the Electronic Papers.


Process for Asking Questions

Due to the high number of students in the class, we find it necessary to have a process in place that helps us to help you as efficiently as possible so all students get the greatest possible benefit. The process depends greatly on whether your question is of a personal/individual nature or of general interest to all students.

Questions of an individual nature include grades given to you or your team, concerns about staff or team members or anything else that carries a reasonable expectation of privacy. Questions of general interest include guidelines for assignment contents or submissions, schedules, team activities and anything else that doesn't just affect one person and is not a private matter.

Any questions of individual nature can be addressed to our staff via email and will be addressed via individual email.

To get your questions of general interest answered quickly, please follow the steps below (in order):

  1. First check if it has already been addressed in the Discussion Board in DEN.
  2. If not, please post it there. One of the TAs will reply as soon as possible. If the TAs cannot answer your question, the TA will state it on the discussion board. Your next step should then be to please try to contact the course instructors in person after class or during their office hour, or contact them via email.

If you send a question of general interest to the TA email address, we will respectfully ask you to post it on the Discussion Board. After you do so, we will reply on the Discussion Board.


Name Office Hours and Location
Dr. Supannika Koolmanojwong Office: SAL 332
Phone: TBD
Email: koolmano@usc.edu
Office Hours: W 5:30 - 6:30 P.M. and by appointment

Teaching Assistants:

Name Office Hours and Location
Nupul Kukreja Office: SAL 329
Phone: (213) 740-6505
Email: csci577@usc.edu
Office Hours: W 11:00 A.M. - !:00 P.M.


Name Office Hours and Location
TBD Office: TBD
Phone: TBD
Email: TBD
Office Hours: TBD