Increasing Business Efficiency and Agility for ATGbased. Systems. the business challenge: upgrading the development pipeline



Similar documents
Agile Software Factory: Bringing the reliability of a manufacturing line to software development

Cisco Unified Communications and Collaboration technology is changing the way we go about the business of the University.

Accelerating Time to Market:

DevOps Best Practices: Combine Coding with Collaboration

Orchestrated. Release Management. Gain insight and control, eliminate ineffective handoffs, and automate application deployments

AGILE SOFTWARE TESTING

ACCELERATE DEVOPS USING OPENSHIFT PAAS

Key Benefits of Microsoft Visual Studio Team System

END TO END DATA CENTRE SOLUTIONS COMPANY PROFILE

Best Overall Use of Technology. Jaspersoft

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

Web UI & Functional Test Automation for Continuous Agile Deliveries

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

Lifecycle Performance Management (dynatrace) Description

Distributed Agile Development in the Cloud

Building Value with Continuous Integration

Cost effective methods of test environment management. Prabhu Meruga Director - Solution Engineering 16 th July SCQAA Irvine, CA

BRIDGE. the gaps between IT, cloud service providers, and the business. IT service management for the cloud. Business white paper

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

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

Service Virtualization:

OnX Oracle Cloud Services

Cisco Virtual Desktop Infrastructure Strategy Service

Flexible and Agile Service Delivery Platform Elevates Customer Experience

Automated Testing Best Practices

14 TRUTHS: How To Prepare For, Select, Implement And Optimize Your ERP Solution

IT Service Management by SAP Africa (ITSM) Dirk Smit ALM Engagement Manager

Guide to Mobile Testing

DevOps: Development Challenges and New Approaches

HP DevOps by Design. Your Readiness for Continuous Innovation Rony Van Hove/ April 2 nd, HP Software: Apps meet Ops 2015

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

Outperform Financial Objectives and Enable Regulatory Compliance

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

Contents. Introduction... 1

Openbravo Services for Partners

Test Automation: A Project Management Perspective

Crossing the DevOps Chasm

EMC PERSPECTIVE. The Private Cloud for Healthcare Enables Coordinated Patient Care

Continuous Delivery. Alejandro Ruiz

Cognizant Mobility Testing Lab A state of the art Integrated platform for Mobility QA

Hybrid Cloud for Development and Testing with VMware vcloud Air

My Experience. Serve Users in a Way that Serves the Business.

Achieving Retail Agility

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development

Sonata s Product Quality Assurance Services

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

The Continuous Delivery Tool Chain: So Many Choices!

Application Security Testing as a Foundation for Secure DevOps

Best Practices for Building Mobile Web

Simply better banking

TRANSFORMING TO NEXT-GEN APP DELIVERY FOR COMPETITIVE DIFFERENTIATION

Automation and Virtualization, the pillars of Continuous Testing

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

Reduce IT Costs by Simplifying and Improving Data Center Operations Management

The Evolution of Load Testing. Why Gomez 360 o Web Load Testing Is a

Sreerupa Sen Senior Technical Staff Member, IBM December 15, 2013

The Proven ROI of Development Testing: An in-depth analysis of Coverity customer experiences

Cloud computing: Innovative solutions for test environments

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

Building Software in an Agile Manner

Building Value with Continuous Integration

GE Healthcare. Proven revenue cycle management supporting profitability in an era of healthcare reform.

A Sumo Logic White Paper. Harnessing Continuous Intelligence to Enable the Modern DevOps Team

Co-Presented by Mr. Bill Rinko-Gay and Dr. Constantin Stanca 9/28/2011

Continuous Integration Comes to China.

Commonwealth Bank of Australia: Building Lasting, Real-Time Value for Customers

Accenture & NetSuite

Re-platforming Your ecommerce Site

VCE SUPPORT OVERVIEW. Investment Protection and Welcome Peace of Mind

Continuous delivery Release software on-demand, not on Red Alert

Develop and test faster by virtualizing constrained application components

PTC RETAIL PLM SOLUTION

AUTOMATED MOBILE TESTING REQUIRES BOTH REAL DEVICES AND EMULATORS

.trustwave.com Updated October 9, 2007 TECHNICAL ASSISTANCE CENTER (TAC) SUPPORT GUIDE

Qlik Consulting helps you accelerate time to value, mitigate risk, and achieve better ROI 1/35

Department of Energy. Customer Service Plan

Reducing the Cost and Complexity of Business Continuity and Disaster Recovery for

Use service virtualization to remove testing bottlenecks

Using a Java Platform as a Service to Speed Development and Deployment Cycles

VMware Hybrid Cloud. Accelerate Your Time to Value

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

Infor Human Capital Management Talent DNA that drives your business

Vehicle Sales Management

7 things to ask when upgrading your ERP solution

Cisco Data Center Optimization Services

how can I deliver better services to my customers and grow revenue?

agility made possible

Mobile Workflow Solutions: Better, Faster and More Profitable Business For You and Your Customers

Top Ten Reasons to Transition Your IT Sandbox Environments to the Cloud

Service Definition: Testing Platform-as (TPaaS) Advisory and Implementation Services

API Management Introduction and Principles

Wilhelmenia Ravenell IT Manager Eli Lilly and Company

Transcription:

Increasing Business Efficiency and Agility for ATGbased ecommerce Systems This case study follows a Tier 1 retailer migrating to an ATG-based ecommerce platform and upgrading its software development process to improve agility in releasing on the new platform. To facilitate a smooth migration and to improve development processes in the long-term, the Client asked Grid Dynamics to implement a new development pipeline based on Continuous Integration and Continuous Delivery best practices and proven technology. The results delivered by Grid Dynamics are significant - many manual processes were automated, deployment speed increased as did release reliability and quality of its software releases. Continued savings of more than 6000 man/hours per month have been realized. the business challenge: upgrading the development pipeline Our Client is a Tier 1 retailer facing the challenge of maintaining relevancy with its customers. Consumers in general are becoming increasingly more advanced technologically and expect a consistent user experience across all of a retailer s channels. The legacy platform the Client had implemented was no longer capable of meeting the company s business and technological goals. To meet its customers needs, the Client priorities include implementing more reliable search, offering a more personalized experience across all channels, and introducing advanced merchandising controls to ultimately raise conversion. The Client selected ATG, a modern, feature-rich platform to meet the business and technical goals it had set. The process of migrating to ATG required many software modifications to be coded, tested, and deployed. However, the development, testing, and release methodology the Client had in place consisted of primarily manual processes supported by a variety of open source and commercial tools. The Client s technology leadership set an objective to cure the manual processes that long been known to slow software development and introduce unnecessary human error. The inefficiencies of the legacy platform left the development team with little time or resources to address any issues other than critical changes. The ATG migration was the opportunity to implement a modern development pipeline that automated these processes based on best practices and proven technologies. An objective was set to address the undesirable risks and limitations of the manual development process by implementing the new CICD automated processes and tooling, including: Eliminating extended deployment sessions: Because of inefficiencies in manual build processes, deployments sessions could take days. In addition, manual quality assurance sessions typically took several hours to several days. Curing inadequate version control: Source code and binaries were distributed among team members by copying zip archives. Accidentally selecting the wrong version could cause a deployment schedule to slip by days. Addressing the significant lack of standards and best practices: The development process lacked the structure of modern software methodologies. For example, documentation was fragmented and potential configuration issues were typically fixed in a right C A S E S T U D Y SEPTEMBER 2014

away manner. This created an unstable infrastructure that could break when engineers were under pressure to complete a release. Eliminating static s: The legacy platform utilized static s for development, testing, and production. Thus, every configuration change to these s had to be performed manually by a dedicated engineer. This slowed processes, added potential for error, and increased operation costs. Improving poor scalability: The legacy platform could only support a small development team. This limited the rate at which the Client could make updates. Removing Personnel dependencies: Using dedicated engineers for manual tasks introduced the risk that, when an engineer was not be available, either through sickness or having left the company, the release cycle would be delayed. Addressing inefficiency: Manual processes were limited by the number of available personnel. This in turn limited the number of deployments that could be made. Eliminating long release cycles: Full regression testing was inflexible and took days to uncover even simple configuration errors. Addressing human error: Deployments required multiple manual operations as well as direct interactions with third parties (i.e., cloud provider). Each operation represented a potential point of failure that could lead to system downtime and loss of revenue. solution: best practice continuous integration/ continuous delivery The Client understood that the inefficiencies of its software development pipeline would significantly impact the speed with which they could migrate to their target ecommerce platform. In addition, all of the manual processes could introduce errors that would further slow development and potentially degrade the quality and reliability of the new platform. The Client saw an opportunity to upgrade their software development process at the same time as migrating to ATG. They asked Grid Dynamics to implement a development pipeline based on Continuous Integration and Continuous Delivery (CICD) best practices and technologies. CICD brings the reliability of an assembly line/pipeline to the development process (see Figure 1). With CICD, each stage of development is clearly defined and automated acceptance qa run automatic and manual user acceptance tests development and QA team Defects/Feedback loop release manager Code/Tests Implement code unit tests auto functional tests auto performance tests Code/Tests Built & statically Build & unit testing Functionally run automatic functional tests Performance run automatic performance tests Release Candidate package run user acceptance tests Production Deployment Deploy production Dev Sandbox QA/SIT Performance Staging/UAT Production Foundation: standards & best practices, deployment automation, dynamic s, s and deployments management portal Grid Dynamics Agile Software Factory Team: Implement Agile Software Factory, Manage and improve it, Provide 24x7x365 support Figure 1: Agile Software Factory

to minimize errors and delays. The pipeline framework eliminates the need for manual management of processes and fully integrates development, test, and support personnel to act as a single team. It also ensures that important project knowledge is integrated into processes rather than held by a few key individuals. The structure of the pipeline makes software delivery as repeatable and reliable as any manufacturing line. The Grid Dynamics team implemented CICD technology and best practices into the Client s development pipeline. Two key areas of focus were deployment automation and quality assurance (QA) automation. Deployment automation is a foundation of CICD. Automation eliminates many sources of human error, reducing troubleshooting efforts and speeding software delivery. One of the most important benefits of deployment automation is repeatability. This means that developments teams can consistently reproduce results, both easing troubleshooting and streamlining feature transition from development to production. To facilitate deployment automation, Grid Dynamics integrated automatic build and deployment mechanisms into the software pipeline based on standard tools like GIT and Gerrit. Qubell serves as the orchestration tool to automate all steps of application deployment. Standardized version control was implemented as well, as was an efficient branching strategy for hot fixes. CICD also focuses on improving the efficiency of QA processes through automation. QA automation enables test execution to be offered to engineering teams using a self-service model. This allows teams to run tests ondemand as frequently as needed. It also enables bugs to be detected and resolved with greater agility and speed. Grid Dynamics developed and integrated a customized testing framework for the Client that allows the development team to perform functional testing via both the user interface (UI) and services. This framework also supports mobile testing for mobile platforms. To further improve flexibility and efficiency, Grid Dynamics implemented the CICD system with multiple pipelines. This enables the Client to automatically run different kinds of tests. One advantage of this approach is that testing can be performed in stages. Consider that full regression testing can take significant time to complete. By first running smoke tests for each commit, the pipeline can uncover simple issues, such as configuration errors, much more quickly. All of these processes, technologies, and deliverables are part of the Grid Dynamics managed solution, Agile Software Factory. Agile Software Factory uses a proven process and infrastructure to deliver the benefits of automation, integration, and CICD to Tier 1 retailers. It streamlines software design to enable rapid delivery of code at low risk with minimal overhead. CICD also provided stakeholders with increased visibility into the status of a project. Traditionally stakeholders have to wait months into the migration process before they have enough information to evaluate how accurately their vision is being implemented. When a major migration is this far along, however, it is often too late to make changes without significant delay and expense. With the CICD pipeline in place, checkpoints provided the Client with progress notifications so stakeholders could proactively mitigate risks as they arose. results: measuring higher ROI Because the technology underlying the new CICD development pipelines had already been developed and proven in the field, the migration to ATG was performed more smoothly, in less time, and with fewer issues. However, the benefits of the upgrade extend far beyond just the migration process. Because the new processes and pipelines are now adopted as the standard for the Client s development process, the benefits of CICD are realized with every development project. For example, deployment automation introduces a high level of flexibility and control over the development process. It also leads to a reduction in hands-on and other manual processing, resulting in better and change management. From a QA perspective, the Client has experienced a substantial shift in automation, coverage, and reliability. The Client is now able to implement functional and performance testing at the same time as new features are added. As a result, the development team no longer needs to wait on the manual testing team to actually perform tests and provide feedback. Elimination of manual testing bottlenecks also significantly accelerated development. The development team can implement more features in faster iterations than with their legacy system. Quality has risen significantly. For example, the Client has not encountered any defects that would delay the release or compromise reliability in the late stages of testing and production in the CICD pipeline. This is because the development team is now able to address all major defects within a sprint, and the resulting functional release candidates are defect free. Full acceptance now only takes an average of two hours,

down from anywhere between 5 hours and days (see Table 1). The average release time has been accelerated as well: the average duration from feature completion to release candidate is just 4 hours, down from several days. One of the benefits of frequent automated testing is that it shortens the overall development cycle. Productivity for the Client has increased with the ability to complete 200 commits and build per day, with an average of 50 deployments per day. The increase in software quality also helps avoid additional testing cycles, leading to further savings and improvements in efficiency. For example, the Client went from having no automated backend testing to now having 2800 automated tests as part of its regression testing suite. Manual regression testing that offered less coverage [confirm] took 10 hours to complete; with automation, a comprehensive test run can be executed in just two hours. The value of these results can be quantified in terms of hours saved (see Table 2). For example, automating build, provision, deploy, and smoke testing processes saves the Client more than 5000 man/hours per month. Regression testing automation offers substantial savings as well: another 1000 man/hours per month. Note that these savings do not reflect the added benefit of intangible factors such as higher quality and faster time-to-market. long-term benefits Continuous Integration and Continuous Delivery technology provide an efficient backbone and foundation for development, testing, and delivery. It is important to note that CICD technology is not just a combination of infrastructure or pipelines. First and foremost, CICD is about processes. By adopting CICD processes and best practices, the Client was able to experience a smooth transition to its new ATG-based platform. In addition, because these processes are now integrated into the development pipeline, the Client continues to realize ongoing benefits from implementing CICD: Higher quality: When projects are under tight deadlines, development teams may feel pressure to marginalize testing to meet deadlines. Similarly, the manual testing team may be severely backlogged, delaying the release of important changes. In these scenarios, the project is at risk of failure because of errors that would not have been missed had testing been completed properly. With automated testing, the default is to test all software before release with a high degree of coverage, ensuring higher quality as a minimum standard. Repeatability: The ability to accurately and consistently repeat processes has made troubleshooting easier and streamlined feature transition from development to production. Development Team Capability Before After CICD Commits and builds per day 3 15 Deployments per day 1 25 Average duration of deployment 4 hours 1 hour Average duration from feature completion to release candidate 3 days 4 hours Table 1: Development Team Capacity After CICD Number of backend automated tests 1200 Number of UI automated tests 200 Average time to run backend tests 3 hours Average time to run UI tests 2 hours Average time to run performance tests 1 hours Number of performance metrics collected >100 Table 2: QA Automation Efficiency

Comprehensive metrics: Rather than being limited to only simple metrics, automated collection of performance test data provides a convenient way to store, track, and provide analysis of measured data. Greater transparency and control: Previously, the Client only learned about production delays as code approached its release date. With CICD, stakeholders now have visibility into day-to-day development operations. With this information, they can know the status of every development project. Rather than relying on educated guesses, their decisions are based on accurate information. This gives them greater business agility since they have a much better idea of when they will they be able to act on market opportunities. More efficient testing: The legacy system ran full regression testing to uncover errors, requiring three days to complete. Automated testing is completed in stages, allowing many types of errors to be found much more quickly. For example, configuration errors can be uncovered now in minutes instead of hours. Greater reliability: Because the testing cycle is accelerated through the use of test stages, more cycles can be completed, resulting in more reliable software. Automated test script creation: When software is written, tests to verify it are added to the automated processes. This substantially streamlines test design and execution. Scalability with less complexity and cost: CICD has given our Client the ability to implement more functionality with less risk and improved overall quality. about Grid Dynamics Grid Dynamics is a leading provider of open, scalable, next-generation commerce technology solutions for Tier 1 retail. With in-depth expertise in commerce technologies, wide involvement in the open source community and a modern, global workforce, Grid Dynamics helps great companies gain a sustainable business advantage by implementing and managing solutions in the areas of omnichannel platforms, product search, and continuous delivery. To learn more about Grid Dynamics, find us at www.griddynamics.com or by following us on Twitter @GridDynamics. Partnering with Grid Dynamics allowed our Client to quickly implement Continuous Integration and Continuous Delivery best practices and technologies. With our wide breadth of expertise and managed services like the innovative Agile Software Factory, we were able to provide the most efficient and cost effective longterm solution. Upgrading the development pipeline when migrating to ATG has enabled the Client to substantially improve its teams capacity and efficiency across all future projects as well. All of these benefits, rather than being an additional cost in terms of time and resources, are optimally integrated into the development process. Not only can the Client implement more innovative and more complex functionality than before, it can do so significantly faster, with greater reliability, and at a lower cost. 4600 Bohannon Dr, Suite 220 Menlo Park, California 94025 650-523-5000 sales@griddynamics.com www.griddynamics.com 2014 Grid Dynamics International, Inc. All rights reserved. Other product names mentioned herein may be trademarks or registered trademarks of their respective companies.