SOLUTION BRIEF Application Delivery Solutions from CA Technologies Crossing the DevOps Chasm Can improved collaboration and automation between Development and IT Operations deliver business value more rapidly? Jason English CA Application Delivery agility made possible
CA Technologies solutions for DevOps bring your portfolio of IT technology forward in a cadence of faster, more predictable releases, letting you confirm the results of each phase of the software life cycle toward positive business outcomes. 2
Executive Summary Challenge Enterprises that depend heavily on IT functionality to deliver services to customers are constantly driven by market pressures to better develop and manage new software features to meet growing customer demands. Indeed, every organization wants to develop applications faster, and do so with higher performance and quality, while stabilizing IT costs. Development and operations largely remain separated by a big wall step of release, as many activities and components must be aligned on either side over the course of weeks or months to deliver code into production. Even with these delays, new applications in production often contain nagging defects and performance flaws that are costly to find and repair. IT operations may have little visibility into the root causes for a given software defect or performance decline once it is reported in production. This results in costly downtime, additional infrastructure purchases, and extensive rework by development. Opportunity People and process changes are the first steps toward an improved delivery strategy. Encouraging automation and accountability across the extended enterprise of everyone involved in specifying, building, testing and managing applications is a much needed start for collaboration, but there are technologies that can help bridge these gaps in the delivery timeline. Application Delivery Solutions from CA Technologies are specifically designed to facilitate DevOps, which is the collaboration between development and IT operations to bring the portfolio of IT technology and applications forward in a cadence of faster, more predictable releases, and confirm the results of each phase of the software delivery life cycle toward better execution in production with increased cost efficiency. Benefits Our Application Delivery Solutions complement a proven set of core capabilities to help customers realize the connection between agile development and IT operations to shift left innovation and quality in the project timeline. Customers can achieve rapid time-to-deployment for new software features, and better feedback from IT operations for quicker adjustments and improved quality and performance. 3
Section 1: What is DevOps? The DevOps movement encourages a more collaborative and productive relationship between development teams and operations teams. We see DevOps simply as the convergence of the business functions of application development and IT operations to more efficiently release software to meet ever-growing market demands and support positive business outcomes. It is important to note that for DevOps to work correctly, it must be treated as a movement, not a market for a specific vendor s products. DevOps practices should improve people, process and technology in that order. While collaboration and methodology are key, there are still high technology hurdles to overcome before true DevOps can possibly be realized within a larger enterprise. Both application development and IT operations have evolved significantly in the past 20 years, with mature best practices and technologies in place. In our experience working with leading enterprises, we have witnessed several breakthroughs that are precursors for DevOps. Figure A. Development and Operations Precursors Precursors to DevOps are innovations that increase the agility and readiness of the enterprise for application delivery. Why the divide All of these advances over the years have helped application development deliver innovative new software better, faster and cheaper, while IT operations can now realize once unfathomable goals such as six-sigma standards and almost infinitely elastic computing power and capacity in cloud environments. Certainly, we ve done a lot in the software and high technology industries to attack 4
this problem from both sides. So why have these two functions, and the groups that support them, remained in their traditional silos? Priorities: Teams lack agreement on core business goals and metrics when new software functionality is released to production. Both sides want what is best for the business, but both sides end up in turf wars over which approach is more right for the business. Constraints: System availability, budget and resource limitations force difficult tradeoff decisions between speed and stability, features and usability, access and control, responsiveness and proper planning. Constraint problems grow due to the complexity and service-oriented nature of today s enterprise applications, as it becomes harder to control dependencies that are owned by other teams and companies. Timing: Synchronizing all the schedules and environments needed to successfully carry applications through development, test, delivery and change cycles becomes an increasingly complex manual process, as new cloud, SaaS and mobile apps must still be validated against external services, existing legacy systems and distributed data sources during every phase of the software delivery life cycle (SDLC). Why it matters These conflicts can lead to project delays, functional errors, data breaches, performance outages, cost overruns, and other significant problems all of which damage your ability to deliver new business services, and ultimately hurt your reputation. DevOps is often associated closely with agile development methodology, as well as its Ops counterpart, infrastructure automation. By connecting these disciplines with closer collaboration, IT organizations moving toward DevOps seek to change the way applications are produced, to more rapidly deliver positive business outcomes such as increased customer satisfaction and higher profit margins. Section 2: Challenges of DevOps The Big Wall Between Dev and Ops Enterprises that depend heavily on IT functionality to deliver services to customers are constantly driven by market pressures to better develop and manage new software features to meet growing customer demands. Indeed, every organization wants to develop applications faster, and do so with higher performance and quality, while stabilizing IT costs. We seek to bring together disparate software components faster, so they run flawlessly when they are handed over to IT operations. But in application development, we have a very poor track record of realizing this connection. In a 2012 survey of IT executives and managers by analyst firm voke, only 6% of the group responded they were completely confident that new IT applications would be delivered to market on time and work correctly. Development teams are often very deadline driven, and therefore allowed to throw code over the wall to the IT operations team for configuration and management, before truly validating new software components in a realistic environment, which reduces the stability of applications over the long term. 5
At the same time, IT operations may have little visibility into the root causes for a given software defect or performance decline once it is reported in production. They may find that there is a failure happening in production, but not know if it is caused by a defect in the code, or an issue in the network or data center. This results in costly downtime, additional infrastructure purchases, and extensive rework by development. Figure B. DevOps Big Wall Challenge Development and operations largely remain separated by a big wall step of release, as many activities and components must be aligned on either side over the course of weeks or months to deliver code into production. Even with these delays, new applications in production often contain nagging defects and performance flaws that are costly to find and repair. The analog version of DevOps is easy to describe. A CIO, burned too many times by software that is delivered late or crashes in production, becomes tired of asking his VP of Development and the VP of Operations what went wrong, as they tend to blame each other for the failures. So he tells them You two just switch jobs then, and get back to me when you figure it all out. There is no simplistic way for a large enterprise to become agile, given the momentum of all the technology it has in place. In today s world of mobile, cloud, social, composite APIs and servicebased applications, no one vendor or platform technology can claim to be the industry standard. Every major company must deal with highly distributed and heterogeneous application architectures, and take into account both the history and capacity of their own systems, and the capabilities of partner services. 6
Section 3: Crossing the DevOps Chasm Automation and Accountability What can we do to enable DevOps, and deliver new functionality to production in minutes or hours, not days or weeks yet still more reliably manage the application portfolio amidst increasing complexity? We need to find a way to encourage automation and accountability across the extended enterprise of everyone involved in specifying, building, testing and managing applications. If both Dev and Ops teams share the accountability burden of delivering a business outcome, they should naturally start to identify better ways to collaborate. Then and only then, can we start talking about specific tools that may work in the customers current roadmap toward DevOps. When development teams automate the packaging and deployment of each software change and Ops automates the certification and monitoring of each new release, you start to attain a continuous delivery loop. Software updates that used to wait for the next weekly or quarterly build and release train can now get deployed in hours or minutes, as IT Ops can automatically inspect and incorporate the release into production without fear. The automation and accountability of this continuous loop is how DevOps practices and tools accelerate innovation. Figure C. Continuous Delivery 7
Section 4: Application Delivery Solutions from CA Technologies Empower DevOps Realize the Connection Between Development and IT Operations CA Technologies is uniquely positioned to support a DevOps strategy. Rather than dictate a specific integration platform or technology standard, we provide solutions to help IT bridge the most critical gaps in the tool chain of DevOps. New application functionality can be developed, delivered and managed with higher productivity, while leveraging technologies and methodologies that are already in place within the enterprise. Our Application Delivery Solutions complement a proven set of core capabilities to help customers realize the connection between agile development and IT operations to shift left innovation and quality in the project timeline. In other words, customers can achieve rapid time-to-deployment for new software features, and better feedback from IT operations for quicker adjustments and improved quality and performance. Section 5: CA Technologies Solutions CA LISA Application Delivery Solutions for DevOps: The CA LISA Suite brings strategic intelligence and automation to your DevOps efforts, allowing you to bring the once disparate groups of architecture, development, test and performance, and IT operations together to help deliver applications faster, with lower cost and risk. Our CA LISA Suite of products is focussed on three main areas: Service Virtualization: Model and simulate the behavior, data and performance characteristics of constrained systems in the development and testing environment, including network capacity, so each phase of the SDLC can go forward in parallel without impact on the operations of the production system. Release Automation: Automate the complex configuration of software deployments at each step of the software development life cycle, from development, to integration, test and delivery to production with fewer errors and almost no effort. Manage on-demand application development and delivery environments, configured in private or public cloud infrastructures. Data Mining: Gain visibility inside the application architecture, learning from production to automatically generate performance profiles, test scenarios, data and virtual service assets, effectively bridging the gap from IT operations to application development with actionable and current data that teams can use right away. 8
CA Core Capabilities for DevOps These proven core solutions from CA Technologies align IT operations and business goals for DevOps: CA Application Performance Management (CA APM): Proven monitoring of application performance in production, with metrics and data that feed back to development for faster issue acceptance, root cause discovery and adjustment in development to meet service level goals. CA Capacity Manager: This aspect of APM uses observed performance of applications in production to gauge the need for additional capacity whether on premise or cloud based, and assist application architects and developers in building toward an optimized target infrastructure. CA Clarity Project and Portfolio Management (CA PPM): Using CA Clarity PPM, analysts and architects can plan and prioritize the application portfolio to focus efforts around projects that deliver the highest value or return on investment to the business. Predictive adjustments that happen because of visibility into Operations can generate additional value for portfolio development plans going forward. CA Infrastructure Management: Ensures that applications will run at high availability levels with an optimized system infrastructure, which generates higher returns on DevOps investments. CA CloudMinder /CA SiteMinder : Security capabilities govern the appropriate level of access to application code, data and system configurations for teams on both sides of DevOps, mitigating the risk of having multiple parties interfering with each other or affecting sensitive live systems. Figure D. Solutions for Advancing DevOps This general view of DevOps incorporates the CA LISA capabilities of Service Virtualization, Data Mining and Release Automation/Environment Management that enable automation and accountability in the SDLC. Monitoring real-time data from live systems in operations, feedback to strategic collaboration and other core capabilities of CA Technologies solutions provide the groundwork for DevOps. 9
Conclusion In the software delivery life cycle (SDLC), bringing development and IT operations closer together through DevOps practices improves the velocity and quality of interaction between these two groups. Our solutions can be used by customers to accelerate application development and release cycles, and reduce infrastructure and lab costs. CA LISA Application Delivery solutions bridge gaps in the DevOps application delivery tool chain, while CA Technologies core capabilities for DevOps align technologies from the business and production side of IT, while respecting the integration and infrastructure choices of the enterprise. CA Technologies solutions for DevOps bring your portfolio of IT technology forward in a cadence of faster, more predictable releases, letting you confirm the results of each phase of the software life cycle toward positive business outcomes. Learn more about Application Delivery from CA Technologies, visit ca.com/lisa. Join the conversation at ServiceVirtualization.com the community for virtual software development environments! Agility Made Possible: The CA Technologies Advantage CA Technologies (NASDAQ: CA) provides IT management solutions that help customers manage and secure complex IT environments to support agile business services. Organizations leverage CA Technologies software and SaaS solutions to accelerate innovation, transform infrastructure and secure data and identities, from the data center to the cloud. CA Technologies is committed to ensuring our customers achieve their desired outcomes and expected business value through the use of our technology. To learn more about our customer success programs, visit ca.com/ customer-success. For more information about CA Technologies go to ca.com. Copyright 2013 CA. All rights reserved. All trademarks, trade names, service marks and logos referenced herein belong to their respective companies. This document is for your informational purposes only and to the extent permitted by applicable law, CA provides it as is without warranty of any kind, including, without limitation, any implied warranties of merchantability, fitness for a particular purpose, or noninfringement. The information in this document is based upon CA s experiences with the referenced software products in a variety of development and customer environments. Past performance of the software products in such development and customer environments is not indicative of the future performance of such software products in identical, similar or different environments. In no event will CA be liable for any loss or damage, direct or indirect, from the use of this document, including, without limitation, lost profits, business interruption, goodwill or lost data, even if CA is expressly advised in advance of the possibility of such damages. CS3771_0413