O'Reilly logo

97 Things Every Software Architect Should Know by Richard Monson-Haefel

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 40. It's All About Performance

Craig Russell is a practicing software architect specializing in object persistence and distributed systems. He currently works as a senior staff engineer at Sun Microsystems.

Craig Russell
image with no caption

IMAGINE A PERSONAL VEHICLE THAT IS ROOMY, comfortable, fuel efficient, inexpensive to produce, and 98% recyclable. You want one? Sure. Everyone does. Just one problem: its top speed is 6 miles/hour (10 km/hour). Still want one? This small example demonstrates that performance is just as important as any other criterion.

The reason many designers put performance at the bottom of their lists might be that computers are so much faster at computation than their human counterparts that the designers assume that the speed of the system will be acceptable. And if today's systems aren't fast enough, Moore's Law will take care of everything. But hardware speed is only part of the system.

Performance is sometimes thought of as a simple measurement of the time it takes for a system to respond to user input. But system designers must consider many aspects of performance, including performance of the analysts and programmers who implement the design; performance of the human interactions of the system; and performance of the noninteractive components.

Performance of the people building the system is often called productivity, and it is important because it directly affects ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required