PREFACE. INTRODUCTION Tell Eueryone the Truth All the Time Trust Your Team Reuieto Euerything, Test Euerything All Softtoare Engineers Are Created Equal Doing the Project Right Is Most Efficient Part I: Tools and Techniques Part II: Using Project Management Effectively Part One TOOLS AND TECHNIQUES SOFTWARE PROJECT PLANNING Understand the Project Needs Create the Project Plan Diagnosing Project Planning Problems 3 ESTIMATION Elementscora Sucessful Estimate Wideband Delphi Estimation Other Estimation Techniques Diagnosing Estimation Problems PROJECT SCHEDULES Building the Project Schedule Managing Multiple Projects Use the Schedule to Manage Commitments Diagnosing S heduling Problems 5 REVIEWS Inspections Deskchecks Walkthroughs Code Reuietos Pair Programming Use Inspections to Manage Commitments Diagnosing Reuieto Problems 6 SOFTWARE REQUIREMENTS.. Requirements Elicitation Use Cases Software Requirements Specification Change Control Introduce Software Requirements Carefully Diagnosing Software Requirements Problems 7 DESIGN AND PROGRAMMING Reuiew the Design Version Control with Subuersion Be factoring Unit Testing Use Automation Be Careful with Existing Projects Diagnosing Design and Programming Problems 8 SOFTWARE TESTING Test Plans and Test Cases Test Execution Defect Tracking and Triage Test Enuironment and Performance Testing Smoke Tests Test Automation Postmortem Reports Using Software Testing Effectiuely Diagnosing Software Testing Problems Part Two USING PROJECT MANAGEMENT EFFECTIVELY 9 UNDERSTANDING CHANGE Why Change Fails How to Make Change Su eed 10 MANAGEMENT AND LEADERSHIP Take Responsibility Do Euerything Out in the Open Manage the Organization Manage Your Team 11 MANAGING AN OUTSOURCED PROJECT Preuent Major Sources of Project Failure Management Issues in Outsourced Projects Collaborate with the Vendor 12 PROCESS IMPROVEMENT Life Without a Software Process Software Pro ess Improuement Mouing Forward BIBLIOGRAPHY INDEX...