Software Process Dynamics / Edition 1 available in Hardcover
This book is designed for professionals and students in software engineering or information technology who are interested in understanding the dynamics of software development in order to assess and optimize their own process strategies. It explains how simulation of interrelated technical and social factors can provide a means for organizations to vastly improve their processes. It is structured for readers to approach the subject from different perspectives, and includes descriptive summaries of the best research and applications.
|Product dimensions:||6.42(w) x 9.51(h) x 1.41(d)|
About the Author
Raymond J. Madachy, PhD, is a Research Assistant Professor in the USC Industrial and Systems Engineering Department and a Principal of the USC Center for Systems and Software Engineering. Dr. Madachy's current research interests include modeling and simulation of processes for architecting and engineering of complex software-intensive systems; economic analysis and value-based engineering of software-intensive systems; systems and software measurement, process improvement, and quality; quantitative methods for systems risk management; integrating systems engineering and software engineering disciplines; and integrating empirical-based research with process simulation. He is a Senior Member of IEEE and a member of ACM.
Table of Contents
Foreword (Barry Boehm).
PART 1 FUNDAMENTALS.
Chapter 1 Introduction and Background.
1.1 Systems, Processes, Models, and Simulation.
1.2 Systems Thinking.
1.3 Basic Feedback Systems Concepts Applied to the SoftwareProcess.
1.4 Brooks's Law Example.
1.5 Software Process Technology Overview.
1.6 Challenges for the Software Industry.
1.7 Major References.
1.8 Chapter 1 Summary.
Chapter 2 The Modeling Process with System Dynamics.
2.1 System Dynamics Background.
2.2 General System Behaviors.
2.3 Modeling Overview.
2.4 Problem Definition.
2.5 Model Conceptualization.
2.6 Model Formulation and Construction.
2.8 Model Assessment.
2.9 Policy Analysis.
2.10 Continuous Model Improvement.
2.11 Software Metrics Considerations.
2.12 Project Management Considerations.
2.13 Modeling Tools.
2.14 Major References.
2.15 Chapter 2 Summary.
Chapter 3 Model Structures and Behaviors for SoftwareProcesses.
3.2 Model Elements.
3.3 Generic Flow Processes.
3.4 Infrastructures and Behaviors.
3.5 Software Process Chain Infrastructures.
3.6 Major References.
3.7 Chapter 3 Summary.
PART 2 APPLICATIONS AND FUTURE DIRECTIONS.
Introduction to Applications Chapters.
Chapter 4 People Applications.
4.2 Overview of Applications.
4.3 Project Workforce Modeling.
4.3.1 Example: Personnel Sector Model.
4.4 Exhaustion and Burnout.
4.4.1 Example: Exhaustion Model.
4.6 Team Composition.
4.7 Other Application Areas.
4.8 Major References.
4.9 Chapter 4 Summary.
Chapter 5 Process and Product Applications.
5.2 Overview of Applications.
5.3 Peer Reviews.
5.4 Global Process Feedback (Software Evolution).
5.5 Software Reuse.
5.6 Commercial Off-the-Shelf Software (COTS)-Based Systems.
5.7 Software Architecting.
5.8 Quality and Defects.
5.9 Requirements Volatility.
5.10 Software Process Improvement.
5.11 Major References.
5.12 Provided Models.
5.13 Chapter 5 Summary.
Chapter 6 Project and Organization Applications.
6.2 Overview of Applications.
6.3 Integrated Project Modeling.
6.4 Software Business Case Analysis.
6.5 Personnel Resource Allocation.
6.7 Earned Value.
6.8 Major References.
6.9 Provided Models.
6.10 Chapter 6 Summary.
Chapter 7 Current and Future Directions.
7.2 Simulation Environments and Tools.
7.3 Model Structures and Component-Based Model Development.
7.4 New and Emerging Trends for Applications.
7.5 Model Integration.
7.6 Empirical Research and Theory Building.
7.7 Process Mission Control Centers, Analysis, and TrainingFacilities.
7.8 Chapter 7 Summary.
Appendix A: Introduction to Statistics of Simulation.
A.1 Risk Analysis and Probability.
A.2 Probability Distributions.
A.3 Monte Carlo Analysis.
A.4 Analysis of Simulation Input.
A.5 Experimental Design.
A.6 Analysis of Simulation Output.
A.7 Major References.
A.8 Appendix A Summary.
Appendix B: Annotated System Dynamics Bibliography.
Appendix C: Provided Models.
What People are Saying About This
This book is a critically important, timely and excitingcontribution to software project management. In the last twodecades, the application of System Dynamics to model and study thesoftware development process has added significantly to ourunderstanding of the complexities of software project dynamics.Transferring the lessons learned into practice has heretofore beenhampered by the insufficiency of accessible teaching materials.Now, Ray Madachy has given us a major and much needed new textbookin his Software Process Dynamics.
Madachy's book is a comprehensive compilation of the wisdom andknowledge gathered over more than twenty years of research in thefield, and contains a wealth of material covering all importantaspects of software project dynamics. Because many of the conceptsare accompanied by example models, Madachy has provided thepractitioner with the building blocks and the tools to moveahead. This book is a gift to software project managerseverywhere.
-Dr. Tarek Abdel-Hamid, Professor in the Graduate Schoolof Business and Public Policy at the Naval Postgraduate School,author of Software Project Dynamics and pioneer in thefield.
One of the best techniques for reasoning about the effects ofcomplex interacting changes is the System Dynamics modelingframework that Ray Madachy presents in this book. AsI’ve found in numerous applications of the method, it enablesproject personnel to model such effects and run the models tobetter understand the implications of candidate project strategiesand decisions. His modeling experience as a technical leaderin diverse organizations have given him a broad and deepperspective on the critical success factors for modeling variousclasses of software decision situations, while his teaching andresearch has enabled him to develop an integrating framework thatmakes system dynamics modeling much easier and cost-effective tolearn and apply.
Overall, the book brings together a tremendous amount of usefulprocess modeling material and experience in using it in practicalsoftware decision situations. It organizes this material intoa unifying framework that makes it easier to apply and explain, andillustrates it with a wide variety of useful examples. Ibelieve that the book will serve as a standard reference for thesoftware process dynamics field and a great help to practitionersand researchers for a good long time.
-Dr. Barry Boehm, Professor in the Computer Science andIndustrial and Systems Engineering Departments at the University ofSouthern California, Director of the USC Center for Systems andSoftware Engineering, a member of the National Academy ofEngineering, a Fellow of ACM and IEEE, and pioneer in several areasof systems and software engineering
Ray Madachy's new book is not only the best software engineeringbook of 2007, but quite possibly the most important book of thisentire first decade of the 21st century. Many of us were excited bythe possibilities of system dynamics modeling and simulation ofsoftware projects and processes in 1991 based on the important bookSoftware Project Dynamics by Tarek Abdel-Hamid. But itwas ahead of its time, and it didn't incorporate many of thereal-world issues and problems confronted by today's projectmanagers. Madachy updates Adbel-Hamid's initial work withdiscussions of object-oriented methods, agile processes,open-source development, and distributed global development; and healso incorporates the best thinking of software cost models such asCOCOMO II.
Project managers, IT executives, and CIO's often wring theirhands and ask why software development can't be more of anengineering discipline, rather than a completely unpredictable formof witchcraft. Now there's an answer, courtesy of Ray Madachy:serious, metrics-based modeling and simulation of softwaredevelopment. Along with a few other gems like Fred Brooks' "TheMythical Man-Month," I predict that "Software Process Dynamics" isgoing to be one of those key books that every softwareengineer, and every IT manager, has on his or herdesk.
-Ed Yourdon, internationally recognized consultant, authorof Death March and over 27 other computer related books, IEEE andACM member, and one of the most influential people in the softwarefield