Skip to content

Python/FastAPI port of CBSA — full re-architecture #31

@DukeDeSouth

Description

@DukeDeSouth

Hi,

I've re-architectured the CBSA application from COBOL/CICS/DB2 to Python/FastAPI/SQLite as a learning exercise and proof of concept.

What's in the port:

  • All 11 business programs (DBCRFUN, XFRFUN, CRECUST, CREACC, INQCUST, INQACC, INQACCCU, UPDCUST, UPDACC, DELACC, DELCUS) translated to Python service functions
  • 9 BMS screens replaced by a single-page web UI
  • DB2 + VSAM replaced by SQLite (money stored as INTEGER cents to match COBOL precision)
  • CRDTAGY1-5 async credit check replaced by ThreadPoolExecutor
  • Test data generator based on BANKDATA.cbl arrays
  • 19 pytest tests, 15 REST API endpoints

Repo: https://github.com/DukeDeSouth/ibm-cics-banking-python

The COBOL source is included unchanged under EPL-2.0. Happy to answer questions or hear feedback on the approach.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions