Personal Software Project Management--Overview

NOTE: This course was previously called "Summer 1999 First half of CS 665: Advanced Software Engineering Project".

This special offering of just the first half of CS 665 will cover the Personal Software Engineering Project Management Process (PPMP) portion of PSP and does one delivery of a software engineering project. Completion of CS 665, a requirment for an MSCS with a Software Engineering Specialization, should be possible in the Spring semester of 2000.

Like the most recent offerings of CS 665, a special modificaiton of the course catalog description has been authorized by the CS Department. Compare the "Implementation Description", below, with the original [now invalid] catalog description.

Implemented [Catalog] Description - CS 665 Advanced Software Engineering Project: Individual analysis, planning, development, and maintenance of a software product or development artifact, using principles and practices the Personal Software Process. Analysis of project lessons learned. Prerequisite: none.

Original, SUPERCEEDED Catalog Description - "CS 665 Advanced Software Engineering Project: Team analysis, planning, development, and maintenance of a software product, using principles and practices from CS 577ab. Analysis of project lessons learned. Prerequisite: CS577a; corequisite CS577b."

CS665 is the third of three courses in an evolving Software Engineering sequence which constitutes the core of a Master of Science in Computer Science with specialization in Software Engineering. Software Engineering I (CS577a) focuses on software plans, processes, requirements and architectures. Software Engineering II (CS577b) focuses on software product creation, integration, test and transition with an emphasis on quality software production. Both CS577 a and b are team project courses. CS665 will focus on planning, development, deployment and maintenance of a software product by an individual using a Personal Software Engineering Project Management Process (PPMP) and the Personal Software Process (PSP).

This CS599 course concept includes learning and application of a PPMP to the software engineering activities involved with productization of extensions or enhancements of existing products. The PPMP is subset of Watts Humphrey's "Personal Software Process" which focuses on project planning and tracking, including process definition, estimating and scheduling. The homework assignments for the first half of the CS665 course, i.e. this CS599 course, are all related to learning and practicing PPMP; providing a personal, spreadsheet-based tool set for PSP; and gathering data to be used during the second half of the course. The second half of the CS665 course teaches the rest of PSP and applies PSP and PPMP to the further development and productization of extensions or enhancements of existing products.

This summer version will cover the same material as the first half of the previous Winter/Spring and Summer offerings of CS665, but delivery of the course will be VERY different. This CS 599 course this summer will use the same lectures being used for a Professional Development (PD) version of PPMP being offered by USC's IITV.

 PPMP PD

WF, 6/30 to 8/6, 1999

9:00 AM - 12:00 noon

 CS599 Project

WF, 6/30 to 8/6

12:00 noon - 1:00 p.m.

 CS599 Project

M, 7/12 to 8/9

9:00 a.m. - 1:00 p.m.

Sharing lectures with PPMP-PD has several advantages. ALL PPMP exercises will be started IN CLASS: the time wasted struggling to learn "spreadsheet programming" should be negligible. Also, the long class sessions are designed to avoid the need for office hours, while providing support and insight for all on the project work, especially the remote students.

In general, it is planned that the 60 minutes of each W+F ITV class session (12:00noon-1:00PM) will be devoted to the your project related assignments.

This special summer CS599 is available ONLY to matriculated graduate students.

The course projects for the course will be either enhancements or extensions of the USC-CSE COCOMO™ II product line. Students will be required to plan, implement and deploy one delivery of their project(s) during the semester. The projects will be developed in conjunction with staff from the USC Center for Software Engineering (CSE) and delivered to CSE, COCOMO™ II Affiliates, or other students for evaluation and feedback.

Text:

  1. Watts Humphrey, A Discipline for Software Engineering Addison-Wesley, 1995
  2. Course notes

Lecture Time and Location: MWF 9:00 to 1:00, OHE 100 Studio B

Assignments and Grading:

Instructor:

Teaching Assistant:

For updates, see our web page at http://sunset.usc.edu/classes/cs665s99