DevOps with Quality. Achieving the desired quality at every stage of the DevOps lifecycle.

Similar documents
Test Maturity Assessment and Improvement Using TPI and Quality Blueprint. Performance driven. Quality assured.

Test Environment Management. Full Lifecycle Delivery and Support

Meeting the challenge of software quality and maximizing return on investment Performance driven. Quality assured.

Achieving Balance: The New Pivotal Points of Software Development

Agile Quality Strategy with HP Agile Manager August 26, 2015

DevOps: Accelerating Application Delivery. DevOps on IBM i: Barriers, Techniques, and Benefits to the Business

Integrated Business Planning. Key insights and your way to start

The Evolution of Testing Maturity. From Defect Discovery to Test Transformation

Conclusion.

HP Quality Center 10 Overview

Automation that accelerates transformation. The digital enterprise requires smarter infrastructure automation.

RELEASING HIGH-QUALITY APPLICATIONS AND INFRASTRUCTURE FASTER WHITE PAPER OCTOBER 2017

Securing your. CA Gen Vision. jumar

Business Alignment Through the DevOps Loop

Take insights to the next level. Upgrade to Oracle Business Intelligence 12c

10 Steps to Mainframe Agile Development. Mark Schettenhelm, Sr. Product Manager September 28, 2017

Customer Data Management in the Automotive Industry: Creating Value

THE DEVOPS MATURITY CURVE. Justin Vaughan-Brown CA Technologies

Transform Application Performance Testing for a More Agile Enterprise

SAP s Quality & Testing Platform Complete Solution of Products and Professional Services

Odigo for Utilities. Digital Contact Center Solution

Accelerating Your DevOps Journey

White paper Accelerating the Digital Transformation With Atos alien4cloud and Cloudify

CONTINUOUS DELIVERY EBOOK SERIES: Chapter 1. Four Critical Software Delivery Challenges in the Application Economy

What is Continuous Integration. And how do I get there

Getting Started with DevOps

Powering the Edge to the Enterprise

IT Strategy Assessment for Automotive Suppliers

Advanced Enterprise Work and Asset Management for Performance-Driven Utilities

MAD FOR MOBILE. John Frizelle Philip Hayes Cian Clarke. #redhat #rhsummit

SOA Governance is For Life, Not Just a Strategy

Achieve Competitive Advantage with IBM DevOps

Moderator: Robert Wunderlich - Oracle. September 22, Copyright 2016, Oracle and/or its affiliates. All rights reserved.

CHANGE IMAGINED. CHANGE DELIVERED

Application Migration to Cloud Best Practices Guide

Digital Transformation Checklist

DevOps: Start-up Speed, Enterprise Scale

World Quality Report

Enabling digitization at the pace of business. Achieve connected DevOps tool chain through Release Orchestration

Partnering for Business Value

CORE ELEMENTS OF CONTINUOUS TESTING

DevOps Guide: How to Use APM to Enhance Performance Testing

DASA DEVOPS FUNDAMENTALS. Syllabus

DASA DEVOPS FUNDAMENTALS. Syllabus

ACCELERATING DIGITIZATION THROUGH NEXT-GENERATION INTEGRATION

DevOps, Architecture, and Security in a Cloud

Learn How To Implement Cloud on System z. Delivering and optimizing private cloud on System z with Integrated Service Management

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

INTELLIGENT DIGITAL AUTOMATION PLATFORM

Welcome to this IBM Rational podcast, The. Scaled Agile Framework in Agile Foundation for DevOps. I'm

How Cisco IT Developed a Self-Service Model for Build and Deploy

Modernize Application Development to Succeed as a Digital Business

Sample Exam ISTQB Agile Foundation Questions. Exam Prepared By

PERSPECTIVE. Monetize Data

IBM Cloud Garage Method Field Guide

Agile Engineering. for Managers. Introducing agile engineering principles for non-coders

E-Guide to the Enterprise Agreement Program

DevOps: Start-up Speed, Enterprise Scale

A technical discussion of performance and availability December IBM Tivoli Monitoring solutions for performance and availability

Wonderware System Platform 2017 Real-time Operations Control Platform for Supervisory, HMI, SCADA and IIoT

IBM Services. The perfect partner to guide your Smarter Commerce, Business Intelligence and Social Business initiatives

Dell EMC Native Hybrid Cloud, Powered By Intel: Jump- Start Your Adoption of the Cloud-Native Model

Automation Testing and the DevOps Pipeline presented by Randy Spiess (Jan 18)

Software is not an art, it s business Digital Industrial Revolution. Björn Gullberg, CA Technologies

Close the Productivity Gap with Overall Equipment Effectiveness (OEE)

4/26. Analytics Strategy

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

Breaking the Bottlenecks in Your SDLC

Global Enterprise Model (GEM) for Utilities

Capgemini & Experitest Co-webinar: A secure Mobile Testing Cloud Resource- Accessible Anytime Anywhere. Dec 2014

Introduction. Context for Digital Transformation. Customer Experience

WHITE PAPER. Getting started with Continuous Integration in software development. Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

Experience the commitment. CGI Exploration2Revenue TM Business Suite. Optimize your upstream back office

Fundamentals of Modernization: Analyze, Structure and Transform itour Poland November 13, 2017 Wisla, Poland

Top 10 Reasons Why Enterprises Should Adopt a Cloud-based Approach for Mobile Application Testing

CollabNet Trends, Challenges, and Success with Agile ALM

Automated Testing with CA Plex, CA 2E and Worksoft Certify DevOps for CA Plex

Datasheet. CollabNet TeamForge Version Control

AUTOMATED TESTING: THE GLUE THAT HOLDS DEVOPS TOGETHER

BIM. the way we see it. Mastering Retail. How the control of information is at the heart of a successful retail business

An Overview of the AWS Cloud Adoption Framework

DevOps. Changing the way you deliver software

Oracle Enterprise Manager 13c Cloud Control

Claus von Riegen. Innovating at SAP the Delicate Balance between Incremental and Radical Innovation. An interview with

THE ADVANTAGES OF AGILE METHODOLOGIES APPLIED IN THE ICT DEVELOPMENT PROJECTS

In-Process Automation

The Economic Benefits of Puppet Enterprise

ALM120 Application Lifecycle Management 12.x Essentials

Middleware Modernization: lay the foundation to your digital success

ServiceSPAN: Making Work Centers Work Better PRODUCTIVITY TOOLS SPECIAL. The Navigator for Enterprise Solutions IN MY OPINION CIO INSIGHTS

Solution Overview. Transform your life and annuities business

BEST PRACTICES IN AP AUTOMATION

A Day in the Life of a Migrated ClearCase User. A Sneak Preview

Application Lifecycle Management for SAP Powered by IBM Rational

Social Networking Advisory Services

Wanted: Agile Solution for Evolving Marketing Demands

MICROSOFT DYNAMICS NAV FOR INTERNATIONAL

ADVANTAGE YOU. Drive TCO* reduction through Infosys TIBCO solutions

Agile Development Doesn t Have to Mean Fragile Enterprise Processes

Global Media and Entertainment Company Uses IBM Cloud for Skytap Solutions to Deliver More Cost-Effective, Functional, and Timely Application Releases

Transcription:

DevOps with Quality Achieving the desired quality at every stage of the DevOps lifecycle.

DevOps: increasing Speed and Quality DevOps is being embraced by the IT industry as the answer to fulfill the continuous demand from the Business to deliver new and improved IT solutions to end-users and customers at ever increasing speed. The core idea behind DevOps is to remove the boundaries between the traditional silos of Business, IT Development, QA and IT Operations and to extend the agile and lean-principles from software development to the software deployment phase. This would ultimately lead to an IT process with a continuous stream of IT updates to the end-user. The proliferation of DevOps is driven by time to market with business metrics, such as Return on Revenue and Return on Investment (ROR/ROI) for new development, and throughput efficiencies for legacy systems. In our view, to begin to realize the benefits promised by the DevOps philosophy, automation of the quality activities is not only required but it is the core enabler of increasing throughput and velocity. Without maximizing automation, the speed at which a team can deploy features is limited by the speed at which the quality activities can be successfully completed. In other words, testing activities, done traditionally will become the constraining factor or the alternative is testing will not be done adequately, therefore putting your organizations reputation at risk.the 2015 World Quality Report reveals some significant data points to support this view: 61% of organizations rate, time to market as a very important part of their corporate strategy Corporate image is the number 1 executive concern when it comes to quality, demanding protection from software glitches that hit the news Customer Experience or Customer Value is a key objective, and this is determined by speed, fit for purpose solutions and ease of use. However, the same World Quality Report survey also shows that achieving the appropriate level of quality validation within these ever shorter cycles is a serious challenge for most organizations: 49% of organizations complain that still largely manual testing phases are a bottleneck in speeding up the development cycle time 33% of organizations have difficulty to determine the right coverage of quality validation checks in Agile and DevOps processes 31% of organizations claim that test environments and test data sets are not flexible enough to quickly test micro-services. Proliferation of 3rd party services integrated into applications increase the risk that changes in these services cause unexpected failures DevOps with Quality Not overcoming these challenges means that organizations either have to accept higher risks of IT product release failures with potentially serious consequences for business operations and corporate image, or have to accept lower speed in adapting new technologies with potential risk of losing to the competition. In this point of view document we will offer some concrete solutions that will enable the achievement of the benefits of the DevOps philosophy while minimizing the risk to brand image and user experience. The characteristics of DevOps Business Agility and business speed to market is more than ever linked to agility of IT provisioning: Monolithic legacy systems and lengthy release cycles often impede an organizations ability to quickly adapt to new business processes, because it is still common for releases to be done quarterly or even only twice a year Newer and more nimble solutions provide faster ROI through operational improvements Agile methods deliver usable product to market in smaller, faster increments and reduce risk by identifying issues earlier in the lifecycle Lean processes and advanced automation tooling empower organizations to adapt to changes at a previously unachievable rate Future advancements in testing will include the incorporation of artificial intelligence and predictive analytics that will allow even further improvements in automation of delivery. By adopting DevOps an organization can dramatically improve the value delivered by its business. DevOps is based on two principles Collaboration and industrialization leveraging highly automated approaches to deploy solutions that evolve as fast as the business needs it. A team centric ethos that tears down traditional silos to tightly integrate business, development and operations to drive agility and service delivery excellence across the entire lifecycle. Implementation of DevOps requires a changed focus on three aspects Cultural: Business/Development/QA and operations must work in a fully integrated fashion in the software delivery process; Change and adaptability are the norms. Process: an agile based approach with continuous development, continuous build, continuous integration, continuous testing, continuous deployment and continuous monitoring Tools: implementation of a flexible tool environment that allows maximum automation In order to achieve the desired pace of delivery while protecting the brand and user experience. 2

Testing the way we see it DevOps is a revolution for all disciplines: Business, Development, Operations and Quality Assurance. All disciplines come together and will integrate extensively to make DevOps work. Each has a role to play. We believe that four key aspects must be made part of your DevOps process, teams and infrastructure in order to achieve DevOps with the appropriate and fit-for-purpose level of quality: 1. Implementing an integrated DevOps Quality Approach 2. Assigning the role of DevOps Quality Engineer to DevOps teams 3. Providing a coherent yet easy adaptable DevOps Quality Automation Framework 4. Providing a one-click DevOps Test Environment and Test Data solution to teams Implement a DevOps Quality Approach We believe an integrated DevOps Quality Approach is based on seven key principles 1. Continuous Testing and Continuous Quality Monitoring are completely connected to the continuous development, continuous build and continuous deployment process. 2. Continuous Development based on TDD (Test Driven Development ) and BDD (Behaviour Driven Development). These methods enable relatively quickly a common shared understanding of the expected operations and functionality of the application among all team members (users, developers, testers and operations). By extending these descriptions with priorities and potential risk identifications, they can be used as input to automatically generate test cases. 3. Quality is everyone s responsibility. At each step in the DevOps cycle team members execute quality checks: At continuous build the focus is to validate whether this build could break operations; at continuous development the focus is to validate functionality and usability. At continuous integration the focus is to validate performance, security and usability. 4. Clear understanding of priorities and potential risks to customer value and business performance. The quality ambition of DevOps deployments must be targeted at the level good-enough. Pre-requisite is an agreed and commonly shared vision on risks that are acceptable and risks which cannot be taken with a deployment. The agreed priorities and identified risk areas are the common starting point for all team members. A priority/risk charter per application which is automatically updated based on Figure 1. DevOps Quality Approach Sprint Business Plan & Release Plan Priorities Requirements Backlog Development Build & Deploy Testing Release Control Monitoring a. Zero Touch Continuous Testing: A fully automated process for testing is in place, covering all steps of the test process: from test strategy, test planning, test case generation, test environment set up, test data provisioning, to test execution and covering functional as well as non-functional testing aspects (especially performance and security). Quality Analysis tools are used to switch on and switch off validation checks with a push on the button. Newly defined/created quality validation checks are automatically absorbed in the full available set of quality checks. The test and quality checks are focused at: essential functional operations, performance, security and ease of use. b. Continuous Quality Monitoring; The actual quality level of applications is continuously monitored based on instantaneous visibility of production incidents, user reports. customer and end-user feedback is used to enable this. Predictive analysis from combined logging of historical project and deployment data-facts with actual quality monitoring scores is used to automatically identify the risk and focus areas of test and the selection of the appropriate test cases. 5. Quality Indicators per application. Per application there is a defined set of measurable quality indicators with pre-defined targets. The standard quality indicators cover four aspects: fit for purpose, ease of use, performance and security. This standard set can be expanded depending on the specific objectives of an application. The operational scores of the quality indicators are monitored continuously based on production incident reports and end-user feedbacks. Meeting the quality KPI s is a shared responsibility for all team members. 3

Figure 2. DevOps Quality Metrics Model Test Execution Productivity Velocity Sprint / Iteration Engagement Level Metrics Effort Variance Schedule Variance Commitment Reliability Defect leakage Release Business KPI Number of Releases / Year Severity 1 and 2 defects Reduction in Defects and Support Calls Features delivered per release Release Predictability Measure 6. Flexible quality coverage decision; For each DevOps deployment cycle the appropriate quality validation checks and test cases are defined and/or selected based on objective rules and with help of predictive analysis tools. 7. Implement metrics to manage QA efficiency: A small set of metrics is used to manage the efficiency of Quality activities. These metrics cover four aspects: Sprint/ Iteration performance (measured through Test Velocity and Test Execution Productivity); Release Quality (measured through the metrics: Defect leakage, Number of high Severity Defects, Number of features delivered) Engagement Level (Effort variance, schedule variance and commitment Reliability) and Business Level, which is measured by Number of releases per year, Reduction in Defects and Production calls, Release Predictability). These metrics are continuously reported in a real-time dashboard. Figure 3. Measure of Success Success Levers Basic Intermediate Advanced Lifecycle Automation Functional, non functional, Data, UAT 50% 70+% Continuous Test Build, integrate and deliver 70% 100% Lean and Agile adoption Kanban, Scrum,Safe,XP,SaFe 40% 70+% Test virtualization Services and Environment automation 30% 40+% Test optimization Risk based testing and OA leverage 40% 50% Standardization Model based work benches 40% 60% Continuous monitoring Availability & sentiment analysis 30% 60+% QE leverage TDD, BDD, Unit automation 70% 100% DevOps with Quality 4

Testing the way we see it The key success factors to achieve DevOps with Quality are: Lifecycle test automation Continuous Testing Lean and Agile process adoption Test Virtualization Test Optimization and Standardization Continuous Monitoring Acknowledge the role of Quality Engineer Assign the role of DevOps Quality Engineer to DevOps teams DevOps with Quality requires the presence of multiple skills within the teams: Business and domain skills: DevOps means anything that eliminates bottle-necks between concept to deploy. Without understanding the unique needs of domains, it is impossible to design an appropriate quality strategy that drives validation activities upstream. Architecture skills: Think modular, think open, think abstraction, think service. Build object oriented, service oriented loosely coupled architectures with micro-services. Ensure sufficient middleware skills to test infrastructure early. Infrastructure, cloud and virtualization skills: Test environments are typically the largest bottlenecks in testing. Understanding automated environment provisioning, cloud architectures and environment virtualization, can improve delivery pipeline by a significant 25% or more. Native programming languages skills: Coding skills in native programming is necessary to move away from user interface (UI) based test automation and to work more closely and seamlessly with developers. Developing non UI based automation framework skills, using proven data driven, keyword driven and hybrid automation frameworks will be the way forward. Enterprise level hybrid agile testing skills: Analysis shows that agile development is being driven by digital programs and mobile initiatives, with the Scaled Agile framework (SAFe) methodology taking the biggest market share (31%). Typically organizations are using a combination of DSDM, SCRUM, XP noting that SAFe is enterprise driven. DevOps with Quality can only be achieved by assigning the central role of DevOps Quality Engineer in each DevOps team. The DevOps Quality Engineer is a team member who contributes to development and operations but with focus on quality validation. (Some teams use the term SDET (Software Development Engineer in Testing) for this role. The DevOps Quality Engineer is never the sole person responsible for quality since quality is a shared responsibility of everybody in the team. The DevOps Quality Engineer plays a vital enablement role for the whole team to achieve the required quality standards with each DevOps cycle. The most important responsibilities of the DevOps QA engineer are: 1. Provide QA checkpoints/guidelines for all processes and all team members 2. Provide a common backbone QA Automation platform 3. Provide flexible QA Environments with service virtualization and cloud based environments 4. Run end-to-end QA validation checks per application 5. Validate correct Quality Coverage across the DevOps cycle 6. Validate and Monitor the overall Quality level of the applications Empowerment of teams is an important aspect of DevOps. Efficiency in the empowerment of the QaA activities requires a base set of re-usable guidelines, frameworks and best practices. To manage and provide this a DevOps QMO ( Quality Management Office) could be established. This QMO is not intended to act as a new silo with execution responsibility for quality validation activities, as its core function is to provide the QA validation standards and core tool platform and frameworks across teams. 5

Figure 4. DevOps Quality Engineer Role SCM Infrastructure Code Application Code & Configuration Test Scripts & Data Infrastructure Code Configuration Server Provision / Tear-Down User Stories Business Agile Lifecycle Tracking Tool Provision DEV Work Bench Commit IDE Code Analysis Unit Testing Build QA Work Bench Commit IDE Automated Functional Testing Trigger Build Build Checks and Tests Dashboard Notifications CI Master Slave Farm Deployment Workflow Publish Provision Environment Deploy Binaries Run Tests Deploy INT. STAGE Provision Provision PROD REPO Environment Containers Dependencies Binaries Virtualization Containers Events Logs Reports Logging & Monitoring Dashboard Trending Analytics Set up flexible DevOps Quality Automation Framework The enhanced DevOps process requires maximum automation of all parts of the process. From User Story gathering to Continuous Development, Continuous Build, Continuous Deployment and Continuous Monitoring. The more automation that can be achieved, the more the benefits promised by DevOps can be realized. A multitude of tools is already available to support these activities, and many more will be emerging in the near future. A proper set up of the automated quality environment is best served by a backbone of corporate agreed tool framework, with enough freedom to individual teams to plug-in special tools. In order to enable continuous improvement of team performance and implement corporate governance across this landscape of tools, there is a need for one corporate level standardized dashboard of quality metrics. This corporate dashboard allows for automatic and continuous reporting of source data from all the different tool repositories. The commonly used tools for managing and realizing quality in DevOps environments today are Components Test driven development Behavior driven development Exploratory Testing Configuration Management Continuous Integration Build automation Test lifecycle and defect management Service automation Functional automation Performance test Continuous Monitoring Environment virtualization& Cloud leverage Service Virtualization Test Data Management Indicative Tools JUnit, xunit, Cucumber, JBehave HPE Sprinter GIT, PVCS, VSS, Jenkins, TFS Make, GNU make, Apache HPE QC, Rally, Jira, VersionOne Parasoft, HPE Service Test, CA Lisa HPE QTP, HPE UFT, Selenium HPE Loadrunner Application, Server, Database Monitors Puppet, Chef, VM ware, HPE Codar CA Lisa IBM Optim, Parasoft File-Aid DevOps with Quality 6

Testing the way we see it Use a virtualized Environment for DevOps Quality Validation A flexible and instantaneous DevOps Quality validation Environment is required to enable right coverage of validation checks in a repeatable, and cost effective manner. Such an environment is based on three principles: Virtualization of Services, Network and Devices Cloud Based Environment Provisioning Test Data Management and Generation. Service Virtualization enables the setup of an environment in which individual applications functions and/or services can be tested as if they were embedded in a real life environment with all connections to other systems present. Service virtualization can be leveraged to record / create all the required behavior expected by dependent systems. Through a standard API set up each Application Under Test (AUT) communicates with the virtual services, instead of the real systems and this enables teams to perform early integration testing. Service Virtualization reduces the complexity of extensive test infrastructures and test data sets. It also reduces delays that are normally caused if teams need to wait for other teams to complete their services under development. Service Virtualization allows a working functional test environment to be made available with much more ease and at lower cost, and integration defects can be unveiled at earlier stages. The increased need for a test environment using service virtualization is pushed further due to movement to a software architecture based on microservices (small decoupled building blocks that interact with each other through language-agnostic API s). Service Virtualization solutions are offered by key technology partners such as Hewlett Packard Enterprise, CA, IBM and Parasoft. Network Virtualization enables the virtualization of mobile and broadband networks. This allows near real-life testing of application behavior and application performance in a controlled test environment. Network virtualization is offered by multiple technology partners: Hewlett Packard Enterprise (HPE), Citrix, IBM, OpenSolaris. Device Virtualization enables the virtualization of devices such as smart phones, tablets and other devices. It allows quality validation with a large number and versions of devices immediately and at lower costs. Device Virtualization is offered by multiple technology partners: PerfectoMobile, VMWare, Xamarin, MobileLabs and Red bend. Cloud-based Environment Provisoning. With cloud based environment provisioning it is possible to switch on or switch off personalized test environments with test automation tools on an as-needed basis. The test environments are delivered remotely through secure networks, reducing the need for onsite hardware installation, administration and maintenance. So teams pay for the specific testing and access to dedicated hardware platforms and industry-leading software licenses but only when they need them. Cloud-based Environment Provisioning is a critical enabler for DevOps Quality Validation. It provides instantaneous flexibility to switch-on or switch-off environments It provides fully equipped validation environments including core test automation tools It reduces complexity, cost and overhead in managing and maintaining test infrastructure Test Data Management (TDM), ensures the provisioning and management of the test data for all DevOps test sets. Test Data Management offers the ability to (automatically) generate test data, fast test data sub-setting, test data depersonalization/obfuscation/masking, test data archiving and test data refresh. In short the test data management activity creates and manages high quality and consistent test data across all test environments to perform testing activities. A well managed and automated Test Data Management process is a key enabler to Ensure the timely availability of test data Test data consistency across all test environments Sufficient volume of test data for real-life tests Predictive test results for test automation Re-usability of test data sets Adherence to data security and privacy regulations Test data creation/modeling as per business rules Proposed Roadmap to achieve DevOps with Quality For organizations that are implementing the DevOps philosophies, we recommend using our DevOps QBP approach to establish the baseline maturity, roadmap and continuous process for improvement in DevOps maturity. The roadmap to DevOps with Quality will have to cover all the critical elements Integrated QA approach covering Continuous Testing to Continuous Quality Monitoring QA awareness and expertise among all disciplines Quality Engineering role in DevOps teams QA automation QA environment and test data provisioning It is imperative to create business cases and DevOps driven roadmaps with right lean metrics aligned to the DevOps business objectives. This means shifting from the traditional cost of quality business cases to cost to achieve desired test velocity business cases. 7

To find out how Capgemini and Sogeti s Testing Services can help your organization achieve its Testing and QA business goals, please contact your local Capgemini or Sogeti testing representative or our Global Testing Services Sales Team: Mark Buenen VP Global Service Line Testing mbuenen@capgemini.com Renu Rajani VP Global Service Line Testing renu.rajani@capgemini.com Deepika Mamnani Principal Financial Services GBU Deepika.Mamnani@capgemini.com Steve Hughes Senior Vice President Testing Practice Manager, Sogeti USA Steve.hughes@us.sogeti.com About Capgemini and Sogeti With more than 180,000 people in over 40 countries, Capgemini is one of the world s foremost providers of consulting, technology and outsourcing services. The Group reported 2015 global revenues of EUR 11.9 billion. Together with its clients, Capgemini creates and delivers business, technology and digital solutions that fit their needs, enabling them to achieve innovation and competitiveness. A deeply multicultural organization, Capgemini has developed its own way of working, the Collaborative Business Experience TM, and draws on Rightshore, its worldwide delivery model. Sogeti is a leading provider of technology and software testing, specializing in Application, Infrastructure and Engineering Services. Sogeti offers cutting-edge solutions around Testing, Business Intelligence & Analytics, Mobile, Cloud and Cyber Security. Sogeti brings together more than 23,000 professionals in 15 countries and has a strong local presence in over 100 locations in Europe, USA and India. Sogeti is a wholly-owned subsidiary of Cap Gemini S.A., listed on the Paris Stock Exchange. For more information, please visit: www.capgemini.com/testing or www.sogeti.com/testing 2016 Capgemini and Sogeti. Rightshore is a registered trademark belonging to Capgemini. TMap, TMap NEXT, TPI and TPI NEXT are registered trademarks of Sogeti. No part of this document may be modified, deleted or expanded by any process or means without prior written permission from Capgemini. MCOS_GI_AH_20160506