# Infosys Whitepaper 
Title: Transforming Quality Assurance Organizations by Enabling Dev”T”Ops 
Author: Infosys Limited 
Format: PDF 1.7 

---

  Page: 1 / 4  

---

 VIEW POINT Abstract Despite the rising popularity of DevOps in enabling agile  development, its potential to transform the testing lifecycle is  largely untapped. This paper examines the importance of DevOps in  today’s business landscape and explains why it should play a greater  role in testing/QA organizations (Dev”T”Ops). It also focuses on  implementation view of DevOps along with its measurable benefits.<|endoftext|>TRANSFORMING QUALITY  ASSURANCE ORGANIZATIONS BY  ENABLING DEV”T”OPS 

---

  Page: 2 / 4  

---

 Development Repository Validations Environment   Provisioning Integration DevOps DevOps – The ‘agile’ catalyst  The rapid pace of change in the present  economy requires organizations to find  new ways to quickly overcome business  and technology challenges. The winning  organizations are those that possess the will  to transform and discover smarter ways of  working. Today, there is an ever-increasing  demand for quality software, which places  greater focus on optimizing all stages  of the software delivery lifecycle (SDLC).  Thus, many players are adopting agile  methodologies to stay relevant and achieve  reliable and predictable business outcomes.  In such a competitive landscape, DevOps  has already become a vital catalyst as the  preferred solution to address technical  challenges such as:  •  Digital Transformation : Omni Channel  Experience, End to End business process  workflow implementation, IOT devices  integrations  •  Cloud Deployment:  •  Rapid applications development  - code publishing, security keys  container/stack/queue creations, full /  half / partial deployments •  On demand virtual machines - auto  scaling, machine images •  Tracking of real time usage – data,  volume, and transactions •  Data : Data Replications, Data  Provisioning, Data Deployment •  APIs: Micro Services Integrations, Service  Virtualizations More importantly, DevOps is expanding  beyond technology and is significantly  impacting people as well as processes.<|endoftext|>DevTOps – Implementing  DevOps in testing DevOps is a set of practices and processes  that foster better collaboration and  communication between developers and  other professionals involved in operations.  Despite its importance in enabling agility  in development lifecycles, DevOps is often  considered as an add-on capability. Many  organizations are unable to tap its full  potential to transform testing lifecycles  that typically consume nearly 30% of their  budgets or schedules.  Principally, DevOps is about building  a collaborative culture, adopting agile  methodologies, exploiting automation  to accelerate innovation, and providing  rapid feedback to achieve common  goals. As such, DevOps mandates a close  involvement with the QA organization.  DevOps in QA is essential for many reasons,  the key among which are Enabling rapid  testing cycles, Ensuring reliable finished  products, Providing predictable business  outcomes, Reducing cost or Improving  SLAs.<|endoftext|>The time has come for enterprises to  introduce DevOps in testing. Enabling  DevTOps will help QA organizations  promote DevOps across the SDLC for  superior benefits. To tap the objectives  such as speed & agility, many choices of  tool sets and point solutions (Open Source  / COTS) are available.<|endoftext|>External Document © 2018 Infosys Limited 

---

  Page: 3 / 4  

---

 Over the past 15 years, test automation  has come a long way. Techniques such  as behavior-driven development (BDD)  and acceptance test-driven development  (ATDD) are enabling the much-needed  shift-left in QA. Further, automation  tools are being deployed intelligently  across the software test lifecycle (STLC),  thereby improving automation coverage  beyond user interfaces (UIs), irrespective  of disparate technologies. This increased  automation coverage provides a great  platform to practice DevTOps.  In a continuous integration (CI) and  continuous delivery (CD) pipeline end  to end automation is a key. Pipe line  consists of build automation, continuous  integration; test automation; and  deployment automation. The pipeline  starts by building the binaries by cloning &  caching of the repository, hooking / polling  the changes, merging the code branches  to create the deliverables. This ensures that  newly developed features are continuously  integrated with the central code base.<|endoftext|>Each time build is done and code is unit  tested. The health of checked-in codes  are informed to the developer’s real time  basis and in case of failure checked-ins are  prohibited. Once the build is successful it  is automatically deployed for the testing to  ensure that it meets all desired exit criteria.  The test automation are extended beyond  the functional to several non-functional  such as security, performance, user  experience or compliance etc. The defects  are automatically reported in the defect  management tools.<|endoftext|>Once the application is verified for the  quality gates it moves for deployment  pipeline. The deployment pipeline is  supported by platform provisioning,  environment validations and system  configuration management & verifications.  The deployment on premise or a hosted  environment such as Amazon Web  Services (AWS) are automated and allows  provisioning or tearing down environments  automatically. The deployment in staged  / production environment happens in  controlled manners where changes get  deployed partial or full. The deployment is  fully automated and executes just in few  minutes Deployment automation ensures  the applications quality and reliability as  well as its future scalability. The deployed  applications are continuously monitored  preventive basis such as applications /  system logs are scanned regularly and  alerts are sent in case of issues. The  infrastructure such as memory / space are  controlled automatically and scaling ups /  downs happens real time.<|endoftext|>Failed Failed Code  Branches Environment Validation Code Compilations Unit Testing Test Cluster / Buckets Test Automation Cloning/  Caching Control  Hooking /  Polling  Control  Build Automation Defect  Automation Deployment Automation Application  Deployment  & Monitoring Functional Test Automation Security Test Automation Performance Test Automation UX Test Automation Repository Management Change Control Failure Reporting  Continuous Integration Pipeline Continuous Delivery Pipeline Platform Provisioning Environment Validations Confgurations Mgmt.<|endoftext|>Apps Log  Monitoring System Log  Monitoring Scaling up / Down Full / partial deployment Version Management Code collections Branch Merging Machine Images External Document © 2018 Infosys Limited 

---

  Page: 4 / 4  

---

 Benefits of DevTOps  Mature IT services organizations are  already reaping the benefits of DevTOps  investments across people, processes  and technologies. In these organizations,  developers and testers collaborate better  to achieve common goals and deliver  top-quality products. DevTOps helps QA  organizations prevent defects rather than  detect them later. In doing so, DevTOps  delivers measurable success and tangible  benefits such as shorter timeframes to  verify and implement changes, reduced  average time taken to recover from  production incidents, reduced failure rates  during production changes and greater  bandwidth for innovation.<|endoftext|>Further, the return on investment in  DevTOps is faster and more significant  compared to other investments made  by QA organizations. The key areas of  improved ROI include lower cost due to  reduced downtime/wait-time, faster time- to-market when launching new features,  improved customer satisfaction and more  opportunities to innovate.<|endoftext|>Conclusion  Top quality and greater speed in  development and operations are the main  drivers for adopting DevOps. DevOps helps  organizations accurately track changes to  source code, manage development, testing  and operational complexities and ensure  self-healing. As new tools and techniques  enable higher testing automation coverage,  there is a need to enable DevOps in testing  as well. However, this can be challenging  for traditional testers as they must shift to  the center of development and operations  activities and contribute to overall product  vision and strategy. Such a change is critical  to improving the cadence of production  releases. QA organizations must focus on  making strategic investments in their own  operations by implementing DevTOps to  enable software development engineers in  test (SDETs) and focus on defect prevention  rather than detection. By adopting DevTOps,  QA teams can reduce production failures,  recover quickly from production incidents,  launch new features faster, and improve  customer satisfaction – all of which improve  ROI. Investing in DevTOps in QA drives  innovation in testing that will continue to  generate returns for the organization.<|endoftext|>
Author  Manish Kumar Pandey ManishK_Pandey@Infosys.com Delivery Manager, IVS Consulting © 2018 Infosys Limited, Bengaluru, India. All Rights Reserved. Infosys believes the information in this document is accurate as of its publication date; such information is subject to change without notice. Infosys  acknowledges the proprietary rights of other companies to the trademarks, product names and such other intellectual property rights mentioned in this document. Except as expressly permitted, neither this  documentation nor any part