The knowledge of project management methods alone lasts only until the next fad develops, but the underlying fundamentals remain the same; understand them, and you have the keys to evaluating and using any new method. Organized around the basic principles of software project management, this text introduces software development methods, from traditional to iterative. Software Project Managementemphasizes tailoring the development process to each project, with a foundation in the fundamentals that are true for all development methods, making it a must-read for students, software practitioners, and project managers.
Preface.1 Introduction.
1.1 Introduction to Software Project Management.
1.2 Objectives of This Chapter.
1.3 Why Managing and Leading Software Projects Is Difficult.
1.4 The Nature of Project Constraints.
1.5 A Workflow Model for Managing Software Projects.
1.6 Organizational Structures for Software Projects.
1.7 Organizing the Project Team.
1.8 Maintaining the Project Vision and the Product Vision.
1.9 Frameworks, Standards, and Guidelines.
1.10 Key Points of Chapter 1.
1.11 Overview of the Text.
References.
Exercises.
Appendix 1A: Frameworks, Standards, and Guidelines for Managing Software Projects.
2 Process Models for Software Development.
2.1 Introduction to Process Models.
2.2 Objectives of This Chapter.
2.3 A Development-Process Framework.
2.4 Tailoring the System Engineering Framework for Software-Only Projects.
2.5 Traditional Software Development Process Models.
2.6 Iterative-Development Process Models.
2.7 Designing an Iterative-Development Process.
2.8 The Role of Prototyping in Software Development.
2.9 Key Points of Chapter 2.
References.
Exercises.
Appendix 2A: Frameworks, Standards, and Guidelines for Software Development Process Models.
3 Establishing Project Foundations.
3.1 Introduction to Project Foundations.
3.2 Objectives of This Chapter.
3.3 Software Acquisition.
3.4 Requirements Engineering.
3.5 Process Foundations.
3.6 Key Points of Chapter 3.
References.
Exercises.
Appendix 3A: Frameworks, Standards, and Guidelines for Product Foundations.
4 Plans and Planning.
4.1 Introduction to the Planning Process.
4.2 Objectives of This Chapter.
4.3 The Planning Process.
4.4 The CMMI-DEV-v1.2 Process Area for Project Planning.
4.5 A Minimal Project Plan.
4.6 A Template for Software Project Management Plans.
4.7 Techniques for Preparing a Project Plan.
4.8 Key Points of Chapter 4.
References.
Exercises.
Appendix 4A: Frameworks, Standards, and Guidelines for Project Planning.
Appendix 4B: Annotated Outline for Software Project Management Plans, Based on IEEE Standard 1058.
5 Project Planning Techniques.
5.1 Introduction to Project Planning Techniques.
5.2 Objectives of This Chapter.
5.3 The Scope of Planning.
5.4 Rolling-Wave Planning.
5.5 Scenarios for Developing a Project Plan.
5.6 Developing the Architecture Decomposition View and the Work Breakdown Structure.
5.7 Guidelines for Designing Work Breakdown Structures.
5.8 Developing the Project Schedule.
5.9 Developing Resource Profiles.
5.10 Resource-Gantt Charts.
5.11 Estimating Project Effort, Cost, and Schedule.
5.12 Key Points of Chapter 5.
References.
Exercises.
Appendix 5A: Frameworks, Standards, and Guidelines for Project Planning Techniques.
6 Estimation Techniques.
6.1 Introduction to Estimation Techniques.
6.2 Objectives of This Chapter.
6.3 Fundamental Principles of Estimation.
6.4 Designing to Project Constraints.
6.5 Estimating Product Size.
6.6 Pragmatic Estimation Techniques.
6.7 Theory-Based Estimation Models.
6.8 Regression-Based Estimation Models.
6.9 Estimation Tools.
6.10 Estimating Life Cycle Resources, Effort, and Cost.
6.11 An Estimation Procedure.
6.12 A Template for Recording Estimates.
6.13 Key Points of Chapter 6.
References.
Exercises.
Appendix 6A: Frameworks, Standards, and Guidelines for Estimation.
7 Measuring and Controlling Work Products.
7.1 Introduction to Measuring and Controlling Work Products.
7.2 Objectives of This Chapter.
7.3 Why Measure?
7.4 What Should Be Measured?
7.5 Measures and Measurement.
7.6 Measuring Product Attributes.
7.7 Measuring and Analyzing Software Defects.
7.8 Choosing Product Measures.
7.9 Practical Software Measurement.
7.10 Guidelines for Measuring and Controlling Work Products.
7.11 Rolling-Wave Adjustments Based on Product Measures and Measurement.
7.12 Key Points of Chapter 7.
References.
Exercises.
Appendix 7A: Frameworks, Standards, and Guidelines for Measuring and Controlling Work Products.
Appendix 7B: Procedures and Forms for Software Inspections.
8 Measuring and Controlling Work Processes.
8.1 Introduction to Measuring and Controlling Work Processes.
8.2 Objectives of This Chapter.
8.3 Measuring and Analyzing Effort.
8.4 Measuring and Analyzing Rework Effort.
8.5 Tracking Effort, Schedule, and Cost; Estimating Future Status.
8.6 Earned Value Reporting.
8.7 Project Control Panel®.
8.8 Key Points of Chapter 8.
References.
Exercises.
Appendix 8A: Frameworks, Standards, and Guidelines for Measuring and Controlling Work Processes.
9 Managing Project Risk.
9.1 Introduction to Managing Project Risk.
9.2 Objectives of This Chapter.
9.3 An Overview of Risk Management for Software Projects.
9.4 Conventional Project Management Techniques.
9.5 Risk Identification Techniques.
9.6 Risk Analysis and Prioritization.
9.7 Risk Mitigation Strategies.
9.8 Top-N Risk Tracking and Risk Registers.
9.9 Controlling the Risk Management Process.
9.10 Crisis Management.
9.11 Risk Management at the Organizational Level.
9.12 Joint Risk Management.
9.13 Key Points of Chapter 9.
References.
Exercises.
Appendix 9A: Frameworks, Standards, and Guidelines for Risk Management.
Appendix 9B: Software Risk Management Glossary.
10 Teams, Teamwork, Motivation, Leadership, and Communication.
10.1 Introduction.
10.2 Objectives of This Chapter.
10.3 Managing versus Leading.
10.4 Teams and Teamwork.
10.5 Maintaining Morale and Motivation.
10.6 Can’t versus Won’t.
10.7 Personality Styles.
10.8 The Five-Layer Behavioral Model.
10.9 Key Points of Chapter 10.
References.
Exercises
Appendix 10A: Frameworks, Standards, and Guidelines for Teamwork and Leadership.
11 Organizational Issues.
11.1 Introduction to Organizational Issues.
11.2 Objectives of This Chapter.
11.3 The Influence of Corporate Culture.
11.4 Assessing and Nurturing Intellectual Capital.
11.5 Key Personnel Roles.
11.6 Fifteen Guidelines for Organizing and Leading Software Engineering Teams.
11.7 Key Points of Chapter 11.
References.
Exercises.
Appendix 11: Frameworks, Standards, and Guidelines for Organizational Issues.
Glossary of Terms.
Guidance for Term Projects.
Index.