180 likes | 686 Views
Application Development for IMS . 2. Overview. Application Development for IMS . 3. Rational Developer for System z (RDz) overview. What is RDzA development tool that helps to make the development in the mainframe faster and easier Special kind of program to help to write other programs or applications (IDE)Eclipse-based IDERDz supports development in the z/OS systemsCOBOL, PL/I, C, C , HL ASSEMBLER, Java, and Web ServicesInteractive access to z/OS systemsSupports IMS, CICS, Batch, USS,32361
E N D
1. Rational Developer for System z 7.6 Overview, Demo and Hands-on Maria Querales – querales@us.ibm.com
2. Application Development for IMS 2
3. Application Development for IMS 3 Rational Developer for System z (RDz) overview What is RDz
A development tool that helps to make the development in the mainframe faster and easier
Special kind of program to help to write other programs or applications (IDE)
Eclipse-based IDE
RDz supports development in the z/OS systems
COBOL, PL/I, C, C++, HL ASSEMBLER, Java, and Web Services
Interactive access to z/OS systems
Supports IMS, CICS, Batch, USS, DB2 Stored Procedure, Application Servers.
RDz supports SOA
Enables CICS and IMS applications for Web Services and SOA
Define basic concepts
What is RDz
RDz stands for Rational Development for Systems z.
RDz is an Eclipse based Integrated Development Environment or IDE.
What is an IDE
An IDE is nothing more than a program that helps developers to write programs. The entire purpose of an IDE is to make developing faster and easier. An IDE by definition must at least be able to syntax check, compile, build and test my program.
What is Eclipe
RDz is based on Eclipse. Eclipse is an IDE itself and is an open source. IBM donated this software to be used by the developer community for free. What is so special about Eclipse is the plug-in support, what this means is that software can be built on top of Eclipse and take advantage of the functions that Eclipse already provide.
Eclipse is an IDE
framework that can be extended to include functionality from various vendors. Eclipse comes with
some base features such as a Java editor and is extended by adding “plug-ins”. RDz is a collection of
plug-ins, provided by IBM, that add features to enhance the productivity of mainframe programmers.
RDz functions
RDz besides providing the basics IDE functions for COBOL, Java, PL/I
Provides interactive access to the z/OS systems. When I talk about interactive I am talking about that from RDz the user is able to create or generate JCL, submit JCL, inspect the output, browse datasets in the remote systems and other similar tasks that z/OS developers and systems programmers usually perform
Of course it supports IMS, CICS, DB2 SP
Supports SOA by enabling IMS transaction and CICS as web services
This was original in the chart:
What is RDz
Eclipse-based IDE
IDE (Integrated Development Environment) - make developing faster and easier
Eclipse is an IDE itself. Plug-in capabilities
RDz supports Enterprise Modernization
Supports common IDE for COBOL, PL/I, C, C++, HL ASSEMBLER, Java, and Web Services
Provides interactive access to z/OS for development, debug, job generation, submission, monitoring, command execution
Supports new and existing runtimes (CICS, IMS, Batch, USS, DB2 Stored Procedure, Application Servers.
Transforms UML to COBOL source code
Integration with z/OS tools
RDz supports SOA
Enables CICS and IMS applications for Web Services and SOA
Supports for J2EE, JCA, XML, Web Services
Define basic concepts
What is RDz
RDz stands for Rational Development for Systems z.
RDz is an Eclipse based Integrated Development Environment or IDE.
What is an IDE
An IDE is nothing more than a program that helps developers to write programs. The entire purpose of an IDE is to make developing faster and easier. An IDE by definition must at least be able to syntax check, compile, build and test my program.
What is Eclipe
RDz is based on Eclipse. Eclipse is an IDE itself and is an open source. IBM donated this software to be used by the developer community for free. What is so special about Eclipse is the plug-in support, what this means is that software can be built on top of Eclipse and take advantage of the functions that Eclipse already provide.
Eclipse is an IDE
framework that can be extended to include functionality from various vendors. Eclipse comes with
some base features such as a Java editor and is extended by adding “plug-ins”. RDz is a collection of
plug-ins, provided by IBM, that add features to enhance the productivity of mainframe programmers.
RDz functions
RDz besides providing the basics IDE functions for COBOL, Java, PL/I
Provides interactive access to the z/OS systems. When I talk about interactive I am talking about that from RDz the user is able to create or generate JCL, submit JCL, inspect the output, browse datasets in the remote systems and other similar tasks that z/OS developers and systems programmers usually perform
Of course it supports IMS, CICS, DB2 SP
Supports SOA by enabling IMS transaction and CICS as web services
This was original in the chart:
What is RDz
Eclipse-based IDE
IDE (Integrated Development Environment) - make developing faster and easier
Eclipse is an IDE itself. Plug-in capabilities
RDz supports Enterprise Modernization
Supports common IDE for COBOL, PL/I, C, C++, HL ASSEMBLER, Java, and Web Services
Provides interactive access to z/OS for development, debug, job generation, submission, monitoring, command execution
Supports new and existing runtimes (CICS, IMS, Batch, USS, DB2 Stored Procedure, Application Servers.
Transforms UML to COBOL source code
Integration with z/OS tools
RDz supports SOA
Enables CICS and IMS applications for Web Services and SOA
Supports for J2EE, JCA, XML, Web Services
4. Application Development for IMS 4 History of Rational Developer for System z History (Slide 4)
The intent of this chart is to show that RDz has been around since 2004. It has had four names so farHistory (Slide 4)
The intent of this chart is to show that RDz has been around since 2004. It has had four names so far
5. Application Development for IMS 5 Two Rational Developer for System z (RDz) Offerings Flavors (Slide 5)
EGL – Enterprise Language generation
Java
Either flavor of RDz provides the basic IDE capabilities for COBOLFlavors (Slide 5)
EGL – Enterprise Language generation
Java
Either flavor of RDz provides the basic IDE capabilities for COBOL
6. Application Development for IMS 6 IBM Rational Developer for System z version 7.6
7. Application Development for IMS 7 ISPF based z/OS development environment
To understand the z/OS application environment let’s talk about what a z/OS application programmer would do:
Edit source using ISPF
Exit source
Edit JCL to submit job
Submit job
Swap to SDSF
Look job output
Find error message and line number
Swap to edit session
Exit jcl
Back to 1
This is the process that RDz simplifies
---------------------------------------
To understand z/OS application development, let's take a look at what a typical z/OS application developer would do.
The Interactive System Productivity Facility or ISPF is the typical development environment that the z/OS developer uses to develop applications.
An usual scenario will be for the z/OS developer to use the ISPF editor to edit a source code, find the source line of interest, change and save it. He then switches to the JCL that is used to submit and schedule the job to be run on the z/OS system, makes the necessary changes, and submits it. He then has to switch to another application, usually something called SDSF to monitor his jobs and review the job output. If there are errors, he has to remember where the error is, switch back to an editing session to make the necessary corrections and the cycle goes on.
What we're offering with the z/OS Application Development tools of Rational Developer for zSeries is a way of simplifying this processISPF based z/OS development environment
To understand the z/OS application environment let’s talk about what a z/OS application programmer would do:
Edit source using ISPF
Exit source
Edit JCL to submit job
Submit job
Swap to SDSF
Look job output
Find error message and line number
Swap to edit session
Exit jcl
Back to 1
This is the process that RDz simplifies
---------------------------------------
To understand z/OS application development, let's take a look at what a typical z/OS application developer would do.
The Interactive System Productivity Facility or ISPF is the typical development environment that the z/OS developer uses to develop applications.
An usual scenario will be for the z/OS developer to use the ISPF editor to edit a source code, find the source line of interest, change and save it. He then switches to the JCL that is used to submit and schedule the job to be run on the z/OS system, makes the necessary changes, and submits it. He then has to switch to another application, usually something called SDSF to monitor his jobs and review the job output. If there are errors, he has to remember where the error is, switch back to an editing session to make the necessary corrections and the cycle goes on.
What we're offering with the z/OS Application Development tools of Rational Developer for zSeries is a way of simplifying this process
8. Application Development for IMS 8 RDz based z/OS development environment Common development environment for COBOL, PL/I, C/C++, and Java
With the z/OS Application Development support provided in IBM Rational Developer, the developer now makes changes in the editor, does a syntax check, double-clicks on any error and is positioned at the source statement in error. The developer can make the appropriate changes, save and syntax check, submit the JCL to compile the program, and check the results, all with a few clicks of a mouse. The development process has been simplified.
Transaction gradually
With the z/OS Application Development support provided in IBM Rational Developer, the developer now makes changes in the editor, does a syntax check, double-clicks on any error and is positioned at the source statement in error. The developer can make the appropriate changes, save and syntax check, submit the JCL to compile the program, and check the results, all with a few clicks of a mouse. The development process has been simplified.
Transaction gradually
9. Application Development for IMS 9 IMS-specific/RDz V7.6 capabilities IMS Code Snippets: 6 categories for adding IMS COBOL code to zLPEX Editor
The Eclipse Snippets view lets users catalog, organize, and share reusable programming objects.
Snippets are organized by category, and can be dragged and dropped onto a code insertion point.
Users can develop and share their own snippets to the view
Product plugins can contribute snippets that use custom wizards to query additional input from the user prior to inserting the final text into the destination editor.
Drop down lists are populated with the results of a successful parsing of the cobol program.
References to nested fields of the AIB or PCB control blocks in the snippet code will be replaced automatically with the actual fields present in the referenced AIB or IOPCB control block. For example, when generating the line of code “MOVE LENGTH OF AIB TO AIBRLEN OF AIB", the snippet generator will look up the field defined at offset 8 of the AIB control block in scope and use that as the name for the ‘AIBRLEN’ field. This is because these fields have no set name, and may be named differently in every COBOL file. If the AIB block cannot be parsed out of the code, then we will use a default value for the field.
When generating the DL/I call, we will try to look up a field whose value clause equals the DL/I function and use that in the call. For example, when creating the code for the GHN snippet, the snippet code generator will parse the code and may find the declaration for: “77 GET-HOLD-NEXT PICTURE X(4) VALUE 'GHN '.”. At which point, GET-HOLD-NEXT will be substituted into the function call. If no match is found, then the snippet name (GHN in this case) would be used in the function call. Not sure at this point whether to just search for level 77 records or for any field with a matching value.
The COBOL syntax tree will not be available when:
The parsing has failed for one reason or another
The snippet is being inserted into an editor other than the zlpex editor.
The snippet plugin is installed outside RDz, say in the IMS Workbench.
Links for documentation:
Snippets with LPEX Editor
Developing > System z Integrated Development Environment tools > Using z/OS perspectives and views > Snippets view
General Snippets Documentation
http://help.eclipse.org/ganymede/index.jsp?topic=/org.eclipse.wst.sse.doc.user/topics/tsrcedt026.html
The Eclipse Snippets view lets users catalog, organize, and share reusable programming objects.
Snippets are organized by category, and can be dragged and dropped onto a code insertion point.
Users can develop and share their own snippets to the view
Product plugins can contribute snippets that use custom wizards to query additional input from the user prior to inserting the final text into the destination editor.
Drop down lists are populated with the results of a successful parsing of the cobol program.
References to nested fields of the AIB or PCB control blocks in the snippet code will be replaced automatically with the actual fields present in the referenced AIB or IOPCB control block. For example, when generating the line of code “MOVE LENGTH OF AIB TO AIBRLEN OF AIB", the snippet generator will look up the field defined at offset 8 of the AIB control block in scope and use that as the name for the ‘AIBRLEN’ field. This is because these fields have no set name, and may be named differently in every COBOL file. If the AIB block cannot be parsed out of the code, then we will use a default value for the field.
When generating the DL/I call, we will try to look up a field whose value clause equals the DL/I function and use that in the call. For example, when creating the code for the GHN snippet, the snippet code generator will parse the code and may find the declaration for: “77 GET-HOLD-NEXT PICTURE X(4) VALUE 'GHN '.”. At which point, GET-HOLD-NEXT will be substituted into the function call. If no match is found, then the snippet name (GHN in this case) would be used in the function call. Not sure at this point whether to just search for level 77 records or for any field with a matching value.
The COBOL syntax tree will not be available when:
The parsing has failed for one reason or another
The snippet is being inserted into an editor other than the zlpex editor.
The snippet plugin is installed outside RDz, say in the IMS Workbench.
Links for documentation:
Snippets with LPEX Editor
Developing > System z Integrated Development Environment tools > Using z/OS perspectives and views > Snippets view
General Snippets Documentation
http://help.eclipse.org/ganymede/index.jsp?topic=/org.eclipse.wst.sse.doc.user/topics/tsrcedt026.html
10. Application Development for IMS RAAi – RAA/RDz integration
RDz also enables new analysis views that when combined with Rational Asset Analyzer (RAA) provide quick and easy ways to understand IMS application structures, complexity, and interactions
Our goal is to provide a single interface for end-to-end IMS application work (analysis through testing). Scanning of files in local workspace projects into a local RAA repository.
Search for Programs and Data Elements in local and remote RAA repositories.
View local and remote programs
A tree view showing the components that make up the program broken down by component type.
A diagram showing the control flow of the program.
A diagram showing the structure of the diagram.
A table showing information about all data elements that are in a program.
View Dead code in Cobol program
Perform impact analysis on files, programs, and data elements, and view their results.
Integration between RAA and WSAA functions and source in LPEX RDz editor window
Scanning of files in local workspace projects into a local RAA repository.
Search for Programs and Data Elements in local and remote RAA repositories.
View local and remote programs
A tree view showing the components that make up the program broken down by component type.
A diagram showing the control flow of the program.
A diagram showing the structure of the diagram.
A table showing information about all data elements that are in a program.
View Dead code in Cobol program
Perform impact analysis on files, programs, and data elements, and view their results.
Integration between RAA and WSAA functions and source in LPEX RDz editor window
11. Application Development for IMS 11 Equivalent to g.8 to monitor jobs and 3.4 to browse datasets in ISPF. Can browse jobs and browse datasets in the sameviewEquivalent to g.8 to monitor jobs and 3.4 to browse datasets in ISPF. Can browse jobs and browse datasets in the sameview
12. Application Development for IMS 12 Access source code… RDz offers integration into a variety of Source Code Management (SCM) tools as well as a framework for creating SCM integration on your own
Variety of vendors supply plug-ins to RDz to provide easy access to processes and source code controlled by their products
13. Application Development for IMS 13
14. Application Development for IMS 14
15. Lab: COBOL application development in z/OS using RDz Maria Querales – querales@us.ibm.com
16. Application Development for IMS 16
17. Application Development for IMS 17 You have copied a COBOL program named CUSVSAM from your workstation to a PDS member. This is a batch program that reads a VSAM data set and display it contents. Also this program does a Dynamic call and a Static call to two other COBOL programs named REGI0B and REGI0C.The figure below shows this program architecture: You have copied a COBOL program named CUSVSAM from your workstation to a PDS member. This is a batch program that reads a VSAM data set and display it contents. Also this program does a Dynamic call and a Static call to two other COBOL programs named REGI0B and REGI0C.The figure below shows this program architecture:
18. Application Development for IMS 18
19. Application Development for IMS 19