How to become a Rational Developer for IBM i Power User

Strongback Consulting
Strongback ConsultingPrincipal at Strongback Consulting
© 2014 IBM Corporation
1691, How to Become a
Rational Developer for the i
Power User
Kenny Smith, Strongback Consulting
Edmund Reinhardt, IBM
Alan Boxall, IBM
About Us: Strongback Consulting
• IBM Advanced Business Partner
– SVP certified
– Strongly focused on DevOps, enterprise modernization and application lifecycle
management
– Key Industries Served: Finance, Insurance, Healthcare, Manufacturing, Government
– Rational Design Partner
Discover us at:
http://www.strongback.us
Subscribe to us at
http://feeds.feedburner.com/StrongbackConsulting
Socialize with us on Facebook & LinkedIn
http://www.facebook.com/StrongbackConsulting
http://www.linkedin.com/company/290754
Please note
IBM’s statements regarding its plans, directions, and intent are subject to change
or withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general
product direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a commitment,
promise, or legal obligation to deliver any material, code or functionality.
Information about potential future products may not be incorporated into any
contract. The development, release, and timing of any future features or
functionality described for our products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM
benchmarks in a controlled environment. The actual throughput or performance
that any user will experience will vary depending upon many factors, including
considerations such as the amount of multiprogramming in the user’s job stream,
the I/O configuration, the storage configuration, and the workload processed.
Therefore, no assurance can be given that an individual user will achieve results
similar to those stated here.
3
• First, learn to crawl – know how to navigate around, and use the skills
you have from SEU/PDM
• Then walk – get proficient with the RSE, jobs, filters, and remote
compilation
• Next run – basic debugging, master the LPEX editor
• Finally, FLY! – master refactoring, software archaeology tools in RDi,
code templates, snippets, advanced debugging, application viewer
Overview
• Workbench basics
– Views, perspectives
– Workspace preferences
– editors
• Set your LPEX editor to SEU profile
• Find the information to help you learn more about the tool
– Help system
– InfoCenter
– RPG Hub
– Various other links
Learn to Crawl
• Views
• Perspectives
• The Workspace
• Workspace Preferences
• The LPEX Editor
• Remote System Explorer Perspective
• iProjects Perspective
• Connecting to the i
RDi Basics
Navigate the Workbench
Editor
Pane
Live
Outline
iProjects
View
Remote
Systems
Command
Results
Perspectives
• Easily import connections from your peers
• Connect using the wizard in the remote systems view
Connect to the i
1
2
3
4
The Help System
8
Search Bar
Table of
contents
Index page
Search Results
Navigation Bar
Content
pane
Personal
bookmarks
• LPEX editor can emulator other editors (SEU, ISPF, vi, emacs)
• Open preferences → LPEX → Appearance → Set profile to SEU
Make your editor act like SEU
Line
commands
Command
area
Context
Menu
• Remote system explorer
• Creating filters
• Manage jobs
• Discover the editors
• Remote compilation
Learn to Walk
• Objects
– Navigate objects using filters
• Commands
– Create compile commands
• IBMi Contexts
• Jobs
• IFS Files
• Spooled Files
• Qshells
– Unix like shell to interact with IFS
Remote Systems Explorer
• Filters allow you to view only what you need to work with
• Isolate to specific libraries, jobs, or files for a given project
• Apply filters to libraries, jobs, spooled files, IFS files
• Filters can have one or more filter strings
Create Filters
• Drill down on a subsystem
• Right click to access the job’s context menu
• End, hold, or begin live debugging of a job
Manage Jobs
• All the functions you have in a CL command you have here
• Create quick shortcuts to handle your most common functions
– This is where your productivity really starts improving!
Remote Commands
• Create filters to isolate specific directories on the IFS
– i.e. /QIBM/UserData/WebSphere/AppServer/profiles
• Change permissions on files via the context menu
• Navigate the IFS, into directories and add/remove files just like a
windows file structure
• Also, launch a mini-terminal Qshell, with command line help
Manage IFS Files
• Screen Designer
• Report Designer
• Master the LPEX editor
• Debugging
Learn to Run
• WYSIWYG Designer for developing your display files
Screen Designer
18
Use properties view to
modify attributes and
keywords for the file,
records and fields.
Outline view for
navigating in the editor
and selecting the file,
records and fields.
Design area
Design, source and
preview modes
Screen controls allow you to
specify which records should
be visualized together in the
design area.
Palette: drag and drop
parts from the palette to
the design area.
Screen Designer
Report Designer
• Convert your code to Free Form RPG
• Filter your code
• Use the Selection tools
• Hex Edit a line
• Master Keyboard shortcuts
• Use the LPEX source prompter
Master the LPEX Editor
LPEX Demo
• Use SCM / CLM
• iProjects
• Application Diagram Viewer
• Create Web Services
Learn to Fly
• Most vendors have plugins to RDi to manage your source
– Team Concert (of course!)
– Arcad
– Turnover
– MKS Implementer
– Aldon
• SCM Should be planned as part of your RDi rollout
– Begin using the tool with SCM and your life will be much easier
– Using different libraries for different versions is NOT SCM
– Using save files for historical capture, is NOT SCM
SCM = Source Code Management
• Compare source to previous versions
• Lock a member from editing (optimistic, or pessimistic)
• Have traceability to work items, and to requirements, and trace a
specific version of a source member to production
• Have your source automatically compiled right after you check it
in (continuous integration)
What you can do with SCM / CLM
• The core of any SCM tooling
• Your source is pulled down to the local workstation
• You edit code, and check it back in
• The SCM server puts in the correct target libraries
• SCM will store a history of all of your edits
• iProjects allow for remote/disconnected development
iProjects
• Create a mental map of the application
• Linked to the editor
• Navigable
• Save to documentation
Application Diagram Viewer
27
– Provides developers with a graphical overview of the structure of their native IBM i applications
• Call graph showing subroutine, procedure, and program calls
• ILE program and service program bindings
– Currently supports ILE RPG, ILE COBOL, CL, programs and service programs
Application Diagram
28
Application Diagram
ORDENTR member
expanded to view a
call graph
Subroutine WrtDtaQ calls
program QSNDDTAQ
Subroutine ChgOrder calls
something inside the
ROUTINES member
Subroutine RqsPart calls
subroutine Process
29
ILE Program and Service
Program Bindings
Program QQFENDSVR
binds to service program
QQFUTILS
Modules WFVTACC and
WFVTSVR are bound
into program
QQFVTSVR These *SRVPGMs were
not part of initial user
selection so details are
not shown
Selecting a node highlights
it’s incoming and outgoing
connections
© 2014 IBM Corporation
Alan Boxall
30
IBM Debug Architect
- Debugging using Rational Developer for i
- Analyzing Code Coverage of your testing
• Rational products use a common debug technology for compiled
languages
– Products Include Java debug
• Multi-platform, multi-language debugger
– Common user experience
– Adapts to the capabilities of the debug engine running on the host
– Multiple debug sessions on multiple hosts
• Integrates into product to deliver a seamless Edit/Compile/Debug
experience
Technology Overview
Technology Overview
AIX
(C,C++,
COBOL, PL/I)
zTPF
(C/C++, ASM)
JVM
(Java, JSP)
Java
Debug Model
Debug Tool
(COBOL,C,C++,
PL/I, ASM)
dbx
(C,C++)
Linux x86 Linux PPC
iSeries
(RPG, COBOL,
C/C++, CL)
Debug Client
Compiled Lang.
Debug Model
RDz/RD A&L/RDi/RAD
(Eclipse based UI)
Integrated z
Debugger
(COBOL,C,C++,
PL/I)
Probe
Debug engines
• Key features of the RDi debugger
– Supports debugging in multiple environments
• Batch
• Interactive
• Multi-threaded
• Attach to a running job
– Service Entry Point
• Debug program without knowing how it got started
• Set and debug session starts when the program is called
– Full integration with source editor
• Use source navigation features e.g. outline view
Debugging Your Application
Debug Perspective
Debug View
•Process
•Threads
•Stackframes
Detail Views
•Variables
•Monitors
•Programs
Source View
Language sensitive editor
Current location marked
• Debug views can be placed in any perspective
• F-keys provide shortcuts for stepping/resuming
– With focus in Source view program can be stepped
• Breakpoints
– In breakpoint view
– In Source view
– Global enable/disable
Debug Perspective
Skip all
breakpoints
• Types
– Line – stop on a specific line
– Watch – stop when a variable or memory location changes
• An expression is converted to an address
• Conditional
– Stop when an expression is true
– Use language of program
• Thread and loop specific
– From/every/to
• User label
– Why did I set this breakpoint?
– Saved and restored with breakpoint
Breakpoints
• Service Entry Points for ILE on V5R2 or later
– You know the program
– You know the userid
– You don’t know the job name
• Setting SEPs
– From Remote System Explorer
– From SEP view
– From Editor
Service Entry Points
Variables View
• Variables visible at current location
• Can change representation to show hex
• Move to Monitor view so that variable remains even when out of
scope
• Monitors are restored next debug session on same program
• Details pane is new in v9.1
– Supports very long values
• Indication of changed variables
Monitors View
• Programs current being debugged
• Option to display non-debuggable programs
• Add and remove programs
• Navigate to entry point in program
Programs View
• Multiple ways to look at memory
• 1 or 2 renderings can be displayed at same time
• Map memory using xml layout
• Indicator when memory changes
Memory View
Code Coverage
42
Code Coverage Technology
• Determine the effectiveness of automated or manual tests
– Make best use of test effort
• See coverage at the line level
• Help focus additional testing on code paths that have not been
executed
• Determine if testcases are unnecessary
• Detect dead code
Code Coverage Technology
• iSeries support added in v9.1
• Built using Debug technology
• “If you can debug it, you can capture CC results”
– No additional build steps.. Just ensure it is debuggable
• Multiple levels of CC
– Program/Procedure/Line
• Several report types
– RDi
– HTML
– PDF (new in v9.1)
• Tag results with testcase ID
• Source is annotated with results
Launching Code Coverage
45
Popup menu
on selected
Program
Code Coverage Report
Code Coverage annotated in the editor
Code Coverage HTML Report
Code Coverage HTML Source View
Code Coverage Customization
These results can be accumulated see the
coverage of the total suite of tests as well as
speeding up the analysis of subsequent test runs.
Can track the coverage at the higher level of
procedures or programs
Option to generate HTML and PDF at time of run.
Reports can be generated later.
Code Coverage Program Level
• IBM i program (SRVTESTP2) invokes another service program
(SRVTESTSV). Both of the targeted programs were covered in this
run.
Code Coverage Compare Results
About Us: Strongback Consulting
• IBM Advanced Business Partner
– SVP certified
– Strongly focused on DevOps, enterprise modernization and application lifecycle
management
– Key Industries Served: Finance, Insurance, Healthcare, Manufacturing, Government
– Rational Design Partner
Discover us at:
http://www.strongback.us
Subscribe to us at
http://feeds.feedburner.com/StrongbackConsulting
Socialize with us on Facebook & LinkedIn
http://www.facebook.com/StrongbackConsulting
http://www.linkedin.com/company/290754
1 of 54

Recommended

Introduction to java by
Introduction to javaIntroduction to java
Introduction to javaAjay Sharma
1.7K views116 slides
JDK,JRE,JVM by
JDK,JRE,JVMJDK,JRE,JVM
JDK,JRE,JVMCognizant
3.7K views2 slides
Java features by
Java featuresJava features
Java featuresPrashant Gajendra
2.4K views25 slides
Introduction to Java Programming by
Introduction to Java ProgrammingIntroduction to Java Programming
Introduction to Java ProgrammingRavi Kant Sahu
31.2K views40 slides
Java tutorial PPT by
Java tutorial PPTJava tutorial PPT
Java tutorial PPTIntelligo Technologies
177.7K views55 slides
Niraj Govinda Shrestha with complete Wordpress Tutorial by
Niraj Govinda Shrestha with complete Wordpress TutorialNiraj Govinda Shrestha with complete Wordpress Tutorial
Niraj Govinda Shrestha with complete Wordpress TutorialNiraj Govinda Shrestha
21.5K views196 slides

More Related Content

What's hot

Data Confidentiality in Cloud Computing by
Data Confidentiality in Cloud ComputingData Confidentiality in Cloud Computing
Data Confidentiality in Cloud ComputingRitesh Dwivedi
3.4K views14 slides
MULTI THREADING IN JAVA by
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVAVINOTH R
18.6K views29 slides
What is java? Components of java by
What is java?  Components of java What is java?  Components of java
What is java? Components of java lalitaaaaaa
114 views8 slides
2016 Future of Open Source Survey Results by
2016 Future of Open Source Survey Results2016 Future of Open Source Survey Results
2016 Future of Open Source Survey ResultsBlack Duck by Synopsys
42.1K views70 slides
Introduction to oops concepts by
Introduction to oops conceptsIntroduction to oops concepts
Introduction to oops conceptsNilesh Dalvi
72.1K views50 slides
Java Applet by
Java AppletJava Applet
Java AppletSabyasachi Moitra
4.8K views30 slides

What's hot(10)

Data Confidentiality in Cloud Computing by Ritesh Dwivedi
Data Confidentiality in Cloud ComputingData Confidentiality in Cloud Computing
Data Confidentiality in Cloud Computing
Ritesh Dwivedi3.4K views
MULTI THREADING IN JAVA by VINOTH R
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVA
VINOTH R18.6K views
What is java? Components of java by lalitaaaaaa
What is java?  Components of java What is java?  Components of java
What is java? Components of java
lalitaaaaaa114 views
Introduction to oops concepts by Nilesh Dalvi
Introduction to oops conceptsIntroduction to oops concepts
Introduction to oops concepts
Nilesh Dalvi72.1K views
Introduction to cloud computing by Jithin Parakka
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computing
Jithin Parakka4.6K views
Training on Core java | PPT Presentation | Shravan Sanidhya by Shravan Sanidhya
Training on Core java | PPT Presentation | Shravan SanidhyaTraining on Core java | PPT Presentation | Shravan Sanidhya
Training on Core java | PPT Presentation | Shravan Sanidhya
Shravan Sanidhya4.9K views
oops concept in java | object oriented programming in java by CPD INDIA
oops concept in java | object oriented programming in javaoops concept in java | object oriented programming in java
oops concept in java | object oriented programming in java
CPD INDIA38.3K views
Presentation on Core java by mahir jain
Presentation on Core javaPresentation on Core java
Presentation on Core java
mahir jain95.3K views

Similar to How to become a Rational Developer for IBM i Power User

Innovations in Sencha Tooling and Framework by
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkSandeep Adwankar
110 views72 slides
Software Archaeology and Code Refactoring with Rational Developer for System ... by
Software Archaeology and Code Refactoring with Rational Developer for System ...Software Archaeology and Code Refactoring with Rational Developer for System ...
Software Archaeology and Code Refactoring with Rational Developer for System ...Strongback Consulting
1.8K views56 slides
Building a REST API for Longevity by
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for LongevityMuleSoft
2.5K views80 slides
Structure and Opinions - Software Deployments with Cloud Foundry by
Structure and Opinions - Software Deployments with Cloud FoundryStructure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud FoundryAndrew Ripka
271 views41 slides
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632) by
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)TIMETOACT GROUP
1.8K views50 slides

Similar to How to become a Rational Developer for IBM i Power User(20)

Innovations in Sencha Tooling and Framework by Sandeep Adwankar
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and Framework
Sandeep Adwankar110 views
Software Archaeology and Code Refactoring with Rational Developer for System ... by Strongback Consulting
Software Archaeology and Code Refactoring with Rational Developer for System ...Software Archaeology and Code Refactoring with Rational Developer for System ...
Software Archaeology and Code Refactoring with Rational Developer for System ...
Building a REST API for Longevity by MuleSoft
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
MuleSoft2.5K views
Structure and Opinions - Software Deployments with Cloud Foundry by Andrew Ripka
Structure and Opinions - Software Deployments with Cloud FoundryStructure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud Foundry
Andrew Ripka271 views
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632) by TIMETOACT GROUP
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
TIMETOACT GROUP1.8K views
20160422 Speedy Framework Enterprise Application Development Platform by Harezmi IT Solutions
20160422 Speedy Framework Enterprise Application Development Platform20160422 Speedy Framework Enterprise Application Development Platform
20160422 Speedy Framework Enterprise Application Development Platform
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (... by GRUC
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
GRUC1.3K views
Tips for Beginning Cognos Report Studio Authors: Demonstration of Techniques by Senturus
Tips for Beginning Cognos Report Studio Authors: Demonstration of TechniquesTips for Beginning Cognos Report Studio Authors: Demonstration of Techniques
Tips for Beginning Cognos Report Studio Authors: Demonstration of Techniques
Senturus735 views
Thomas_Rock_Resume_50B by Thomas Rock
Thomas_Rock_Resume_50BThomas_Rock_Resume_50B
Thomas_Rock_Resume_50B
Thomas Rock426 views
Model-driven and low-code development for event-based systems | Bobby Calderw... by HostedbyConfluent
Model-driven and low-code development for event-based systems | Bobby Calderw...Model-driven and low-code development for event-based systems | Bobby Calderw...
Model-driven and low-code development for event-based systems | Bobby Calderw...
HostedbyConfluent1.2K views
(ATS6-DEV02) Web Application Strategies by BIOVIA
(ATS6-DEV02) Web Application Strategies(ATS6-DEV02) Web Application Strategies
(ATS6-DEV02) Web Application Strategies
BIOVIA517 views
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In... by Michael Elder
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
Michael Elder895 views
AIR - Framework ( Cairngorm and Parsley ) by senthil0809
AIR - Framework ( Cairngorm and Parsley )AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )
senthil08091.5K views
FlexDeploy Product Technical Overview by Dalibor Blazevic
FlexDeploy Product Technical OverviewFlexDeploy Product Technical Overview
FlexDeploy Product Technical Overview
Dalibor Blazevic327 views
Continuous Integration by XPDays
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays123 views
Real World SharePoint Framework and Azure Services by Brian Culver
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure Services
Brian Culver559 views
IBM - Developing portlets using Script portlet in WP 8001 by Vinayak Tavargeri
IBM - Developing portlets using Script portlet in WP 8001IBM - Developing portlets using Script portlet in WP 8001
IBM - Developing portlets using Script portlet in WP 8001
Vinayak Tavargeri1.5K views
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard by Esri Nederland
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn BoogaardFlex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Esri Nederland1.4K views

More from Strongback Consulting

IBM Collaborative Lifecycle Management Solution for DevOps v6 by
IBM Collaborative Lifecycle Management Solution for DevOps v6IBM Collaborative Lifecycle Management Solution for DevOps v6
IBM Collaborative Lifecycle Management Solution for DevOps v6Strongback Consulting
2.5K views26 slides
Tips for Developing and Testing IBM HATS Applications by
Tips for Developing and Testing IBM HATS ApplicationsTips for Developing and Testing IBM HATS Applications
Tips for Developing and Testing IBM HATS ApplicationsStrongback Consulting
3.6K views44 slides
Patterns and Antipatterns for Adopting IBM DevOps Tools by
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsStrongback Consulting
1.4K views62 slides
How Arcad Skipper pack works for the IBM i by
How Arcad Skipper pack works for the IBM iHow Arcad Skipper pack works for the IBM i
How Arcad Skipper pack works for the IBM iStrongback Consulting
841 views14 slides
Being Smart about C/C++ Development on AIX and Linux by
Being Smart about C/C++ Development on AIX and Linux Being Smart about C/C++ Development on AIX and Linux
Being Smart about C/C++ Development on AIX and Linux Strongback Consulting
642 views47 slides
Making Rational HATS a Strategic Investment by
Making Rational HATS a Strategic InvestmentMaking Rational HATS a Strategic Investment
Making Rational HATS a Strategic InvestmentStrongback Consulting
1.3K views58 slides

More from Strongback Consulting(20)

IBM Collaborative Lifecycle Management Solution for DevOps v6 by Strongback Consulting
IBM Collaborative Lifecycle Management Solution for DevOps v6IBM Collaborative Lifecycle Management Solution for DevOps v6
IBM Collaborative Lifecycle Management Solution for DevOps v6
Tips for Developing and Testing IBM HATS Applications by Strongback Consulting
Tips for Developing and Testing IBM HATS ApplicationsTips for Developing and Testing IBM HATS Applications
Tips for Developing and Testing IBM HATS Applications
Patterns and Antipatterns for Adopting IBM DevOps Tools by Strongback Consulting
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps Tools
Teaching old dogs new tricks with Rational Developer for System i by Strongback Consulting
Teaching old dogs new tricks with Rational Developer for System iTeaching old dogs new tricks with Rational Developer for System i
Teaching old dogs new tricks with Rational Developer for System i
IBM Innovate 2013: Making Rational HATS a Strategic Investment by Strongback Consulting
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentIBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic Investment
How a tactical HATS solution became a strategic asset - A Customer Story by Strongback Consulting
How a tactical HATS solution became a strategic asset - A Customer StoryHow a tactical HATS solution became a strategic asset - A Customer Story
How a tactical HATS solution became a strategic asset - A Customer Story
Build Smarter User Interfaces for Legacy Applications with IBM Rational Host ... by Strongback Consulting
Build Smarter User Interfaces for Legacy Applications with IBM Rational Host ...Build Smarter User Interfaces for Legacy Applications with IBM Rational Host ...
Build Smarter User Interfaces for Legacy Applications with IBM Rational Host ...
Collaborative Lifecycle Managmenent - an Introduction by Strongback Consulting
Collaborative Lifecycle Managmenent - an IntroductionCollaborative Lifecycle Managmenent - an Introduction
Collaborative Lifecycle Managmenent - an Introduction
IBM Innovate 2011- What every System i Developer Needs to Know by Strongback Consulting
IBM Innovate 2011- What every System i Developer Needs to KnowIBM Innovate 2011- What every System i Developer Needs to Know
IBM Innovate 2011- What every System i Developer Needs to Know

Recently uploaded

Future of Indian ConsumerTech by
Future of Indian ConsumerTechFuture of Indian ConsumerTech
Future of Indian ConsumerTechKapil Khandelwal (KK)
36 views68 slides
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlueShapeBlue
152 views23 slides
Future of AR - Facebook Presentation by
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook PresentationRob McCarty
65 views27 slides
Initiating and Advancing Your Strategic GIS Governance Strategy by
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategySafe Software
184 views68 slides
The Power of Generative AI in Accelerating No Code Adoption.pdf by
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdfSaeed Al Dhaheri
39 views18 slides
Transcript: Redefining the book supply chain: A glimpse into the future - Tec... by
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...BookNet Canada
41 views16 slides

Recently uploaded(20)

2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue152 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty65 views
Initiating and Advancing Your Strategic GIS Governance Strategy by Safe Software
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
Safe Software184 views
The Power of Generative AI in Accelerating No Code Adoption.pdf by Saeed Al Dhaheri
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdf
Saeed Al Dhaheri39 views
Transcript: Redefining the book supply chain: A glimpse into the future - Tec... by BookNet Canada
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
BookNet Canada41 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue162 views
Business Analyst Series 2023 - Week 4 Session 8 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 8Business Analyst Series 2023 -  Week 4 Session 8
Business Analyst Series 2023 - Week 4 Session 8
DianaGray10145 views
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue by ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
ShapeBlue224 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays33 views
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And... by ShapeBlue
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
ShapeBlue108 views
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT by ShapeBlue
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITUpdates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
ShapeBlue208 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue129 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue183 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE84 views
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue178 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue225 views
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada44 views

How to become a Rational Developer for IBM i Power User

  • 1. © 2014 IBM Corporation 1691, How to Become a Rational Developer for the i Power User Kenny Smith, Strongback Consulting Edmund Reinhardt, IBM Alan Boxall, IBM
  • 2. About Us: Strongback Consulting • IBM Advanced Business Partner – SVP certified – Strongly focused on DevOps, enterprise modernization and application lifecycle management – Key Industries Served: Finance, Insurance, Healthcare, Manufacturing, Government – Rational Design Partner Discover us at: http://www.strongback.us Subscribe to us at http://feeds.feedburner.com/StrongbackConsulting Socialize with us on Facebook & LinkedIn http://www.facebook.com/StrongbackConsulting http://www.linkedin.com/company/290754
  • 3. Please note IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 4. 3 • First, learn to crawl – know how to navigate around, and use the skills you have from SEU/PDM • Then walk – get proficient with the RSE, jobs, filters, and remote compilation • Next run – basic debugging, master the LPEX editor • Finally, FLY! – master refactoring, software archaeology tools in RDi, code templates, snippets, advanced debugging, application viewer Overview
  • 5. • Workbench basics – Views, perspectives – Workspace preferences – editors • Set your LPEX editor to SEU profile • Find the information to help you learn more about the tool – Help system – InfoCenter – RPG Hub – Various other links Learn to Crawl
  • 6. • Views • Perspectives • The Workspace • Workspace Preferences • The LPEX Editor • Remote System Explorer Perspective • iProjects Perspective • Connecting to the i RDi Basics
  • 8. • Easily import connections from your peers • Connect using the wizard in the remote systems view Connect to the i 1 2 3 4
  • 9. The Help System 8 Search Bar Table of contents Index page Search Results Navigation Bar Content pane Personal bookmarks
  • 10. • LPEX editor can emulator other editors (SEU, ISPF, vi, emacs) • Open preferences → LPEX → Appearance → Set profile to SEU Make your editor act like SEU Line commands Command area Context Menu
  • 11. • Remote system explorer • Creating filters • Manage jobs • Discover the editors • Remote compilation Learn to Walk
  • 12. • Objects – Navigate objects using filters • Commands – Create compile commands • IBMi Contexts • Jobs • IFS Files • Spooled Files • Qshells – Unix like shell to interact with IFS Remote Systems Explorer
  • 13. • Filters allow you to view only what you need to work with • Isolate to specific libraries, jobs, or files for a given project • Apply filters to libraries, jobs, spooled files, IFS files • Filters can have one or more filter strings Create Filters
  • 14. • Drill down on a subsystem • Right click to access the job’s context menu • End, hold, or begin live debugging of a job Manage Jobs
  • 15. • All the functions you have in a CL command you have here • Create quick shortcuts to handle your most common functions – This is where your productivity really starts improving! Remote Commands
  • 16. • Create filters to isolate specific directories on the IFS – i.e. /QIBM/UserData/WebSphere/AppServer/profiles • Change permissions on files via the context menu • Navigate the IFS, into directories and add/remove files just like a windows file structure • Also, launch a mini-terminal Qshell, with command line help Manage IFS Files
  • 17. • Screen Designer • Report Designer • Master the LPEX editor • Debugging Learn to Run
  • 18. • WYSIWYG Designer for developing your display files Screen Designer
  • 19. 18 Use properties view to modify attributes and keywords for the file, records and fields. Outline view for navigating in the editor and selecting the file, records and fields. Design area Design, source and preview modes Screen controls allow you to specify which records should be visualized together in the design area. Palette: drag and drop parts from the palette to the design area. Screen Designer
  • 21. • Convert your code to Free Form RPG • Filter your code • Use the Selection tools • Hex Edit a line • Master Keyboard shortcuts • Use the LPEX source prompter Master the LPEX Editor
  • 23. • Use SCM / CLM • iProjects • Application Diagram Viewer • Create Web Services Learn to Fly
  • 24. • Most vendors have plugins to RDi to manage your source – Team Concert (of course!) – Arcad – Turnover – MKS Implementer – Aldon • SCM Should be planned as part of your RDi rollout – Begin using the tool with SCM and your life will be much easier – Using different libraries for different versions is NOT SCM – Using save files for historical capture, is NOT SCM SCM = Source Code Management
  • 25. • Compare source to previous versions • Lock a member from editing (optimistic, or pessimistic) • Have traceability to work items, and to requirements, and trace a specific version of a source member to production • Have your source automatically compiled right after you check it in (continuous integration) What you can do with SCM / CLM
  • 26. • The core of any SCM tooling • Your source is pulled down to the local workstation • You edit code, and check it back in • The SCM server puts in the correct target libraries • SCM will store a history of all of your edits • iProjects allow for remote/disconnected development iProjects
  • 27. • Create a mental map of the application • Linked to the editor • Navigable • Save to documentation Application Diagram Viewer
  • 28. 27 – Provides developers with a graphical overview of the structure of their native IBM i applications • Call graph showing subroutine, procedure, and program calls • ILE program and service program bindings – Currently supports ILE RPG, ILE COBOL, CL, programs and service programs Application Diagram
  • 29. 28 Application Diagram ORDENTR member expanded to view a call graph Subroutine WrtDtaQ calls program QSNDDTAQ Subroutine ChgOrder calls something inside the ROUTINES member Subroutine RqsPart calls subroutine Process
  • 30. 29 ILE Program and Service Program Bindings Program QQFENDSVR binds to service program QQFUTILS Modules WFVTACC and WFVTSVR are bound into program QQFVTSVR These *SRVPGMs were not part of initial user selection so details are not shown Selecting a node highlights it’s incoming and outgoing connections
  • 31. © 2014 IBM Corporation Alan Boxall 30 IBM Debug Architect - Debugging using Rational Developer for i - Analyzing Code Coverage of your testing
  • 32. • Rational products use a common debug technology for compiled languages – Products Include Java debug • Multi-platform, multi-language debugger – Common user experience – Adapts to the capabilities of the debug engine running on the host – Multiple debug sessions on multiple hosts • Integrates into product to deliver a seamless Edit/Compile/Debug experience Technology Overview
  • 33. Technology Overview AIX (C,C++, COBOL, PL/I) zTPF (C/C++, ASM) JVM (Java, JSP) Java Debug Model Debug Tool (COBOL,C,C++, PL/I, ASM) dbx (C,C++) Linux x86 Linux PPC iSeries (RPG, COBOL, C/C++, CL) Debug Client Compiled Lang. Debug Model RDz/RD A&L/RDi/RAD (Eclipse based UI) Integrated z Debugger (COBOL,C,C++, PL/I) Probe Debug engines
  • 34. • Key features of the RDi debugger – Supports debugging in multiple environments • Batch • Interactive • Multi-threaded • Attach to a running job – Service Entry Point • Debug program without knowing how it got started • Set and debug session starts when the program is called – Full integration with source editor • Use source navigation features e.g. outline view Debugging Your Application
  • 35. Debug Perspective Debug View •Process •Threads •Stackframes Detail Views •Variables •Monitors •Programs Source View Language sensitive editor Current location marked
  • 36. • Debug views can be placed in any perspective • F-keys provide shortcuts for stepping/resuming – With focus in Source view program can be stepped • Breakpoints – In breakpoint view – In Source view – Global enable/disable Debug Perspective Skip all breakpoints
  • 37. • Types – Line – stop on a specific line – Watch – stop when a variable or memory location changes • An expression is converted to an address • Conditional – Stop when an expression is true – Use language of program • Thread and loop specific – From/every/to • User label – Why did I set this breakpoint? – Saved and restored with breakpoint Breakpoints
  • 38. • Service Entry Points for ILE on V5R2 or later – You know the program – You know the userid – You don’t know the job name • Setting SEPs – From Remote System Explorer – From SEP view – From Editor Service Entry Points
  • 39. Variables View • Variables visible at current location • Can change representation to show hex • Move to Monitor view so that variable remains even when out of scope
  • 40. • Monitors are restored next debug session on same program • Details pane is new in v9.1 – Supports very long values • Indication of changed variables Monitors View
  • 41. • Programs current being debugged • Option to display non-debuggable programs • Add and remove programs • Navigate to entry point in program Programs View
  • 42. • Multiple ways to look at memory • 1 or 2 renderings can be displayed at same time • Map memory using xml layout • Indicator when memory changes Memory View
  • 44. Code Coverage Technology • Determine the effectiveness of automated or manual tests – Make best use of test effort • See coverage at the line level • Help focus additional testing on code paths that have not been executed • Determine if testcases are unnecessary • Detect dead code
  • 45. Code Coverage Technology • iSeries support added in v9.1 • Built using Debug technology • “If you can debug it, you can capture CC results” – No additional build steps.. Just ensure it is debuggable • Multiple levels of CC – Program/Procedure/Line • Several report types – RDi – HTML – PDF (new in v9.1) • Tag results with testcase ID • Source is annotated with results
  • 46. Launching Code Coverage 45 Popup menu on selected Program
  • 48. Code Coverage annotated in the editor
  • 50. Code Coverage HTML Source View
  • 51. Code Coverage Customization These results can be accumulated see the coverage of the total suite of tests as well as speeding up the analysis of subsequent test runs. Can track the coverage at the higher level of procedures or programs Option to generate HTML and PDF at time of run. Reports can be generated later.
  • 52. Code Coverage Program Level • IBM i program (SRVTESTP2) invokes another service program (SRVTESTSV). Both of the targeted programs were covered in this run.
  • 54. About Us: Strongback Consulting • IBM Advanced Business Partner – SVP certified – Strongly focused on DevOps, enterprise modernization and application lifecycle management – Key Industries Served: Finance, Insurance, Healthcare, Manufacturing, Government – Rational Design Partner Discover us at: http://www.strongback.us Subscribe to us at http://feeds.feedburner.com/StrongbackConsulting Socialize with us on Facebook & LinkedIn http://www.facebook.com/StrongbackConsulting http://www.linkedin.com/company/290754