Model Driven Benchmark Generation for Web Services



Similar documents
Revel8or: Model Driven Capacity Planning Tool Suite

A Software Development Platform for SOA

Developing in the MDA Object Management Group Page 1

Government's Adoption of SOA and SOA Examples

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems by Sparx Systems

Eclipse BPMN Modeler Introducing Intalio Designer

Core J2EE Patterns, Frameworks and Micro Architectures

SOA REFERENCE ARCHITECTURE: SERVICE ORIENTED ARCHITECTURE

Avio BPM Solutions and Frameworks

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Practical Application of Service Oriented Architecture

Applying MDA in Developing Intermediary Service for Data Retrieval

Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes. Nikolas Hofmann

Introduction into Web Services (WS)

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Introduction to Sun ONE Application Server 7

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

Accelerate Testing Cycles With Collaborative Performance Testing

Developing SOA solutions using IBM SOA Foundation

Applying 4+1 View Architecture with UML 2. White Paper

BEA AquaLogic Integrator Agile integration for the Enterprise Build, Connect, Re-use

Modeling Turnpike: a Model-Driven Framework for Domain-Specific Software Development *

Business Process Management Enabled by SOA

F-16 Modular Mission Computer Application Software

Cloud Computing for Architects

Business Rule Standards -- Interoperability and Portability

SOA Enabled Workflow Modernization

Model-Driven Data Warehousing

The leading platform for Model Driven Architecture (MDA) Content:

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

JBI and OpenESB. Introduction to Technology. Michael Czapski Advanced Solutions Architect, SOA/BI/Java CAPS Sun Microsystems, ANZ

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

An Oracle White Paper May Oracle Tuxedo: An Enterprise Platform for Dynamic Languages

Business Process Modeling and Standardization

Service Oriented Architecture (SOA) An Introduction

GlassFish Security. open source community experience distilled. security measures. Secure your GlassFish installation, Web applications,

Architectural Overview

Oracle WebLogic Server 11g Administration

IBM WebSphere ILOG Rules for.net

Clarifying a vision on certification of MDA tools

How To Develop A Web Service In A Microsoft J2Ee (Java) 2.5 (Oracle) 2-Year Old (Orcient) 2Dj (Oracles) 2E (Orca) 2Gj (J

Client Overview. Engagement Situation

Quality Assurance of Software Models within Eclipse using Java and OCL

What is BPM? Software tools enabling BPM

Data Center Virtualization and Cloud QA Expertise

Developing Microsoft SharePoint Server 2013 Advanced Solutions MOC 20489

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Business Performance Management Standards

Mastering Continuous Integration with Jenkins

Choosing A Load Testing Strategy Why and How to Optimize Application Performance

The IBM Rational Software Development Platform..Role focused tools help simplification via Separation of Concerns

Bringing agility to Business Intelligence Metadata as key to Agile Data Warehousing. 1 P a g e.

A Case Based Tool for Monitoring of Web Services Behaviors

ActiveVOS Server Architecture. March 2009

Creating new university management software by methodologies of Service Oriented Architecture (SOA)

Unlocking the Power of SOA with Business Process Modeling

SOLUTIONS FOR BUSINESS PROCESS & ENTERPRISE CONTENT MANAGEMENT

SOA management challenges. After completing this topic, you should be able to: Explain the challenges of managing an SOA environment

EAI-Low Level Design Document

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL wann soll welche Komponente eingesetzt werden?

Software Testing A Time for Standard Models

Web Service Implementation Methodology

November 12 th 13 th London: Mastering Continuous Integration with Jenkins

Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001

Pervasive Software + NetSuite = Seamless Cloud Business Processes

WebSphere Server Administration Course

The IntelliMagic White Paper: SMI-S for Data Collection of Storage Performance Metrics. December 2010

SOA Best Practices (from monolithic to service-oriented)

A standards-based approach to application integration

Monitoring Resources on Pramati Server

A Framework of Model-Driven Web Application Testing

How To Write A Train Control System

A Service-Oriented approach dedicated to Internet based Business Process Networks: Building a MDA based collaborative platform with opensource

Block Storage Management using Microsoft System Center 2012 Virtual Machine Manager and SMI-S

Cisco Cloud Enablement Services for Adopting Clouds

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

TEST AUTOMATION FRAMEWORK

Service Oriented Architecture

2012 LABVANTAGE Solutions, Inc. All Rights Reserved.

L Impatto della SOA sulle competenze e l organizzazione ICT di Fornitori e Clienti

How To Build A Financial Messaging And Enterprise Service Bus (Esb)

INTEGRATING ESB / BPM / SOA / AJAX TECHNOLOGIES

JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications

White Paper. Optimizing the Performance Of MySQL Cluster

Transcription:

Model Driven Benchmark Generation for Web Services Liming Zhu, Ian Gorton, Yan Liu Empirical Software Engineering Program, National ICT Australia & School of Computer Science and Engineering University of New South Wales Ngoc Bao Bui Faculty of Information Technology, University of Technology Sydney, Australia Outline Unique Challenges in Web Services Performance Testing How Model Driven Development (MDD) Can Help Our Approach Use OMG s MDA standards and an open source MDA framework implementation AndroMDA Design a domain specific modelling language for WS performance testing Provide data collection and performance monitoring infrastructure Generate deployable benchmark application Conclusion Limitations and Future Work 1

Unique Challenges in WS Performance Testing Industry Observation Industry reports e.g. Web Services: A Nightmare for Testers Limited Control Over How services are consumed Unforeseen usage scenarios Complexity Coarse grained services (require one operation to handle vastly different payloads) Large number of test combinations (endpoints, operations and data) Service Quality and SLA (Service Level Agreement) Complicated: Web Services + Backend system + Networks (often Internet) Ongoing monitoring/auditing during operation Comformant with the standards Business (Service coordination essentially supports business transactions) Service performance monitoring reflects critical business performance Quickly build and performance test new services How MDD Can Help - 1/2 MDD is about raising the level of abstraction for software development, providing more powerful concepts for capturing and reusing knowledge in a specific domain. We apply MDD to the performance testing domain. Raise the level of abstraction Have all the basic benefits of using models Integrate with other models (design, analysis and business) Design a Domain Specific Modeling Language (DSML) for performance testing Encourage best practices and modular designs through the language Gain productivity through using a DSML Decouple and reuse modules such as testing data, testing logic 2

How MDD Can Help - 2/2 Use code generation cartridge Hide Complexity and integrate best practices Allow users to inherit best practices Use standards if possible Leverage existing expertise UML and Tooling UML 2.0 Testing Profile UML Profile for Schedulability, Performance and Time. Integrate with SDLC Provide monitoring platform infrastructure Save effort Vendor neutral Layered approach (monitoring of components, Web services, service coordination and business processes) Our Approach - An Overview 1/3 MDD Approaches OMG s MDA standards (We follow MDA and use AndroMDA) proprietary approaches (MSFT DSL, Metacase, openarchitectureware ) Architecture alternatives Server technology alternatives Expected workload Architecture Design analyze MDAPerf Architecture-based performance modeling and prediction tool Architecture model Server technology Benchmark analyze MDABench Application benchmarking development toolkit Architecture design Server technology 3

Our Approach - An Overview 2/3 Business Analyst Computation Independent Model (CIM) UML profile tailors the generalpurpose modeling language to specific areas, e.g. J2EE, test management, performance, analytical methods specific CIM >> PIM Mapping UML Models Architect Platform Independent Model (PIM) Architect/Developer PIM >> PSM Mapping Platform Specific Model (PSM) Cartridges with latest up to date technologies (web services, BPM, J2EE and etc) support UML profiles PSM >> Code Mapping Developer/Tester Code Code Our Approach - An Overview 3/3 Potential Integration 4

Integrate Best Practices Internal Designs SPEC jappserver /ECperf : clients, controllers and drivers Performance Metrics TCP-W v2 SIRT (Web Service Interaction Response Time SIPS (Service Interactions Per Second) Distribution Statistics Timing details Load Testing Configuration Grinder 3 MSFT Visual Studio Load Testing UML Profiles for Performance Testing Extending UML 2.0 Testing Profile Stereotypes SUT: The application to be test TestContext: A collection of test cases TestComponent: Classes of the application to be test DataPool: A collection of explicit values that are used by a test context or test components during testing. Data Partition: Logic values for a method parameter used in testing Tagged Values Testing Control config.initialprocesses config.processincrement config.processincrementinterval config.stablizationperiod What to measure 5

Performance Monitoring Client side: Response time average/distribution/graph and throughput Server side : platform specific performance data Through both consoles and generated scripts Hide platform specific details in model to scripts generation Previously Use component technology management/monitoring API such as JMX monitoring, e.g. cache hit ratio, method invocation time Now OASIS Web Services Distributed Management (WSDM) compliant manageability endpoint : Performance Metrics JSR 262: Web Services Connector for JavaTM Management Extensions (JMXTM) Agents 6

Automatically Generated Results Conclusion The benchmark generation is compliant with MDA Provide a domain specific modeling language for WS performance testing Quick modeling and configuration of WS performance testing First implementation of a tailored UML 2.0 Testing Profile Provide performance testing generation cartridges and monitoring infrastructure Incorporate best practice of WS performance testing A default implementation and test data generation saves a large amount of effort for normal load testing. Reuse WS test data and test logic separately Save effort and improve quality by plumbing and best practice integrated in code generation cartridges/framework Working with latest technologies by tapping into AndroMDA s cartridge pool Leveraging UML expertise and standards Part of a bigger picture of capacity planning research at NICTA 7

Limitations and Future Work Test data generation Exception modelling Integrate real world load profile Extend to other areas Performance testing and monitoring for Web services coordination and choreography Link with Business Activity Monitoring (BAM) and business process performance monitoring 8