 Hello. Welcome to the session on DevOps. Let us see the learning outcome. At the end of this session, students will be able to describe DevOps lifecycle in software development. DevOps is a culture which promotes collaboration between development and operations team to deploy code to production faster in an automated and repeatable way. The word DevOps is a combination of two words development and operations. DevOps helps to increase an organization's speed to deliver applications and services. It allows organizations to serve their customers better and compete more strongly in the market. What is DevOps? In simple words, DevOps is a combination of two words development and operation. Before DevOps, the development and operation team worked in a complete isolation. Testing and deployment were isolated activities done after the design build. Hence, they consumed more time than the actual build cycles. Without using the DevOps, team members are spending a large amount of their time in testing, deploying and designing instead of building the project. Manual code deployment leads to human errors in production. Coding and operation teams have their separate timelines and are not in synchronous causing further delays. There is a demand to increase the rate of the software delivery by business stakeholders. As per the Forester Consulting study, only 17% of the team can use delivery software fast enough. This proves the pain point. Let us compare traditional software waterfall model with DevOps to understand the changes DevOps brings. We assume the application is scheduled to go live in two weeks and coding is 80% done. We assume the application is a fresh launch and the process of buying servers to ship the code has just begun. We can see the difference old process and DevOps. In old process, after placing an order for new servers, the development team works on testing. The operation team works on extensive paperwork as required in enterprises to deploy the infrastructure. In DevOps, after placing an order for a new servers, development and operation team work together on a paperwork to set up the new servers. This result in a better visibility of infrastructure requirement. In old process, the projection about failure, redundancy, data center allocation and storage requirements are skewed as no inputs are available from developers who have a deep knowledge of the application. In DevOps, projection about failure, redundancy, disasters, recovery, data center locations and storage requirements are pretty accurate due to the inputs from the developers. Operation team has no clue on the progress of the development team. Operations team can develop a monitoring plan as per their understanding. So it happens in the old process. But in DevOps, the operation team is completely aware of the progress the developer are making. Operation teams, they interact with the developers and jointly develop a monitoring plan that caters to the IT and business needs. They also use advanced application performance monitoring tools for the development purpose. And in old process, before they go live, the load testing crashes the application, the release is delayed. But in DevOps, before go live, the load testing makes the application a bit slow. The development team quickly fixes the problem and the application is released on time. So these are the differences between the old waterfall model and DevOps. The DevOps allows agile development team to implement continuous integration and continuous delivery. This helps them to launch the products faster into the market. The other important reasons are predictability. DevOps offers significantly lower failure rate of new releases. Reproducibility that versions predictability. DevOps offers significantly lower failure rate of new releases. Reproducibility version, everything so that earlier version can be restored any time. Maintainability effortless process of recovery in the event of a new release crashing or disabling the current system. Time to market, DevOps they reduces the time to market up to 50% through streamlined software delivery. This is particularly the case for digital and mobile applications. Greater quality, DevOps helps the team to provide improved quality of application development as it incorporates infrastructure issues. The next sixth one is reduced risk. DevOps incorporates security aspects in the software delivery lifecycle. It helps in reduction of defects that occurs in the lifecycle. And it reduces the defects across the DevOps lifecycle. Resiliency, the operational state of the software system is more stable, secure and the changes are editable. Cost efficiency, DevOps offers the cost efficiency in the software development process. So which is always an aspiration of IT company's management. Breaks the larger code base into the small pieces. The DevOps is based on the agile programming method. Therefore it allows breaking large code bases into the smaller and manageable chunks. So let us pause the video for a while and try to think and answer the question. So when to adopt the DevOps? Is for which type of application so we can adopt the DevOps? The answer is DevOps should be used for large distributed applications such as e-commerce sites or applications hosted on a cloud platform. Let us see where not to adopt DevOps. It should not be used in a mission critical applications like bank, power and other sensitive data sites such applications need strict access controls on the production environment, a detailed change management policy, access control policy to the data centers. So DevOps is a deep integration between development and operations. Understanding the DevOps is not possible without knowing the development lifecycle. That is the DevOps lifecycle. Here is a brief information about the continuous DevOps lifecycle. The first stage is a development. In this DevOps stage, the development of the software that takes place constantly. In this phase, the entire development process is separated into the small development life cycles. This benefits the DevOps team to speed up the software development and delivery process. Testing the quality assurance team uses tools like Selenium to identify and fix the bugs in the new piece of code. Integration in this stage, a new functionality is integrated with the prevailing code and testing takes place. Continuous development is only possible due to the continuous integration and testing. Deployment in this phase, the deployment process takes place continuously and it is performed in such a manner that any changes made anytime in the code should not affect the functioning of high traffic websites. In the monitoring phase, operation team will take care of the inappropriate system behavior or bugs which are found in the production. So these are the following references that I referred. Thank you.