Foundations of Software and System Performance Engineering: Process, Performance Modeling, Requirements, Testing, Scalability, and Practice
- Length: 448 pages
- Edition: 1
- Language: English
- Publisher: Addison-Wesley Professional
- Publication Date: 2014-08-18
- ISBN-10: 0321833821
- ISBN-13: 9780321833822
- Sales Rank: #1083747 (See Top 100 Books)
“If this book had been available to Healthcare.gov’s contractors, and they read and followed its life cycle performance processes, there would not have been the enormous problems apparent in that application. In my 40+ years of experience in building leading-edge products, poor performance is the single most frequent cause of the failure or cancellation of software-intensive projects. This book provides techniques and skills necessary to implement performance engineering at the beginning of a project and manage it throughout the product’s life cycle. I cannot recommend it highly enough.”
Don Shafer, CSDP, Technical Fellow, Athens Group, LLC
Poor performance is a frequent cause of software project failure. Performance engineering can be extremely challenging. In Foundations of Software and System Performance Engineering, leading software performance expert Dr. André Bondi helps you create effective performance requirements up front, and then architect, develop, test, and deliver systems that meet them.
Drawing on many years of experience at Siemens, AT&T Labs, Bell Laboratories, and two startups, Bondi offers practical guidance for every software stakeholder and development team participant. He shows you how to define and use metrics; plan for diverse workloads; evaluate scalability, capacity, and responsiveness; and test both individual components and entire systems. Throughout, Bondi helps you link performance engineering with everything else you do in the software life cycle, so you can achieve the right performance–now and in the future–at lower cost and with less pain.
This guide will help you
- Mitigate the business and engineering risk associated with poor system performance
- Specify system performance requirements in business and engineering terms
- Identify metrics for comparing performance requirements with actual performance
- Verify the accuracy of measurements
- Use simple mathematical models to make predictions, plan performance tests, and anticipate the impact of changes to the system or the load placed upon it
- Avoid common performance and scalability mistakes
- Clarify business and engineering needs to be satisfied by given levels of throughput and response time
- Incorporate performance engineering into agile processes
- Help stakeholders of a system make better performance-related decisions
- Manage stakeholders’ expectations about system performance throughout the software life cycle, and deliver a software product with quality performance
André B. Bondi is a senior staff engineer at Siemens Corp., Corporate Technologies in Princeton, New Jersey. His specialties include performance requirements, performance analysis, modeling, simulation, and testing. Bondi has applied his industrial and academic experience to the solution of performance issues in many problem domains. In addition to holding a doctorate in computer science and a master’s in statistics, he is a Certified Scrum Master.
Table of Contents
Chapter 1 Why Performance Engineering? Why Performance Engineers?
Chapter 2 Performance Metrics
Chapter 3 Basic Performance Analysis
Chapter 4 Workload Identification and Characterization
Chapter 5 From Workloads to Business Aspects of Performance Requirements
Chapter 6 Qualitative and Quantitative Types of Performance Requirements
Chapter 7 Eliciting, Writing, and Managing Performance Requirements
Chapter 8 System Measurement Techniques and Instrumentation
Chapter 9 Performance Testing
Chapter 10 System Understanding, Model Choice, and Validation
Chapter 11 Scalability and Performance
Chapter 12 Performance Engineering Pitfalls
Chapter 13 Agile Processes and Performance Engineering
Chapter 14 Working with Stakeholders to Learn, Influence, and Tell the Performance Engineering Story
Chapter 15 Where to Learn More