Service Virtualization For Dummies , IBM Limited Edition

Transcription

ServiceVirtualizationIBM LIMITED EDITIONby Marcia Kaufman andJudith HurwitzThese materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

Service Virtualization For Dummies , IBM Limited EditionPublished byJohn Wiley & Sons, Inc.111 River St.Hoboken, NJ 07030-5774www.wiley.comCopyright 2013 by John Wiley & Sons, Inc., Hoboken, New JerseyPublished by John Wiley & Sons, Inc., Hoboken, New JerseyNo part of this publication may be reproduced, stored in a retrieval system or transmitted in anyform or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise,except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without theprior written permission of the Publisher. Requests to the Publisher for permission should beaddressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions.Trademarks: Wiley, the Wiley logo, For Dummies, the Dummies Man logo, A Reference for the Restof Us!, The Dummies Way, Dummies.com, Making Everything Easier, and related trade dress aretrademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates in the UnitedStates and other countries, and may not be used without written permission. IBM and the IBM logoare registered trademarks of IBM. All other trademarks are the property of their respective owners.John Wiley & Sons, Inc., is not associated with any product or vendor mentioned in this book.LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKENO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY ORCOMPLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALLWARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR APARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES ORPROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BESUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THATTHE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHERPROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF ACOMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NORTHE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT ANORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR APOTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT THE AUTHOR ORTHE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR WEBSITE MAYPROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD BE AWARETHAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAPPEAREDBETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.For general information on our other products and services, or how to create a custom For Dummiesbook for your business or organization, please contact our Business Development Department in theU.S. at 877-409-4177, contact info@dummies.biz, or visit www.wiley.com/go/custompub. Forinformation about licensing the For Dummies brand for products or services, contactBrandedRights&Licenses@Wiley.com.ISBN 978-1-118-50127-6 (pbk); ISBN 978-1-118-50129-0 (ebk)Manufactured in the United States of America10 9 8 7 6 5 4 3 2 1These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

Table of ContentsIntroduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1About This Book. 1Icons Used in This Book. 2Chapter 1: What is Service Virtualization?. . . . . . . . . . . . 3Defining Service Virtualization. 4Service Virtualization in Action. 5The Whiz Bang International example. 5A large financial services organization. 7Seeing How Service Virtualization Differs fromOther Types of Virtualization. 8Exploring Where Service Virtualization Can Add Value. 9Testing. 10Development. 11Non-production usage. 11Benefits of Service Virtualization. 12Reducing costs. 12Improving productivity. 13Reducing risk. 13Increasing quality. 14Chapter 2: The Driving Forces of Change . . . . . . . . . . . . 15Meeting the Rising Expectations of EnterpriseApplications. 16Embracing Service Oriented Architectures. 17The Rise of Mobile Applications. 18Agile Transformation Continues. 19Chapter 3: Escaping the Past. . . . . . . . . . . . . . . . . . . . . . . 21Improving Quality in the Application Life Cycle. 21Rethinking Test Automation. 23Facing the Challenges of Complex Test Environments. 25Service Virtualization and Complex Test Environments. 26These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

ivService Virtualization For Dummies, IBM Limited EditionChapter 4: Finding Your Way toService Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . 27Identifying Services to Virtualize. 27The cost benefit analysis. 29Service volatility. 30Impact of unavailability. 30Cost to deploy or use. 30Complexity of the technology. 31Doing the math. 31Looking into Test Automation Strategies. 33Implementing Service Virtualization for All TestingPurposes and Phases. 34Testing phases. 34Performance testing. 36Negative testing. 38Chapter 5: Putting Service Virtualization to Work . . . . 39Understanding Your Architecture. 39Communicating between components. 41Transporting messages. 42Messaging standards. 43Finding the endpoints. 43Defining Virtual Components. 44Synchronizing with external sources. 44Bootstrapping virtual component behavior. 45Understanding the mechanics of recording. 46Behavior of virtual components. 46Provisioning Virtual Services. 49Chapter 6: Measuring ROI . . . . . . . . . . . . . . . . . . . . . . . . . 51Building Your Business Case. 51Why service virtualization?. 52Estimating the costs of implementing service virtualization. 53Estimating the benefits of implementing service virtualization. 53Quantifying the Benefits. 53Eliminating or lowering costs associated withtraditional test environments. 54Time spent provisioningtest environments. 55Finding and resolving defects early inthe development process. 55Faster time to market. 56Process improvements. 57Selecting a Solution. 57These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

Table of ContentsChapter 7: Ten Key Points for Success with ServiceVirtualization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59Rethink Your Approach to Testing. 59Plan for Flexibility. 60Practice Controlled Integration. 60Test Continuously from Development to Production. 61Externalize Your Test Data. 61Explore Advanced Test Scenarios. 62Avoid Reinventing the Wheel. 62Service VirtualizationIsn’t Just for Testers. 62Share Virtual Componentsacross the Enterprise. 63Enhancing Team Productivity by Building Skills. 63These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.v

Publisher’s AcknowledgmentsWe’re proud of this book and of the people who worked on it. For details on how tocreate a custom For Dummies book for your business or organization, contact info@dummies.biz or visit www.wiley.com/go/custompub. For details on licensing theFor Dummies brand for products or services, contact BrandedRights&Licenses@Wiley.com.Some of the people who helped bring this book to market include the following:Acquisitions, Editorial, andVertical WebsitesProject Editor: Carrie A. BurchfieldEditorial Manager: Rev MengleBusiness Development Representative:Sue BlessingCustom Publishing Project Specialist:Michael SullivanComposition ServicesSr. Project Coordinator: Kristie ReesLayout and Graphics: Carrie A. CesaviceProofreaders: Melissa Cossell,Lauren MandelbaumPublishing and Editorial for Technology DummiesRichard Swadley, Vice President and Executive Group PublisherAndy Cummings, Vice President and PublisherMary Bednarek, Executive Director, AcquisitionsMary C. Corder, Editorial DirectorPublishing and Editorial for Consumer DummiesKathleen Nebenhaus, Vice President and Executive PublisherComposition ServicesDebbie Stailey, Director of Composition ServicesBusiness DevelopmentLisa Coleman, Director, New Market and Brand DevelopmentAuthor’s AcknowledgmentsThank you to the following friends at IBM: Cheri Bergeron, Carole Gibbins, Peter Klenk,and Al Wagner, who provided vision, content, review, and assistance to help make thisbook possible.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

IntroductionWelcome to Service Virtualization For Dummies,IBM Limited Edition. Service virtualization helpscompanies create more efficient testing environments byeliminating many of the roadblocks that testing teams typically encounter. While testing teams want to test early inthe application development process, it’s hard to make thisplan a reality based on the increasing complexity of softwareenvironments. In order to reduce project risk and guaranteehigher quality outcomes, your company needs a new proactive approach to testing. You need an approach that improvesthe overall level of testing and increases the efficiency ofremoving defects.Your company can benefit from service virtualization if yourteams develop and deliver complex applications with multipledependent components that must be tested. Instead of waiting for dependent services to become available for testing,your teams can use service virtualization to emulate thesemissing elements. With service virtualization your test environments can use virtual services in lieu of the productionservices, increasing the frequency of integration testing. As aresult, deploying service virtualization can help you decreasetesting costs, improve team productivity, and ultimatelyimprove software quality.About This BookThis book gives you insight into what it means to leverage service virtualization in your testing environments. By simulatingservice components, you can quickly validate the behaviorand performance of an application’s components and determine how they interact. In this book, you discover the keychallenges that companies face when developing complexapplications with multiple dependencies and how you canincrease test team efficiency with service virtualization toenable more sophisticated and accurate testing earlier in thelife cycle.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

2Service Virtualization For Dummies, IBM Limited EditionIcons Used in This BookThe following icons are used to point out important information throughout the book:Tips help identify information that needs special attention.Pay attention to these common pitfalls of managing your foundational cloud.This icon highlights important information that you shouldremember.This icon contains tidbits for the more technically inclined.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

Chapter 1What is ServiceVirtualization?In This Chapter Introducing service virtualization Seeing service virtualization in action Discovering how service virtualization differs from other types of virtualization Understanding where service virtualization adds value Realizing the benefits of service virtualizationImagine a world where software development teams consistently deliver new applications on time, under budget, andwith exceptional quality and performance. For many development and operations teams, the demands of testing today’scomplex applications in their test environments prevents thisgoal from being an achievable reality.In this chapter, we introduce a new technology to the development and testing communities called service virtualizationand talk about how companies are using it as a key part oftheir testing strategy to reduce risk, decrease testing costs,and deliver higher-quality software. Service virtualizationhelps organizations overcome many of the challenges associated with testing today’s complex and interdependentsystems. Because the term virtualization is quite popular indifferent circles, we describe how service virtualization is different from other kinds of virtualization. You take a look atsituations where service virtualization can add the most valueand dive into the various uses of service virtualization and itskey benefits.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

4Service Virtualization For Dummies, IBM Limited EditionDefining Service VirtualizationService virtualization simulates the behavior of select components within an application to enable end-to-end testing ofthe application as a whole. Test environments can use virtualservices in lieu of the production services to conduct integration testing earlier in the development process. Service virtualization can be useful for anyone involved in developing anddelivering software applications. Integration testing of theseapplications is often delayed because some of the componentsthe application depends on aren’t available. Service virtualization enables earlier and more frequent integration testing byemulating the unavailable component dependencies.Service virtualization solutions have the following characteristics: Application emulation: Virtual components can simulate the behavior of an entire application or a specificcomponent. Multiple test environments: Developers and quality professionals may create test environments by using virtualcomponents configured for their needs. Same testing tools: Developers and quality professionalscan use the same testing tools that they have used in thepast — the tools can’t tell the difference between a realsystem and a virtual service.These virtual components are created to simulate a real environment through two basic entry points: Observing the system in action: Construct a virtual component by listening to the network traffic of the servicethat you want to emulate. Reading the descriptions of the system: Construct avirtual component by utilizing other sources of information such as service specifications. An example is aWeb Services Description Language (WSDL) file, whichdescribes the operations offered by a service along withthe parameters it expects and the data it returns.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

Chapter 1: What is Service Virtualization?5Service Virtualization in ActionOne of the best ways to understand the benefits of service virtualization is to look at examples. In this section, we give youa make-believe example and a real customer scenario.The Whiz Bang InternationalexampleThe URGoodForIt Credit Check service (a make-believe service; good name, huh?), provided by a third-party vendor,must be deployed to test the new application. However, itisn’t readily available in the test environment. The team can’tbegin testing without this dependent component. As a resultthe team is forced to choose between de-scoping tests or slipping the delivery schedule.Figure 1-1 depicts a sample online ordering application thatimplements the URGoodForIt Credit Check service. Whiz BangInternational has embraced Service Oriented Architecture(SOA), and the implementation of this application takesadvantage of a variety of services such as an ordering handing service, a third-party credit checking service, a third-partypayment service, a custom service to provision a new device,and a database. This complete picture of the system reflectsthe production environment without service virtualization.Figure 1-1: A commercial application in production without service virtualization.These materials are the copyright of John Wiley & Sons, Inc. and anydissemination, distribution, or unauthorized use is strictly prohibited.

6Service Virtualization For Dummies, IBM Limited EditionThe URGoodForIt service is a good candidate for service virtualization because Test environment availability is delayed and the teamhas to wait for the service to be available before testingcan begin. The URGoodForIt service costs money each time it’sexecuted.The team needs to test at user levels of 100,000 for performance purposes. Because URGoodForIt is providedby a third party, the business needs to pay a fee per useeach time the service is called in a test. The fees f

4 Service Virtualization For Dummies, IBM Limited Edition Defining Service Virtualization Service virtualization simulates the behavior of select com-ponents within an application to enable end-to-end testing of the application as a whole. Test environments can use virtual servic