SOFTWARE QUALITY MANAGEMENT USING DEVOPS APPROACH
Software development organizations has recognized the importance of delivering high quality software fast, reliable and predictable. However, they often struggle to implement proper approaches and practices of the software delivery processes that leads to issues such as project delays, never-ending development, poorly built applications, production rollout failures and blame games between Development and Operations. Accordingly, in the recent years DevOps has introduced an approach to improve the collaboration between the development and operations teams in order to streamline software engineering processes.
DevOps aims to establish a mindset that focuses on a closer collaboration between teams by setting the common goal to develop high quality software and operate resilient systems. The heart of DevOps are cultural aspects like “good communication flow, cross functional collaboration, shared responsibilities, learning from failures and encouragement of new ideas”. The term DevOps is an abbreviation of development and operations, but it is not limited to those two teams. DevOps enable productivity in the form of reliable deployment frequencies with less failures, which eventually increases the product value relying on established practices and tools.
DevOps is a set of cultural and modern IT practices that enables Development and Operations teams to work and collaborate closely in the same project or organization. This approach is ideally to remove the barrier between both teams that have shown great divide and frictions previously in rolling out new applications.
The benefits of DevOps implementation includes:
a) Projects can have shorter development cycle and faster rollout due to tight collaboration between the teams
b) Higher awareness of what the other team is doing
c) Better mean time to recover in production environment due to continuous feedback
d) Increase overall team efficiencies by adopting the right practices on collaboration and using the right tools as enabler.
DevOps Framework – Software Quality Management defines the practices and technical specifications required to ensure successful adoption of DevOps focusing on quality management for government agencies.
The DevOps Framework covers the following area:
a) The 8 phases of DevOps with their respective processes and specifications
b) Project planning and quality management
c) Software quality management during development and operations phases
d) Key success factors in adopting DevOps approach successfully
This document is to provide guidance on practices for government agencies in adopting DevOps approach.
Section 1 of this document provides an overview of DevOps for a general understanding about DevOps is all about and the need for implementing DevOps. This is useful for the chief executives, managers and anyone in public sector who wants to know what DevOps is.
Section 2 covers the overview of each phase in DevOps cycle, the processes involved for each of this phase and the tools that can be used as an enabler. This section guides the technical teams in understanding the key processes and tools related to DevOps implementation.
Section 3 includes the key factors for successful adoption of DevOps.
DevOps Framework – Software Quality Management covers the overview for the different phases of DevOps and tools to enable DevOps adoption. Additionally, the framework also includes guidelines on technical implementation and key success factors for implementing DevOps, specifically on testing, operations and monitoring. This framework can be implemented by all government agencies in improving quality management using DevOps approach.