DevOps is a set of practices that promote better collaboration and widespread automation of the processes happening between operational and development teams. Though, the DevOps best practices can be extended to other business units as well.
Dev is an abbreviation for developers, QA, Product and other teams involved in shipping the software. Ops is a blanket term for operational professionals ? system engineers, administrators, release and network engineers, security staff and other job titles.
To sum up:
- DevOps is a cultural philosophy that assumes new methods of collaboration between different departments. - DevOps is a set of best practices that help teams build, test and deploy new software faster and with fewer bugs. - DevOps assumes using new tools for automating zero-value business processes and eliminating ineffective, manual routines.
DevOps stimulates the adoption of new practices that are continuous in nature and enable flow, small batch size deliverables and continuous improvement to software development process and ultimately, the product itself. Embracing DevOps means that your organization is ready to create an ongoing, cross-department conversation about strengthening the current business processes, introducing new practices and actively preaching increased collaboration, knowledge sharing and experimentation.
What benefits have you seen or do you anticipate seeing from implement DevOps in your organization : - Increased frequency of deployments of software and services. - Improved quality and performance of our deployment applications. - A reduction in time spent fixing and maintaining applications. - Reduce time-to-market for software and services. - Increased collaboration between departments. - A reduction in spending on development, testing, or operations. - New software or service that would otherwise not be possible or explored. - An increase in revenue - Increased numbers of customers using our software or service - Software or service can be made available across more platforms - Fewer employees working on developing and deploying the software and services
The ultimate goal of DevOps is enabling companies to build more robust environments for their products within a shorter time frame. High-performing DevOps teams, when compared to low-performing peers or those still to embrace the DevOps movement.
For business, that translates to three specific groups of benefits: 1. Technical Benefits: - Less complex project management process; - Faster problem resolution; - Smoother and faster product life cycles with continuous delivery.
2. Cultural Benefits: - Motivated, happier and more productive teams; - Higher employee on the job engagement; - Improved professional development opportunities and cross-department knowledge exchange.
3. Business Benefits: - Faster time-to-market for new products and features; - More stable operating environment, resilient to failure; - Improved cross-department collaboration and communication; - More time to innovate and create new features for customers, rather than focusing on maintenance and fixing known bugs.
Originally, development teams were strictly responsible for building the product only, while the ?Ops? personnel was in charge of dealing with ?whatever will happen next?. Agile software development practices were geared towards reducing this gap and introduced an incremental approach to project planning. Work became prioritized based on business and customer value. Development teams were encouraged to closely collaborate with the customers and other teams. Cross-functional teams became in charge of working over a certain product feature over a fixed period of time.