Hoe zet je artificial intelligence (AI) in om ontwikkelprocessen te versnellen? Deepa Mamtani, Almira Pillay and Tijana Nikolic schreven in aanloop naar de QX Day op 1 oktober een (Engelstalige) blog over de ontwikkelde oplossing ‘Code to Production’ (C2P).
Every developer and product owner knows that building quality software is not an easy task. When you add the pressure of increasing and faster deployments, this task gets substantially more difficult. The hard truth is that the current state of the market requires companies to produce quality software and to continuously be updating it. By leveraging the power of AI in your development process, your workflow can become much more efficient, manageable and smarter. Since one of Sogeti’s core competencies is Quality Assurance and Testing, the Testing & AI Team have developed a solution to help you take control of your software delivery and make it continuous with the Code to Production (C2P) smart pipeline. To understand what this entails, we need to explain what DevOps is and the automated processes that enable the DevOps workflow.
DevOps – focusing on faster delivery
DevOps is a way of working that brings together developers and operations teams in the entire service cycle, ensuring efficient coordination of teams and fast product delivery. Bringing developers and operations teams together reduces time spent on rework and unplanned work by 22%, with a focus on reducing communication time between teams and support ticket time (Source: State of DevOps 2018 Report, Puppet). By implementing DevOps, no longer will your team members feel like they are miles away from their coworkers, buried in a pile of code. Multidisciplinary teams working on projects enable a multilevel approach to problem solving, which makes delivery significantly faster while the quality of the software is enhanced. To conclude, DevOps is a union of people, processes and tools that enable continuous delivery of software to the end user. This is enabled by utilizing various tools in the market, which can make your development secure, traceable and reliable. Most notably, this is reached through the implementation of CI/CD pipelines.
CI/CD pipelines – focusing on ‘continuous’
As we are witnessing a shift in IT, from an engineering approach to a manufacturing approach, there are two things you need to do - take (version) control and make your delivery continuous. Luckily, CI/CD pipelines are here to make these tasks easier. What does CI/CD stand for? Let’s break it down. The CD in CI/CD stands for Continuous Delivery and focuses on reliable, repeated processes that enable companies to deliver quality software to the user. To ensure that your delivery is continuous, you also need to think about the efficiency of your integration. The CI in CI/CD stands for Continuous Integration. It focuses on validation of the code changes made by a developer into a build, to ensure proper integration of code to the main product. Finally, automated testing is very important in the complete pipeline, as it ensures your build is successful and can be automatically released. This substantially reduces the number of bugs in production as well as the testing cost, as the CI pipeline can run hundreds of tests in just seconds.
Where does testing fit in the DevOps framework?
Since DevOps is all about having continuous and increasing number of deployments, testing needs to be continuous as well to keep up with and ensure quality production. Continuous testing, however, doesn’t have to mean more testing – the focus is on working smarter, not harder. Sogeti’s Code to Production (C2P) smart pipeline encompasses all the above and leverages AI to accelerate your software delivery, automate your releases and enable continuous business planning, testing and monitoring of the entire service cycle. C2P is an intelligent pipeline that streamlines multiple data sources in real-time; from your version control data to your testing and defect data. This data serves as the input for advanced machine learning models to enable continuous testing, such as test recommendation engines and code risk models. The pipeline ensures traceability all the way from a code commit to a defect. The new workflow enabled by C2P will prioritise and run the necessary automated test cases as soon as a developer makes changes to the code. In turn, C2P acts as an automated release orchestration tool and will result in a more efficient and manageable testing and development process.
Kom naar de QX Day op 1 oktober voor de volledige presentatie van Deepa Mamtani, Almira Pillay en Tijana Nicolic.