Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Outline
Scalability Goal-Oriented Requirements Engineering KAOS Goal-Obstacle Analysis Scalability Requirements Application to Case Study Short Review
Defining Scalability
The ability of a system to maintain the satisfaction of its quality goals to levels that are acceptable to its stakeholders when characteristics of the application domain and the system design vary over expected operational ranges
Defining Scalability
Example 1: Scalability of a Web search engine may be characterized by its ability to return search results in a time that remains almost instantaneous (a performance goal) when the number of simultaneous queries and the number of pages indexed increase Example 2: Scalability of an air traffic control system may be characterized by its ability to keep safe separation distances between airplanes (a safety goal) when the number of airplanes in the airspace managed by the system increases
A goal is a prescriptive statement of intent that a system should satisfy through the cooperation of agents. Agents are active system components, such as humans, hardware devices and software components, that are capable of performing operations that modify system state in order to satisfy goals. The word system refers to the composition of the software under development and its environment. Goals range from high-level business objectives whose satisfaction involves multiple agents (such as minimizing loss due to financial fraud, and maintaining the banks reputation, etc.), to fine-grained technical properties involving fewer agents (such as processing all transaction batches within eight hours). Domain properties are descriptive statements that are always true in the application domain, irrespective of agents behaviors. Physical laws are typical examples of domain properties. Domain hypotheses are also descriptive statements about the application domain, but unlike domain properties are considered to be more uncertain and subject to change.
Specifying Goals
Goal-Obstacle Analysis
An obstacle to some goal is an exceptional condition that prevents the goal from being satisfied Starting from an idealized goal model, a goal-obstacle analysis consists of
identifying as many obstacles as possible by systematically considering all leaf goals and assumptions in the goal graph assessing the relative importance of the identified obstacles in terms of their likelihood and impacts on top-level goals resolving the more critical obstacles by modifying existing goals, requirements and assumptions, or by introducing new ones so as to prevent, reduce or tolerate the obstacles.
Goal-Obstacle Analysis
Translation in KAOS
Quality goals correspond to goals whose specification includes domain-dependent objective functions Expected variations of characteristics in the application domain correspond to a new kind of domain assumption that we call a scaling assumption The acceptable levels of quality goal satisfaction under these variations are specified as target values for the quality goal objective functions. We refer to quality goals that are constrained by scaling assumptions as scalability goals
The goal Achieve [Batch Processed Overnight Under Expected Batch Size Evolution] is a scalability goal because its definition refers to the scaling assumption Expected Batch Size Evolution.
The resolution of scalability obstacles leads to the identification of scaling assumptions and scalability goals introduced in the previously
In this definition the concepts of goal load and agent capacity to denote domain-specific measures intended to characterize the amount of work needed to satisfy the goal and the amount of resources available to the agent to satisfy the goal, respectively.
Qualitative Risk Analysis Matrix Light Weight Technique with Qualitative Assessment Capacity Likelihood described from Very Unlikely to Almost Certain Criticality estimated on a scale from Insignificant Catastrophic
Only the generation step is considered here; the selection among alternatives can be performed using qualitative or quantitative techniques covered elsewhere.
Case Study
Case Study
The scalability obstacle analysis techniques was applied to the elaboration of the scalability requirements of a major redesign of the IEF system The full goal model that was elaborated was not shown due to its size and the sensitivity of the information it contained A portion of the goal model on which the scalability obstacle analysis techniques were illustrated is shown in the following slides
Refinement of the Goal Achieve [Alerts Generated For Transactions Matching Fraud Detection Rules]
Weaknesses
Selection procedures of Quantitative measures derived from domain properties not elaborated Relevancy of Quantitative measures selected from domain absent Only qualitative validation on the heresy of project personnel