Skip to content

CHepplethwaite/Batch-Transaction-Processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Batch Transaction Processor with Messaging & Integration – Enterprise Simulation

A mainframe-inspired batch transaction processing system that demonstrates enterprise-grade design, system integration, and messaging patterns. Built with COBOL, JCL, DB2, and simulated messaging workflows, this project mimics real-world banking batch processing and inter-system communication, all runnable in a personal development environment.


Project Overview

This system simulates real-world banking batch workflows with integrated messaging:

  • Processes daily financial transactions from multiple sources
  • Validates and reconciles transactions for account integrity
  • Updates DB2 tables safely with transactional guarantees
  • Generates audit and reconciliation reports
  • Demonstrates integration patterns such as messaging, queues, and batch orchestration between systems

This project shows mainframe + integration skills, including:

  • Transaction rollback and error handling
  • COBOL modular design
  • Batch job orchestration via JCL
  • Messaging and inter-system communication simulation

Enterprise-Grade Features

  • Batch Job Scheduling: Sequential and conditional batch job execution simulating nightly bank operations

  • Transaction Safety & Rollback: Ensures failed transactions do not corrupt data

  • DB2 Integration: Normalized tables for accounts and transactions

  • Messaging & Integration:

    • Simulated message queues for incoming transactions (could be implemented with JMS, MQ, or even files for demo purposes)
    • Batch jobs consume messages and update DB2 tables
    • Failure handling with retry mechanisms and dead-letter queues
  • Modular COBOL Design: Separate modules for input parsing, transaction processing, messaging, and reporting

  • Audit & Observability: Tracks processed messages, batch status, errors, and reconciliations

  • Error Handling & Recovery: Detects invalid transactions, logs them, and retries message processing

  • Scalability Considerations: Architecture supports multiple input sources and message adapters

  • Compliance-Ready Simulation: Demonstrates batch integrity, audit logging, and messaging reliability aligned with enterprise practices


Skills Demonstrated

  • Enterprise batch processing and job scheduling
  • Transaction validation and rollback logic
  • COBOL modular programming
  • DB2 schema design and integration
  • Messaging & queue patterns (simulated MQ or file-based queues)
  • Audit logging and error handling
  • Hybrid mainframe + modern tooling (VS Code, Git, Zowe CLI/Explorer)
  • Inter-system integration thinking

Getting Started

  1. Clone the repository and set up your local DB2 instance

  2. Follow project documentation for:

    • Batch job submission
    • Transaction processing workflow
    • Message queue simulation and consumption
    • Audit and reconciliation reporting
  3. All datasets are dummy data, safe for testing and sharing


Project Structure

  • cobol/ – COBOL programs for transaction processing, messaging adapters, and reporting
  • jcl/ – Batch job scripts orchestrating job flow and message consumption
  • db2/ – DB2 schemas and sample data
  • data/ – Dummy transaction input files and simulated message queues
  • docs/ – Architecture diagrams, workflow documentation, and instructions

Integration & Messaging Overview

  1. Incoming transactions are delivered via simulated message queues

  2. COBOL batch jobs consume messages sequentially or in parallel

  3. Each message triggers:

    • Validation of transaction data
    • DB2 table updates
    • Audit log entries
  4. Failed messages go into retry or dead-letter queues

  5. Reporting jobs aggregate successful and failed transactions for review


Contributing

  • Add new message adapters or queue types
  • Enhance error handling and retry logic
  • Improve batch orchestration or reporting

License

MIT License


About

A mainframe-style batch transaction processing system built with COBOL, JCL, and DB2.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published