Presenter: Mark B. Friedman
Performance issues are often deferred to the later stages of application development, to the detriment of overall software quality. Deferring performance needs until late in the development cycle can put the performance engineering staff in a difficult position, both technically and politically. From a technical standpoint, the later in the development cycle performance problems are addressed, the more complicated they tend to be and more difficult and expensive to resolve. From a political standpoint, deferring performance evaluation until the QA and acceptance testing phases can put the Performance Team in an awkward position of being the final and most difficult quality gate to hurdle, potentially assuming responsibility for delaying a release that the organization’s business units demand.
There is a better way! This presentation describes how to integrate performance into each phase of software development, beginning with specifying performance requirements to design processes where modeling techniques can be applied to avoid delivering a system that cannot meet its performance requirements. It discusses Best Practices for instrumenting applications during developing to track progress against performance goals, and emphasizes the use of load and stress testing during the QA and final acceptance process to ensure application quality. Finally, it shows how to use instrumentation to measure performance that was added to the application during development in what is currently known as the DevOps phase to identify and solve performance problems. It focuses on critical success factors for a Performance Engineering Team, discussing common pitfalls that are often encountered and how to overcome them.
About the Presenter
Mark Friedman is a past recipient of the CMG Michaelson Award for achievement in the field of computer performance evaluation. He is the author of two books on Windows performance, as well as numerous technical articles published in CMG publications and technical journals.
He attended his first CMG annual conference in 1983, where he gave a presentation about cached disk controllers. He was active on the CMG conference’s Program Committee for many years and served as the Program Chair for the Dec. 2000 conference. He also served two terms on the CMG Board of Directors.
He is currently a Principal with Demand Technology Software, a developer of enterprise-scale performance tools for Microsoft Windows server farms, a company he founded in 1996. He is also a part-time Lecturer at the University of Washington Allen School of Computer Science and Engineering, where he teaches a graduate seminar in performance engineering.