Requirements Engineering

, Volume 6, Issue 1, pp 18–36 | Cite as

From Non-Functional Requirements to Design through Patterns

  • Daniel Gross
  • Eric Yu

Design patterns aid in documenting and communicating proven design solutions to recurring problems. They describe not only how to solve design problems, but also why a solution is chosen over others and what trade-offs are made. Non-functional requirements (NFRs) are pervasive in descriptions of design patterns. They play a crucial role in understanding the problem being addressed, the trade-offs discussed, and the design solution proposed. However, since design patterns are mostly expressed as informal text, the structure of the design reasoning is not systematically organised. This paper proposes a systematic treatment of NFRs in descriptions of patterns and when applying patterns during design. The approach organises, analyses and refines non-functional requirements, and provides guidance and reasoning support when applying patterns during the design of a software system. Three design patterns taken from the literature are used to illustrate this approach.

Key words:Architectural properties – Design patterns – Non-functional requirements – Process-oriented – Quality attributes – Quality requirements – Rationale – Requirements – Satisfying – Softgoal 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag London Limited 2001

Authors and Affiliations

  • Daniel Gross
    • 1
  • Eric Yu
    • 1
  1. 1.Faculty of Information Studies, University of Toronto, Toronto, Ontario, CanadaCA

Personalised recommendations