This book describes an approach to software management based on
establishing an infrastructure that serves as the foundation for
the project. This infrastructure defines people roles, necessary
technology, and interactions between people and technology. This
infrastructure automates repetitive tasks, organizes project
activities, tracks project status, and seamlessly collects project
data to provide measures necessary for decision making. Most
importantly, this infrastructure sustains and facilitates the
improvement of human-defined processes.
The methodology described in the book, which is called Automated
Defect Prevention (ADP) stands out from the current software
landscape as a result of two unique features: its comprehensive
approach to defect prevention, and its far-reaching emphasis on
automation. ADP is a practical and thorough guide to implementing
and managing software projects and processes. It is a set of best
practices for software management through process improvement,
which is achieved by the gradual automation of repetitive tasks
supported and sustained by this flexible and adaptable
infrastructure, an infrastructure that essentially forms a
software production line.
In defining the technology infrastructure, ADP describes
necessary features rather than specific tools, thus remaining
vendor neutral. Only a basic subset of features that
are essential for building an effective infrastructure has been
selected. Many existing commercial and non-commercial tools support
these, as well as more advanced features. Appendix E contains such
a list.
Autorentext
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.
Klappentext
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.
Zusammenfassung
This book describes an approach to software management based on establishing an infrastructure that serves as the foundation for the project. This infrastructure defines people roles, necessary technology, and interactions between people and technology. This infrastructure automates repetitive tasks, organizes project activities, tracks project status, and seamlessly collects project data to provide measures necessary for decision making. Most importantly, this infrastructure sustains and facilitates the improvement of human-defined processes.
The methodology described in the book, which is called Automated Defect Prevention (ADP) stands out from the current software landscape as a result of two unique features: its comprehensive approach to defect prevention, and its far-reaching emphasis on automation. ADP is a practical and thorough guide to implementing and managing software projects and processes. It is a set of best practices for software management through process improvement, which is achieved by the gradual automation of repetitive tasks supported and sustained by this flexible and adaptable infrastructure, an infrastructure that essentially forms a software production line.
In defining the technology infrastructure, ADP describes necessary features rather than specific tools, thus remaining vendor neutral. Only a basic subset of features that are essential for building an effective infrastructure has been selected. Many existing commercial and non-commercial tools support these, as well as more advanced features. Appendix E contains such a list.
Inhalt
Preface.
Features and Organization.
Practice Descriptions.
Intended audience.
Acknowledgements.
Permissions.
Disclaimer.
1. The Case for Automated Defect Prevention.
1.1 What is ADP?
1.2 What are the goals of ADP?
1.2.1 People: Stimulated and Satisfied.
1.2.2 Product: High Quality.
1.2.3 Organization: Increased Productivity and Operational Efficiency.
1.2.4 Process: Controlled, Improved, and Sustainable.
1.2.5 Project: Managed through Informed Decision Making.
1.3 How is ASDP implemented?
1.3.1 Principles.
1.3.2 Practices.
1.3.3 Policies.
1.3.4 Defect Prevention Mindset.
1.3.5 Automation.
1.4 From the waterfall to modern software development process models.
1.5 Acronyms.
1.6 Glossary.
1.7 References.
1.8 Exercises.
2. Principles of Automated Defect Prevention.
2.1 Introduction.
2.2 Defect Prevention: Definition and Benefits.
2.3 Historical Perspective: Defect Analysis and Prevention in Auto Industry - What Happened to Deming?
2.4 Principles of Automated Defect Prevention.
2.4.1 Principle 1: Establishment of Infrastructure: "Build a strong foundation through integration of people and technology".
2.4.2 Principle 2: Application of General Best Practices: "Learn from others' mistakes".
2.4.3 Principle 3: Customization of Best Practices: "Learn from your own mistakes".
2.4.4 Principle 4: Measurement and Tracking of Project Status: "Understand the past and present to make decisions about the future".
2.4.5 Principle 5: Automation: "Let the computer do it".
2.4.6 Principle 6: Incremental Implementation of ADP's Practices and Policies.
2.5 Automated Defect Prevention based Software Development Process Model.
2.6 Examples.
2.6.1 Focus on Root Cause Analysis of a Defect.
2.6.2 Focus on Infrastructure.
2.6.3 Focus on Customized Best Practice.
2.6.4 Focus on Measurements of Project Status.
2.7 Acronyms.
2.8 Glossary.
2.9 References.
2.10 Exercises.
3. Initial Planning and Infrastructure.
3.1 Introduction.
3.2 Initial Software Development Plan.
3.2.1 Product.
3.2.2 People.
3.2.3 Technology.
3.2.4 Process.
3.3 Best Practices for Creating People Infrastructure.
3.3.1 Defining Groups.
3.3.2 Determining a Location for Each Group's Infrastructure.
3.3.3 Defining People Roles.
3.3.4 Establishing Training Program.
3.3.5 Cultivating a Positive Group Culture.
3.4 Best Practices for Creating Tech…