Skip to Main Content
Properly dealing with non-functional requirements (NFRs), such as security and trustworthiness, requires a large body of knowledge about NFRs. Such knowledge can be captured as NFR patterns for reuse. Since knowledge of NFRs can have potentially complex structures and rules, it becomes hard to capture and reuse NFR patterns when they are represented only textually. In this paper, we present an approach to visualizing NFR patterns, including the objective pattern for capturing knowledge of NFRs as goals to be achieved, the problem pattern for capturing problems or obstacles to be avoided in achieving the goals, alternative solutions patterns for problem mitigation, and the selection pattern for choosing among the alternatives in consideration of their side effects. In this approach, not only individual NFR patterns but also relationships between them are visualized, including specialization, composition, and instantiation. An emphasis is placed on a visualization support framework and a model-based tool that capture, organize, apply, and enforce integrity constraints based on model refinement rules, each is applied to incrementally re-create the captured NFR model during reuse. The approach is illustrated using the TJX incident, one of the largest credit card thefts in history, as a running example.