® ibm software group © 2008 ibm corporation a new feature providing mainframe development...
TRANSCRIPT
®
IBM Software Group
© 2008 IBM Corporation
A new feature providing mainframe A new feature providing mainframe development flexibilitydevelopment flexibility
David MyersRational Developer for System z
Product Manager
Rational Developer for System z Unit Test FeatureRational Developer for System z Unit Test Feature
IBM Software Group | Rational software
2
Business constraints with mainframe development todayWhich limits the amount of System z production workload coming online
“My development capacity charge-back is consuming my entire budget. I can’t spend on
tools.”
“We don’t have the capital budget to obtain more mainframetest resources for my developers.”
“I can’t even work on Mondays! Production workload kicks me
off.”
“It is difficult for my developers to learn the mainframe.
Operations controls can prevent experimentation by developers..”
“I can only test my batch applications in offline hours. Online apps consume the 9-5
cycles.”
“Operations tell me it will take two months to get my
test system allocated.”
“The Mainframe isn’t cool anymore.”
“I want to try out creating Event Processing and ATOM apps,
but my system isn’t scheduled for a CICS/IMS update till
2012.”
IBM Software Group | Rational software
Mainframe development environment with RDz and ISPFRDz provides relief…but customers want more
Modern IDEs like RDz: Productivity enhancing tooling; more attractive tooling for new developers Ability to offload some development MIPS usage Integration with complete application lifecycle toolsBut challenges remain: Business pressures to manage mainframe MIPS usage for development Unit test delays caused by dependencies on operations team
RDz user RDz user
ISPF user
RDz user
ISPF user
ISPF user
3
IBM Software Group | Rational software4
Sys
tem P
rog
ramm
er
OS/390
Test
OS/390
Test
OS/390
Test
System z
Formal
Test
System zproduction ready code
OS/390
Test
OS/390
Test
OS/390
Test
System z
ProdA
pp
lica
tion
D
ev
elo
pe
r
Wintel
Create
System z
Build
Commonsource code
System zexecutable code
JavaCOBOL
PLI
HighLevellanguage
Today’s RDz AD development cycle
Using tooling like RDz definitely has benefits and still some challenges, especially with testing….
System programming challenges Gap between the Developers and IT Operations staff
Lack of available System programming skills or delays in getting requests completed
Cross platform application development Developers don’t have control of non-Intel systems
• The ability to easily configure and deploy an application to the target runtime for testing can be a very time-consuming task.
The mainframe development environment is perceived as being more expensive on System z than on other platforms• Actually, there is no differentiation of mip costs
between development mips vs test mips vs production mips.
• What does this cost companies?
RationalDeveloper forSystem z
IBM Software Group | Rational software
RDz Unit Test FeatureThe ultimate in modern application development for System z
Liberate developers to rapidly prototype new applications Develop and test System z applications anywhere, anytime! Free up mainframe development MIPS for production capacity Eliminate costly delays by reducing dependencies on operations staff
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.
RDz & ISPF user
ISPF user
RDz user
RDz userRDz user
COBOL, PL/I, C++, Java, EGL, Batch, Assembler, Debug Tool
x86 PC running Linux
RDz user
IMS
z/OS
WAS
DB2
MQ
CICS
5
IBM Software Group | Rational software
Introducing the RDz Unit Test Environment Provides a local test environment for unit testing System z
applications unit test processing on Linux versus mainframe
Can enable companies obtain lower cost for development and unit testing Gives flexibility to Developers/Teams to accomplish unit tests on
the mainframe or off
Provides a local System z development/unit test environment to simplify development investments
Frees up more mainframe capacity to production workload usage
Strengthens development processes through using actual compilers and runtimes in RDz Unit Test• Use compilers for “true” syntax check/compile using
Enterprise COBOL/PLI
• Use co-processors for IMS/CICS/DB2/Custom to cut down on re-implementation efforts on local platform
• Provides flexibility for system programming staff and development
• System programmers can define common test images for development teams for some centralization of control, but still provide developers with ability to make changes
Ap
plicatio
n D
evelop
er
Win/Linux
Create
Build
Commonsource code
System zexecutable code
JavaCOBOL
PLI
HighLevellanguage
Test
Rational Developerfor Systme z and Unit Test Feature
OS/390
Test
OS/390
Test
OS/390
Test
System z
Formal
Test
System zproduction ready code
OS/390
Test
OS/390
Test
OS/390
Test
System z
Prod
Sys
tem P
rog
ramm
er
System z
Build
IBM Software Group | Rational software
RDz Unit Test Offering Description
Unit Test Environment
x86 PC running Linux
System z S/W Stack
Debug Tool
CICS DB2 WebSphere/z IMS
Assembler COBOL C/C++ PL/I z/OS
RDz Unit Test
RTCz Agent RDz Agent
<USB License Key>
The RDz Unit Test Feature consists of: Unit Test Environment (based on zPDT)
Unit Test Environment can provide a System z development platform on a PC
capable of running z/OS provides great flexibility to run a customized
environment
Software stack provides a choice of IBM middleware test environments actual middleware software (including z/OS) actual enterprise compilers no API simulation
RDz and RTCz agents packaged for simplification still need RTC and RDz client license(s) to
activate
7
IBM Software Group | Rational software
The RDz UT environment does NOT support all System z function, such as:• Physical Parallel, ESCON®, FCP, FICON®
and High Performance FICON channels • Coupling links and coupling facilities• List-directed IPL• External Time Reference (ETR) • Server Time Protocol (STP)
RDz Unit Test limitations
• MIDAWs• Logical channel subsystems• HiperSockets™
• Multiple I/O paths per device• Not all CHSC functions are supported• Some IBM System z Crypto Express2• Some IBM 3088 CTC device
RDz UT does not produce an environment equal to a larger System z. • Some aspects of a larger system are unlikely to be met in any very small environment.
• Inability to verify and enhance the scalability of a program • Inability to run application programs that require hundreds of MIPS.
• A UT system is not recommended for very fine-level performance tuning that is sensitive to memory location, cache functions, and pipeline optimization.
• In addition, the UT platform does not nearly have the same quality of service as does a mainframe in terms of availability and connectivity.
Anyone needing any of the function outlined above should consider a traditional System z server.
IBM Software Group | Rational software
How will RDz UT help me? Are you interested in testing your application changes on your PC/off-mainframe?
• RDz Unit Test provides a x86-based environment where you can test z/OS applications on a desktop or server machine
Are your development systems overloaded?
• E.g., My development system is so slow! It takes 1 hour to compile!!
• E.g., There are not enough resources available for development
• RDz Unit Test provides a low cost mechanism to create additional development capacity without mainframe HW upgrades.
Do you have difficulty testing application changes? Is too difficult or takes too much time to make changes to your test environment? Are there too many requests for unique test environments than your ops team can fulfill (catastrophic event testing, system failure, impact analysis, etc)?
• RDz Unit Test provides a separate test environment under the development team’s control allowing quick environment changes to be performed by development. The UT environment can be assigned to a small teams for unique test environments allowing more robust testing
Are you being asked to use fewer MIPS for development
• RDz Unit Test provides a 0-MIPS development environment, allowing additional development resources to be easily allocated
®
IBM Software Group
© 2008 IBM Corporation
How do we improve application How do we improve application quality?quality?
Smarter Testing in the cloudSmarter Testing in the cloud
IBM Software Group | Rational software
z/OS
TestAS
TestAS
TestAS
ApplicationTest
Team
ApplicationTest
Team
ApplicationTest
Team
…
z/OS Testing ArchitectureTesting is organized by application test teams sharing resources with limited automationTesting is organized by application test teams sharing resources with limited automation
TEST LPARTEST LPAR
Test
Data
Test
Data
ApplicationTest
Team
IBM Software Group | Rational software
Vision for the futureLevel playing field between mainframe applications and distributed applications
Automated cloud of z/OS testing environments Readily available
Easy to define, provision, and dispose
Low-cost
Collaborative and Agile Easy to promote work
Continuous integration
Highly automated
Project or release focused Small-scale
Time bounded
Isolated and focused
IBM Software Group | Rational software
z/OS
ApplicationTest
Team
ApplicationTest
Team
ApplicationTest
Team
…
Testing Organized for Flexibility – After RDz UT
z/OS
UT
z/OS
UT
RDz
UT
RDz
UT
RDz
UT
RDz
UT
RDz
UT
RDz
UT
z/OS
Q/AQ/A
Integration T
estIntegration T
est
ProductionProduction
DataData
DataData
DataData
DataData
IBM Software Group | Rational software
PC with 4 – 64 bit Quad Core and 96GB RAM
Linux - RedHat 5.3
1. L03
2. L03
3. L03
zPDT
zPDT
zPDT
z/OS Application Envir 1
z/OS Application Envir 2
z/OS - Basic RDz Unit Test
zPDT Admin User Consoles
DIS
K
RDz
RDz
RDz
LAN
z/OSS
CM
LAN
Large Financial Customer - Implementation
• Requirement• Provide more responsive System z access for application developers • Reduce application software delivery through faster test cycle• Provide each application group their own unit test facility
• RDz-UT Solution• Application developers have use of a uniquely defined RDz UT feature for System z access• RDz UT provides a unique test environment for different application development groups• Supports multiple RDz UT development environments on Intel blade to reduce server hardware• Has reduced application development test time
IBM Software Group | Rational software
Manage z/OS test resources through RQM - Example
IBM Software Group | Rational software
Moving towards low-cost z/OS automated testing Automation takes time and human effort
Provides long term value by building up a test bucket
Test automation can be written as function is added to build up the bucket
Plans should be put in place to build up tests for existing function as well
Integrates well with the use of RQM – start with manual test case steps makes it easier to see what can be automated and allows for building up a library of test scripts.
Start with Automating the interactions done in the manual test cases using RFT or RST
z/OS Application Automated Testing can be divided into several categories in multiple ways:
User Interactive (with multiple user interface technologies)
Service Based testing
Each of these can be broken down farther into:
Online Synchronous, Asynchronous, and Batch.
Batch application testing can be automated with a combination of RQM, RFT and Optim Test Data Management Solution
16
IBM Software Group | Rational software
Running Test Automation Test cases run through RQM
Users can run automated test cases to specified execution environments
Test cases run as a specified build from RTCRTC Build engine can be used to kick off a set of test cases on specified platforms.
Multiple builds can be run to run tests on multiple execution environments
Test cases run at the end of an integration build from RTCTest automation can be integrated into the RTC build, such that after the build completes
the tests are automatically run
This is the best practice for integration builds for at least a set of regression tests
17
IBM Software Group | Rational software
Automated Sub-setting and Testing of Data ResultsOptim - Relational Compare Facility
Compare the test data before and after exercising the application to validate expected test results and identify anomalies automatically and with pinpoint accuracy.
SOURCE 1
SOURCE 2
COMPAREPROCESS
OptimCOMPARE
FILE
OptimCompareREPORT
........................ ........................ ........................ ........................ ........................
Verify Test Results
RQMRQM RFTRFT
IBM Software Group | Rational software
19
Benefits of smarter testing: Traceability and InsightLifecycle traceability helps teams answer the harder questions
Analysts
Which requirements are addressed in this iteration?
Are all of the requirements tested?
What’s the quality of the high priority requirements?
What defects are reported against which requirements?
What requirements am I implementing?
What test uncovered this defect, on which environment and what build?
What changes occurred overnight?
How can I recreate the last version
to do a patch?
How can I standardize when teams use different tools?
Where are the bottlenecksin our processes?
How can I speed up my builds?
What is the quality of the build?What has changed that I need to test?What defects have been addressed since the last build?
Are we ready to release?
What tradeoffs can we make to release on time?
Can we pass an audit?
What defects were resolved in this release?
QualityProfessionalDeveloper
Scrum MasterProduct Owner
ReleaseEngineer
Are build times getting longer or shorter?
IBM Software Group | Rational software
20
Relationship views enable continuous traceability
Find and respond to gaps as they surface through out the project
Tracing through out the project improves regulatory compliance
IBM Software Group | Rational software
21
Plan-item Traceability improves quality and predictability
Developers understand the requirements, test results and test criteria
Testers define and execute tests cases with a clear understanding of requirements and Teams collaborate and clarify the details of
requirements
Everyone's work aligns to the requirements and goals of the customer
Team members have transparency to each others work and the “new reality” is always available
All worked is linked and visible giving the team insight into when all work is done
IBM Software Group | Rational software
22
Defect Collaboration reduces costs and improves quality
4-clicks to submit a defect automatically linked to impacted artifacts
Test results are recorded and linked to test cases, and associated requirements
Test results can be linked to software builds
Everyone has visibility into the defects, their impact, and the action taken to resolve them
Developers can see the exact test failure without having to ask and remediate it
Testers execute tests and submit defects found to RTC
IBM Software Group | Rational software
Top 5 Questions1) What is the maximum number of developers a RDz Unit Test server can support?
This can vary depending on the underlying hardware and workload being tested. Desktop/Laptops can typically support 3-5 users. Low end server class machines can support 15-30 users. At this time, IBM has not provided a detailed analysis of RDz UT server sizing.
2) How can I get test data for use in RDz Unit Test?
Customers can use existing tools like IDCAMS, DB2/IMS utilities, etc. to extract test data and then download it to the RDz Unit Test machine. RDz Unit Test provides a volume duplication utility that can download an entire 3390 data volume as needed into the UT environment. Facilities such as CICS remote function shipping or DB2 Remote Data Access can also be utilized.
3) Can I run other levels/backlevels of the middleware provided?
Yes, based on existing mainframe entitlement the request can be evaluated and some requests may not be approved. Requires special licensing dispensation from IBM, not automatically entitled with purchase of RDz UT.
4) Can I use other IBM tools in the UT environment?
Yes, based on existing mainframe entitlement the request can be evaluated and some requests may not be approved. Requires special licensing dispensation from IBM, not automatically entitled with purchase of RDz UT.
5) Can I run third party software?
Yes, if the third party license allows this. Customers must work with their software vendor to determine licensing considerations.
IBM Software Group | Rational software
Additional Questions
6) Does this require system programming skills? Vanilla configuration ready-to-go out of the box z/OS does require system programming skills to set up the development and/or testing
environments if users want the UT environment to mirror an existing host configuration. You can usually set up one box/image and transfer the configurations to another box easily
(VMWare style).
7) What about security? RACF is installed, but with minimal configuration. The sample configuration guide has suggestions for basic security. Security is a site choice. The ability to customize z/OS on a platform designed for individuals or
small teams may:
– Provide better testing opportunities
– Provide customization for individual productivity gains
– Provide opportunities to learn about z/OS fundamentals
IBM Software Group | Rational software
RDz UT host machine specifications
Underlying Linux hostRed Hat Enterprise Linux 5.3 (RHEL 5.3)
OpenSUSE 10.3, 11.0, and 11.1 Note: IBM does not support installation on other distributions.
Base machine must have:at least 3 GB of real memory:
1 GB is required for the 64-bit Red Hat or openSUSE Linux
1-2 GB is required for the System z operating system, depending on the size of the development system
at least 80 GB free disk space available after Linux Note: RDz UT has been tested on:
Lenovo ThinkPad W Series
IBM System x 3500 M1, 3500 M2, 3650 M1, and 3650 M2
IBM Software Group | Rational software
Summary - Benefits of the RDz Unit Test Feature• Increased application quality using the included IBM runtimes for testing. Provides a high fidelity testing
environment. Functionality and services more accurately reflect the mainframe Using actual z/OS middleware means less retesting and rework is required when moving from the unit test
environment to the quality assurance or pre-production environment. Developers have an isolated test environment to test application changes that can then be easily merged into the
next level of testing
• Deployment of the Unit Test feature on a PC lowers development and unit tests costs and allows MIPS to be reallocated for production use.
• Executes on an x86 Server (see backup charts for details)
• Utilizing zero development MIPS on the production mainframe for initial application change testing
• Frees up additional capacity for new workload while reducing line of business development costs and chargeback.
• Provides developers in a single or shared user configuration with increased flexibility and control of the test environment, allowing them to be more productive and improving application delivery times.
Can be assigned to a single developer in a laptop configuration, or can support small-scale team environments Environments can be tailored to a single developer or team's runtime needs without altering mainframe testing
environments. Can provide a greater level of control for developers to implement quick environment changes without having to
involve production operations staff. Developers can perform their first series of tests and regression testing without worrying about causing unexpected
errors.