Techniques presented are collectively known as software performance engineering (SPE). Primarily intended for experienced software developers who have used object-oriented techniques on one or more development projects.
"synopsis" may belong to another edition of this title.
Connie U. Smith, Ph.D., is a principal consultant of the Performance Engineering Services Division of L&S Computer Technology, Inc. She is internationally recognized for her work in defining the field of software performance engineering and integrating SPE into the development of new software systems. She is the author of Performance Engineering of Software Systems (Addison-Wesley, 1990) and received the Computer Measurement Group's AA Michelson Award for technical excellence and professional contributions for her SPE work.
Lloyd G. Williams, Ph.D., is a principal consultant at Software Engineering Research, where he specializes in the development and evaluation of software architectures to meet quality objectives, including performance, reliability, modifiability, and reusability. His experience includes work on systems in fields such as process control, avionics, telecommunications, electronic funds transfer, Web-based systems, software development tools and environments, and medical instrumentation. He has presented professional development seminars and consulted on software development for more than 100 organizations worldwide.
"Utterly demystifies the job (no longer the art) of performance engineering. Monsters, begone! Wizards, away! It leaves you feeling that you could really do this on your own. And, thanks to Connie and Lloyd, you can."
--From the Foreword by Paul ClementsPerformance, responsiveness, and scalability are vital aspects of today's software. Yet many software systems cannot be used as initially implemented because of performance problems. Such failures can translate into significant costs for software developers due to damaged customer relations, lost income, and time and budget overruns.
Performance Solutions offers straightforward techniques and strategies that can be used by software developers, project managers, and performance specialists to handle the performance of software throughout the development process. In particular the book focuses on how to design performance into software systems early and then maintain performance throughout the software development life cycle.Software Performance Engineering (SPE) is a systematic, quantitative approach to cost-effectively constructing software systems that meet performance objectives. This book details the various SPE models that can be used for a wide variety of applications, including Web-based and distributed systems. It describes effective data gathering and performance measurement techniques and explores the principles of performance-oriented design. You will also find practical guidance on implementing an SPE program. Specific topics of interest include:
Numerous real-world applications and case studies illustrate the application of SPE techniques to important application domains, including Web and embedded real-time systems.
With this book, you will gain the understanding and skills you need to make informed choices among architectural and design alternatives and create responsive, scalable software on time and within your budget.
In our roles as consultants, teachers, and mentors to software developers, we often see software products that fail to meet their performance objectives when they are initially constructed. Fixing these problems is costly and causes schedule delays, cost overruns, lost productivity, damaged customer relations, missed market windows, lost revenues and a host of other difficulties. In extreme cases, it may not be possible to fix performance problems without extensive redesign and re-implementation. In those cases, the project either becomes an infinite sink for time and money or is, mercifully, cancelled.
These problems can be prevented by the systematic application of a few simple performance analysis and prediction techniques. Over the years, we have helped many clients produce software that meets performance objectives and is delivered on time and within budget. This book was produced in response to requests from our clients and students to provide a reference to the techniques that we have used and taught so successfully. Objectives By applying the material in this book you will be able to answer questions such as: Will your users be able to complete their tasks in the allotted time? Are your hardware and network capable of handling the load? Will your system scale up to meet future demand?
More importantly, you will be able to answer these questions before you have committed a lot of time and money to an implementation, only to find that the answers are an emphatic (and expensive) no!
You will learn enough from this book to begin to apply these techniques immediately to manage the performance of your software systems. You will sharpen your skills as you use them on a variety of projects that include: web-based applications, distributed systems, real-time systems, traditional database applications, and others. Software Performance
Performance is any characteristic of a software product that you could, in principle, measure by sitting at the computer with a stopwatch in your hand. The dimensions of performance include: response time, throughput and scalability.
How do projects get in trouble with performance? The problem is often due to a fundamental misunderstanding of how to achieve performance objectives. The approach is frequently: "First, let's make it run; then we'll make it run fast." The idea is to get the functionality right, then tune for performance. Unfortunately, by the time the architecture and design are selected, it may already be too late to achieve adequate performance by tuning.
The proper way to manage software performance is to systematically plan for and predict the performance of the emerging software throughout the development process. This book presents a set of simple techniques that you can use to manage the performance of your software. These techniques do not require an advanced degree in mathematics nor do they take significant amounts of time away from development activities. By applying them you will be able to make informed choices among architectural and design alternatives and proceed with confidence that your software will meet its performance objectives.
The approach to managing performance presented here is unique. It has grown out of over ten years of collaboration between the authors that combines knowledge and experience in both software performance engineering and architectural analysis. Other authors have proposed elaborate modeling techniques which either aren't useful for real systems, or require a Ph.D. in math to apply them. Our approach is practical, useful by non-specialists, and rigorous. Software Performance Engineering
The techniques presented in this book are collectively known as software performance engineering (SPE). SPE is a comprehensive way of managing performance that includes principles for creating responsive software, techniques for eliciting performance objectives, techniques for gathering the data needed for evaluation, and guidelines for the types of evaluation to be performed at each stage of the development process.
SPE is model-based. Modeling is central to both SPE and object-oriented development. By building and analyzing models of the proposed software, we can explore its characteristics to determine if it will meet its requirements before we actually commit to building it. SPE uses models to quantitatively assess the performance of the emerging software. This book discusses how to quickly and easily create those quantitative models from the architecture and design models that you produce as part of the object-oriented development process. It also describes how to integrate SPE seamlessly into the overall object-oriented development process.
Finally, these techniques are neither new nor revolutionary. They have evolved from a relatively long history of proven quantitative disciplines. Neither are they a silver bullet. They must be used to be effective, and it will take some time to learn to apply them, particularly on your initial project. The amount of time required, however, is not excessive and appropriate for most projects in their early stages. We have found that when problems are inevitable your choice is "pay a little now (for scalability and performance) or pay much more later." The only way to determine whether they are inevitable it to use quantitative techniques early. Who Should Read This Book?
This book is primarily intended for experienced software developers who have used object-oriented techniques on one or more development projects and who are ready for the next step: to learn how to create software systems with built-in scalability and performance. The emphasis is on how to apply the techniques. Other readers will also find information that they can use:
Developers who are new to object-oriented techniques will discover how it is possible to manage software for object-oriented systems and find guidelines for creating responsive software that will augment their study of object-oriented development. Performance specialists will learn how to adapt their skills to object-oriented systems as well as discover new approaches that are applicable to other development technologies. Students will learn about performance issues that arise in realistic, large-scale software systems and how to solve them. Project managers will find techniques that they can bring to their projects immediately to improve the way performance is managed. They will also learn how to implement SPE.
Familiarity with object-oriented concepts is helpful but not essential. We explain the portions of the UML notation useful for performance assessments. If you find you would like more background, refer to other books in the Object Technology series.
Familiarity with performance modeling techniques is helpful but not essential. We assume that you will use an SPE tool, such as SPE*ED, to evaluate your systems. We explain enough of the modeling fundamentals for you to become familiar with how such tools work. References are included with the material if you would like to learn more about the modeling technology.
Organization of This Book
This book is organized into seven parts:
Part I Introduction and Overview provides an introduction to SPE and an overview of the modeling techniques. Part II SPE Models describes details of the models used in SPE and their solution. Part III Data Collection discusses how to obtain SPE data and some background on performance measurement techniques. Part IV Software Evolution Issues covers techniques for designing performance into software systems, and maintaining performance throughout its life cycle. Part V Applications illustrates the application of SPE techniques to some important types of application domains. Part VI Making SPE Happen discusses how to implement SPE in your development organization. Part VII Appendixes summarize the notation used throughout the book.
0201722291P04062001
"About this title" may belong to another edition of this title.
Seller: ThriftBooks-Atlanta, AUSTELL, GA, U.S.A.
Paperback. Condition: Good. No Jacket. Pages can have notes/highlighting. Spine may show signs of wear. ~ ThriftBooks: Read More, Spend Less. Seller Inventory # G0201722291I3N00
Seller: Bay State Book Company, North Smithfield, RI, U.S.A.
Condition: very_good. Seller Inventory # BSM.WO0J
Seller: World of Books (was SecondSale), Montgomery, IL, U.S.A.
Condition: Good. Item in good condition and has highlighting/writing on text. Used texts may not contain supplemental items such as CDs, info-trac etc. Seller Inventory # 00096238823
Seller: Textbooks_Source, Columbia, MO, U.S.A.
paperback. Condition: Good. 1st Edition. Ships in a BOX from Central Missouri! May not include working access code. Will not include dust jacket. Has used sticker(s) and some writing or highlighting. UPS shipping for most packages, (Priority Mail for AK/HI/APO/PO Boxes). Seller Inventory # 000524746U
Seller: GoldBooks, Denver, CO, U.S.A.
Condition: new. Seller Inventory # 61D36_38_0201722291
Seller: Solr Books, Lincolnwood, IL, U.S.A.
Condition: new. Seller Inventory # BCV.0201722291.N