successful service virtualization - sandhata · successful implementation of service...

5
Successful Service Virtualization sandhata.com For more information please contact us on: +44 20 3300 1633 Technical Paper Transform the Business of IT Helping IT to remain agile, adapt quickly and deliver software faster, at lower risk and cost

Upload: others

Post on 30-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Successful Service Virtualization - Sandhata · successful implementation of service virtualization. Methodology Deciding on the right methodology to follow is of utmost importance

Successful Service Virtualization

sandhata.comFor more information please contact us on: +44 20 3300 1633

Technical Paper

Transform the Business of IT

Helping IT to remain agile, adapt quickly and deliver software faster, at lower risk and cost

Page 2: Successful Service Virtualization - Sandhata · successful implementation of service virtualization. Methodology Deciding on the right methodology to follow is of utmost importance

Approaches such as SOA and similar distributed application architectures provide an effective model for lean, agile and componentised IT that adapts quickly. Since classical testing methodologies and tools do not fit these approaches well, IT has evolved new methods and products to address their increased complexity and the changes. Service virtualization is one of the latest ideas that offers a faster time to market. As service virtualization is a relatively new solution, there are not many resources available in the market. This lack of resources causes a lot of problems during the implementation phase. Most of the problems can be resolved using a well-defined virtualization lifecycle/process.

2. 2. 2. 2. 3. 3.

sandhata.comFor more information please contact us on: +44 20 3300 1633

Transform the Business of IT

Contents

What is service virtualization?MethodologyRequirement management phaseAnalysis and design phase Implementation phaseDeployment and management phase

Technical Paper: Successful Service Virtualization

Page 3: Successful Service Virtualization - Sandhata · successful implementation of service virtualization. Methodology Deciding on the right methodology to follow is of utmost importance

What is service virtualization?Environment and system dependencies/constraints in complex environments can severely hinder development and testing efforts, causing testing to have a limited scope and compromised quality. However, service virtualization simulates the behaviour of software components, to remove dependency constrains on development and test teams, so they can deliver software faster, at lower risk and cost.

The purpose of this document is to describe the process/methodology and general best practices that should ensure successful implementation of service virtualization.

MethodologyDeciding on the right methodology to follow is of utmost importance in successful implementation. Methodology helps us to have a proper checkpoint in the lifecycle and to measure the progress of our implementation as well review it at logical points, to avoid major setbacks.

It is advisable and desirable to follow a well-defined service virtualization lifecycle. The service virtualization lifecycle suits the agile lifecycle of today’s composite application approaches, since it is iterative and incremental. The service virtualization cycle starts with a requirements management phase, followed by analysis and design, and then implementation. It ends with deployment and management.

Requirement management phaseThe main objective of this phase in the lifecycle is to identify what needs to be virtualized and to understand the proposed functional and non-functional requirements. Virtualization teams use this phase to understand the target environment landscape for virtual services. Once infrastructural requirements have been understood, the virtualization team then identifies the environment build strategies. There are always a few components in any environment that have very simple behaviours with low/no test data management complexities and negligible access constraints. These have low ROI and are therefore not ideal targets for service virtualization, except as a static service with single path for technology demonstrations. The ideal targets for virtualization are systems that have:

sandhata.comFor more information please contact us on: +44 20 3300 1633

If the identified service is completely new and has no pre-existing data that can be found in production, then teams will need to determine how data would be sourced and ensure that artificial data can be created effectively. Virtualization teams needs to examine and consider all the components that consume the virtual service. If the service that needs to be virtualized already exists then the data can be recorded.

When defining the requirements it is important to:

Business purpose of the serviceThe fundamental premise of all virtual service planning is that a virtual service exists to serve a business purpose. There should always be a virtual service with just enough resource to continue testing instead of building a whole service.

Cost benefitYou might need to analyse some or all of the following:

Transform the Business of IT

Technical Paper: Successful Service Virtualization

Determine the business purpose of the service

Understand the cost/benefit outcomes for the business and intended users

1.

2.

Dependency on an incomplete development

Access fees for testing

Inconsistent/invalid data

Physical external links

An inability to be tested independently

1.

2.

3.

4.

5.

Do these requirements require a virtual service?

Do we have any existing services in our landscape that can reused, either partially or completely?

1.

2.

Page 4: Successful Service Virtualization - Sandhata · successful implementation of service virtualization. Methodology Deciding on the right methodology to follow is of utmost importance

sandhata.comFor more information please contact us on: +44 20 3300 1633

Transform the Business of IT

Technical Paper: Successful Service Virtualization

ConclusionThis is a very high level view of the phases involved in Service Virtualization. The nuts and bolts that make the solution may vary. But the methodology remains the same. If looked at carefully, Service Virtualization in itself is a methodology born out of the existing lifecycle frameworks, emphasising the importance of looking inside to maximise ROI. It brings a new perspective to the way organizations look at their existing assets and their future investments. Reuse, rather than reinvent.

Analysis and design phaseThe virtualization team analyses the requirements gathered in the previous phase and then plans and documents the process for building the virtual services. In this phase, teams focus on the services and components identified and their associated use cases. Teams use a variety of artefacts, such as functional specifications, technical specifications and sequence diagrams, to ensure complete coverage. By the end of the design phase, virtualization team should ensure that they have all the valid input and output pairs for all scenarios in a given component. This can be achieved by asking the development team about request/response documents.

During the design phase it is important to:

Understand and clearly articulate the detailed requirements for the service. Make sure there is agreement between key players before start of development

Separate functional from non-functional requirements

1.

2.

Implementation phaseThe implementation phase involves the creation of virtual services, populating them with data and ensuring the quality of service by performing unit testing.

With the detailed requirements for the virtual service in place, the virtualization team can now decide to build the service from scratch, or extend a static service. A static service has the technical framework established beforehand and can be extended to cater to the functional requirements. The virtualization team initially builds this static service without any data. These services can then be used to derive test data by recording and masking the production information or through manual data creation. Steps for recording data vary across products but generally they follow these steps:

The virtualization team builds unit test cases to cover all the use cases and completes the unit testing. The team completes the implementation phase after ensuring that a virtual service can, indeed, perform in all of the identified use cases.

Configure the components for recording

Modify the captured data to create an appropriate subset to cover scenarios

Mask sensitive data

Ensure all scenarios are covered

1.

2.

3.

4.

About SandhataThis is a very high level view of the phases involved in Service Virtualization. The nuts and bolts that make the solution may vary. But the methodology remains the same. If looked at carefully, Service Virtualization in itself is a methodology born out of the existing lifecycle frameworks, emphasising the importance of looking inside to maximise ROI. It brings a new perspective to the way organizations look at their existing assets and their future investments. Reuse, rather than reinvent.

Sandhata’s in-house facility allows us to stay ahead of Service Virtualization and test automation using cutting edge technology.

Sandhata is the certified Service Virtualization and Test Automation trainer on IBM toolset.

Sandhata understands the bottlenecks, complexities and pain points in the testing world.

Sandhata has a Centre of Excellence in Test Automation and service virtualization that helps us to provide these services for our clients successfully in complex environments.

Sandhata’s service offerings provide our clients with both the tactical and strategic options to implement advanced Solutions in Service Virtualization.

Sandhata’s processes and methodologies not only offer the best practices relevant to RTW but also provide a framework for a successful and scalable implementation.

Experience is key

Improving qualityLowering on-going testing costsLowering test lab costsImproving collaboration and efficiency between developers and testersSupporting the move to more agile developmentEnabling Testing earlier at component/interface layer Virtualizing end systems to remove dependency– stub web service, application server etcObserving events to accelerate defect investigation in the end-to-end system for grey box testingEnabling quicker and frequent Regression testing

Our Experience in adding value to Testing

Page 5: Successful Service Virtualization - Sandhata · successful implementation of service virtualization. Methodology Deciding on the right methodology to follow is of utmost importance

sandhata.comFor more information please contact us on: +44 20 3300 1633

Transform the Business of IT

Technical Paper: Accelerating SAP Testing