Information Technology Reference
In-Depth Information
NFRs are commonly perceived as difficult to express. Reasons for this include:
• Certain constraints are related to the design solution that are unknown at
the requirements stage.
• Certain constraints are highly subjective and can only be determined through
complex, empirical evaluations.
• Non-functional requirements tend to be related to one or more functional
requirements.
• Non-functional requirements tend to conflict and contradict.
• There is no 'universal' set of rules and guidelines for determining when non-
functional requirements are optimally met.
5.3.3 Identifying the Application Domain
Domain analysis is a term used to describe the systematic activity of identifying,
formalizing and classifying the knowledge in a problem domain. Our view of
domain analysis encompasses those domains which enable or provide supportive
function to the application domain. Therefore, we are interested in acquiring
quantifiable characteristics of the application, related execution, architectural
design, and algorithmic domains. We use these characteristics to further constrain
non-functional requirement goals, thereby producing realistic and achievable non-
functional requirements. During domain analysis, we seek answers to questions
such as 'What are the essential performance criteria for this type of application?',
'Where will the application be utilized, and what are the performance features of
this environment, i.e., throughput, delay, loss?' and 'What are the performance
characteristics of specific algorithms?' Answers to such questions would vary
based on the domain. For example, domain analysis within the execution domain
may produce information regarding processor speed, radio range for wireless
devices, battery life for mobile devices, average throughput, delay and loss
characteristics of the network, etc. In addition, domain analysis within the appli-
cation domain will hopefully produce quantifiable characteristics that are inherent
to all applications of that type. An example of such an application characteristic is
the 150 ms one way path propagation delay requirement for IP telephony appli-
cations. Studies show that humans tolerate delays in speech of approximately
150 ms. After 150 ms of delay, we begin to talk over or interrupt the speech of the
other person. Furthermore, regarding the algorithmic domain, we are interested in
the performance of algorithms that may be used to satisfy a specific non-functional
requirement. For example, performance specifications of an encryption algorithm
may be used to assess the feasibility of employing the encryption algorithm to
provide confidentiality and protect the data's integrity (Hill 2004 ).
Search WWH ::




Custom Search