Overview |  | Roles |  | Work Items |  | Views |  | Index |  | Glossary |

Project Portal
| See Also Divide Quality of Service Requirements into Tasks |
| ### Next Steps Schedule Quality of Service Requirement |
| ### Patterns & Practices Performance Modeling |
| Activity: Develop Performance Model
Architect
|  |  |  | Create Solution Architecture |  |
|  | Participating Roles Responsible: Architect Consult: Developer
### Overview Performance modeling is a process to help identify and address potential performance issues in the application. A performance model is developed from a quality of service requirement, which is then broken into development tasks. Each development task is assigned a performance budget for implementation. # Entry Criteria The performance quality of service requirement has been divided into development tasks. # Sub-Activities
1 | Review the Quality of Service Requirement | Identify the scenarios linked to the performance quality of service requirement. Map the development tasks to the scenarios.
2 | Identify Workload | From the quality of service requirements list, determine the workload for the application.
3 | Identify Performance Objectives | Using the workload estimates and the quality of service requirements list, identify the performance objectives for each of the key scenarios. These include objectives such as response time, throughput, and resource use.
4 | Identify Performance Budget | Identify the performance related resources budgeted to meet the performance objectives. Some examples of performance related resources are execution time and network bandwidth. Determine the maximum allowable allocation of each resource.
5 | Allocate Budget | Spread the budgeted resources across the processing steps for each scenario. When unsure of how to allocate the budget, make best guesses or divide the resources evenly among the steps. Budgeting is refined during validation. Attach the allocation to the appropriate development task work item, or describe the allocation in the appropriate development task work item.
6 | Evaluate Budget | Find budget allocations that pose a risk to meeting performance objectives. Consider tradeoffs that help meet performance objectives such as design and deployment alternatives. Reevaluate quality of service requirements if necessary.
7 | Validate the Model | Identify the scenarios that do not meet budget allocations. Measure the performance of the scenarios. Use prototyping in early iterations if a production code is not available. Repeat the budgeting, evaluation, and validation steps as necessary using data acquired during validation.
# Exit Criteria
| Performance goals for the current iteration are met.
| A performance model document has been developed which can be used to guide design decisions throughout the life cycle of the application.
(C) 2005 Microsoft Corporation. All rights reserved. Build 97 |