Preface
         Guided tour
         Acknowledgements
         I Introduction to software project management
         1.1 Introduction
         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 technical project management
         1.6 Activities covered by software project management
         1.7 Plans, methods and methodologies
         1.8 Some ways of categorizing software projects
         1.9 Stakeholders
         1.10 Setting objectives
         1.11 The business case
         1.12 Project success and failure
         1.13 What is management?
         1.14 Management control
         1.15 Conclusion
         Annex 1 Contents list for a project plan
         1.16 Further exercises
         2 Project evaluation and programme management
         2.1 Introduction
         2.2 A business case
         2.3 Project portfolio management
         2.4 Evaluation of individual projects
         2.5 Cost-benefit evaluation techniques
         2.6 Risk evaluation
         2.7 Programme management
         5.8 Managing the allocation of resources within programmes
         2.9 Strategic programme management
         2.10 Creating a programme
         2.11 Aids to programme management
         2.12 Some reservations about programme management
         2.13 Benefits management
         2.14 Conclusion
         2.15 Further exercises
         3 An overview of project planning
         3.1 Introduction to Step Wise project planning
         3.2 Step O: Select project
         3.3 Step 1: Identify project scope and objectives
         3.4 Step 2: Identify project infrastructure
         3.5 Step 3: Analyse projec characteristics
         3.6 Step 4: Identify project products and activities
         3.7 Step 5: Estimate effort for each activity
         3.8 Step 6: Identify activity risks
         3.9 Step 7: Allocate resources
         3.10 Step 8: Review/publicize plan
         3.11 Steps 9 and10: Execute plan/lower levels of planning
         3.12 Conclusion
         3.13 Further exercises
         4 Selection of an appropriate project approach
         4.1 Introduction
         4.2 Build or buy?
         4.3 Choosing methodologies and technologies
         4.4 Choice of process models
         4.5 Structure versus speed of delivery
         4.6 The waterfall model
         4.7 The spiral model
         4.8 Software prototyping
         4.9 Other ways of categorizing prototypes
         4.10 Incremental delivery
         4.11 Agile methods
         4.12 Atern/Dynamic Systems Development Method
         4.13 Extreme programming (XP)
         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 Bottom-up estimating
         5.7 The top-down approach and parametric models
         5.8 Expert judgement
         5.9 Estimating by analogy
         5.10 Albrecht function point analysis
         5.11 Function points Mark Il
         5.12 COSMIC full function points
         5.13 COCOMO 13: a parametric productivity model
         5.14 Conclusion
         5.15 Further exercises
         6 Activity planning
         6.1 Introduction
         6.2 The objectives of activity planning
         6.3 When to plan
         6.4 Project schedules
         6.5 Projects and activities
         6.6 Sequencing and scheduling activities
         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 backward pass
         6.12 Identifying the critical path
         6.13 Activity float
         6.14 Shortening the project duration
         6.15 Identifying critical activities
         6.16 Activity-on-arrow networks
         6.17 Conclusion
         6.16 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 technique
         7.11 Monte Carlo simulation
         7.12 Critical chain concepts
         7.13 Conclusion
         7.14 Further exercises
         8 Resource allocation
         8.1 Introduction
         8.2 The nature of resources
         8.3 Identifying resource requirements
         8.4 Scheduling resources
         8.5 Creating critical paths
         8.6 Counting the cost
         8.7 Being specific
         8.8 Publishing the resource schedule
         8.9 Cost schedules
         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 back to target
         9.9 Change control
         9.10 Conclusion
         9.11 Further exercises
         10 Managing contracts
         10.1 Introduction
         10.2 Types of contract
         10.3 Stages in contract placement
         10.4 Typical terms of a contract
         10.5 Contract management
         10.6 Acceptance
         10.7 Conclusion
         10.8 Further exercises
         11 Managing people in software environments
         11.1 Introduction
         11.2 Understanding behaviour
         11.3 Organizationbehaviour: a backgrou nd
         11.4 Selecting the right person for the job
         11.5 Instruction in the best methods
         11.6 Motivation
         11.7 TheOIdham Hackman job characteristics nrodel
         11.8 Stress
         11.9 Health and safety
         11.10 Some ethical and professional concerns
         11.11 Conclusion
         11.12 Further exercises
         12 Working in teams
         12.1 Introduction
         12.2 Becoming a team
         12.3 Decision making
         12.4 Organizational structures
         12.5 Coordination dependencies
         12.6 Dispersed and virtual teams
         12.7 Communication genres
         12.8 CommunicationpJans
         12.9 Leadership
         12.10 Conclusion
         12.11 Further exercises
         13 Software quality
         13.1 hrtroduc'tion
         13.2 iheplaceofsoftwarequalityin project planning
         13.3 The importance of software quality
         13.4 Defining software quality
         13.5 ISO 9126
         13.6 Product versus process quality management
         13.7 Quality management systems
         13.8 Process capability models
         13.9 Techniques to help enhance software quality
         13.10 resting
         13.11 Quality plans
         13.12 Conclusion
         13.13 Further exercises
         Appendix A PRINCE2 - an overview
         Appendix B Answer pointers
         Further reading
         Index
      · · · · · ·     (
收起)