Problem – Describing Aggregate Properties
Trends can be detected over a sufficiently large number of sample cases. Once identified, these trends may be used to take corrective actions. Performance requirements are often stated in terms of such aggregate properties.
Solution
A derived meta-attribute may be defined at the collection level that aggregates one or more attributes of the collection. The type of aggregate function and a threshold are defined in order to detect a condition in which action should be taken.
Example – Test Question In order in guarantee that a test question is fair, each question is evaluated for overall average number of students that answered the question correctly. If this fall below the 50% threshold, the question is thrown out. Furthermore, this average is compared against a frequency distribution of how each of five percentile groups fared on the question. The question is also thrown out if any higher percentile group averaged less than 25% below any lower percentile group. This last part applies the Association and Ordering business rule patterns in order to define the threshold.
| Aggregate function type | average |
| Threshold | 50% of answers correct |
An organization's service departments requires that if the average delay for support calls exceeds fifteen minutes that corrective actions be taken, such as shifting telephone operators from another product line.
| Aggregate function type | average |
| Threshold | 5 minutes |
The Aggregation business rule pattern is modeled in the UML as a derived attribute of a model element that contains a collection. The Association and Ordering business rule patterns may collaborate with this pattern to define the threshold parameter.