Modeling the non-functional requirements of applications in UML models and topologies
In the context of UML modeling and operational modeling, non-functional
requirements (NFRs) are key performance or capacity requirements
for an application. For example, a non-functional requirement might
specify how quickly an application must respond to requests or how
much data it must be able to process.
Before you begin
About this task
For more information about non-functional requirements, see Constraints that represent non-functional requirements.
Procedure
- In a UML freeform diagram, create one or more UML components and one or more deployment units as attributes of those components, as described in Modeling the run-time organization of an application with deployment units.
- In the freeform diagram, select a deployment unit and open the Properties view.
- On the Stereotypes tab of the Properties view,
under Stereotype Properties, expand the Deployment
Analysis section. These properties represent
the NFRs on the deployment unit and by extension, on any component
that has the DU as an attribute.

- Click a property and specify a value for the NFR in the Value column. For example, to specify that the component must be available 99% of the time, set the Availability property to 99%. For information on the types of NFR in this list, see Constraints that represent non-functional requirements.
- Import the component (not the DU) into a topology by dragging it from the Project Explorer to the topology editor.
Results

The topology editor keeps these NFRs in sync with the UML model. If you remove an NFR or change its value, the topology editor warns you, as in the following picture:
