Preface to the fourth edition
Guidedctour.
Te hnology to enhance learning and teaching
A knowledgements
1 Introduction to software project management
1.1 Introdu tion
1.2 Why is software project management important?
1.3 What is a project?
1.4 Software projects versus other types of project
1.5 Contract management and techni al project management
1.6 A tivities overed by software project management
1.7 Plans, methods and methodologies
1.8 Some ways of ategorizing software projects
1.9 What is management?
1.10 Problems with software projects
1.11 Setting objectives
1.12 Stakeholders
1.13 The business case
1.14 Requirement specification
1.15 Management control
1.16 Con lusion
Annex 1 Contents list for a feasibility study
Annex 2 Contents list for a project plan
1.17 Further exercises
2 Step Wise: an overview of project planning
2.1 Introdu tion to Step Wise project planning
2.2 Step 0: Select project
2.3 Step 1: Identify project s ope and objectives
2.4 Step 2: Identify project infrastru ture
2.5 Step 3: Analyse project haracteristics
2.6 Step 4: Identify project products and a tivities
2.7 Step 5: Estimate effort for each a tivity
2.8 Step 6: Identify a tivity risks
2.9 Step 7: Allo ate resources
2.10 Step 8: Review/publicize plan
2.11 Steps 9 and 10: Execute plan/lower levels of planning
2.12 Con lusion
2.13 Further exercises
3 Programme management and project evaluation
3.1 Introdu tion
3.2 Programme management
3.3 Managing the allo ation of resources within programmes
3.4 Strategi programme management
3.5 Creating a programme
3.6 Aids to programme management
3.7 Benefits management
3.8 Evaluation of individual projects
3.9 Te hnical assessment
3.10 Cost-benefit analysis
3.11 Cash flow fore asting
3.12 Cost-benefit evaluation techniques
3.13 Risk evaluation
3.14 Conclusion
3.15 Further exer ises
4 Selection of an appropriate project approach
4.1 Introduction
4.2 Choosing technologies
4.3 Te hnical plan ontents list
4.4 Choice of process models
4.5 Stru ture versus speed of delivery
4.6 The waterfall model
4.7 The V-pro ess model
4.8 The spiral model
4.9 Software prototyping
4.10 Other ways of ategorizing prototypes
4.11 In remental delivery
4.12 Dynami Systems Development Method
4.13 Extreme programming
4.14 Managing iterative processes
4.15 Selecting the most appropriate process model
4.16 Conclusion
4.17 Further exercises
5 Software effort estimation
5.1 Introduction
5.2 Where are estimates done?
5.3 Problems with over- and under-estimates
5.4 The basis for software estimating
5.5 Software effort estimation techniques
5.6 Expert judgement
5.7 Estimating by analogy
5.8 Albre ht fun tion point analysis
5.9 Fun tion points Mark II
5.10 COSMIC Full Fun tion Points
5.11 A pro edural ode-oriented approa h
5.12 COCOMO: a parametri model
5.13 Con lusion
5.14 Further exercises
6 A tivity planning
6.1 Introduction
6.2 The objectives of a tivity planning
6.3 When to plan
6.4 Project schedules
6.5 Projects and a tivities
6.6 Sequencing and s heduling a tivities
6.7 Network planning models
6.8 Formulating a network model
6.9 Adding the time dimension
6.10 The forward pass
6.11 The ba kward pass
6.12 Identifying the riti alcpath
6.13 A tivity float
6.14 Shortening the project duration
6.15 Identifying riti alca tivities
6.16 A tivity-on-arrow networks
6.17 Conclusion
6.18 Further exercises
7 Risk management
7.1 Introduction
7.2 Risk
7.3 Categories of risk
7.4 A framework for dealing with risk
7.5 Risk identification
7.6 Risk assessment
7.7 Risk planning
7.8 Risk management
7.9 Evaluating risks to the schedule
7.10 Applying the PERT te hnique
7.11 Monte Carlocsimulation
7.12 Critical chain concepts
7.13 Conclusion
7.14 Further exer ises
8 Resource allocation
8.1 Introdu tion
8.2 The nature of resources
8.3 identifying resource requirements
8.4 S heduling resour es
8.5 Creatingcriti alcpaths
8.6 Counting the cost
8.7 Being specifi
8.8 Publishing the resource schedule
8.9 Cost s hedules
8.10 The scheduling sequence
8.11 Conclusion
8.12 Further exercises
9 Monitoring and control
9.1 Introduction
9.2 Creating the framework
9.3 Collecting the data
9.4 Visualizing progress
9.5 Cost monitoring
9.6 Earned value analysis
9.7 Prioritizing monitoring
9.8 Getting the project ba k to target
9.9 Change control
9.10 Conclusion
9.11 Further exercises
10 Managing ontracts
10.1 Introduction
10.2 The ISO 12207 approach to the a quisition and supply of software
10.3 The supply process
10.4 Types of ontract
10.5 Stages in ontra t placement
10.6 Typical terms of a ontract
10.7 Contra t management
10.8 A eptance
10.9 Con lusion
10.10 Further exercises
11 Managing people and organizing teams
11.1 Introduction
11.2 Understanding behaviour
11.3 Organizational behaviour: a background
11.4 Selecting the right person for the job
11.5 Instruction in the best methods
11.6 Motivation
11.7 The Oldham-Ha kman job hara teristics model
11.8 Working in groups
11.9 Be oming a team
11.10 Decision making
11.11 Leadership
11.12 Organizational structures
11.13 Dispersed and virtual teams
11.14 The influence of ulture
11.15 Stress
11.16 Health and safety
11.17 Conclusion
11.18 Further exer ises
12 Software quality
12.1 Introduction
12.2 The place of software quality in project planning
12.3 The importance of software quality
12.4 Defining software quality
12.5 ISO 9126
12.6 Practical software quality measures
12.7 Product versus process quality management
12.8 External standards
12.9 Te hniques to help enhance software quality
12.10 Quality plans
12.11 Conclusion
12.12 Further exercises
13 Small Projects
13.1 Introduction
13.2 Some problems with student projects
13.3 Content of a project plan
13.4 Conclusion
Appendixes
A PRINCE2 — an overview
A.1 Introduction to PRINCE2
A.2 The omponents of PRINCE2
A.3 PRINCE planning technique
A.4 PRINCE2 project organization
A.5 Proje t Stages
A.6 Proje t procedures
A.7 Dire ting a project
A.8 Starting up a project
A.9 Initiating the project
A.10 Controlling a Stage
A.11 Managing product delivery
A.12 Managing Stage boundaries
A.13 Closing the project
B BS 6079:1996
B.1 Introduction
B.2 The planning process
B.3 BS 6079 planning steps
B.4 Project ontrol
B.5 Supportingcte hniques
C Answer pointers
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8
Chapter 9
Chapter 10
Chapter 11
Chapter 12
Further reading