IMLT (Infomanta Ltd Library Cross Reference Tool) is a comprehensive z/OS utility that analyzes calling relationships within load libraries to generate detailed module dependency reports and interactive web-based visualizations. The tool helps organizations understand the structure and compile-time relationships within their mainframe applications.
Automated Analysis Process
Analyzes load libraries to identify module dependencies
Generates both traditional text reports and modern web dashboards
Creates comprehensive calling trees and relationship maps based on compile-time references
Provides detailed technical information about modules and libraries
Three-Step Processing
Library Preparation - Automatically prepares load libraries for analysis
Dependency Extraction - Analyzes calling relationships within modules
Analysis & Reporting - Generates detailed reports and structured output for visualization
Dependency Mapping: Understand calling relationships and compile-time dependencies
Call Chain Analysis: Track how modules are linked together at compile time
Interface Documentation: Document interfaces between application components
Compile-Time Dependencies: Identify modules that must be present for successful program execution
Impact Analysis: Identify all modules with dependencies on proposed changes
Documentation: Generate current system documentation showing compile-time relationships
Code Understanding: Map calling patterns in inherited or complex applications
Testing Support: Determine the scope of regression testing for linked components
Dependency Mapping: Understand application structure and compile-time interfaces
Modernization Planning: Identify natural boundaries based on calling patterns
Technical Inventory: Catalog compiler versions and programming languages used
Complexity Assessment: Identify modules with high coupling or complexity
Change Management: Assess dependency impact before implementing modifications
Risk Assessment: Identify critical dependencies and potential failure points
Compliance: Generate technical inventories for audit purposes
Architecture Analysis: Understand calling patterns and module relationships
Multi-Library Processing: Analyze multiple load libraries simultaneously
Language Detection: Identify COBOL, PL/I, Assembler, C/C++, and FORTRAN modules
Technical Details: Extract RMODE, AMODE, module size, entry points, and compile dates
Call Relationships: Map both forward and backward compile-time dependencies
Interactive Web Dashboard: Browser-based interface with filtering and search
Dependency Trees: Visual representation of calling relationships
Technical Views: Sortable tables with comprehensive module information
Export Capabilities: Generate reports in multiple formats
Simplified Setup: Automatically prepare load libraries for analysis from dataset lists
Dynamic Processing: Handle z/OS dataset allocation and processing programmatically
Integrated Analysis: Single job execution for complete dependency analysis
Error Handling: Comprehensive debugging and troubleshooting support
The tool consists of several components working together:
Library Processor - Prepares load libraries for analysis from simple dataset lists
Dependency Extractor - Handles dataset allocation and call analysis
Analysis Engine - Main processor that analyzes calling relationships
Web Dashboard - HTML/JavaScript interface for data visualization
Text Reports: Traditional formatted reports for immediate review
Structured Data: XML output for integration with other tools
Web Dashboard: Interactive visualization with filtering and search capabilities
z/OS Native: Standard job execution within the existing mainframe environment
TSO/ISPF: Works within the current development workflow
Web Browsers: Dashboard accessible from any modern browser
When working with inherited applications where documentation is incomplete or outdated, IMLT provides a clear picture of calling relationships and compile-time dependencies between modules.
Before modifying existing code, understand which other modules have dependencies on the changes, helping to plan appropriate testing and deployment strategies for linked components.
When planning to modernize or refactor applications, IMLT helps identify natural service boundaries based on calling patterns and understand the current compile-time architecture.
Generate up-to-date technical documentation showing current system structure, dependencies, and technical characteristics.
Provide detailed technical inventories showing programming languages, compiler versions, and calling relationships in use.
z/OS system with TSO/ISPF access
REXX interpreter
Standard z/OS system utilities
Web browser for dashboard functionality
Allocate the required datasets for the tool components
Install analysis programs and procedures into appropriate libraries
Customize job control with your specific library names
Execute the analysis job
Review reports and load the web dashboard for interactive analysis
//S1 EXEC IMLTP,PROJ=MYPROJ,GRP=IMLT
//PS10.SYSIN DD *
YOUR.LOAD.LIB1
YOUR.LOAD.LIB2
/*
Summary statistics showing total modules processed
Detailed module information with technical characteristics
Calling tree relationships excluding IBM system modules
Complexity analysis highlighting modules with multiple dependencies
Library summaries with module counts and classifications
Interactive dependency tree visualization
Sortable and filterable technical module tables
Search functionality across all module attributes
Export capabilities for further analysis
Executive summary with key metrics
Complete metadata about the analysis process
Structured library and module information
Full dependency relationship data
Technical attributes for each module
Timestamps and processing statistics
Handles libraries with 1000+ modules efficiently
Processing time scales with library size and dependency complexity
Memory requirements increase with number of cross-references
Output size depends on module count and relationship complexity
Analyzes compile-time calling relationships (not runtime dynamic calls)
Focuses on load module structure and compile-time linkage
IBM system modules are filtered out of application calling tree analysis
Requires appropriate read access to load libraries being analyzed
Use debug modes during initial setup to verify correct processing
Allocate adequate space for output datasets, especially structured data files
Regular analysis helps track changes in dependency structure over time
Combine with change management processes for maximum benefit
The tool includes comprehensive documentation covering installation, usage, troubleshooting, and customization options. Error codes and debugging information help resolve common issues during setup and execution.
For organizations managing complex z/OS applications, IMLT provides the visibility needed to understand calling relationships, maintain compile-time dependencies, and evolve mainframe systems effectively.