rexx for cics - university of floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · rexx for...

46
REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28 (Thur.), 2008, 1:30 PM Disney's Coronado Springs Resort Coronado C http://nersp.cns.ufl.edu/~sfware/share110/s8335sfw.pdf (Updated: 01-25-2008)

Upload: vocong

Post on 14-Mar-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

REXX for CICS"Get more CICS with REXX"

Steve Ware, UF

Session 8335, SHARE 110 February 28 (Thur.), 2008, 1:30 PM Disney's Coronado Springs Resort

Coronado Chttp://nersp.cns.ufl.edu/~sfware/share110/s8335sfw.pdf (Updated: 01-25-2008)

Page 2: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

2Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Abstract

The use of the REXX language in CICS offers the opportunity to further exploit REXX and CICS by providing a powerful structured language for rapid application prototyping and development in the CICS transaction processing environment.

In this session, one of the early users of REXX for CICS will relate his experiences with emphasis on implementation, application development, security and performance.

This session is eligible for the SHARE REXX Certificate.

Page 3: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

3Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Disclaimer

Standard disclaimers apply. Any opinions expressed are the opinion of the author only. Any mentioned brand names, trademarks, registered trademarks, service marks, etc., are the exclusive property of their owners. No warranties are either expressed or implied, your mileage may vary, etc.

Page 4: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

4Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Agenda/Topics

• CICS the Tires (with REXX)

• Introduction

• Implementation

• Application Development

• Security

• Performance

• Summary and Q&A

• Appendix and Additional Information

Page 5: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

5Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (with REXX)

• Sign-on to CICS (using our local sign-on application).

Page 6: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

6Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After entering the REXX transid, we try some REXX statements. The READ in the lower right means we're still in the REXX for CICS interpreter - the CICRXTRY exec.

Page 7: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

7Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• We end our REXX for CICS session with "exit".

Page 8: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

8Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After entering the FLST (File LiST) transaction, we get a display of our personal files in the REXX File System (RFS). The RFS is a set of VSAM files.

Page 9: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

9Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After a "cd" (change directory) to our PUBLICR, R/O (Read Only) directory, we get a different list of files.

Page 10: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

10Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• Context sensitive help is available via F1=HELP. Some FLST commands include COPY, DELETE, EDIT, EXEC, etc.

Page 11: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

11Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After an F11=EDIT with the cursor anywhere on the line for file RXKY.EXEC, we're in the REXX for CICS editor. We could have also used the "EDIT" command in the CMD field next to the file.

Page 12: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

12Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After an F8=FWD, we page forward in the file. The DOWN editor command is also available.

Page 13: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

13Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After an F3=END, we end our editor session.

Page 14: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

14Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After an ENTER, we're back in FLST.

Page 15: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

15Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• Let's take a look at a REXX for CICS Panel source file, used in the RXKY exec:

Page 16: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

16Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• We'll end our file list session, and then use the CLEAR function key to be able to enter other CICS transactions.

Page 17: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

17Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• We'll enter the locally defined "RXKY" transaction identifier, to run our RXKY.EXEC. The CICS PCT definition for TRANS(RXKY) specifies PROGRAM(CICREXD).

Page 18: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

18Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• Note that in addition to the RXKY.EXEC being in a PUBLICR (Public Read Only) RFS directory, and the PCT definition for TRANS(RXKY), the prefix.SCICEXEC(CICSTART) exec was modified with the following statement: 'DEFTRNID' RXKY RXKY

• The above statement associates the local transid RXKY with our RXKY.EXEC file, which we looked at earlier.

• The IBM supplied definitions include: 'DEFTRNID' REXX CICRXTRY 'DEFTRNID' EDIT CICEDIT 'DEFTRNID' FLST CICFLST

Page 19: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

19Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After depressing PF7, our RXKY exec runs again, with updates to the "Panel", all in CICS pseudo-conversational mode - sweet!

Page 20: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

20Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• After entering "END" into our RXKY Panel, our RXKY exec runs again, but terminates with the message "RXKY ended.".

Page 21: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

21Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• The IBM supplied RDO GROUP(CICREXX) has the following definitions, for FILEs, PROGRAMs, and TRANSACTIONs :

Page 22: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

22Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• The IBM supplied RDO GROUP(CICREXX) also includes definitions for TDQUEUEs, DB2ENTRY, and DB2TRANs :

Page 23: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

23Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

CICS the Tires (cont.)

• We now return you to our regularly scheduled SHARE presentation...

Page 24: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

24Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction

• UF CNS, University of Florida Computing & Networking Services (formerly known as NERDC), is the primary data center at the Gainesville, FL campus.

• Currently utilizing an IBM z9 BC 2096-Q02 with 16GB, running z/OS 1.7, CICS TS 3.2, DB2 7.1, RACF, JES2, etc.

• 3 LPARs - 1 internal "sysprog sandbox", 1 test "alternate", and 1 production or "primary".

• We have 12 CICS regions configured, and run ~1M prod. transactions/weekday, and ~2M on peak load days.

• 2 internal/test sandbox, 2 development/test, 4 test/QA, and 4 production CICS regions currently configured.

Page 25: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

25Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• Founded in 1853, became the University of Florida in 1905. (East Florida Seminary -> Florida Agricultural College -> University of Florida)

• UF is a member of the AAU, the Association of American Universities.

• UF is one of the five largest universities in the U.S., public or private.

• ~50K enrolled and ~250K alumni.

Page 26: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

26Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• We're considered a "Classic" CICS site. ("Legacy = It Works!")

• Web access to CICS is via the CICS Socket Interface, in use at our site since ~1997.

• ~60% of local CICS tasks utilize sockets.

• All locally developed CICS applications are Assembler and/or COBOL. We have ~8K CICS application load modules, and ~32 have CICS sockets API (for file/data transfer, email, web enablement, etc.).

• Several internal CICS applications written in C/C++ and REXX. Java has only been IVP tested, but with our new z9 zAAP, we're looking at exploiting Java in CICS in the future.

Page 27: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

27Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• Are we now considered a Nouveau CICS site?

• CICS Web Services in production since Sept. 2006: http://docweb.cns.ufl.edu/update/u0610cics/u0610cics.html

• CNS & UF Registrar Implement "MyStudentBody.com" Requirement using CICS Web Services.

• "On Friday, September 22nd, 2006, UF CNS CICS systems staff and UF Office of the University Registrar application staff implemented a new, secure (https) CICS Web service, with CICS acting as the service requester, for the MyStudentBody.com UF health requirement. The new capabilities introduced to support this initiative pave the way for implementation of encrypted Web services accessing real-time student data, making applications more accurate, serving the UF community better."

Page 28: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

28Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• REXX: REstructured eXtended eXecutor

• REXX was designed/created by IBM fellow Mike Cowlishaw, in 1979. In the "Design of the REXX language" article from IBM Systems Journal, VOL 23, No. 4, 1994, Mike said "...effective and easy to use, yet it is sufficiently general and powerful to fulfill the needs of many demanding professional applications".

• REXX might be described as a "scripting" programming language, somewhat similar to languages such as PERL.

• CICS: IBM Customer Information Control System

• There are several "flavors" of both REXX and CICS. The focus in this session is IBM REXX for CICS, in an IBM CICS TS 3.1 or 3.2 for z/OS environment.

Page 29: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

29Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• REXX for CICS was originally developed by members of the IBM OfficeVision for MVS team (IBM Westlake Programming Laboratory, Roanoke, TX).

• SHARE 80 (February 1993) Session I916 - "Research on REXX in the CICS Environment", presented by David Shriver of IBM.

• Personally worked with David Shriver and Roy Bowers, starting in late 1993, and participated in "First Customer Ship" (FCS), and successfully convinced them that "pseudo-conversational" REXX for CICS was a "really good thing" ;-).

• REXX for CICS/ESA was announced on 5 Apr 1994, IBM Announcement Letter, 294-201.

Page 30: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

30Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• Initial REXX for CICS install at UF was in a CICS/ESA 3.3 environment, in April 1994. Presented "REXX under CICS User Experience" session at SHARE 83 in August 1994 (Boston, MA).

• The IBM CICS TS 3.1 and 3.2 Installation Guides say: "The REXX Development System for CICS® and the REXX Runtime Facility for CICS--two program products collectively referred to as REXX for CICS--provide improved productivity for a wide range of CICS activities. REXX for CICS enables you to write and execute CICS programs in a CICS region. These programs have access to most EXEC CICS commands, the CICS CEDA and CEMT transactions, and DB2® databases through the EXEC SQL interface."

Page 31: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

31Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• Note that the IBM designated program product prefix for REXX for CICS is "CIC" - recall that it's "DFH" for CICS.

• The REXX in REXX for CICS is an "interpreted" (not "compiled") language, based upon REXX/370. Rumor has it that a REXX for CICS compiler was developed, but was never made available in REXX for CICS.

• Does IBM consider REXX for CICS "strategic"? (Remember that this session is only 60 minutes. ;-)

• Do you or does your company consider REXX for CICS "strategic"? If so, please let IBM know!

Page 32: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

32Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• A "default" CICS TS 3.1 or 3.2 install will include the 3 REXX for CICS FMIDs:

1. H0B5110: REXX/CICS Runtime.

2. H0B7110: REXX/CICS Development.

3. H0Z2110: REXX/CICS Common.

Page 33: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

33Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Introduction (cont.)

• A "default" install of CICS TS 3.1 or 3.2 will create 21 REXX for CICS SMP/E target and distribution libraries with names of a format similar to: prefix.CICS.REXX.**

• In the CICS TS 3.1 or 3.2 Information Center, search for "enabling rexx", without the quotes. The section, "Enabling REXX for CICS", from the CICS TS 3.1 or 3.2 Installation Guide, is probably the best starting point in getting REXX for CICS implemented at your site.

• Follow the "10 easy steps" to enable your CICS system to provide the facilities of REXX for CICS.

Page 34: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

34Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Implementation

• REXX for CICS is implemented in "10 easy steps":

1. Consider your customization needs for REXX for CICS.

2. Modify your RDO definitions to add required entries.

3. Create the RFS filepools.

4. Bind the CICSQL program to your DB2 plan.

5. Add DD statements to your CICS startup job.

6. Modify member CICSTART.

7. Format the RFS filepools.

8. Verify the installation.

9. Access the supplied softcopy documentation.

10. Review customization information (if you skipped step 1. ;-).

Page 35: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

35Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Application Development

• REXX for CICS application development is made easy with the familiar hierarchical RFS file system, the supplied REXX for CICS interpreter, full screen editor, and easy panel creation capabilities.

• REXX for CICS application developers can easily build and test REXX for CICS applications. Installation into CICS is fairly easy and straightforward.

• REXX for CICS applications can be stand-alone, subroutine calls from other CICS applications, and REXX for CICS applications can call existing or new CICS applications.

• Import and export facilities are supplied, to easily move code and/or data in and out of the RFS and OS datasets.

Page 36: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

36Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Security

• REXX for CICS can be considered a sophisticated "CECI" (CICS Enhanced Command Interpreter). REXX for CICS transactions can be controlled with transaction and/or resource security, as with any typical CICS application.

• REXX for CICS requires at least one "authorized" user. This "special" user is similar to a Unix "root" user. The AUTHUSER command is used to specify "authorized" user(s).

• For "authorized" execs, control by the AUTH parameter on DEFSCMD for CICAUTH DDNAME.

• For dynamically allocated datasets, control is by user replaceable security exit. The default supplied exit allows access to datasets with a high-level index matching the current terminal userid.

Page 37: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

37Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Security (cont.)

• RFS access security can be used to control access to execs and data.

• This RFS control may be at the CICS level and/or RFS level. At the CICS level, authorization may be given to specific users, providing a high level of security.

• At the RFS directory level, by default, only the owning user has access. The RFS AUTH command may be used to define a directory as public or secured. If secured, the RFS security exit is invoked to determine authorization.

• Command execution security may be used to control use of specific REXX for CICS commands or command keywords.

Page 38: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

38Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Performance

• Although REXX for CICS execs are "interpreted", the base IBM code is written in Assembler, and generally has good performance characteristics, IMHO.

• Local CICS CMF comparisons between the RXKY exec and a similar compiled COBOL version indicate a slight advantage with COBOL, but Assembler would probably be even better, with Java probably the clear "winner" in resource consumption ;-). Remember, "it depends", and "lies, damn lies, and statistics".

Page 39: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

39Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Performance (cont.)

• Design choices affect performance (what else is new!).

• Exec storage in a PDS vs RFS - If SVC 99 (dynamic allocation) is used in CICS, performance degradation may/will result. RFS datasets may be placed in CICS data tables for performance considerations.

• RFS vs EXECLOAD - Use EXECLOAD via start-up or profile execs for pre-loading common or heavily used execs.

• REXX for CICS execs vs assembled/compiled languages - use compiled code for performance critical applications or critical application segments.

• Server execs vs nested (in-stream) execs - consider server execs where appropriate.

Page 40: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

40Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Performance (cont.)

• A CICS ROR (REXX Owning Region?) for production REXX for CICS applications could be created to isolate possible REXX for CICS performance exposure.

• Tuning, design considerations, and changes in any or all of these components can affect performance - "let's be careful out there!"

Page 41: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

41Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Performance (cont.)

• Here's what Mike Cowlishaw's V2.1 REXXCPS (REXX Clauses Per Second) exec says in an internal CICS region on our test LPAR - nearly 300K REXX clauses per second:

Page 42: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

42Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Summary

• I really like things that work, and work well - like REXX, CICS and the mainframe (ok, Linux, too ;-).

• REXX for CICS provides added value to both REXX and CICS. I personally think that it's "more that just another CICS programming language" and "more than just another REXX implementation" - it's a comprehensive application development environment.

• REXX is portable and very useful for serious programming.

• Thanks! Have a great time for the remainder of the conference, and have a safe trip home.

• Questions? Comments? Random thoughts?

Page 43: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

43Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Appendix and Additional Information

• IBM CICS (Customer Information Control System): http://www.ibm.com/cics (which recently resolved to) http://www-306.ibm.com/software/htp/cics/

• IBM CICS SupportPacs: http://www-306.ibm.com/software/htp/cics/support/supportpacs/info.html

• IBM Software - IBM REXX Family: http://www-306.ibm.com/software/awdtools/rexx/

• The REXX Language Association: http://www.rexxla.org/

• SHARE REXX Project: http://www.share.org/volunteer_center/programs/applications_systems.cfm#rexx

Page 44: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

44Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Appendix (cont.)

• SHARE ("It's not an acronym, it's what we do.") http://www.share.org/

• SHARE CICS Project: http://www.share.org/cics

Page 45: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

45Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Appendix (cont.)

• The University of Florida (UF): http://www.ufl.edu/

• UF Computing & Networking Services (CNS): http://www.cns.ufl.edu/

• CICS at UF: http://cics.ufl.edu/

Page 46: REXX for CICS - University of Floridanersp.osg.ufl.edu/~sfware/share110/s8335sfw.pdf · REXX for CICS "Get more CICS with REXX" Steve Ware, UF Session 8335, SHARE 110 February 28

46Session 8335, SHARE 110, Orlando, FL, Steve Ware, UF.

Presentation Information

• The Slackware Linux Project: http://www.slackware.com/

• OpenOffice.org 2.2.1 "Impress": http://www.openoffice.org/ (File -> Export as PDF) (Used SHARE PowerPoint template.)

• IBM (Lenovo) ThinkPad T40 2379-D5U: http://www.lenovo.com/think/us/en/