Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
When you begin developing your application, you realize that the design performance triangle is relatively simple because all you need to consider is the concerns of the triangle itself. Making an application more secure necessarily makes it less reliable and less speedy. Likewise, speed improvements usually come at the expense of reliability and security. An application that performs well is one that has balanced these three elements as required by your organization. However, during the design process, you don't need to consider the other forces that act on the triangle — all you need to consider is your design.
Things change when you move to the development process. The design you create is a kind of promise that people expect you to keep. However, each stakeholder in a project likely has a different interpretation of precisely what that promise means. In addition, you must consider the realities of application development. Team members don't wake each morning with a smile on their face and the words, "Today I will be brilliant!" on their lips. Consequently, the performance triangle looks more like the triangle shown in Figure 18-1 in a development environment.