0% found this document useful (0 votes)
117 views30 pages

AD Module 1 Product Introduction, Features, Terms and Concepts

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
117 views30 pages

AD Module 1 Product Introduction, Features, Terms and Concepts

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Application Discovery

Module 1 – Product Overview


• AD Terms & Vocabulary
• AD Concepts & Facilities

© 2017 IBM Corporation

1
Company Trademarks and Copyrights
 © Copyright …..

 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt
mollit anim id est laborum.

2
The IBM Application Discovery Curriculum

 Module 1 – Product Overview, Terms, Concepts and Vocabulary


 Module 2 – Eclipse Navigation and Introduction to Call Graphs
 Module 3 – AD Detailed Analysis Reports
 Module 4 – Resource Usage in Jobs and Programs

3
Module 1 – Product Overview
 After completing this module, you will be able to perform the following tasks
in IBM Application Discovery (AD):
Define what AD is
Describe what AD is used for
List who uses AD and for what purpose
Describe the value of AD in development and maintenance
Describe the AD (basic) component architecture
Cross-reference how you currently do application discovery and analysis –
with AD features & facilities discussed in this module

4
What is IBM Application Discovery (AD)?
Eclipse-based static code analysis solution, that fast-tracks the discovery
and analysis phases of System z/Enterprise Software work
 COBOL, PL/I, Assembler, JCL, SQL, Natural, Java
 DB2, VSAM/QSAM, JCL, SQL, MQ, ADABAS
 Batch applications
 Scheduling
 Jobs/Procs/MVS Utilities
 Online applications
 CICS
 IMS TM (IMS/DC)

Runs on System z and Windows

5
5
How is IBM Application Discovery (AD) Used?
 AD replaces ISPF searchFor & manual source code analysis:
 Learn/Discover the semantics of an application
 Streamline and accelerate ABEND root cause investigation
 Understand the use and dependencies of and within z/OS resources:
 Files & databases
 Programs & copybooks
 Maps (screens)
 JCL & Batch Scheduler information
 Discover/Capture business rules
 Identify locations & options for exposing business services through APIs
 Assists in the development and test phases to identify impacts across
the enterprise and identifying areas to test, reducing risk and
improving test coverage
 Identifies elements
 Maps dependencies & relationships among the elements
 Gathers metrics, counts related to the IT artifacts in the enterprise
6
6
AD versus Traditional Static Analysis
 AD extracts application semantics
from source code and displays
them as Hyper-linked:
Graphics
Reports

7
7
Modeling the Semantics of a z/OS Application
Batch Schedule Online Transaction
AD extracts application semantics
Batch Job through a parsing process which
understands the principles of MVS
application software.
Job Step
Extracted application elements and
relationships are captured & stored
//DD DSN= Load Module as meta-data in a relational DB
File EXEC PGM= (DB2 or SQLServer)
Relational tables in this repository
Program are modeled on MVS application
Environments and Runtimes.
FD Paragraph Variable The product U.I. provides a window
into your application semantics, and
Statement you can write custom SQL queries
that extend AD’s functionality.

CALL DB2 Table Send/Receive


Subroutine EXEC SQL Screen
8
Application Semantics - Hyperlinks From Metadata to Source Code
AD Tooling provides meta-data  source code:
 Navigation (tree) controls
 Hyperlinks

Hyperlinked source code AD Cataloged


Application Metadata

9
Product Architecture & Integration Points
Analyze Tools AD Dashboard
AD Client
Graphs
Flow Diagrams
Source/Usage Views
Screens

Connect
External (3rd
Party) Report
Tools
Build (Parse)

z/OS Resources

AD Repository
Relational tables that capture your z/OS
Application’s Model
10
Analysis Project – Concept
What is a “Analysis Project”?
 AD calls physical groupings of programs and other application source code components “analysis projects” – or
just “Projects”
 Source code components are brought into the AD Build Server via a number of mechanisms (SCM, agents,
library scans etc.) and stored on the AD Build Server
 Using the AD Build Client, analysis projects are defined based on the available source code
 These analysis projects are then built and made available for users to perform graphical analysis, run reports
and execute custom SQL queries to generate the required analysis outputs
 An AD implementation typically has many analysis projects, used by different teams to drive specific analysis
requirements
 Cross-platform/Cross-application
analysis is done by “joining” a
Analysis Projects

11
AD User Interface
The User Interface is a standard Eclipse GUI consisting of Perspectives,
Views (each tabbed window is a view), Menus, Menu-Actions,
Preferences, hyperlinked lists, etc.
Menu System
Perspective

AD Graphs View

Properties View

12
IDz or ADFz
What’s in it for me?
Work Made Easier
 Graphical analytics (clearly) reveal program semantics
 Instead of learning through laborious and error-prone line-by-line code examination
 Hyper-linked access to exact source and data locations within a file
 Single click workflow - instead of: TypeType:F2/F9/TypeType:F7/F8/F7/TypeTypeTypeType:F2/F9 workflow
 Generated (automation of) APIs
 Instead of complex manual development projects and tasks
 Superfluous tasks reduced
 Auto-commenting code, SPUFI/SQL code-test eliminated, GUI-bookmarking, Content-Assist, multiple file
organization methods and dozens of other features reduce or eliminate mundane repetitive workflow
 Fewer “Mulligans” (mistakes and do-overs)
 The tooling clearly illustrates program and data semantics as well as ABEND root cause analysis – improving
technical comprehension and reducing coding and testing errors

 Career future-proofing
 None of the z/OS vendors are investing in green-screen functionality – and they’re all
investing in Eclipse-based solutions (AD is based on Eclipse)
 So unless you’re planning to retire in the next 6-12 months you will more than likely run
into Eclipse
 Start now – learn AD and get a jump on tomorrow’s Eclipse assignments
and projects today

13
Summary (Simplified Big Picture)

Analysis Tools
Graphs, Flow Diagrams
Source, Usage Views

AD User Community
The Build operation reads application Application Developers
source files – identifying and capturing • Architects
• Project Managers
AD Server Admin
Community references and dependencies which
populate rows in the Repository tables

14
Questions

Repository Model

? ? ? ? ? ? ?

QUESTIONS?
15
Example Use Cases: Application Understanding
Answer questions, such as: What programs are invoked by
a batch job? … What subroutines are called and how do they
interact with MVS files and databases?

16
Example Use Cases: Program Understanding
Answer questions, such as: What is this program’s
procedural control flow? What is this paragraph’s (statement-
level) control flow? What paragraphs update a file or database?
Procedure Flow
Flow Charting

17
Example Use Cases: Field Expansion & Impact Analysis
 Reduce project effort and risk of downtime by understanding
change impact upfront
Find components affected by
changes to:
 Field declarations: Data elements, data
sets, data stores
 Section of program source code
 Entry point signature: Name, Parms
 Distributed assets: Java classes

 Performing change impact


analysis focused on:
 Updating Data Element characteristics
(DE  DB2 column)
 Changing file characteristics
 De-commissioning a transaction,
DB2 table, IMS database
 Changing program interfaces
 Sunsetting an application or set of artifacts

18
Example Use Cases: Complexity Metrics
Gain control of your assets and know what you have
 Assess breadth of technologies  Identify required resources
 Assess quality and complexity  Identify “brittle” programs
 Find Dead Code – Unused routines  Assign work based on objective
and Unreferenced modules complexity metrics and criteria

19
Example Use Cases: Identifying APIs
 AD provides tools for identifying candidate APIs from within and across your
z/OS application
 z/OS Connect EE API toolkit provides specific feature/function that
automates the generation & deployment of APIs

20
Example Use Cases: Application Understanding for Documentation
 Educating new developers – or developers new to an application
 Produced soft & hard-copy documentation
 Provide an electronically-precise understanding of how
applications “hang together” – a+nswer questions like:
– What software artifacts use this data element, DB2 column, DB2 table,
transaction, etc.
– What is the runtime execution flow for a batch job or transaction for IMS
and CICS applications
– What components are required to Build?
– Dependencies such as: Called programs, Copybook & Include files
– What is the makeup of – or how intricate is a business application?
Metrics, variable-counts, breakdown by complexity, language, etc.
– Job X abends: What are the downstream jobs dependent on Job X. What data
files & databases will not be updated? Which triggers will not fire? What reports
will not be produced?

21
Summary – AD Supported Environments & Runtimes
Mainframe – z/OS
 Languages – COBOL, PL/I, Assembler, Natural, ADS/Online
 Databases - VSAM, DB2, IMS/DB, Datacom, Adabas, IDMS
 Batch – JCLs, Procs, Ctrl
 TP monitors – CICS, IMS/DC, IDMS/DC
 Schedulers – IWS, A-Auto, CA7
 Messaging – MQ
 SMF analysis – Jobs, CICS Transactions
 SCM – CA Endevor, Librarian, Serena ChangeMan ZMF, z/OS PDS, IBM RTC
 AD tools – ADFz, IDz
 Monitoring – OMEGAMON for CICS

Distributed
 Languages: “Limited Basic Maiframe” Java – v5 & v6

22
Summary – AD Use Cases
Graphical Analysis Reporting
 Component dependencies and where-  Industry standard analysis – Halstead,
used – impact analysis McCabe, FP, Heuristic
 Flexible hierarchy views, Filtering, search  Configurable metrics and reports
capabilities  Coding and quality standards, dead code,
 Cross Application and Modular inter- impact analysis
dependencies  External reporting access
 Flowcharts, Screen Flow, Data Flow,  Custom queries and outputs
Control Flow
 Drill down – Cross Application, Dashboard & Correlation
Paragraph, Statement
 Consolidated view of application metrics
 Applications trend analysis
Usage  Integration with external data (business
 Dataset Usage in Jobs metrics, service desk)
 Job Usage Inventory
 Program Usage in Jobs
 Procedure Usage in Jobs Server Integration
 Program Structure (all supported  External integration (3rd Party Dashboards,
languages) SCM, Scheduling, Enterprise CMDB)
 Variable Usage in Programs(all supported
languages)
 Database Usage in Programs(all
supported databases)
 Include Usage in Programs
 MQueue Usage in Programs
 SQL Table Field Usage

23 23
23
Chalkboard/Discussion
Application Analysis Tasks Current methods and tools?

Project scoping

Task complexity analysis

Detailed logic analysis

Impact analysis/Where used

Analyze an application

Study a batch job

Trace a transaction’s flow

Understand a program’s semantics


24
Back up slides

25
Detailed application understanding – Application semantics hyperlinked from AD
Repository
– The AD repository stores:
 Data elements (points-of-interest)
 Relationships among elements

Your code
Parsed & Indexed AD Repository
SQL Tables
26
IBM Application Discovery - Big Picture

AD: IDz AD: Analyze AD: Dashboard

IDE
Integration Graphical Analysis Reports ‘Where Used’
Analysis Managemen
t control

z/OS 3rd Party


DB2 AD: Build PDF
CICS Excel
IMS Mainframe
SMF AD: Connect JPEG
TWS
Agents XML
CA7 Visio
CA Endevor
CA Librarian
JSON
ChangeMan CSV
PDS
AD Application Repository EMF
Natural

27

27
AD Stakeholders
AD User
Community AD
Project Managers:
Server/Admin
•Technical Community
•Non-technical

AD Administrator
Business Analysts • AD artifacts, Concatenation
set, etc.

Application Analysts
and Technical
Architects DBA
• Maintenance of
Database/Performance –
Programmers • RUNSTATS, REORG, Binds
• Index creation for tuning

Documentation
Teams
Server administrator for
product installation
28

Testing Teams
28
AD Tools

Advanced Usage
Inventory Annotation
Search X-Refs

Source
Callgraph Explorer Report
Code

Eclipse
Views
29
Product Architecture & Integration Points
IDz Client
Analyze Tools
Graphs
Flow Diagrams
Source/Usage Views
Screens

Projects
• COBOL Programs


COBOL Copybooks
PROCS & JCL
AD Repository
• PL/I Programs
• BMS Maps
• CICS Transactions
• Assembler Programs
• Assembler Macros

Build (Parse)

Source Resources

30

You might also like