Difference between revisions of "MSc: Personal Software Process"

From IU
Jump to navigation Jump to search
 
Line 1: Line 1:
  +
 
= Personal Software Process =
 
= Personal Software Process =
  +
* '''Course name''': Personal Software Process
  +
* '''Code discipline''': F19-SE-PSP
  +
* '''Subject area''': Computer Science and Engineering
   
  +
== Short Description ==
* <span>'''Course name:'''</span> Personal Software Process
 
  +
This course covers the following concepts: A Practitioner’s Start-Up Kit course introduces the highest-leverage metrics, specifically the ones associated with improving time estimation and reducing defects. PSP is intended for practicing software engineers and their managers. The measures introduced can serve as the basis for software development process improvement in the organization as well as helping individuals..
* <span>'''Course number:'''</span> F19-SE-PSP
 
* <span>'''Area of instruction:'''</span> Computer Science and Engineering
 
   
== Course Characteristics ==
+
== Prerequisites ==
   
=== Key concepts of the class ===
+
=== Prerequisite subjects ===
   
A Practitioner’s Start-Up Kit course introduces the highest-leverage metrics, specifically the ones associated with improving time estimation and reducing defects. PSP is intended for practicing software engineers and their managers. The measures introduced can serve as the basis for software development process improvement in the organization as well as helping individuals.
 
   
  +
=== Prerequisite topics ===
=== What is the purpose of this course? ===
 
   
The main objectives of this course are the following:
 
   
  +
== Course Topics ==
* Student will reduce overall defect rates
 
  +
{| class="wikitable"
* Student will spend more time at the front end of the development cycle
 
  +
|+ Course Sections and Topics
* Student will eliminate or nearly eliminate compile and test defects
 
  +
|-
* Student will be able to more accurately estimate the time it takes to build software
 
  +
! Section !! Topics within the section
  +
|-
  +
| Introduction ||
  +
# Introduction,
  +
# The Dashboard Tool
  +
# Collecting Data
  +
|-
  +
| Planing and Estimation ||
  +
# The Planning Process
  +
# Software Size Estimation Methods
  +
# The PROBE Size Estimation Method
  +
|-
  +
| Quality management ||
  +
# Design & Code Reviews
  +
# Software Quality Management
  +
# Process Definition
  +
# Resource & Schedule Estimation
  +
|-
  +
| Time management ||
  +
# Time Management
  +
# Pomodoro - Concentration
  +
|-
  +
| Conclusion ||
  +
# The PSP Body of Knowledge (BoK)
  +
# Beyond PSP & TSP
  +
|}
  +
== Intended Learning Outcomes (ILOs) ==
   
  +
=== What is the main purpose of this course? ===
== Course Objectives Based on Bloom’s Taxonomy ==
 
  +
Student will reduce overall defect rates, Student will spend more time at the front end of the development cycle, Student will eliminate or nearly eliminate compile and test defects, Student will be able to more accurately estimate the time it takes to build software
   
=== What should a student remember at the end of the course? ===
+
=== ILOs defined at three levels ===
   
  +
==== Level 1: What concepts should a student know/remember/explain? ====
 
By the end of the course, the students should be able to ...
 
By the end of the course, the students should be able to ...
 
 
* ...
 
* ...
   
=== What should a student be able to understand at the end of the course? ===
+
==== Level 2: What basic practical skills should a student be able to perform? ====
 
 
By the end of the course, the students should be able to ...
 
By the end of the course, the students should be able to ...
 
 
* ...
 
* ...
   
=== What should a student be able to apply at the end of the course? ===
+
==== Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios? ====
 
 
By the end of the course, the students should be able to ...
 
By the end of the course, the students should be able to ...
  +
* ...
  +
== Grading ==
   
  +
=== Course grading range ===
* ...
 
  +
{| class="wikitable"
 
  +
|+
=== Course evaluation ===
 
 
{|
 
|+ Course grade breakdown
 
!
 
!
 
!align="center"| '''Proposed points'''
 
 
|-
 
|-
  +
! Grade !! Range !! Description of performance
| Assignments
 
| 50
 
|align="center"| 50
 
 
|-
 
|-
  +
| P. Pass || 85-100 || -
| Reports
 
| 40
 
|align="center"| 40
 
 
|-
 
|-
  +
| B. Fail || 75-84 || -
| Attendance
 
| 10
 
|align="center"| 10
 
 
|}
 
|}
   
  +
=== Course activities and grading breakdown ===
'''Guidelines'''
 
  +
{| class="wikitable"
 
  +
|+
Instructor reviews your homework assignments for the following elements:
 
 
* Check if the data presented is within &quot;reasonable&quot; bounds for the current assignment. Reasonable bounds is dependent upon each case depending upon the assignment and the tools being used by you to develop the assignment.
 
* Identify any spikes or unusual patterns in the data which may be an indication of incorrect application of the process, a simple typo or incorrectly stated assumptions.
 
* Collate data submitted by multiple students in order to come up with a common set of numbers reflecting the data of the entire class.
 
 
Assignments will be marked as either, PASS, PASS but, or Resubmit.
 
 
* PASS - Means everything is good and you can proceed. Scored as a 0 (zero).
 
* PASS but - Means you did pretty well, but there are some minor things to review and in the long run these might create problems. Scored as a 0.5 (zero point five).
 
* Resubmit - You made an error that will cause many issues later on so it must be corrected before your proceed. Scored as a 1 (one).
 
 
Objective of course is to complete all assignments with the minimum score possible. i.e. a total score of zero at the end means you got a perfect score.
 
 
A passing grade indicates that you have successfully demonstrated an understanding of the lecture material.
 
 
=== Grades range ===
 
 
{|
 
|+ Course grading range
 
!
 
!
 
!align="center"| '''Proposed range'''
 
 
|-
 
|-
  +
! Activity Type !! Percentage of the overall course grade
| P. Pass
 
| 80-100
 
|align="center"| 85-100
 
 
|-
 
|-
  +
| Assignments || 50
| B. Fail
 
| 0-80
+
|-
  +
| Reports || 40
|align="center"| 75-84
 
  +
|-
  +
| Attendance || 10
 
|}
 
|}
   
  +
=== Recommendations for students on how to succeed in the course ===
=== Resources and reference material ===
 
  +
  +
  +
== Resources, literature and reference materials ==
   
  +
=== Open access resources ===
 
* Humphrey, Watts S. PSP: A Self-Improvement Process for Software Engineers. Reading, MA: Addison Wesley, 2005. (Prefered)
 
* Humphrey, Watts S. PSP: A Self-Improvement Process for Software Engineers. Reading, MA: Addison Wesley, 2005. (Prefered)
 
* Humphrey, Watts S. Introduction to the Personal Software Process. Reading, MA: Addison Wesley, 1997.
 
* Humphrey, Watts S. Introduction to the Personal Software Process. Reading, MA: Addison Wesley, 1997.
 
* Humphrey, Watts S. Discipline for Software Engineering: The Complete PSP Book. Reading, MA: Addison Wesley, 1995. (Contains original exercises)
 
* Humphrey, Watts S. Discipline for Software Engineering: The Complete PSP Book. Reading, MA: Addison Wesley, 1995. (Contains original exercises)
   
== Course Sections ==
+
=== Closed access resources ===
   
The main sections of the course and approximate hour distribution between them is as follows:
 
   
  +
=== Software and tools used within the course ===
{|
 
  +
|+ Course Sections
 
  +
= Teaching Methodology: Methods, techniques, & activities =
!align="center"| '''Section'''
 
  +
! '''Section Title'''
 
!align="center"| '''Teaching Hours'''
+
== Activities and Teaching Methods ==
  +
{| class="wikitable"
  +
|+ Activities within each section
 
|-
 
|-
  +
! Learning Activities !! Section 1 !! Section 2 !! Section 3 !! Section 4 !! Section 5
|align="center"| 1
 
| Introduction
 
|align="center"| 4
 
 
|-
 
|-
  +
| Development of individual parts of software product code || 1 || 1 || 1 || 1 || 1
|align="center"| 2
 
| Planing and Estimation
 
|align="center"| 6
 
 
|-
 
|-
  +
| Reports || 1 || 1 || 1 || 1 || 1
|align="center"| 3
 
| Quality management
 
|align="center"| 6
 
 
|-
 
|-
  +
| Oral polls || 1 || 0 || 0 || 0 || 0
|align="center"| 4
 
| Time management
 
|align="center"| 4
 
 
|-
 
|-
  +
| Discussions || 1 || 1 || 1 || 1 || 1
|align="center"| 5
 
  +
|-
| Conclusion
 
  +
| Essays || 0 || 1 || 1 || 1 || 1
|align="center"| 4
 
|}
+
|}
  +
== Formative Assessment and Course Activities ==
   
=== Section 1 ===
+
=== Ongoing performance assessment ===
 
==== Section title: ====
 
 
Introduction
 
 
=== Topics covered in this section: ===
 
 
* Introduction,
 
* The Dashboard Tool
 
* Collecting Data
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 0<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 0<br />
 
Reports &amp; 1<br />
 
Essays &amp; 0<br />
 
Oral polls &amp; 1<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical tasks and exercises for ongoing performance evaluation within this section ===
 
 
# Reading (Hum 05): Chapter 1 &amp; 2
 
# Skim data collection reading
 
 
=== Typical tasks and exercises for seminar classes (labs) within this section ===
 
 
# Install the Dashboard Tool
 
# Write Program using PSP0.0
 
 
=== Test questions for final assessment in this section ===
 
   
  +
==== Section 1 ====
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Content !! Is Graded?
  +
|-
  +
| Question || Reading (Hum 05): Chapter 1 & 2 || 1
  +
|-
  +
| Question || Skim data collection reading || 1
  +
|-
  +
| Question || Install the Dashboard Tool || 0
  +
|-
  +
| Question || Write Program using PSP0.0 || 0
  +
|}
  +
==== Section 2 ====
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Content !! Is Graded?
  +
|-
  +
| Question || ... || 1
  +
|-
  +
| Question || ... || 0
  +
|}
  +
==== Section 3 ====
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Content !! Is Graded?
  +
|-
  +
| Question || ... || 1
  +
|-
  +
| Question || ... || 0
  +
|}
  +
==== Section 4 ====
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Content !! Is Graded?
  +
|-
  +
| Question || ... || 1
  +
|-
  +
| Question || ... || 0
  +
|}
  +
==== Section 5 ====
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Content !! Is Graded?
  +
|-
  +
| Question || ... || 1
  +
|-
  +
| Question || ... || 0
  +
|}
  +
=== Final assessment ===
  +
'''Section 1'''
 
# ...
 
# ...
  +
'''Section 2'''
 
=== Section 3 ===
 
 
==== Section title: ====
 
 
Planing and Estimation
 
 
=== Topics covered in this section: ===
 
 
* The Planning Process
 
* Software Size Estimation Methods
 
* The PROBE Size Estimation Method
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 0<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 0<br />
 
Reports &amp; 1<br />
 
Essays &amp; 1<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical tasks and exercises for ongoing performance evaluation within this section ===
 
 
 
# ...
 
# ...
  +
'''Section 3'''
 
=== Typical tasks and exercises for seminar classes (labs) within this section ===
 
 
 
# ...
 
# ...
  +
'''Section 4'''
 
=== Test questions for final assessment in this section ===
 
 
 
# ...
 
# ...
  +
'''Section 5'''
 
=== Section 3 ===
 
 
==== Section title: ====
 
 
Quality management
 
 
=== Topics covered in this section: ===
 
 
* Design &amp; Code Reviews
 
* Software Quality Management
 
* Process Definition
 
* Resource &amp; Schedule Estimation
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 0<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 0<br />
 
Reports &amp; 1<br />
 
Essays &amp; 1<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical tasks and exercises for ongoing performance evaluation within this section ===
 
 
 
# ...
 
# ...
   
  +
=== The retake exam ===
=== Typical tasks and exercises for seminar classes (labs) within this section ===
 
  +
'''Section 1'''
   
  +
'''Section 2'''
# ...
 
   
  +
'''Section 3'''
=== Test questions for final assessment in this section ===
 
   
  +
'''Section 4'''
# ...
 
   
=== Section 3 ===
+
'''Section 5'''
 
==== Section title: ====
 
 
Time management
 
 
=== Topics covered in this section: ===
 
 
* Time Management
 
* Pomodoro - Concentration
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 0<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 0<br />
 
Reports &amp; 1<br />
 
Essays &amp; 1<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical tasks and exercises for ongoing performance evaluation within this section ===
 
 
# ...
 
 
=== Typical tasks and exercises for seminar classes (labs) within this section ===
 
 
# ...
 
 
=== Test questions for final assessment in this section ===
 
 
# ...
 
 
=== Section 5 ===
 
 
==== Section title: ====
 
 
Conclusion
 
 
=== Topics covered in this section: ===
 
 
* The PSP Body of Knowledge (BoK)
 
* Beyond PSP &amp; TSP
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 0<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 0<br />
 
Reports &amp; 1<br />
 
Essays &amp; 1<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical tasks and exercises for ongoing performance evaluation within this section ===
 
 
# ...
 
 
=== Typical tasks and exercises for seminar classes (labs) within this section ===
 
 
# ...
 
 
=== Test questions for final assessment in this section ===
 
 
# ...
 

Latest revision as of 12:00, 29 August 2022

Personal Software Process

  • Course name: Personal Software Process
  • Code discipline: F19-SE-PSP
  • Subject area: Computer Science and Engineering

Short Description

This course covers the following concepts: A Practitioner’s Start-Up Kit course introduces the highest-leverage metrics, specifically the ones associated with improving time estimation and reducing defects. PSP is intended for practicing software engineers and their managers. The measures introduced can serve as the basis for software development process improvement in the organization as well as helping individuals..

Prerequisites

Prerequisite subjects

Prerequisite topics

Course Topics

Course Sections and Topics
Section Topics within the section
Introduction
  1. Introduction,
  2. The Dashboard Tool
  3. Collecting Data
Planing and Estimation
  1. The Planning Process
  2. Software Size Estimation Methods
  3. The PROBE Size Estimation Method
Quality management
  1. Design & Code Reviews
  2. Software Quality Management
  3. Process Definition
  4. Resource & Schedule Estimation
Time management
  1. Time Management
  2. Pomodoro - Concentration
Conclusion
  1. The PSP Body of Knowledge (BoK)
  2. Beyond PSP & TSP

Intended Learning Outcomes (ILOs)

What is the main purpose of this course?

Student will reduce overall defect rates, Student will spend more time at the front end of the development cycle, Student will eliminate or nearly eliminate compile and test defects, Student will be able to more accurately estimate the time it takes to build software

ILOs defined at three levels

Level 1: What concepts should a student know/remember/explain?

By the end of the course, the students should be able to ...

  • ...

Level 2: What basic practical skills should a student be able to perform?

By the end of the course, the students should be able to ...

  • ...

Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?

By the end of the course, the students should be able to ...

  • ...

Grading

Course grading range

Grade Range Description of performance
P. Pass 85-100 -
B. Fail 75-84 -

Course activities and grading breakdown

Activity Type Percentage of the overall course grade
Assignments 50
Reports 40
Attendance 10

Recommendations for students on how to succeed in the course

Resources, literature and reference materials

Open access resources

  • Humphrey, Watts S. PSP: A Self-Improvement Process for Software Engineers. Reading, MA: Addison Wesley, 2005. (Prefered)
  • Humphrey, Watts S. Introduction to the Personal Software Process. Reading, MA: Addison Wesley, 1997.
  • Humphrey, Watts S. Discipline for Software Engineering: The Complete PSP Book. Reading, MA: Addison Wesley, 1995. (Contains original exercises)

Closed access resources

Software and tools used within the course

Teaching Methodology: Methods, techniques, & activities

Activities and Teaching Methods

Activities within each section
Learning Activities Section 1 Section 2 Section 3 Section 4 Section 5
Development of individual parts of software product code 1 1 1 1 1
Reports 1 1 1 1 1
Oral polls 1 0 0 0 0
Discussions 1 1 1 1 1
Essays 0 1 1 1 1

Formative Assessment and Course Activities

Ongoing performance assessment

Section 1

Activity Type Content Is Graded?
Question Reading (Hum 05): Chapter 1 & 2 1
Question Skim data collection reading 1
Question Install the Dashboard Tool 0
Question Write Program using PSP0.0 0

Section 2

Activity Type Content Is Graded?
Question ... 1
Question ... 0

Section 3

Activity Type Content Is Graded?
Question ... 1
Question ... 0

Section 4

Activity Type Content Is Graded?
Question ... 1
Question ... 0

Section 5

Activity Type Content Is Graded?
Question ... 1
Question ... 0

Final assessment

Section 1

  1. ...

Section 2

  1. ...

Section 3

  1. ...

Section 4

  1. ...

Section 5

  1. ...

The retake exam

Section 1

Section 2

Section 3

Section 4

Section 5