Prioritize Intent
The intent of the Prioritize pattern is to communicate the urgency of one application aspect over another. Prioritize enables authors to require an application to communicate urgency without specifying the exact implementation for how the priority is communicated.
Also Known As
Priority, Prioritize, Sort
Motivation
Prioritization is a common activity in most applications. For example, most e-mail applications enable users to sort their mail messages in various ways. For instance, users can sort their e-mail by date in either ascending order or descending order. Ultimately, the goal of the sorting is to place the important e-mail messages toward the top of the list, in the position of highest priority.
There is more than one way to communicate priority, however. While sorting may be the most appropriate solution, restricting or jading creative developers does everyone a disservice. For instance, color-coding may be an innovative or fresh solution to communicating priority.
To remedy this situation, it is sufficient for the application to require that the application "Prioritize" application objects.
For the spreadsheet example above, the solution is as follows:
Prioritize E-mail Message Presentation
Prioritize E-mail Messages by Date
The E-mail application will enable the user to prioritize e-mail messages in the "E-mail Message Presentation" by the date included as part of the E-mail data item, as described in the data requirements.
Prioritize E-mail Messages by Subject
The E-mail application will enable the user to prioritize e-mail messages in the "E-mail Message Presentation" by the subject included as part of the E-mail data item, as described in the data requirements.
Applicability
Use Prioritize when:
Consequences
Presentation has the following benefits and liabilities:
Focuses on data items by which to prioritize. Prioritize enables the author to focus on the information that the application is to prioritize by as opposed to the method used to prioritize.
Example Implementations
Examples of ways to implement Prioritize include:
|