DevOps is a software development methodology which integrates all the functions of software development from start to finish within the same cycle. An ideal DevOps cycle starts from writing code, building and deploying the files in the QA environment, executing the test cases up to deploying the application in the production environment.
Businesses today have a strong sense of urgency. They are now driven by design thinking along with innovative software engineering practices. Software projects today prefer to have a continuous delivery practice. DevOps is based on 'Test First' concept and follows a 'Fail Fast, Fail Often' approach. DevOps implements testing is a continuous and a more extensive process. It allows cohesiveness among the various teams and automates everything possible. Some of the benefits of DevOps are:
- Intelligent Test Automation
- Continuous Test Augmentation
- Improved Regression
The fundamental element in DevOps is that the responsibility of attaining the highest quality is shared. All teams are completely involved at all times and quality is executed throughout all the phases of the development. Unlike traditional development methods, here testing is not located at the end of all the processes being controlled by a separate group. In fact, it is everyone's concern and decisions on the amount and extent of testing required is made throughout the entire development lifecycle.
The DevOps methodology of software development addresses the following challenges in testing:
- It simplifies the virtualization of the test environment, automated deployment and management of configuration along with data refresh and maintenance.
- It is centered around test first, test driven development. These concepts help in achieving improved continuous integration, automation and verification.
Changes in QA process:
- DevOps makes the QA align their efforts to ensure that all the test cases are automated and cover near 100% of the code.
- The QA also needs to make sure that the test environments are standardized and deployments are automated.
- All the pre and post testing tasks are automated and aligned with continuous integration cycle.
DevOps merges the role of the developer, operations and the QA, either by pairing or by creating a role that merges development, testing and operations all into one job role. Theoretically, this implies that if a person writes a code script, then he requires to test as well as implement it. Not only does this save time, but also creates a support line in the long run. Each team member here contributes to the success of the customer. This gives a greater advantage of communicating with the entire team right from the start to the finish
Conclusion:
Waterfall gave way to the V model. Then came Agile and DevOps appears to be the future. DevOps is based on a automating whatever and whenever possible, but it is left to the senses of the team to decide the saturation level.
Source : articlesbase.com
0 comments:
Post a Comment