Services and Network Virtualization: A Joint Solution Brief from Shunra and HP Software

Similar documents
Service Virtualization:

Faster Development Through Virtualization

Business white paper. Performance testing for mobile applications. Will your mobile application fail your users?

Service Virtualization

Develop and test faster by virtualizing constrained application components

Table of contents. Performance testing in Agile environments. Deliver quality software in less time. Business white paper

Mobile Testing: Actual Results from Nationwide Insurance How we could have tested the same application with the latest tools available

10 Best Practices for Application Performance Testing

HP End User Management software. Enables real-time visibility into application performance and availability. Solution brief

Simulated tests, real results

Understanding the Impact of Running WAN Emulation with Load Testing

Mobile Performance Testing Approaches and Challenges

A closer look at HP LoadRunner software

Analyze, Validate, and Optimize Business Application Performance

Business white paper. Best practices for implementing automated functional testing solutions

Going mobile: Keys to the successful performance of your mobile application Shane Evans, HP Product Manager Todd DeCapua, Shunra VP

I D C T E C H N O L O G Y S P O T L I G H T. E n a b l i n g Quality I n n o va t i o n w i t h Servi c e

Business white paper. Load factor: performance testing for Web applications

Agile and the cloud: why automating application deployment matters. Executive summary. Applications are the business

Whitepaper Performance Testing and Monitoring of Mobile Applications

Application Test Management and Quality Assurance

HP Performance Center 11.5: What s New? Gurmeen Aneja

Next-Generation Performance Testing with Service Virtualization and Application Performance Management

Table of contents. Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability

Enhance visibility into and control over software projects IBM Rational change and release management software

What s new in the HP Functional Testing 11.5 suite Ronit Soen, product marketing John Jeremiah, product marketing

Automated testing and continuous integration

An introduction to load testing for Web applications. Business white paper

White Paper. Fundamentals of Performance Testing

APPLICATION PERFORMANCE TESTING IN A VIRTUAL ENVIRONMENT

How to address top problems in test data management

Integrated Finance, Risk, and Profitability Management for Insurance

Rapid Bottleneck Identification A Better Way to do Load Testing. An Oracle White Paper June 2009

Getting started with API testing

Testing service-oriented architecture (SOA) applications and services. White paper

An Oracle White Paper February Rapid Bottleneck Identification - A Better Way to do Load Testing

HP CLOUDSYSTEM. A single platform for private, public, and hybrid clouds. Simply the most complete cloud system for enterprises and service providers

Service Virtualization and IT Nowadays

Saving Time & Money Across The Organization With Network Management Simulation

Private cloud computing

Increased Agility with Integration Testing

Use service virtualization to remove testing bottlenecks

Protect Microsoft Exchange databases, achieve long-term data retention

Continuous???? Copyright 2015 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Five Strategies Small and Medium Enterprises Can Use to Successfully Implement High Value Business Mobility

8 Common Myths About Performance Testing in Production Don t Let These Misconceptions Keep You From Production Testing.

Benefits of External Load Testing

Bridge Development and Operations for faster delivery of applications

Business white paper. Four steps to better application management and deployment

The top 10 misconceptions about performance and availability monitoring

Performance Testing IBM MQSeries* Infrastructures

WhitePaper. Private Cloud Computing Essentials

Ensuring Mobile Application Quality Across Your Application Lifecycle

Mobile Application Testing

Mobile Application Performance Testing

The Top 10 Reasons Why You Need Synthetic Monitoring

How Can Central IT Use Cloud Technologies to Revolutionize Remote Store Operation?

Perfect Your Mobile App with Load Testing and Test Automation

Managing Mobile Devices in a Device-Agnostic World Finding and Enforcing a Policy That Makes Business Sense

Optimize Revenue for High-Volume Service Providers with Pricing Simulation

APPLICATION MANAGEMENT SUITE FOR ORACLE E-BUSINESS SUITE APPLICATIONS

On the Edge of Mobility Building a Bridge to Quality October 22, 2013

HOW IS WEB APPLICATION DEVELOPMENT AND DELIVERY CHANGING?

The Advantages of a Predatory Retail Enterprise

Copyright 1

Use Your Contact Center to Build a Better Customer Experience

Delivering Analytics that Scale

HP and Business Objects Transforming information into intelligence

SAP BusinessObjects BI Clients

Networking for cloud computing

Sample Exam Foundation Level Syllabus. Mobile Tester

TRUE PERFORMANCE ENGINEERING

Extending the Power of Analytics with a Proven Data Warehousing. Solution

HP ATA Networks certification

Elevate Your Customer Engagement Strategy with Cloud Services

Enterprise Application Performance Management: An End-to-End Perspective

Development Testing for Agile Environments

SAP Solution Overview: SAP Cloud for Travel and Expense An Easier Way to Travel

All-Flash Arrays Weren t Built for Dynamic Environments. Here s Why... This whitepaper is based on content originally posted at

Securing Enterprise Mobility for Greater Competitive Advantage

Neustar Web Performance

Cognizant Mobility Testing Lab. The faster, easier, more cost-effective way to test enterprise mobile apps.

SAP Travel OnDemand Solution An Easier Way to Travel

Don t Go In Blind: Navigating the Journey to the Cloud. agility made possible

Empower Individuals and Teams with Agile Data Visualizations in the Cloud

Three simple steps to effective service catalog and request management

Protecting enterprise servers with StoreOnce and CommVault Simpana

Upgrading a Telecom Billing System with Intel Xeon Processors

Finding the right cloud solutions for your organization

APPLICATION MANAGEMENT SUITE FOR ORACLE E-BUSINESS SUITE APPLICATIONS

Minimizing code defects to improve software quality and lower development costs.

Develop enterprise mobile applications with IBM Rational software

Follow the sun support 24x7x365. Keeping your HP NonStop systems and software up and running

Greater Continuity, Consistency, and Timeliness with Business Process Automation

Introduction. Silverton Consulting, Inc. StorInt Briefing

How To Achieve Continuous Delivery

White paper: Unlocking the potential of load testing to maximise ROI and reduce risk.

Transcription:

Services and Network Virtualization: A Joint Solution Brief from Shunra and HP Software

Executive Introduction Modern enterprise applications have reached an historic level of complexity. Today, applications are a composite of distributed components, often running in a virtualized or cloud server infrastructure. The rise and predominance of mobile apps, as well as public cloud hosting, has taken control of the network and third-party services out of the hands of IT, development and testers. Last year, customers (end users) were satisfied with any working mobile access to critical business service or consumer information; this year, any working access is not enough; this year, all critical and required features are expected to be available on an iphone or other smartphone and be accessible faster than from a desktop. The preference for mobile access has created greater pressure for agile development, with updated and improved product releases often on a 30-day or faster cycle. Every layer of this complexity represents a potential point of failure. To combat this potential, we must adapt our methods to reduce the risk of a poor user experience because the true cost of failure is more costly than ever. A poor user experience is a lost customer. The design, test, monitor, and break/fix cycle we have lived with for 20 years will not work in today s modern application environment where 80% of the total cost of ownership of an application is directly attributed to finding and fixing problems post-deployment. More accurate and reliable testing could reduce this cost by one-third or more. However, achieving better testing is a challenge the distributed nature of composite applications and the dynamic conditions of mobile, Cloud and broadband networks must be effectively and precisely incorporated into the test environment, otherwise tests do not reflect realworld results. HP and Shunra offer a solution that recreates services, load, and network conditions in your testing lab. The integrated products and methodology virtualize the conditions of the real-world application and user environment so that you can reliably know how an end user will experience an application before it is deployed. required to provide accurate, timely and on occasion secure transactions are, in reality, complex. From the customer s standpoint, the process looks rather simple. Consider this example of a budding photographer in San Francisco who is in the market for a new camera: 1. The photographer checks out a retail site on his mobile device. He thinks that a certain model will be appropriate. 2. Before making a decision, he consults with friends via social network apps, checks product reviews and also looks at three competitors catalogues again, all from his mobile device. 3. He then decides to purchase the camera, and returns to the site that has the second-best price but was highly recommend by a colleague at work. 4. To complete the purchase he enters his online payment information. 5. When the payment is processed and approved, he receives a notification and monitors the shipping service s tracking system to see when his new camera will be delivered. Let s explore this transaction in more detail. The customer is on the west coast of the US; the online catalogue is created and maintained in England; and the camera is manufactured in China. Purchase of the camera requires an online payment from the US payment processor. The product is shipped from China but the tracking system is located in the US. In each of these systems, many sub-components, or resources, are hosted in distributed environments, so this simple transaction in effect circles the globe more than once. Even the most common online transactions may integrate multiple global components in order to deliver on a single business process, as shown in Figure 1. This solution brief will introduce you to essential capabilities for virtualizing conditions in the test lab and provide you with a methodology that has been demonstrated to improve testing accuracy and reliability, reduce production incidents by up to 60%, and deliver a return on investment with the very first avoided remediation incident. A Day in the Life: A Single Online Purchase Transaction For the end user, a mobile or online purchase may appear straightforward. However, the resources and infrastructure Figure 1 Even the simplest transaction may span the globe. 2012 Shunra Software Ltd. All rights reserved. Shunra is a registered trademark of Shunra Software. Pg. 2

The process is supported by a complex infrastructure, requiring multiple steps and turns in order to share and transfer data. In the case of third party resources being accessed, even those resources may rely on equally distributed systems. For the business provider, this simple end user transaction is not as simple as it would seem. While a customer should be blissfully unaware of the multitude of subtransactions that are occurring behind the scene, or how much time each subtransaction adds to the total purchase process, performance information for each subtransaction is crucial to those responsible for any component in the process. Shaving even a few milliseconds at each stage can significantly impact overall transaction time, marking the crucial difference between a successful purchase and site abandonment. The distributed nature of composite applications and the global networks required to support the applications and end users makes ensuring performance a critical challenge that businesses must overcome. Poor performance, especially on mobile devices, has been clearly demonstrated to increase abandonment, causing both revenue loss and brand damage. Therefore, every stakeholder in the process or transaction must be aware of their contribution to application and infrastructure performance (ultimately to end user experience) and adherence to established service level objectives (SLOs). These stakeholders include application developers and testers, CDN suppliers, mobile and web service providers, online retailers, etc. As end users continue to demand fast, reliable, ubiquitous access to information, and as competition between businesses increases, organizations must get applications right the first time; there is no second chance to make a first impression and secure customer loyalty. Enhancing the Development & Testing Process To maintain competitive advantage, enterprises must constantly find ways to accelerate their time to market, while remaining flexible enough to meet rapidly changing corporate and end user requirements. Organizations accomplish this by adopting Agile processes and by incorporating a service oriented architecture in their development projects. Agile development processes are designed to deliver frequent, working iterations of software, or specific software functions, by shortening feedback cycles and promoting just-in-time delivery of required functionality. With these shorter development cycles, code is continuously tested and integration errors are detected quickly. By incorporating parallel development processes, teams can continue development even if another feature or dependency is progressing at a slower pace. Agile processes are more flexible and allow for faster responses to business needs without significantly raising costs, but there is an additional requirement that quality be built into each development iteration. To further speed development processes and introduce more efficiency into development resources, applications are often broken up into individual components, or smaller units of functionality, or services. Services are an essential part of most business applications. Services can be applications, systems or components that expose their functionality with a remotely accessible interface in order to allow seamless integration with other applications and systems. Web services are typically referred to as Simple Object Access Protocol (SOAP) or REpresentational State Transfer (REST), and are usually accessible over HTTP/HTTPS. These services, which can be re-used by different project teams and accessed by different composite applications, may be developed internally or accessed from third parties. The availability of reusable and pre-built services saves considerable time and helps development teams remain on budget. As with Agile processes, though, there is a quality or performance consideration that must be taken into account as services are subject to the same network constraints as end users bandwidth, latency, jitter and packet loss. The additive effect of even a simple network delay between services can be devastating to end user experience. Service Virtualization The distributed nature of composite applications poses significant risk to development and testing teams. If there are dependencies on services that are not available when developers and testers require access, the development and delivery process can in effect slow down or, worse, be pursued in an incomplete and unreliable manner. Testing without application dependencies is an imprecise approach that can lead to costly failures in production, but the challenges of bringing limited or unavailable services into the test environment can be just as daunting. However, testing an application without consideration for dependent services can lead to false positives regarding both functionality and performance. Waiting for periods of availability for all required services, or creating a test environment that relies on production-available services, will significantly increase costs and delay both the development and delivery of the application, putting project success at risk. One option is code stubbing but this is a manually-intensive process that provides little flexibility (without manual recoding) and is not a suitable alternative when considering the breadth of services that may be depended upon by a composite application and the need to test those services 2012 Shunra Software Ltd. All rights reserved. Shunra is a registered trademark of Shunra Software. Pg. 3

under a multitude of conditions. To improve testing reliability and to account for dozens, and perhaps hundreds or more, services, organizations are adopting the best practice of service virtualization. Service virtualization eliminates the need to rebuild a redundant test environment, access production systems or recreate a proxy to mimic service behaviors. This is accomplished by enabling a script-less, spreadsheet-like definition of service behavior and a user interface that provides control of virtual service models from within functional testing tools. along with the components and services that may need to be virtualized in order to accurately and reliably test an application. This simulated environment enables developers and testers to replace targeted production services with virtualized services that can be immediately accessed for functional and performance testing, even if the actual services are not available. Service virtualization also provides for the ability to simulate service behavior for testing specific use cases or troubleshooting problem areas. HP Service Virtualization Figure 2 Typical test environment BEFORE virtualization. HP Service Virtualization enables simulation models to be quickly created from service interface specifications, recorded from real or logged communication, loaded from static data sources, or reused from previous projects and models. HP Service Virtualization helps to isolate problems that are based on dependencies between services in composite applications. This can significantly reduce delays and help manage the costs and complexity of composite application development and testing. Application teams can then shift left and find defects related to dependencies on services earlier in the Software Development Life Cycle (SDLC). This lowers costs and reduces testing times by detecting issues when they are easier, faster and less expensive to fix. In addition, QA teams are able to test a more complete product earlier in the cycle. HP Service Virtualization assists development teams to become truly agile by accelerating release cycles through parallel development and by introducing testing earlier in the cycle without the necessity of having the end system fully developed and ready. In addition, it enables functional and performance engineers to imitate negative behavior, scalability or breakdown of dependent systems. Engineers can then effectively provision testing environments and minimize usage of high-cost business critical infrastructure. HP Service Virtualization can also reduce infrastructure costs related to test environments, including hardware, software licenses, and maintenance. It allows reduction of third-party costs incurred by running repetitive functional and performance tests that access pay-per-use components. Figures 2 and 3 show a typical testing environment Figure 3 Typical test environment AFTER virtualization. Network Virtualization However, Service Virtualization alone does not address a key component affecting application behavior and end user experience. Network conditions such as latency, limited bandwidth, packet loss, and jitter, are all critical factors that must be taken into account when testing or validating application performance, especially when considering the multiple network connections required to support 3rd party services and external resources. Just as it is challenging and costly to bring real-world services into the test environment, the real-world networks affecting these services and the end user represent, at best, a daunting task to incorporate into a test environment isolated behind a firewall. The global mobile network, for example, is 2012 Shunra Software Ltd. All rights reserved. Shunra is a registered trademark of Shunra Software. Pg. 4

a communication channel that is in a continual state of flux, with dynamic conditions dictated on a moment-by-moment basis according to carrier, connection type, connection strength, time of day, location and myriad other factors. In the absence of real-world conditions, testing will yield unreliable results as the effect of the network on the end user experience, as well as communication with external services, remains unaccounted for. As with services, virtualizing network conditions in the test lab is essential to creating a realistic environment for testing that yields accurate and reliable insight into application behavior. With the massive global uptake in mobile devices and the rise of cloud computing, the effect of the network has become even more pronounced since conditions across the last mile affect performance more than other factors, and mobile conditions in particular are intrinsically dynamic. Therefore, incorporating network virtualization is particularly crucial when any mobile or cloud component is part of the scenario. Shunra Network Virtualization The first step required to implement network virtualization is to discover the real-world network conditions affecting end users and application services. Shunra NetworkCatcher unobtrusively captures production network constraints like bandwidth, latency, jitter and packet loss. Recorded interval statistics can then be re-played in the test environment in order to impair the test network. For example, virtualized network impairments, such as high jitter rate and limited available bandwidth, can be emulated in the test lab so that the effect of the network on transaction response time can be reliably and accurately measured. In addition to capturing real-world network conditions, Shunra s network virtualization solutions include a Global Library of mobile and broadband network conditions. This library, built on millions of data points, provides typical, best and worst case conditions recorded from major cities around the world. With Shunra s network virtualization technologies, custom impairments can be applied to determine the specific effect on application and network behavior in order to emulate worst case scenarios or to troubleshoot specific in-production problems. Shunra s technology also provides the ability to execute tests, analyze results and remediate or optimize performance. Implementing Network Virtualization with Service Virtualization: A Real-World Example In order to generate reliable tests on which business and technical decisions can be confidently made, the test lab must accurately represent the real-world conditions and dependencies available in the production environment. As we ve discussed, it is neither practical nor cost-effective to acquire or replicate these elements only for the lab. Rather, network and service virtualization are employed, working in concert to ensure a precise, emulated environment is available for application testing and troubleshooting. HP Service Virtualization and Shunra s Network Virtualization capabilities are pivotal to the enablement of a consistent and trustworthy test environment. HP Service Virtualization enables simulation of functional and response behavior of otherwise limited or unavailable application components. Testers can leverage Service Virtualization to emulate negative behavior or a breakdown of dependent systems and retest the application with various backend performance characteristics. With Shunra network virtualization capabilities, testers incorporate network factors into the lab environment and design tests with various network conditions such as high latency or those of a mobile user over 3G with a specific carrier. These impairments are applied to the network connections between the application, its virtualized services, and virtual users, creating a virtual network topology that emulates the production network. Performance analysis of the transactions with these impairments identifies which components of the application and infrastructure are sensitive to network factors. Development teams can then optimize application performance and determine the best deployment configuration. Returning to our first example of a shopping transaction, Figure 4 indicates the components of an end-to-end performance approach, incorporating load testing with network and service virtualization integration. This enables testing of an entire business process using varied performance characteristics, such as peak load with high network latency, or a mixed scenario with both mobile and landline users. Performance testers can then emulate a load testing scenario with real-world conditions for complex, composite applications, and test various limiting performance scenarios. 2012 Shunra Software Ltd. All rights reserved. Shunra is a registered trademark of Shunra Software. Pg. 5

The network conditions, including mobile profiles, are defined by Shunra for HP Software which is integrated into the HP LoadRunner user interface. Once a simulation and performance model are defined, the test is run first with only the single local user, then with the remote user added, and finally with the mobile user. Figure 4 An end-to-end performance testing approach. Drilling down into one specific segment of the transaction the shipping service we can illustrate precisely how network conditions impact load test results by looking at real test results. Test results are analyzed to determine bottlenecks and other performance issues. Figure 6 shows the incremental impact on response time as users were added to the test. As you can see, a slight increase in response time was experienced when the remote user (VUser) from San Francisco was added to the test. However, a marked increase resulted from adding just a single mobile user, nearly 2 additional seconds. The HP LoadRunner screenshots in Figure 5 below show an integrated load, service virtualization and network virtualization test. HP LoadRunner is employed to identify the scalability of the transactions and how quickly they are processed. Figure 6 The incremental impact on performance when additional users are added is clear. Figure 5 Integrated load, service and network virtualization, within the HP LoadRunner interface. The service level objectives, in this case, are provided by the shipper, and the web service definition required to recreate the virtual service are provided in the shipper s documentation. The test is designed to determine the application server s response time to queries under typical, stress and edge conditions so that server performance can be adjusted. To recreate the distributed systems of the shipping service, virtualized services are defined inside the HP LoadRunner Controller GUI. Within the HP LoadRunner scenario, three virtual users (VUsers) are defined: a baseline VUser represents a single local user a remote VUser is created to signify a user who accesses the tracking system from San Francisco. an additional mobile VUser is defined with impaired network conditions that represent a weak mobile network condition. As a result of this testing and analysis, testers recognized the need to test the effect of additional mobile users while acknowledging that even these results were sufficient enough to warrant improvements in the application response time. Summary IT environments today support hundreds of applications with dependencies on hundreds or more distributed services. This complexity and the required integration of dependencies and application resources is placing a burden on development and QA teams responsible for testing and validating application performance. Traditional methods of development and delivery are not effective in attaining high quality application performance in rapid time frames. Therefore, organizations have adopted Agile methods of developing software and instituted distributed infrastructure configurations. However, these systems can also complicate development, testing and IT by creating a requirement for new tools and processes that ensure quality and end user experience. 2012 Shunra Software Ltd. All rights reserved. Shunra is a registered trademark of Shunra Software. Pg. 6

Leveraging integrated Network and Service Virtualization enables readily available real-world environments for developers and testers. The virtualized test environment encourages acceleration throughout the development cycle while delivering reliable insight into expected application behavior. The unavailability or high cost of services, systems and networks is no longer an excuse for inaccurate functional, load and performance test results. Service and Network Virtualization allow testing earlier and more often in the application lifecycle when it is easier and less expensive to fix defects. Issues can be discovered and corrected well before a product is released, helping organizations to protect revenue, productivity and brand investments. Shunra Network Virtualization and HP Service Virtualization provide the only complete and integrated virtualization solution for end-to-end performance testing of distributed applications on the market. This capability ensures that extremely complex distributed systems achieve desired levels of quality and performance by being able to test user experience and application performance across all levels of application architecture and against real-world network conditions. For more information on HP Service Virtualization, visit www.hp.com/go/sv. For more information on Shunra Network Virtualization, visit www.shunra.com/nv. Copyright 2012. Shunra Software. All rights reserved. The information contained herein is subject to change without notice. The only warranties for products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. Shunra shall not be liable for technical or editorial errors or omissions contained herein. Shunra, the Shunra logo and Shunra product names are trademarks or registered trademarks of Shunra Software. HP, the HP logo and HP product names are registered trademarks of HP and/or its affiliates. All other trademarks are the property of their respective owners. By employing Shunra Network Virtualization and HP Service Virtualization technologies early and often in the testing and development cycle: Testing processes are shifted left in the development cycle, enabling issues to be detected and remediated when it is most cost-effective to do so; Application performance and adherence to service level objectives is validated before deployment; Agile development processes and time-to-market are faster, as more accurate and reliable parallel development occurs; Testing environment costs are significantly reduced due to the availability of virtualized services, systems and networks. Application Performance Engineering Call your Local office TODAY to find out more! North America, Headquarters 1800 J.F. Kennedy Blvd. Ste 601 Philadelphia, PA USA Tel: 215 564 4046 Toll Free: 1 877 474 8672 Fax: 215 564 4047 info@shunra.com Israel Office 6B Hanagar Street Neve Neeman B Hod Hasharon 45240, Israel Tel: +972 9 764 3743 Fax: +972 9 764 3754 info@shunra.com European Office 73 Watling Street London EC4M 9BJ Tel: +44 207 153 9835 Fax: +44 207 285 6816 saleseurope@shunra.com For a complete list of our channel partners, please visit our website www.shunra.com