CS3007A Software Project Management

Problem Sheet 4a

Lecturer: Dr Robert Macredie

E-mail: Robert.Macredie@brunel.ac.uk,

Introduction

In the first part of the fourth session we talked about estimation. Thinking back to the network planning and critical path analysis from session three, we had already seen examples of time estimates attached to activities. In this part of session four, we developed a better understanding of estimation and looked at a range of estimation methods. We concluded the session by considering human factors that can have an impact in estimation and which, as a result, can limit the effectiveness of our estimations.

Learning Outcomes

The learning outcomes for the problem sheet are as follows:

(i)     you should be able to critically discuss the value and limitation 
        of estimation in SPM;you should be able to be able to 
        discuss critically 

(ii)    you should be able to explain different methods of estimation 
        and apply them to simple SPM problems;

(iii)   be able to justify the appropriateness of each of these methods.

Questions

(i)     Why is it useful to be able to provide estimates of activities
        in a software project?  What might be the problems 
        associated with estimation and what impact might these 
        have on SPM? (Kemerer discusses issues in this area in 
        Chapter 2, but do not get weighed down trying to understand 
        the mathematical detail in this chapter). List and explain issues 
        which show the importance and value 

(ii)    In the session we briefly discussed a set of estimation techniques 
        including: the analogy method; analysis of effort; the Delphi 
        method; direct estimation (also called 'bottom-up' estimation); 
        estimation models (often called algorithmic approaches); and 
        function-point analysis.  Briefly explain each of these estimation 
        methods, their strengths and weaknesses.  How would you apply 
        each of the methods? What would you need to know to use 
        each method effectively?

(iii)   Give simple examples of software projects where each of the 
        estimation approaches in (ii) might be appropriate, justifying 
        your answers.  (NOTE: Do not try to develop detailed project 
        examples; just try to think of the kind of project where each 
        approach might work well).  

(iv)    Find examples of software projects where poor estimation 
        has caused problems to the project.  You can use this exercise 
        as practise in locating relevant literature (a skill that is very 
        important for your final year project and one in which you 
        should currently be engaging).  

I would encourage you to work in groups of around five for this and subsequent exercises.


Robert Macredie

16 October 1998