Introduction : ‘Skoll: Distributed Continuous Quality Assurance’ Morimichi Nishigaki.

Slides:



Advertisements
Similar presentations
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
Advertisements

Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
4.1.5 System Management Background What is in System Management Resource control and scheduling Booting, reconfiguration, defining limits for resource.
Chapter 15 Application of Computer Simulation and Modeling.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Using Metacomputing Tools to Facilitate Large Scale Analyses of Biological Databases Vinay D. Shet CMSC 838 Presentation Authors: Allison Waugh, Glenn.
1 SWE Introduction to Software Engineering Lecture 22 – Architectural Design (Chapter 13)
© , Michael Aivazis DANSE Software Issues Michael Aivazis California Institute of Technology DANSE Software Workshop September 3-8, 2003.
Polaris Financial Technologies Welcomes the members of Hyderabad chapter for the 2nd event on 4 th July 14 held by PACE (The Testing Practice)
University of Kansas Data Discovery on the Information Highway Susan Gauch University of Kansas.
Knowledge Portals and Knowledge Management Tools
Distributed Systems: Client/Server Computing
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
Windows Server 2008 Chapter 11 Last Update
LÊ QU Ố C HUY ID: QLU OUTLINE  What is data mining ?  Major issues in data mining 2.
CSCI ClearQuest 1 Rational ClearQuest Michel Izygon - Jim Helm.
ArcGIS Workflow Manager An Introduction
Model Driven Quality Assurance Techniques for DRE Applications Arvind S. Krishna & Emre Turkay Andy Gokhale, Douglas C. Schmidt Institute for Software.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence From Data Mining To Knowledge.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Development in hardware – Why? Option: array of custom processing nodes Step 1: analyze the application and extract the component tasks Step 2: design.
German National Research Center for Information Technology Research Institute for Computer Architecture and Software Technology German National Research.
At A Glance VOLT is a freeware, platform independent tool set that coordinates cross-mission observation planning and scheduling among one or more space.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
2Object-Oriented Analysis and Design with the Unified Process The Requirements Discipline in More Detail  Focus shifts from defining to realizing objectives.
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Tekin Bicer Gagan Agrawal 1.
Testing Workflow In the Unified Process and Agile/Scrum processes.
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Graduate Student Department Of CSE 1.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
TFS 2010 What’s new and interesting. Key Items Agile Planning Tools – Slides #3-#6 Improved parallel development - Slides #7-#8 Continuous Integration.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Cracow Grid Workshop October 2009 Dipl.-Ing. (M.Sc.) Marcus Hilbrich Center for Information Services and High Performance.
Office Business Applications Workshop Defining Business Process and Workflows.
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer, Progress Sonic.
About OlaTech We create web based custom software applications for businesses.
Microsoft Management Seminar Series SMS 2003 Change Management.
Using and modifying plan constraints in Constable Jim Blythe and Yolanda Gil Temple project USC Information Sciences Institute
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer Progress Sonic.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
Software Deployment and Mobility. Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration.
© 2006, National Research Council Canada © 2006, IBM Corporation Solving performance issues in OTS-based systems Erik Putrycz Software Engineering Group.
INFSO-RI Enabling Grids for E-sciencE Ganga 4 – The Ganga Evolution Andrew Maier.
7 Strategies for Extracting, Transforming, and Loading.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Creating SmartArt 1.Create a slide and select Insert > SmartArt. 2.Choose a SmartArt design and type your text. (Choose any format to start. You can change.
IT System Administration Lesson 3 Dr Jeffrey A Robinson.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
EMI INFSO-RI EMI Quality Assurance Tools Lorenzo Dini (CERN) SA2.4 Task Leader.
Detecting, Managing, and Diagnosing Failures with FUSE John Dunagan, Juhan Lee (MSN), Alec Wolman WIP.
Geant4 is a toolkit to simulate the passage of particles through matter, and is widely used in HEP, in medical physics and for space applications. Ongoing.
EMI INFSO-RI SA2: Quality Assurance Status Report Alberto Aimar(SA2) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
1 Presented by: Val Pennell, Test Tool Manager Date: March 9, 2004 Software Testing Tools – Load Testing.
Performance Testing - LR. 6/18/20162 Contents Why Load Test Your Web Application ? Functional vs. Load Web Testing Web-Based, Multi-Tiered Architecture.
Oracle 10g Administration Oracle Server Introduction Copyright ©2006, Custom Training Institute.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Leverage Big Data With Hadoop Analytics Presentation by Ravi Namboori Visit
Wolfgang Runte Slide University of Osnabrueck, Software Engineering Research Group Wolfgang Runte Software Engineering Research Group Institute.
Kai Li, Allen D. Malony, Sameer Shende, Robert Bell
Presented by: Edfan Tjandra Alireza Behrouzi Shad
Datamining : Refers to extracting or mining knowledge from large amounts of data Applications : Market Analysis Fraud Detection Customer Retention Production.
Matt Masson Software Development Engineer Microsoft Corporation
Simplified Development Toolkit
Chapter 1 Introduction(1.1)
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Introduction : ‘Skoll: Distributed Continuous Quality Assurance’ Morimichi Nishigaki

2 Background In-house QA –benefit fine level analyses of programs –shortcomings increased QA cost and schedule misleading results –difference from field

3 software trends Demand for user-specific customization –performance-intensive Severe cost and time-to-market pressures –limited resources for highly customizable software Distributed and evolution-oriented development processes –increase software churn rates, increase the need to detect, diagnose and fix faulty changes New Challenge: hundreds of options explosion of the software configuration space

4 Solution approach Skoll –general, continuous, feedback-driven process –around-the-world, around-the-clock QA. QA Process Subtask Central Collection Site results

5 Solutions Modeling the QA subtask configuration space –general representation with configuration options option settings inter-option constraints temporarily inter-option constrain Exploring the configuration space –search strategy based on uniform sampling –adaptation strategy for goal-driven process adaptation Feedback –automatic characterization, visualization Resource availability –scheduling adapting resource availability Process execution framework –Skoll process: provides framework to integrate QA techniques and tools

6 Skoll Project Developing and evaluating processes, methods, and support tools for distributed, continuous QA Skoll infrastructure: a set of components and services –issues: how tasks will be decomposed into subtasks how will they be implemented so they run on a very wide set of client platforms how will results be merged together and interpreted how should the process adapt to incoming results how will the results of the overall process be summarized

7 Skoll Infrastructure Configuration Space Model Intelligent Steering Agent Adaptation Strategies –Nearest neighbor –Temporary constraints –Terminate/modify subtasks Automatic characterization of subtask results Visualization Subtask Execution

8 Configuration Space Model Subtask: process parameterized by configuration options configuration: mappings option to a setting {(V i,C i )} Inter-option constraints: limitation of setting based on another setting (P i →P j ) example:

9 Intelligent Steering Agent (ISA) Control the global QA process –find valid configuration to allocate to client request –job configuration: package of QA subtask implementation application code configuration parameters build instructions QA specific code Planning problem –Blockbox planner initial state: base subtask configuration goal state: desired configuration, consistent with the end user –output: job configuration

10 Adaptation Strategies Results returned to ISA is ignored by default Monitor, analyze global state to modify future subtask assignments –Nearest neighbor test neighbor configurations of failed one –Temporary constraints temporary prevent further selection of job configuration –Terminate/modify subtasks monitors for situation where test program provide little new information switch resources to be spent unexecuted test program example: Nearest Neighbor

11 Automatic characterization of subtask results Used for –adapting the process –providing developers Classification Tree Analysis (CTA) 3 categories ERR-1 ERR-2 ERR-3 OK example: classification of 89 different configurations

12 Visualization Help developers organize and visualize results Server scoreboard manager –web-based query form

13 Subtask Execution Implementing QA subtasks run on client machine Server registration manager –web-based registration form, characterizing client platform –return ID and configuration template to client user-specific information, restriction by end user –Skoll client requests job configurations

14 Skoll process developers configuration model adaptation strategies generic QA subtask code ISA request Skoll client configuration template registration manager request job configuration job configuration results Adaptation server scoreboard manager query Automatic Characterization Skoll

15 Feasibility Study ACE+TAO –1MLOC+ –run on dozens of OS –hundreds of options –distributed ~140 developers

16 Study1: Clean Compilation Configuration model –subset of 17 binary-valued compile-time options –35 inter-option constraints Study execution –10 options and 7 constraints: 89 valid configurations –random sampling without replacement –No Nearest neighbor –60 of 89 failed Lessons –Iterative model building –useful automatic characterization

17 Study2: Testing with Default Runtime Options Configuration model –96 tests –test-specific options (one option per test ) Study execution –14 compile time options with 13 constrains –96 test-specific options with 120 constrains –29 configurations (build in Study 1 ) Results –compile: 98 failed 1979 success –tests: 152 failed 1827 success –discovered new bugs Lessons –easy extension and refinement –unreliability of configuration model and tree model –non-deterministic, single observation per valid configuration

18 Study3: Testing with Configurable Options Configuration model –14 compile options with 13 constrains –96 test-specific options with 120 constrains –6 multi-valued runtime options Study execution –18792 valid configuration –30 min. per test suites, 9,400 hours –Nearest neighbor Results –scalability –reconfirm: automatic characterization –adaptation

19 Summary Complex subtask configuration spaces are interactively modeled. Large scale QA processes are developed and executed on multiple clients. New real bugs in ACE+TAO were found. Automatic failure characterization simplified tracking down the causes.

20 END Thank you