- You'll save an extra 5% on Books purchased from Amazon.ca, now through July 29th. No code necessary, discount applied at checkout. Here's how (restrictions apply)
Automated Defect Prevention: Best Practices in Software Management Hardcover – Sep 4 2007
Special Offers and Product Promotions
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
From the Back Cover
Improve Productivity by Integrating Automation and Defect Prevention into Your Software Development Process
This book presents an approach to software management based on a new methodology called Automated Defect Prevention (ADP). The authors describe how to establish an infrastructure that functions as a software "production line" that automates repetitive tasks, organizes project activities, tracks project status, seamlessly collects project data, and sustains and facilitates the improvement of human-defined processes. Well-grounded in software engineering research and in industry best practices, this book helps organizations gain dramatic improvement in both product quality and operational effectiveness.
Ideal for industry professionals and project managers, as well as upper-level undergraduates and graduate-level students in software engineering, Automated Defect Prevention is complete with figures that illustrate how to structure projects and contains real-world examples, developers' testimonies, and tips on how to implement defect prevention strategies across a project group.
About the Author
Dorota Huizinga, PhD, is the Associate Dean for the College of Engineering and Computer Science and Professor of Computer Science at California State University, Fullerton. Her publication record spans a wide range of computer science disciplines and her research was sponsored by the National Science Foundation, California State University System, and private industry.
Adam Kolawa, PhD, is the cofounder and CEO of Parasoft, a leading provider of Automated Error Prevention software solutions. Dr. Kolawa is a coauthor of Bulletproofing Web Applications, has contributed to or written more than 100 commentary pieces and technical papers, and has authored numerous scientific papers.
Most Helpful Customer Reviews on Amazon.com (beta)
1. Clarity: All concepts, practices, and examples were extraordinarily clear. There was never a question as to what was meant, or confusion in the information conveyed.
2. Readability: The text is very user-friendly. Coming from a very technical background, I tend to read challenging and complicated material. In this book, you were able to frame both technical and complex material in a readable way. In other words, I never had to re-read anything in the book. All of the material was very easy to understand. I feel the ability to effectively reduce complexity to simplicity is the hallmark of good authorship.
3. Implementable: I found the practice-side of the book to be what I call `out-of-the-box.' This means I was able to take material directly from the text and apply that into my process(es) or deliverables with very little work or trouble. (I actually did this multiple times.) This is a testament to the subtitle of the book, Best Practices in Software Management.
4. Usefulness: The book is actually aimed at being useful within for-profit businesses. Theoretical books are good for concepts, but it's up to the readers to find ways to translate the theory into executable practices (which often is beyond the role and responsibility of the readers). Your book actually bridges this gap, and provides mechanisms to help readers implement valuable techniques into their organizations, independent of their infrastructure.
These four points make a huge difference for readers looking to improve their software development processes to ensure profitability, cost savings, and customer satisfaction. Producing quality software while building defect prevention into your processes is key in today's competitive software marketplace. With these techniques, your organization will continue to become better, managing, reducing, and even eliminating the traditional sources of defects in software deliverables. You won't be disappointed in buying this book, as you'll refer to over and over again as you build process improvement into your organization.
This book provides a practical, systematic and comprehensive Automated Defect Prevention (ADP) based software development process model. ADP builds upon people and technology infrastructure, automation and best practices. As they collaborate, people are assigned certain roles, and various technologies have certain roles. When learning better ways to efficiently produce high quality software related work products, the larger team can also benefit, but only if knowledge gained is effectively shared and used. Experience must be captured in a repository. People must be properly motivated to contribute to and reference a repository. Automation of best practices enables beneficial application and retention of lessons learned.
The book observes that a large measure of overall software engineering effort presently goes towards finding and fixing defects. By contrast, defect prevention, reducing the number of initially occurring defects to be found later, represents genuine opportunity to improve efficiency. Understanding the underlying root cause of a class of defects enables development of preventive action plans, and process improvements to prevent recurrence. Automation of preventive action improves process compliance, predictability and product quality. It is duly noted that automation can itself be a significant challenge. However, improvements contribute to customer satisfaction as well as to job satisfaction and productivity. Successfully automating portions of what our software engineers are presently doing relieves tedium and allows for more creative engineering focus. We also gain opportunities to automate reliable measurement of process performance.
The authors recognize process change challenges, and provide an incremental evolutionary approach to phasing in ADP. They apply ADP to, "initial planning and requirements, expanded planning and design, construction and testing, and deployment." Best practices coverage for each software development phase includes characterization of the problem addressed, identification of team members performing the practice, description of practice implementation, and automation. Measurement and tracking also benefit from automation. These measurements support more effective management decision making, systematically providing value above and beyond the basic contribution of each individual.
Important words of caution are provided. There are no silver bullets. Some human activities do not lend themselves to automation. Examples include requirements elicitation, architectural design, documentation peer review and various activities related to creativity and innovation. The authors emphasize appropriate use of measurement and tracking data, and perhaps more importantly the absolute necessity for management to prohibit inappropriate use of that data. Appropriate use deals with improving process performance, while an inappropriate use of measurement data could involve an individual's performance. To be effective in providing useful measures and support productive management decision making, the dedicated, hardworking individuals must be confident that an automated defect prevention system will be used for the benefit of the entire team.
I like the way the information is presented in this book because I feel a project manager would be able to quickly evaluate a practice for phasing in without facing an all-or-nothing approach that some other books take. If, for example, a manager felt that they enjoyed the chapter on testing models, this book provides the information on what is needed, the benefits and the roles people need to take to phase that approach into their teams.
I enjoyed this book and I wish that more development teams used many of the practices in this book. While there were samples at the end of the chapters and a chapter on case studies, I would have liked to have seen a bit more information on difficulty and time constraints presented within some of the sections themselves. Overall this is a great book and definitely worth having on your desk.
Look for similar items by category
- Books > Computers & Technology > Programming > Languages & Tools
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Testing
- Books > Computers & Technology > Software
- Books > Textbooks > Computer Science & Information Systems > Programming Languages
- Books > Textbooks > Computer Science & Information Systems > Software Design & Engineering