CS511: Personal Software Process + Project

CS 511:
Personal Software Process [PSP]
with PPMP and Project

Winter 2003 – Course Overview

Agenda

Introductions

People: Me, you (eventually), and Molly & Eric

"Instant feedback" for homework

Software engineering

CSCI 511 Course

Projects

Normal: Process Improvement Analysis and Plans
Directed Research (separate Credit and Assignment)

Some High Points

Introductions

James P "Jim" Alstad

  • 25+ years in software development
Since 1981, in aerospace doing primarily real-time embedded systems
Presently at Boeing Satellite Systems doing satellite flight software

Master of Software Engineering, Carnegie Mellon, 1991

BS in Computer Sciences, University of Wisconsin, 1973

 (work)--Mail from your USC address!

SAL 316: Office Hour W 10:30-11:15; appointment recommended.
310/416-5042 (work) if important.

Introductions (cont.)

Fill in and hand in TODAY the Student Information Form for CS511

Name, Daytime phone number, Evening phone number, ...

Background

Around the room [second session]

Name

USC major or Company, division, department

What do you do there

Introductions: Grading Process

Molly Phongpaibul is TA

Eric Gradman is English consultant

The normal process for turning in homework provides you with "instant feedback"

Molly will be available for the 1 hour period just before class right outside classroom

If you turn your homework in then, you will get the instant feedback as described below

Grading Process (con't)

In case of a non-writing homework, Molly will check it for correct format "in real time"

If OK, she will accept it and grade it later

If not OK, she will return it to you as soon as possible (before class, if you turned it in early enough)

Grading Process (con't)

In case of a writing homework (1W-4W), Molly and Eric will check it

Molly will check the format as above and, if not OK, will return it to you

If OK, Molly will pass the homework on to Eric, who will be outside the classroom from 1 hour before class until the end of class

Eric will check two things and, if not OK, will return the homework to you:

Check that the English is readable
Check that your tests are reasonable, and if so apply one or more of them to your document and check that it passes

If Eric finds your homework to be OK, he will pass it back to Molly for final grading

Grading Process (con't)

In case of the project (assignments 1J & 2J):

There will be no instant feedback

Eric will be reviewing your English and deducting points when appropriate

Molly will be giving final grades

In case you don't turn your homework in during the normal time, and it's not OK, Molly and Eric will return the homework to you when they are able.

Note: use of the Writing Center to assist on any writing assignment is perfectly acceptable

  • Just account for your meeting time per class instructions

Introductory Discussion

What is a Software Engineer?

Are you one if you can only write & debug code?

Can you be one if you have not coded in years?

Can you be on if you have NEVER programmed?

What is Engineering?

What is Software Engineering?

Genesis of Course Material

Personal Software Process (PSP) and its class developed by Watts Humphrey

"A Discipline of Software Engineering", 1995.

Winsor Brown has been teaching the class and enhancing the material since then

He introduced the Personal Writing Process (PWP), the Personal Spreadsheet Process (PSSP), and the Personal Project Management Process (PPMP)
Presently Associate Director of USC's Center for Software Engineering

This is my first semester leading the class

I took PSP in 1995 (from Winsor)
I have given some lectures in 511 before

Course Content

Course Content

Personal Project Management Processes

Personal [SE/technical] Writing Process (PWP)

Personal SpreadSheet [development] Process (PSSP)

Personal Planning and Tracking

Learning extensions to any of the PxP processes

Personal Software Process applied to 3GL exercises

Project (useful to ALL)

Individual (one person) process improvement

Process definition for analysis report

Tasks and resources for report planned and tracked

Apply PPMP/PSP: Gather and analyze process data

Typical of tasks assigned to some software engineers

Schedule of Course Focus

PPMP + PSP Integrated Course Offering

Web Site

Detailed Introduction – Separate Lecture SOON

General information at:

Class-only material on SCF CSCI511

Previous years' schedules and lectures may be available

Ask me if you're interested

Grading overview (details in separate file)

PPMP Homework (4 PWP exercises) – 10%

PPMP Homework (4 PSSP exercises) – 15%

PSP Homework (8 program exercises & 3 Reports) – 20%

Software Engineering Project: Process definition plus ... forPSP "Midterm" & Final Reports ["R4" & "R5"] – 40%

Individual Critique – 15%

Course Execution Options

Normal: 8 Programming Exercises and Project

Working, professional "programmer"

Individual "Project" based on PSP data "work"

PSP Exercises 1..4 with class if regular work does not fit

PSP Exercises 5..8 or more based on "work"

Working professional, non-programming software engineer: PSP Exercises 1..8 with class

Software Engineering "Manager": By arrangement Project using PWP or PSSP; No Programming Exercises; Midterm and Final "Report" applied to writing or spreadsheet;

Additional DR (CS590) credit: PSP applied to CSE project or other development activity.

Anything but Normal has to be arranged with me.

Projects (cont.)

Remote Students (working professionals):

Process improvement based on regular, software engineering work assignments

Applicable ONLY to those doing repeated, regular development activities who have been doing so for at least the last 3 to 6 months

May require some changes in the study sequence

Will require some active coaching and feedback

Weekly tracking of ~100 SLOC increments

Mid-term and Final process improvement data analysis reports based on work assignments, but MUST follow the normal students approach and contents

Distinctive Features of the Course

Process focus

Emphasis on following processes, gathering and analyzing data, and improving your processes

Emphasis on organization and on certain details

Not on programming techniques or technology

Some homework with spreadsheets

Glossary

ICN: In Class Notes. The "root" of a lecture.

Defect (for purposes of this class): a flaw which requires a change to the delivered program (or other delivered artifact).

PSP, PWP, PSSP, PPMP: Examples of Personal xProcesses (x = Software, Writing, SpreadSheet, Project Management respectively).

Script: Structured instructions for following a process.

1W, etc: Identifiers of homework assignments for this course.

Kit: A complete, zipped set of files which comprise an assignment.

ReadMe (for purposes of this class): the "root" of the files for an assignment.

Guidance: a document offering information intended to help with an assignment.

Some Assignments

Readings

"Why Should You Use a Personal Software Process", Software Engineering Notes, ACM SIGSoft, July, 1995 pg 33-36.

DSE: Forward, Preface, Chp 1 & 2

Electronic Papers: PSP motivation articles by Watts Humprey

(see Electronic Papers references)

The Changing World of Software, January 1996.

/

Process or Bureaucracy, February 1996: [9602/oc9602]

Credibility and Commitment, March 1996: [9603/oc9603]

/

A Process or a Plan, April 1996: [9604/oc9604]

Checkpoint Restart, May 1996: [9605/oc9605]

/

Checkpoint Restart - Part II, June 1996: [9606/oc9606]

Fill in, and turn in on Wednesday, 1/22 the SEI Questionnaire:

"Personal Software Process Student Background Survey"

© 2003-4 A. Winsor Brown BES/MSEE, JP Alstad511w04--OverviewV0.DOC-1v0.0 - 01/12/04