Agile and iterative methods have emerged as the most popular approaches to software development, and with good reason. Research (examined and cited in detail within this book) shows that iterative methods reduce the risk of failure, compared to traditional models of development. This book is an efficient introduction for both managers and practitioners that need a distilled and carefully organized learning aid for the hands-on practices from planning to requirements to testing and the values that define these methods. The author also provides evidence of the value of switching to agile and iterative methods. By studying this book, the reader will learn to apply the key ideas in agile and iterative development, the details and comparison of four influential iterative methods (Scrum, Extreme Programming, Evo, and the Unified Process), answers to frequently asked questions, and important related management skills. The book's goal is quality information that can be quickly understood and applied.