Lecture Notes for CS 325

Scheduling and Staffing, 18 April 2001


  1. scheduling

    1. after money comes time

    2. total project duration and the duration of the phases

    3. the relation between person-months and time - not interchangeable; people interactions are non-linear

    4. schedules are, in this sense, independent and not entirely under managerial control

    5. duration estimates

      1. another single-parameter, exponential function model - effort producing duration

      2. phase durations are percentages of over-all duration; estimates may vary with project type or size

    6. scheduling and milestones

      1. from durations to schedules

      2. gantt charts - a task, time bar chart

        1. shows duration; major milestones at bar endpoints; progress monitored by coloring or another bar

        2. simple, implied dependency relations

      3. project evaluation and review technique - pert

        1. project milestones as nodes, directed edges between nodes represents dependencies between milestones, weights on edges represents duration

        2. the critical path is the longest path from start to finish - any slip on the critical path means the project is delayed

        3. paths off the critical path have slack

  2. staffing

    1. from duration and effort, comes average staff sizes

    2. average staff sizes are not useful due to staffing variations between phases - cocomo step functions for staff requirements

    3. knowing about subsystem and modules are helpful too - size and skills

    4. independent systems for estimation may not be independent in practice

    5. rayleigh curve - a mathematical estimating tool for staffing

    6. personnel plan - allocating real people to computed estimates

      1. use a gantt chart to allocate people to tasks over time

      2. iterate a few times to get actual staffing to match estimates

      3. further refine the schedule by specialties and skills

    7. team structure

      1. organizing groups into teams

      2. two team organizations - hierarchical and ahierarchical

      3. hierarchal teams - the chief programmer team

        1. a chief programmer is responsible for major technical decisions

        2. a back-up programmer, a librarian, and programmers

        3. formal and limited communications channels, well defined roles

      4. ahierarchal teams - democratic teams

        1. flat structure, arbitrary communication channels

        2. consensus operation, unstructured interactions

      5. mixtures - ahierarchal structures of chief-programmer teams


This page last modified on 27 April 2001.