Transcript Slide 1

NORTH DAKOTA STATE UNIVERSITY
DEPARTMENT OF COMPUTER SCIENCE
Autonomic Self-Testing
Of the Cloud, In the Cloud
CS-Industry Consortium Outreach: IBM
Presenter: Tariq M. King
April 21, 2010
© NDSU
SOFTWARE TESTING RESEARCH GROUP
Outline
 Motivation
 Background
 Position Paper (ICSTW ‘10)
 Migrating AST to the Cloud
 Work-In-Progress
 Conclusion
© NDSU
SOFTWARE TESTING RESEARCH GROUP
2
Motivation
 Cloud services deliver computing resources to users
via the web, e.g., business process, data store
 Generally characterized by:
 High availability and performance requirements
 Dynamic behavior through service discovery,
redirection, load balancing, on-line updates
 Tailor-made services can be built from existing
services, while hiding underlying complexity
 How can we test stateful, adaptive, remote services
in the cloud without excessive degradation of QoS?
© NDSU
SOFTWARE TESTING RESEARCH GROUP
3
Background
CLOUD COMPUTING
 Cloud offers Everything-as-a-Service (XaaS)
 Software-as-a-Service – programs designed to help
users perform a task, e.g., Google Apps
 Platform-as-a-Service – development, testing, and
execution environments to support applications,
e.g., Microsoft Windows Azure.
 Infrastructure-as-a-Service – computer hardware
including servers, network equipment, and the
software to support them e.g., Amazon CloudWatch
 Trend towards virtualization for providing XaaS
© NDSU
SOFTWARE TESTING RESEARCH GROUP
4
Background
AUTONOMIC COMPUTING
 Autonomic Computing [IBM 2003] aims to
reduce the burden of managing complex systems
 Systems dynamically adapt to changes in their
environment, i.e., four self-* features
 King et. al [2007] introduce an
implicit self-test characteristic
 Regardless of self-* features
implemented, system should
validate adaptations at runtime
© NDSU
SOFTWARE TESTING RESEARCH GROUP
SelfConfigure
SelfHeal
SelfTest
SelfOptimize
SelfProtect
5
Background
AUTONOMIC COMPUTING
 Self-* is realized through Monitor-Analyze-PlanExecute (MAPE) loops in Autonomic Managers
 Monitor – polls state
of managed resource
 Analyze – determines
Sensor
Effector
Autonomic Manager
Analyze
Plan
if state is undesirable
 Plan – formulates a plan
to address the problem
 Execute – implements
the plan on the resource
© NDSU
Monitor
Execute
Knowledge
Change
Symptoms
Change
Request
Plan
Sensor
Effector
Managed Resource
SOFTWARE TESTING RESEARCH GROUP
6
Autonomic Self-Testing
TEST MANAGERS
 Autonomic Test Managers apply the concept of
MAPE to runtime testing of adaptive changes
 Monitor, intercept, and
validate change requests
generated by AMs
 AST is supported by:
»
»
»
»
© NDSU
Two General Strategies
Detailed Workflows
Various Algorithms
Object-Oriented Designs
Test Manager
Sensor
Effector
Analyze
Plan
Autonomic Manager
Analyze
Plan
Monitor
Execute
Monitor
Knowledge Execute
Knowledge
Autonomic Manager
Sensor
Effector
Managed Resource
SOFTWARE TESTING RESEARCH GROUP
7
AST (cont’d)
VALIDATION STRATEGIES
 Safe Adaptation with Validation
 tests changes in-place, directly on managed resource
 Replication with Validation
 tests changes using copies of managed resources
 testing
can occur “transparently”Autonomic
on a separate
node
Autonomic Self-Management
Self-Testing
SYSTEM NODE
TESTING NODE
Managed Resource
© NDSU
Copy of Managed Resource
SOFTWARE TESTING RESEARCH GROUP
8
Migrating AST to the Cloud
OVERVIEW
 Combine the development of an autonomic selftest harness for a cloud service, with the delivery
of Test Support as-a-Service (TSaaS)
 Each cloud provider develops a self-test harness
for validating changes to their hosted services
and underlying infrastructure
 Sub-procedures of automated tests are modeled
as operations realized on a separate test bed and
exposed via a TSaaS API for cloud partners
© NDSU
SOFTWARE TESTING RESEARCH GROUP
9
Developing the Self-Test Harness
During
Emphasis
This
model
theisdevelopment
can
on the
thenuse
be of
encoded
ofReplication
a cloud
in test
service,
with
scripts
Validation
a test
for
in the cloud
automated
model
is generally
tools,
to address
and
created
linked
hightoavailability
to
validate
a self-test
itsrequirements
behavior
harness
Test Manager
Analyze
Plan
Execute
XaaS
Monitor
Local
Test Bed
Knowledge
X-as-a-Service
Cloud Consumer
© NDSU
Test
Model
Cloud Partner
SOFTWARE TESTING RESEARCH GROUP
10
Exposing Test Support as-a-Service
Virtual Test Environment
Analyze
XaaS
Test Manager
Partner
Test Bed
Plan
XaaS
Local
Hypervisor
Test Bed
Monitor
Execute
Knowledge
Test Support as-a-Service
X-as-a-Service
Test
Model
Virtualization
Partners
cantest
use
issetup,
used
TSaaS
to
during
reduce
development
the
overhead
of
of tailor
maintaining
made
Automated
input,
and
assertion
operations
from
applications
copies
enhance
and
testing
and
(on-demand
for automating
testing,
regression
snapshots)
the testand
model
areservices,
used
asCloud
the
basis
for developing
TSaaStests
Cloud
Consumer
Partner
© NDSU
SOFTWARE TESTING RESEARCH GROUP
11
Application View
SYSTEM-WIDE SELF-TESING
 Partners generally develop applications by extending existing services (A,B) that are remotely hosted
 An adaptation manager is used to enable dynamic
behavior, and a test manager for validation
 Now using TSaaS APIs partners can perform
integration testing of stateful remote services
© NDSU
SOFTWARE TESTING RESEARCH GROUP
12
Work-In-Progress
PROTOTYPE PLAN
 Goal: Proof of Concept TSaaS with Virtualization
 Steps:
 Define a method and detailed workflows for TSaaS
 Acquire necessary hardware and software resources
 Apply the method in the context of a problem-based
scenario in the healthcare domain
 Platform and Tool Support:
 Windows Server 2008 R2 – WMI and Hyper-V API
 Visual Studio 2010 – Service Development (Azure)
© NDSU
SOFTWARE TESTING RESEARCH GROUP
13
Scenario
PATIENT-CENTERED HEALTHCARE
 While abroad you take ill and are admitted to a
local hospital. A cloud-based solution provides the
admitting doctor at the hospital with services for:
 Locating and accessing your medical history using a
variety of sources, e.g., hospitals, clinics, pharmacies
 Consulting with other specialists in real-time for a
second opinion on your condition (AV, Chat, File)
 Scheduling an appointment with another specialist
on your behalf, or with your regular physician
 Filing medical claims with your insurance
© NDSU
SOFTWARE TESTING RESEARCH GROUP
14
Such a System Can Be…
 Mission Critical
 In the presence of medical emergencies
 Self-Configuring
 New hospitals, clinics, pharmacies, specialists, and
services can come up or existing ones go obsolete
 Automatically realize communication based on user
needs and device capabilities
 Self-Optimizing
 Balance workloads to maintain throughput
...and more giving rise to the need for AST in the Cloud
© NDSU
SOFTWARE TESTING RESEARCH GROUP
15
Conclusion
 Presented a high-level view of Autonomic SelfTesting of Cloud Applications and Services
 Our approach seeks to improve the testability of the
cloud, and enable automated testing in the cloud to
cross system boundaries
 Plans to build a prototype of TSaaS and apply it in
the context of patient-centered healthcare
 Investigation will include using TSaaS during
development, and for automated regression testing
© NDSU
SOFTWARE TESTING RESEARCH GROUP
16
Acknowledgements
 Annaji Sharma Ganti
 Dr. Kenneth Magel
 Mohammed Akour
 Akanksha Jaidev
 Dr. Scott Tilley and the STITC Reviewers
© NDSU
SOFTWARE TESTING RESEARCH GROUP
17
References

IBM Autonomic Computing Architecture Team, “An Architectural
Blueprint for Autonomic Computing, IBM, Hawthorne NY, Technical
Report, June 2006.

T. M. King, A. E. Ramirez, R. Cruz, and P. J. Clarke, “An integrated
self-testing framework for autonomic computing systems,” JCP, vol.
2, no. 9, pp. 37–49, 2007.

T. M. King, “A self-testing approach for autonomic software,” Ph.D.
dissertation, Florida International University, Miami, FL, USA,
August 2009.

A. Weiss, “Computing in the Clouds,” netWorker, vol. 11,no. 4, pp.
16–25, 2007.

W. K. Chan, L. Mei, and Z. Zhang, “Modeling and Testing of Cloud
Applications,” in APSCC ’09: Proceedings of the 2009 IEEE AsiaPacific Services Computing Conference. Los Alamitos, CAA, USA:
IEEE Computer Society, 2009.
© NDSU
SOFTWARE TESTING RESEARCH GROUP
18
The End.
Questions?
¿Preguntas?
問題
Sawwal
вопросы
質問
domande
ερωτήσεις
© NDSU
SOFTWARE TESTING RESEARCH GROUP
19