agile development on system z
TRANSCRIPT
Flemming PetersenDevOps for Enterprise Systems, IBM Systems Nordic
November 2015
Agile Development on System Z
© 2015 IBM Corporation 2
Agenda
Development on the mainframe is sometimes perceived as old and slow.
We think this is wrong, but many organization do experience that
mainframe development is a bottleneck in the overall delivery lifecycle
So why is it so? Can we learn the dinosaur to dance?
DevOps for Enterprise Systems will address this, but how to get there?
© 2015 IBM Corporation 3
Disruptive Buzz – Fun facts
• Just 10 years ago….
• How would your bank give you peer to peer mobile
payments? Or would your search engine?
• Would one of the largest providers of accommodation,
be providing hotel rooms? Or private homes?
• Would there be an app for anything? Or would you play
Snake on your Ericsson or Nokia phone?
Source: Wikipedia. The Forbes Global 2000 is an annual ranking of the top 2000 public companies in the world by Forbes magazine.
The ranking is based on a mix of four metrics: sales, profit, assets and market value. The list has been published since 2003.
© 2015 IBM Corporation 4
How does it affect mainframe developer
Plan Develop Build Test Deploy Production
Rapid iterations
Systems of Engagement
Plan Develop Build Test Deploy Production
Slower iterations
Systems of Record
AlignmentContinuous synchronization
and planning
Continuous testing
Continuous deployment
and monitoringApplications and teams move at variable speed
© 2015 IBM Corporation 5
So are you up for learning new tricks?
It is not just a matter of getting an editor which is faster than ISPF
It is about changing our practices to adopt new tricks (become agile), so
we can deliver business functionality to the market faster
- Adopt to Agile
- Planning
- SCM
- Rethink your mainframe testing
- Environments
- Automation
© 2015 IBM Corporation 6
IBM’s DevOps approach
Lean & Agile are at the heart of
IBM’s DevOps approach
Key concept:
MVP:
Minimum
Viable
Product
Reduce work
Eliminate
bottlenecks
& waste
Fast response
times
Small batch
sizes
Continuous
feedback
LEAN AGILE
Efficiency Effectiveness
© 2015 IBM Corporation 7
Evolution to Continuous Delivery
DevOps is based on
Agile Principles
LEAN©
Continuous
User Feedback
& Optimization
Collaborative
Development
Continuous
Release and
Deployment
Continuous
Monitoring
Continuous
Business Planning
Continuous
Testing
Operate Develop/
Test
Deploy
Plan
DevOpsContinuous
Feedback
Develop Build Deploy Test Provision
© 2015 IBM Corporation 8
The Shift Left Solution… Test in small incremental batches Build Test UAT
Build Test UAT
Build Test UAT
App B
App A
App C
Integrated
Pre-prod
Production
Status
I/F
I/F
What does this mean for the mainframe?
© 2015 IBM Corporation 10
Rational Developer for System Z as the modern IDE for productive development of cross-platform applications
written in COBOL, PL/I, HLASM, Java, EGL or C/C++ in System z CICS, IMS, DB2, Batch applications
Graphical access to typical System z sub-system functionality in z/OS, CICS, IMS, DB2, WAS Integration with
PD-Tools Fault AnalyzerFile ManagerDebug Tool
Rational Asset Analyzer for Application Understanding
and Impact Analysis
Team Concert for Agile planning and Source Management
Modern Mainframe DevelopmentImplement a modern Development Workbench is still a good idea
© 2015 IBM Corporation 11
Dev/Test SystemTest Prod
Serialization
Account
ProductCustomer
Lack of reliable and flexible test environments cause serialization o Dev/Test not stable as many projects are
developing at the same time
o Dev/Test data is of poor quality
o To perform a consistent test, SystemTest is
booked for projects
o Only 1 project can be in the pipeline
o - Or we accept poor quality SystemTest
o - And automated test is very hard
© 2015 IBM Corporation 12
Rational Development and Test Environment (RD&T) for IBM System z
• Reduce System z development costs with off host development and test
"RD&T provides us with the ability to try development approaches that may introduce instability to our normal environment with none of the associated risks. It provides an environment where we can quickly start a new project without waiting for setup delays inherent in our day-to-day processes.”ad
RDz & ISPF
RDz
© 2015 IBM Corporation 13
Deploy what is ready, virtualize the rest
Test Environments
Push button
deployments to
test or production
Deploy what is
ready, virtualize
the rest
z/OS application
testing on
emulated z System
hardware
Continuously test
in production-like
env.
Simultaneously test across
multiple test stages
Dev QA
DatabasesThird-party
ServicesMainframe
Dynamic
Infrastructure
Virtual components
Integrated
with
© 2015 IBM Corporation 14
SCM
UrbanCode Deploy Integrate Systems of Engagement with Systems of Record
IBM UrbanCode
Deploy for z/OS
• Standardize on a single tool to manage and orchestrate heterogeneous application deployments
• Manage configurations and automatically provision environments for faster testing and promotion of
changes
• Improve visibility and control of “what is deployed where” with the ability rollback to any prior version at
ease
• Remove dependency on rigid and error prone release and deployment processes
IBM Rational
Test Workbench
RD&T Test Environment
Rational Developer
for System Z
ISPF Green
Screen
© 2015 IBM Corporation 15
A few examples in action
Editor, navigation, Cobol rules
• Click here for video
Testing and Code Coverage
• Click here for video
© 2015 IBM Corporation 16
What’s New in DevOps for Enterprise Systems?
• New Compilers to optimize performance on z13
• Enterprise COBOL for z/OS V5.2, Enterprise PL/I for z/OS
v4.5, z/OS XL C/C++ V2R1M1, XL C/C++ for Linux on z
Systems V1.1
• Rational Developer on z
• Improvements in zUnit Automated Unit Testing Framework
for z/OS with Headless code review and code coverage
• With integrated Debugger, Multiple users can run and debug
the same CICS transaction on the same region at the same
time
• Rational Development & Test
• Exploit added zEnterprise capability (Parallel Sysplex)
• New, flexible licensing to support automated testing and
variable usage patterns
• Rational Test Workbench 8.7
• Virtualize DB2 on z and PL/1 support
• UrbanCode Deploy
• Simplified z/OS application deployment by providing OOTB
support to automate JCL submission and monitoring
• Plugins for CICS, DB2, and IMS to enable use of predefined
actions/steps during the deployment process
• Rational Team Concert
• New component history, change history views, and new
search command to find strings in native ISPF
• Upgraded integration with UC – RTC for z customers to
generate deployment packages for UC
Secure Managed Cloud Services – RD&T and CLM
© 2015 IBM Corporation 17
So how could we do this on the mainframe?• Modernize the Developer Workbench
• Get very flexible test environments, which can be used by projects for “small scale testing” off the mainframe
• Virtualize backend/3rd party services, so we can test without access to “everything”
• Get better test data management, or virtualize your database with “mockup data”
• Run small scale tests of modules (with zUnit) and Components (with Rational Test Workbench)
• Until we have complete coverage of automated test scripts, use RDz Code Coverage to help the developers perform “just enough testing”.
© 2015 IBM Corporation 18
Revitalize Skills! Use modern tools for multiplatform development
Boost developer productivity
Systems of Engagement
Systems of Record
Collaborative Development
• Standardize on common Eclipse-based IDEs for all types of development
• Refactor and extend back-end services and data for optimal mobile
experience
• Use code coverage, code governance, and unit test support for improved
quality
• Leverage rich program understanding and control flow analysis for
onboarding
• Exploit fully integrated source level debugger for increased productivity
• Interactive debugging of your applications
• Root cause analysis of your application failures (abends)
• Management of your application data
• Performance analysis of your applications
• Quality assurance of your applications
Flemming PetersenDevOps for Enterprise Systems, IBM Systems Nordic
November 2015
Agile Development on System Z