Delivering software is complex. Systems being developed are made up of multiple components, which in turn interact with other systems, services, application servers, data sources and invocations of 3rd party systems. In an Enterprise this complexity is further enhanced by the cross-platform nature of the infrastructure typical enterprises have. While the customers may be interacting with Systems of Engagement using Mobile and Web Apps, the core capabilities of the enterprise that the customers access are in Systems of Record that are running on large datacenters and more than likely Mainframe systems. Keeping these complex systems up and running and constantly updated with the latest capabilities is a task that requires constant coordination between the lines of business, various cross-platform development, QA and operations teams.
DevOps addresses these development and deployment challenges. The goal of DevOps is to align Dev and Ops by introducing a set of principles and practices such as continuous integration and continuous delivery. Cross-platform enterprise Systems take the need for these practices up a level due to their inherent complexity and distributed nature. Such systems need even more care in applying DevOps principles as there are multiple platforms to be targeted, in a coordinated manner, each with its own requirements, quirks, and nuanced needs. This talk takes a look at the DevOps challenges specific to Cross-platform Enterprise Systems and present Best Practices to address them.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
IBM, the IBM logo, ibm.com,WebSphere, Rational, and IBM Mobile Enterrise are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.
Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates.
The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are
provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
Multi-tier mobile apps present specific challenges to DevOps
Middle Tier ServerClient Tier Devices Back-end Data & Services
Mobile-specific challenges: Lots of device targets Provisioning rules
and artifacts Curated App Stores Dependent upon
backend service versions
The Mobile-specific challenge in DevOps is mainly:1. Dealing with the specific issues in the Mobile Client tier2. And subsequently coordinating separate pipelines for
each tier: Mobile Client Middleware Back-end data and services
DevOps for MobileAccelerate Delivery focusing on quality and user experience
One-star ratings kill companies. A fickle user base with many competing options makes reacting to feedback essential. Continuous Feedback and Optimization using Tealeaf helps monitor user sentiment and usage, letting teams react to poor feedback before it spirals
• A Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• An Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• An Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• An Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
• An Level set on DevOps• IBM’s view of DevOps• DevOps and the Enterprise• DevOps for Mobile Apps• DevOps for the Mainframe• Adopting DevOps in The Enterprise
/* Create a bind control statement as a single long line. Then *//* queue that into a FIFO stack */ DB2_Line = "BIND PACKAGE("PACKAGE")" ||, " LIBRARY('"LIBRARY"')" ||, " MEMBER("MEMBER")" ||, " OWNER("OWNER")" ||, " ACTION("ACTION")" ||, " VALIDATE("VALIDATE")" ||, " ISOLATION("ISOLATION")" ||, " EXPLAIN("EXPLAIN")" ||, " QUALIFIER("QUALIFIER")"
/* Write the bind control statement to the data queue and execute */ /* DB2I to perform the bind. */
Drive down cost by automating manual tasks, eliminating wait-time and rework
Speed time to market by increasing the frequency of software delivery
Reduce risk through increased compliance of application deployments.
43
Deployment
Complements our DevOps solution:
Deliver a differentiated and engaging customer experience by reducing time to customer feedback
Quicker time-to-value of software-based innovation with improved predictability and success
Increased capacity to innovate by reducing waste and rework in order to shift resources to high-value activities
Complementing our DevOps solution, combining IBM and UrbanCode, will enable clients to more rapidly deliver mobile, cloud, big data analytics and traditional applications.
Note: This Program is licensed only for development and test of applications that run on IBM z/OS. The Program may not be used to run production workloads of any kind, nor more robust development workloads including without limitation production module builds, pre-production testing, stress testing, or performance testing.
DevOps Lifecycle
Continuous Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
IBM Continuous Integration Solutions
for System Z
IBM Rational Test Workbench
Rational Development and Test Environment for System z Continuous build and test of distributed systems
What is Service Simulation and Test Virtualization?
Test Virtualization enables to create “virtual services”:
–Virtual Services simulate the behavior of an entire application or system during testing
–Virtual Services can run on commodity hardware, private cloud, public cloud
–Each developer, tester can easily have their own test environment
–Developer and testers continue to use their testing tools (Manual, Web performance, UI test automation)
48
Ca
ptu
re & M
od
el
Ca
ptu
re & M
od
el
System dependencies are a key challenge in setting up test environments:Unavailable/inaccessible: Testing is constrained due to production schedules, security restrictions, contention between teams, or because they are still under development Costly 3rd party access fees: Developing or testing against Cloud-based or other shared services can result in costly usage feesImpractical hardware-based virtualization: Systems are either too difficult (mainframes) or remote (third-party services) to replicate via traditional hardware-based virtualization approaches
• Automate provisioning of environments as part of the end-to-end delivery process – Establish and automate deployment of Application Blueprint with resource templates imported from Cloud patterns.
• Deploy early and often to ensure high quality and faster releases using repeatable, reliable, and managed automation - Seamless process flow for incremental, full stack provisioning and application deployment automation