A Data Science Central Community
Pursuing DevOps ROI (return on investment) is compelling for organizations that adopt this approach to agile development practices. With the evolution toward cloud and mobile apps that run on converged infrastructures companies that implement DevOps processes can realize significant benefits in the three components of ROI. These include reduced costs, enhanced productivity and faster time to revenue. DevOps can also help mitigate risks, such as customer loss due to poor user experience, operational inefficiencies, and non-compliance with GRC (governance, regulatory, compliance) mandates.
In contrast, enterprises with legacy systems that adhere to conventional development and operations processes jeopardize being overcome by modern applications and the new computing architectures they require. Legacy systems cannot accommodate the loosely coupled, frequently-changing, stateless nature of the many components that comprise composite apps. They cannot scale adequately nor meet the more demanding latency and performance requirements of these apps. By continuing to do things the old way, these organizations risk competitive disadvantage in the marketplace and in returns to their investors.
DevOps is Strategic
DevOps should be viewed as a strategic initiative that drives business growth and builds value for all stakeholders. As more organizations recognize this, they pursue DevOps ROI.
Application availability and reliability are the ultimate measures of IT success. DevOps applies agile and lean practices throughout the software lifecycle to achieve high-quality application development and faster deployment. DevOps also mitigates rising complexity caused by new computing trends such as virtualization, cloud and mobility through increased automation.
The collateral impact on the enterprise product life cycle is profound: companies accelerate the time-to-market of their products and services, creating sustainable efficiencies and value. These efficiencies drive ROI – both within IT and at the corporate level.
The more significant benefits of DevOps include:
Legions of users have become accustomed to engaging with SaaS and other cloud-based apps through their work and social networking. And they are increasingly accessing these apps with a mobile device. The required agility to deliver these apps and services makes high-availability, performance reliability and user experience paramount.
Accelerating time to value is predicated on a combination of culture, practices and automated processes that drive efficiency, availability and reliability from software creation to production. When DevOps is adopted as a strategic business initiative, the holy grain of continuous operations becomes more attainable.
The most effective transformations to DevOps take a holistic approach. This means including all application constituents, including business owners, line managers, development, operations and quality assurance teams. Constituents may also extend to security and compliance teams. Cross-functional inputs for systems requirements and software functionality creates an ongoing feedback loop that promotes engagement and helps alleviate complexity.
Hence, the lateral benefits of DevOps are improved communications and collaboration across the organization. Closer collaboration between developer, operations and quality assurance teams follows a “done once, done right” approach.
Application testing should emulate a production system environment. DevOps teams can then discover dependencies, learn how the application will perform when it goes “live”, and make adjustments to the compute environment accordingly. With practice and automation, these processes become iterative and repeatable, allowing for more consistent development, testing and deployment.
By moving the testing forward in the process, performance monitoring and analytics also comes earlier in the life cycle. Rather than waiting for post-production performance data to analyze what went wrong, DevOps can build performance analytics models that can anticipate operational and quality problems before deployment.
These metrics can then be used to establish key performance indicators (KPIs) against which the production environment can be measured. As production metrics more consistently adhere to KPIs, application performance and user experience improves. Sharing the data with business teams at this stage accelerates the feedback loop and allows for adjustments to be made faster and with less stress.
Continuous integration enables better collaboration and agility to improve code validation, which reduces risks. This drives continuous delivery, which facilitates smaller releases to occur more frequently. Automated processes make for higher quality releases that are easier to manage once they are in production. While continuous delivery is most often associated with DevOps, it is the end of a series of processes that go into application launch.
Treating infrastructure configurations as code allows DevOps teams to manage provisioning on the fly in software, setting the stage for the eventual migration toward entirely software-defined environments. Most operations teams have scripting experience. This makes infrastructure-as-a-code technologies relatively easy to learn since they are mostly written in languages such as Ruby.
As big data and the Internet of Things emerge, DevOps becomes even more important. In a software-defined environment, the precision of the software and services controlling networks, sensors and devices is critical as everything becomes inter-connected.
The more available and reliable software is the greater the insights from operational intelligence. The greater the insights, the better the decision outcomes and ROI benefits to the organization. This makes pursuing DevOps ROI compelling to all organizations.