Develop better, Deliver Faster with DevOps: The CA LISA Product Suite John Boebinger Senior Principal Consultant
Today s reality 2 Copyright 2013 CA. All rights reserved.
Does Any of This Sound Familiar? Speed, Quality and Cost Problems Across Software Lifecycles I spend 70% of my time waiting Performance is lousy in Saskatoon What is IT doing? I need new apps now!! Our test systems are not realistic Mobile User DEVELOPERS I don t have spare capacity TESTERS I m constantly fighting fires Dept User INFRASTRUCTURE OWNERS APPS SUPPORT
Fundamental Conflict Between Dev and Ops
Connecting Dev and Ops Objectives
But What Does DevOps Actually Mean? methods for improving communication, integration, and collaboration between development and operations
CA s perspective on reducing gaps in DevOps COLLABORATIVE PORTFOLIO PLANNING Deploy RELEASE AUTOMATION OPERATIONS MONITORING Build SERVICE VIRTUALIZATION Release AGILE DEVELOP & TEST ENVIRONMENT MANAGEMENT DATA MINING API DEVELOP Continuous Feedback AGILE DEVELOP & TEST ENVIRONMENT MANAGEMENT PLAN BUILD TEST RUN DevOps brings the application portfolio forward to meet market challenges with collaboration and efficiency from design to deployment
Where CA fits Portfolio Management Requirements Design Dev System Test Integration Test UAT Performance Test Deploy Monitor Application Lifecycle Planning & Governance (Clarity) Network Virtualization Release Automation LISA Service Virtualization Pathfinder Datafinder LISA Test Production & Support (APM, ehealth) Platforms for agile composite app dev Requirements Management Test Management Defect Management IDE Source Code Management Build Static Code Analysis Code Security Application Lifecycle Management
DevOps deeper dive 1 Service Virtualization Remove constraints to testing 2 3 Release Automation Bringing consistent and repeatable processes to automating the release of applications Network Virtualization Testing applications in the same network environment the users will see Plan, build, test, run, enterprise-grade innovation at startup speed
Service Virtualization
The Good Old Days 3270 Mainframe
Modern Application Development Architecture UI LAYER GATEWAY COMPOSITE APPLICATIONS ESB INTEGRATION MQ JDBC HTTP SOAP >C BACK-END Mainframe Data Legacy External
Challenge: Constraints I can t do anything until I have everything... and I never have everything! Firewall changes needed (which takes 30 days) Well, it s designed, but not yet built Data comes from a different department ESB A couple of pieces INTEGRATION may be there You can touch the M/F for two hours Sunday at 3:00 AM MQ JDBC HTTP SOAP Mainframe Data Legacy External >C 3 rd Party, you get charged, not always available
It gets complicated Need an environment to support the current version > C Need an environment to support the version shipping this month > C Need an environment to support the version shipping later this quarter > C
Band aid solution: Stubs Had to have something So we wrote stubs But stubs are wasted coding Difficult to write well Expensive to maintain Limited functionality Not particularly good for performance testing Developers don t write their own compilers Why should they be writing and maintaining stubs? Here a stub ESB There a stub INTEGRATION MQ JDBC HTTP SOAP Mainframe Data Legacy External >C Everywhere a stub stub
Solution: LISA Virtual Services Virtual Test Environments (VSE) simulate the behavior, data, and performance characteristics of unavailable or incomplete systems Virtualize nearly any IT Asset No more stubs and mocks VSE behaves like the real thing Eliminate conflicts over test data ESB Available 24/7 MQ JDBC HTTP SOAP Mainframe Data Legacy External >C No 3 rd party transaction or service fees
What can I virtualize?
LISA Service Virtualization: How does it work? CAPTURE PROCESS MODEL Structured Conversations Observe Understand Protocol-Level Recorded traffic Design specs Sample RR pairs Transaction logs Manual Creation Byte-Code Heuristics Analytics Algorithms State Sophisticated Behavior Dynamic Properties (Dates, values, etc.) Scenario Support Test Data Sanitation Compiled Model vs. Stubs Automatic Healing
Recording a LISA Virtual Service (Capture) Existing Environment Load Generators Exercise the SUT LISA VSE Request Request Response Response Request Response ESB MQ JDBC HTTP SOAP >C Mainframe Data Legacy External
2 Delivery Schedules Weeks Planned Actual Project Schedule Development Unit Test Integrated System Integrated Test System Test 3 rd Party System Test Loss of 2 to 4 weeks behind schedule based on historical data Average of 54% of new functionality testing done instead of 75% planned Backend Data Refresh Code Refresh System Integration System Test Integration Test System Test Functional Test 1 st Pass: 75% 54% Functional Test 2 nd Pass: 100% Regression Test: 75% Regression Test: 100% Load and Performance Environment Prep Load and Performance Test User Acceptance Testing Production
2 Delivery Schedules Weeks LISA Value Release Development Unit Test Integrated System Test 44% Savings 3 rd Party System Test 388% more defects found Backend Data Refresh Code Refresh System Integration Test 60% Savings System Test System Test Functional Functional Test Test 1 Pass: 1 st Pass: 75% 75% Regression Test: Test: 75% 75% Functional Test 2 nd Pass: 100% Regression Test: 100% 35% Time Savings 40% More Coverage Load and Performance Environment Prep Load and Performance Test User Acceptance Testing Compressed Testing Schedule by 3 Weeks Production
Our Customers
Release Automation
What does it take to make an application? You need the customer application itself Java, HTML files, database, etc. You need the base software WebSphere, Web Server, Database You need an operating system (Windows, Linux, AIX, etc.) You need a server (This stuff has to run somewhere) Application Application Base Software Operating System Server 24 Provided Under NDA. Copyright 2013 CA. All rights reserved.
How does CA Technologies make all this happen? CA LISA Release Automation can deliver the components of the application CA Server Automation installs the base application software (WebSphere, etc.) Application Application Base Software CA Server Automation provisions the Operating System Operating System Server can be physical, virtual, or cloud Server 25 Provided Under NDA. Copyright 2013 CA. All rights reserved.
How often are changes needed? Application components may get updated weekly (or even more often) Application Base Software updated about every two to four years (Patches needed) Operating systems installed on new servers Patches do need to be maintained Servers typically replaced every three to six years Application Application Base Software Operating System Server This is where you need Release Automation 26 Provided Under NDA. Copyright 2013 CA. All rights reserved.
What makes up a typical application? HTML Used to display information Goes on a Web Server Java or.net Used for the application rules Goes on an Application Server Database Goes on the Database Server 27 Provided Under NDA. Copyright 2013 CA. All rights reserved.
How are these issues being handled today? Could be done manually with mass effort Could be done with ugly, barely maintainable scripts The point is that a purpose built, automated tool can do this better, faster, and at less cost 28 October 11, 2013 Copyright 2013 CA. All rights reserved.
Key Achievements application delivery maturity model Ongoing Improvement Optimization Continuous End to End Delivery Automation Standardization Process Manual Scripting Heroes Level 1 Level 2 Level 3 Level 4 Level 5 Delivery Levels 29 October 11, 2013 Copyright 2013 CA. All rights reserved.
level 3 application release automation Zero Touch Release Deployment Deployment Manifest 30 October 11, 2013 Copyright 2013 CA. All rights reserved.
level 4 continuous application delivery Continuous Integration Build Automation Artifact Repository Change Mgmt. Test Continuous Application Delivery Config Mgmt. Automation CA LISA Release Automation Infra Prov DEV TEST UAT PROD 31 October 11, 2013 Copyright 2013 CA. All rights reserved.
Bringing It All Together Source Control Artifact Service Desk repository Dev Mgr Application Delivery CA LISA Release Automation Test Automation Test Prod Service Virtualization
our customers experience Company Application Release Business Value Before/After Multinational Grocer Online Grocery and Wine 2.5 Days 20 Minutes Streamlined International Updates of online grocery Apps 250K / a month Financial Institution Fix Income IB division 12 Days 1.5 Minutes 8.6M annually implement globally Oil and Gas Oil drilling platform application 3 Days 4 Minutes 380K / a month Financial Rating Business information 90minutes 3minutes $1.3M annually Online Gambling On Line Gambling 2 Days 3 Minutes $2.3M annually implement globally Global Retailer Online store 2 Days 12 Minutes $1.2M annually 33 October 11, 2013 Copyright 2013 CA. All rights reserved.
Service Virtualization For Networks
Emulated Networks CA SVN completes the end to end CA SVN creates the production network conditions between: Users, Application Infrastructure, and Services; all prior to production. Load Generation Emulated Networks Firewall Composite Application Application Under Test App Services Distributed Services Functional Testing 35 October 11, 2013 Copyright 2013 CA. All rights reserved.
LISA SVN: Component Level Specification DISCOVER EMULATE OPTIMIZE Capture of production network conditions like bandwidth, latency, jitter and packet loss Testing of applications with virtualized production network conditions Analysis & optimization of performance before deployment, before poor performance affects users CA LISA SVN
application complexity increases failure The average application connects to 38 discreet services Customers 3 rd Party Cloud Services Private or Public Cloud Services Major ISP Load Balancers Web Servers App Servers DB Servers Mainframe Employees Storage Browsers & Devices Mobile Carriers & ISPs Content Delivery Networks Web Services Mobile Components 37
Analyze and Optimize 3G Mobile Poor LISA VSE without Network Emulation
Mobile User experiences more delays, why?
CA LISA SV4N Overview Network virtualization for software testing Capture production network conditions Test applications on a virtualized network in the test environment Analyze and optimize application performance Average customer ROI < 3 months Average customer eliminates 25% of in-production performance incidents per year Ensure performance before deployment and before poor performance affects your customers.
CA LISA and DevOps Service Virtualization removes constraints and shifts the development cycle to the left Release Automation reduces errors and increases the speed of deployment Network Virtualization creates a real world network performance environment Applications delivered faster with higher quality and at lower cost Copyright 2013 CA. All rights reserved.