SCALABILITY
Ability to be enlarged to accommodate growth
Usage of virtualization and cloud computing
EXAMPLES OF SCALABILITY
Scenario 1 Web search Engine
SCALABILITY OBSTACLE
Systematically identifying and resolving potential variations in domain quantities
that will cause goal to fail
Agents - active system components, such as humans, hardware devices and software
components
System refers to the composition of the software under development and its
environment.
Goals range from high-level business objectives involving multiple agents to finegrained technical properties involving fewer agents
Domain Properties and Domain Hypotheses Descriptive states about application
domain
KAOS APPROACH
Goal elaboration
o Define initial set of high level goals & objects they refer to
GOAL-OBSTACLE ANALYSIS
Goal obstacle analysis consists of identifying, assessing and resolving obstacles.
Identifying as many obstacles as possible
Assessing the relative importance of the identified obstacles in terms of their impact
Resolving more critical obstacles by modifying existing goals, requirements and
assumptions
UNDERSTANDING SCALABILITY
SCALABILITY REQUIREMENTS
Elements required to define scalability
quality goals of the system,
SCALING ASSUMPTIONS
Domain assumption specifying how certain characteristics in the application domain
are expected to vary over time
EXAMPLE
Assumption - Expected Batch Size Evolution
Category - Scaling Assumption
2011
UNTIL 2013
UNTIL 2015
Small
10,000
15,000
20,000
Medium
1 million
1.2 million
1.8 million
Large
50 million
55 million
60 million
Merger
80 million
85 million
95 million
Our definition of scaling assumption covers the case where variations of domain
quantities refer to a single period of time and a unique class of system instances.
Definition Over the next five years, daily batches of transactions for all banks
are expected to vary between 10,000 and 95 million transactions
SCALABILITY GOALS
A scalability goal is a goal whose definition and required levels of goal
satisfaction (as specified by its objective functions) make explicit reference to one or
more scaling assumptions.
The goal Achieve [Batch Processed Overnight Under Expected Batch Size Evolution]
is a scalability goal.
Reason - its definition refers to the scaling assumption Expected Batch Size
Evolution.
Comparison of scaling assumptions for air traffic control system and online store
Scalability goals with fixed objectives and varying objectives
CONCLUSION
STRENGTHS
By extending KAOS, we facilitate precise specification of testable scalability
requirements
Scalability obstacle analysis method provides new obstacle resolution tactics
Elaboration covers achieving scalability as well as goal-resolving techniques
WEAKNESS
Statistics from real-time projects not mentioned
No real-time values and experiments included in the elaboration for achieving
scalability
QUESTIONS ?