N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Tariq M. King STITC 2011 Co-located with.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

 What Is Desktop Virtualization?  How Does Application Virtualization Help?  How does V3 Systems help?  Getting Started AGENDA.
SLA-Oriented Resource Provisioning for Cloud Computing
Towards Self-Testing in Autonomic Computing Systems Tariq M. King, Djuradj Babich, Jonatan Alava, and Peter J. Clarke Software Testing Research Group Florida.
Chapter 22: Cloud Computing and Related Security Issues Guide to Computer Network Security.
VMware Virtualization Last Update Copyright Kenneth M. Chipps Ph.D.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP An Introduction to Test Support-as-a-Service.
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS PRIMERGY Servers and Windows Server® 2008 R2 Benefit from an efficient, high performance and flexible platform.
Design Product Quality Software + Services Engineering Day Brought to you by EE and TwC.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Enabling Automated Integration Testing of.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Engineering Self-Testable Autonomic Software.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Safe Runtime Validation of Behavioral Adaptations.
The middleware that makes real time integration a reality.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Enhancing the Web-Based Repository of Software.
Modeling Public Pensions with Mathematica and Python II
Web-Enabling the Warehouse Chapter 16. Benefits of Web-Enabling a Data Warehouse Better-informed decision making Lower costs of deployment and management.
M.A.Doman Model for enabling the delivery of computing as a SERVICE.
Virtualization for Cloud Computing
INTRODUCTION TO CLOUD COMPUTING Cs 595 Lecture 5 2/11/2015.
Cloud Computing Systems Lin Gu Hong Kong University of Science and Technology Sept. 21, 2011 Windows Azure—Overview.
Self-Adaptive QoS Guarantees and Optimization in Clouds Jim (Zhanwen) Li (Carleton University) Murray Woodside (Carleton University) John Chinneck (Carleton.
C LOUD C OMPUTING OPEN ARCHITECTURE BY L IANG -J IE Z HANG AND Q UN Z HOU presented by: Raghu N Avula.
VIRTUALIZATION AND CLOUD COMPUTING Dr. John P. Abraham Professor, Computer Engineering UTPA.
3 Cloud Computing.
1 Introduction to Cloud Computing Jian Tang 01/19/2012.
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Autonomic Self-Testing Of the Cloud, In.
1 Autonomic Computing An Introduction Guenter Kickinger.
Windows Azure Conference 2014 Running Docker on Windows Azure.
An Approach to Test Autonomic Containers Ronald Stevens (IEEE Computer Society & ACM Student Member) August 1, 2006 REU Sponsored by NSF.
Cloud Computing 1. Outline  Introduction  Evolution  Cloud architecture  Map reduce operation  Platform 2.
Computing on the Cloud Jason Detchevery March 4 th 2009.
Introduction to Cloud Computing
M.A.Doman Short video intro Model for enabling the delivery of computing as a SERVICE.
Cloud Computing. Cloud Computing defined Dynamically scalable, device-independent and task-centric computing resources are provided online, with all charges.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
High Performance Computing on Virtualized Environments Ganesh Thiagarajan Fall 2014 Instructor: Yuzhe(Richard) Tang Syracuse University.
Lecture 7: Requirements Engineering
What is the cloud ? IT as a service Cloud allows access to services without user technical knowledge or control of supporting infrastructure Best described.
LegendCorp What is System Center Virtual Machine Manager (SCVMM)? SCVMM at a glance Features and Benefits Components / Topology /
A Self-Configuring Test Harness for Web Applications Jairo Pava School of Computing and Information Sciences Florida International University Courtney.
Company small business cloud solution Client UNIVERSITY OF BEDFORDSHIRE.
Architecture & Cybersecurity – Module 3 ELO-100Identify the features of virtualization. (Figure 3) ELO-060Identify the different components of a cloud.
Survey of Tools to Support Safe Adaptation with Validation Alain Esteva-Ramirez School of Computing and Information Sciences Florida International University.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
Lecture 21: Component-Based Software Engineering
Windows Azure poDRw_Xi3Aw.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Basic Concepts Key Learning Points : The objectives of this chapter are as follows:  To provide an introduction to the basic Concepts of enterprise architectures,
Cloud Computing 3. TECHNOLOGY GUIDE 3: Cloud Computing 2 Copyright John Wiley & Sons Canada.
Enterprise Requirements: Industry Workshops and OGF Robert Cohen, Area Director, Enterprise Requirements.
Computer Science Infrastructure Security for Virtual Cloud Computing Peng Ning 04/08/111BITS/ Financial Services Roundtable Supported by the US National.
Structured Container Delivery Oscar Renalias Accenture Container Lead (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
Sun Tech Talk 3 Solaris 10 and OpenSolaris Pierre de Filippis Sun Campus Evangelist
READ ME FIRST Use this template to create your Partner datasheet for Azure Stack Foundation. The intent is that this document can be saved to PDF and provided.
Unit 3 Virtualization.
Chapter 6: Securing the Cloud
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CLOUD COMPUTING
Software Defined Storage
Chapter 21: Cloud Computing and Related Security Issues
Chapter 22: Cloud Computing Technology and Security
Introduction to Enterprise Systems
Windows Server 2016 Software Defined Storage
Introduction to Software Testing
3 Cloud Computing.
JOINED AT THE HIP: DEVSECOPS AND CLOUD-BASED ASSETS
Emerging technologies-
Internet Engineering Course
Productive + Hybrid + Intelligent + Trusted
Presentation transcript:

N ORTH D AKOTA S TATE U NIVERSITY D EPARTMENT OF C OMPUTER S CIENCE © NDSU S OFTWARE T ESTING R ESEARCH G ROUP Tariq M. King STITC 2011 Co-located with Towards a Self-Testing Cloud Computing Infrastructure Markham, Ontario, Canada

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Outline  Introduction  Research Questions  Cloud Testability  Test Support as-a-Service  Vision: Self-Testing in the Cloud  Summary  Open Discussion 2

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Cloud provides ubiquitous, on-demand access to computing resources “as services” via the Internet  Operational Perspective  Availability, Scalability, Efficiency, …  Development Perspective  Reusable Components, Info. Hiding  Highly Complex Local Infrastructure  Testing Perspective? Introduction 3 CLOUD

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Cloud brings new testing challenges and benefits  Software Testing In the Cloud (STITC)  STITC 2010 Workshop focused on three areas:  Testing IN the Cloud – leveraging the cloud for test execution and testing in a virtualized environment  Testing OF the Cloud – validating applications that are hosted and deployed cloud  Testing TO the Cloud – moving the testing process and other assets to the cloud Introduction 4 STITC

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Services in cloud computing typically fall into three categories: Software-as-a-Service | Google Docs, Office Web Apps Platform-as-a-Service | Google App Engine, Windows Azure Infrastructure-as-a-Service | Amazon EC 2, Rackspace Introduction 5 CLOUD SERVICES

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Many cloud platforms offer Virtualization support  Creating abstract computing resources from more powerful physical resources Hosted Architecture Introduction 6 VIRTUALIZATION Hypervisor Architecture

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Introduction  Cloud Computing shares characteristics with Autonomic Computing (AC), Grid, Utility, …  Central theme of AC is self-management to reduce burden of human administration and integration  King et. al 2008 introduce an implicit self-test characteristic  Regardless of self-* features implemented, system should validate adaptations at runtime 7 AUTONOMIC COMPUTING Self- Configure Self- Optimize Self- Heal Self- Protect Self- Test

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  “Migrating Autonomic Self-Testing to the Cloud”  Tariq M. King and Annaji S. Ganti | STITC 2010  High-level position on how a self-testing approach for autonomic software can be applied to the cloud  In today’s talk, we highlight our recent progress and developments from the above perspective  Extended version of King et al. | CASCON 2011  Summarizes contents of book chapter submitted to STITC: Perspectives on an Emerging Discipline Introduction 8 ABOUT THIS TALK

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  How does cloud computing affect our ability to test applications that are either built or deployed in a cloud environment, or depend on cloud services? Research Question # 1 9 Testability Investigates impact of cloud development model on software testability (Positive, Negative)

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  How can the test artifacts and tools used to validate a cloud application service during development, be reused to help test derivative applications? Research Question # 2 10 Test Reuse Investigates ways to reuse outputs of pre-deployment testing effort (Artifacts, Tooling)

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  How can built-in cloud computing technologies such as virtualization be used to improve the process of testing cloud applications? Research Question # 3 11 Cloud Leverage Investigates ways in which the cloud infrastructure itself can be harnessed for Testing OF the Cloud (Power, Virtualization)

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Cloud Testability: The Negative 12 Complexity Remoteness Information Hiding AutonomyAdaptiveness Statefulness High Performance Criteria High Dependability Criteria (Paradigm Infancy)

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP 13 Computational Power Storage Testing requires lots of resources and the cloud is certainly powerful enough to handle it Virtualization Cloud Testability: The Positive

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  As a step towards Research Questions 2 and 3, we investigate a novel approach to software testing of the cloud, in the cloud | King et al., CASCON ‘ 11  Scenario: One host (Provider B) is developing an application service that will extend functionality of a service offered by another host (Provider A) Testing of the Cloud, In the Cloud 14

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Integration Testing Challenges 15

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Our proposed solution introduces the notion of Test Support as-a-Service (TSaaS) in the cloud  Prior to the deployment of Service A, Provider A would have tested it, and created:  Test Artifacts – Test Drivers, Test Stubs, Test Data  Local Test Bed – Hardware/Software Environment  TSaaS seeks to reuse existing test artifacts, tools and configurations of the local test bed, to aid the rapid development and delivery of test support services for collaborating partners Proposed Solution 16

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Provider B has full access to a test copy of Service A  Test hooks, instrumentation, and scaffolding reuse  Test data (non-confidential) can be made available  Testing does not interrupt service in production  Concerns: Maintenance, Scalability, Security Test Support as-a-Service (TSaaS) 17 Provider A exposes TSaaS to Provider B

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Hypervisor-Based Virtualization and Secure Access TSaaS Architecture 18

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP TSaaS Control Flow 19 Control Flow When Realizing Test Support Services

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Using Existing Test Automation to Guide Development TSaaS Development Method 20

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Designed with goal of making its components easily deployable to Windows Azure ®  Web & Worker Roles (ASP.NET, IIS 7, WCF Services)  VM Role (Windows 2008 R 2 Server Image)  Application Domain: Credit Reporting/Banking TSaaS Prototype 21 DETAILED DESIGN

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  We were able to develop and expose a cross section of test support operations via the TSaaS API  Test Specification – user defines fixture operations  Test Execution – runs specified fixture operations  Code Coverage – analyzes branch and lines covered  Server-Side Diagnostics – facilitates configuring web server, including performing a reset after failures  Runtime Virtualization – create, start, stop, delete, take snapshot, and update VHD configuration TSaaS Prototype 22 PROGRAMMING INTERFACE

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP TSaaS Prototype 23 GRAPHICAL USER INTERFACE

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Vision: Self-Testing In The Cloud 24 Service A (Production Env.) Monitor AnalyzePlan Execute Knowledge Autonomic Test Manager TSaaS Sensor Provider A Provider B Test Harness Service B (Test Environment) Service B (Test Environment) Provider A builds a sensor for Service A Provider B monitors Service A for changes If a change occurs, Provider B generates a plan for regression testing of Service B Provider B reruns tests on latest build of Service B, which is set to use new version of Service A via TSaaS

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Test Support as-a-Service  Improved Testability and Confidence (Partner)  Control/Observation, White Box Testing, Metrics  Improved Product (Provider)  Partners test your component, bug reporting/fixes  Virtualization Benefits  Snapshots: Speed Up, Bug Replication/Debugging  Scalability, Ease of Maintenance, Hardware Savings, and Environment Testing (OS, Applications) Foreseen Benefits 25

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Self-Testing in the Cloud via TSaaS  Automatic Regression Testing of changes due to:  Software maintenance and evolution  Dynamic adaptation and updating  Improved Autonomic Decision-Making  Use of validation to determine which service may be the best candidate to select during adaptation  As a proactive form of self-healing (fault detection through formalized testing techniques) Foreseen Benefits (cont.) 26

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Standardization  Providing standardized interfaces and guidelines for performing testing in the cloud, and developing test support infrastructures  Evaluation  Providing convincing evidence that these approaches are not only feasible to implement but can have real value to practitioners  Validation  Showing virtualization is consistent with production Key Challenges 27

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP  Described our progress towards our grand vision of migrating autonomic self-testing in the cloud  Proposed an approach to Test Support as-a-Service, which uses the cloud to tackle testing of the cloud  Described the design and implementation of a a prototype of TSaaS  Discussed benefits and key challenges associated with TSaaS and use for self-testing OF/IN the cloud  In terms of our progress, we have barely scratched the surface of the research problem under investigation Summary 28

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Acknowledgements 29  Annaji Ganti | PhD Student, NDSU/Microsoft  Neha Kale | MS Student, NDSU  David Froslie | Test Architect, Microsoft  Alisson Sol | Knowledge Engineer, Microsoft  Dr. Scott Tilley | Professor, Florida Tech  Participants and Reviewers  STITC 2010  CASCON 2011

© NDSU S OFTWARE T ESTING R ESEARCH G ROUP Thank You! 30 Questions? ¿Preguntas? 問題 Sawwal вопросы 質問 domande ερωτήσεις