Skip to content

MoniBankCore banking na styku pokoleń technologii

Edukacyjny system bankowy łączący nowoczesną aplikację Java i Vite ze światem MVS, KICKS, COBOL-a, VSAM-u i JES-a.

Jeden projekt, dwie epoki mainframe’u

MoniBank jest edukacyjnym projektem core bankingowym. Powstaje po to, aby sprawdzić w praktyce, jak operacje bankowe mogą przechodzić przez granicę pomiędzy współczesną aplikacją webową a klasyczną technologią mainframe.

To nie jest symulacja złożona wyłącznie ze zrzutów ekranu. Gałąź Legacy Bank działa na MVS 3.8J uruchomionym w Herculesie. Java steruje stałą sesją 3270, KICKS kieruje transakcjami online, COBOL pracuje z danymi VSAM, a JES zwraca ustandaryzowane wyniki przez połączenie wirtualnej drukarki.

Modern Bank jest planowany jako przyszła implementacja na IBM Z. Pozwoli porównać ograniczenia i decyzje architektoniczne środowiska legacy ze współczesnymi sposobami integracji mainframe’u.

Legacy BankIN DEVELOPMENT

Laboratorium MVS 3.8J

  • emulator Hercules i środowisko TK5
  • automatyczna sesja TN3270 i TSO
  • transakcje online KICKS
  • programy biznesowe COBOL i kluczowe zbiory VSAM
  • transport wyników przez wirtualną drukarkę JES
  • API Java/Spring i panel operatora w Vite

Pierwszy pełny przepływ online, GET CUSTOMER, działa end to end. Szersza aplikacja bankowa nadal jest rozwijana. Zobacz architekturę Legacy Banku →

Modern BankPLANNED

Przyszła gałąź IBM Z

  • środowisko IBM Z
  • współczesne przetwarzanie transakcji online
  • nowoczesne interfejsy integracyjne mainframe
  • odpowiadające sobie przypadki użycia bankowego
  • bezpośrednie porównanie z Legacy Bankiem

Architekturę doprecyzujemy, gdy fundament Legacy Banku będzie wystarczająco kompletny.

Aktualny status prac

MoniBank jest aktywnie rozwijanym projektem portfolio i nauki. Ukończone przepływy pokazujemy na prawdziwym kodzie i logach, a niedokończone elementy wyraźnie oznaczamy.

ObszarStatusObecny zakres
Środowisko legacyIn developmentMVS 3.8J uruchomiony pod Herculesem
Integracja JavaIn developmentSpring Boot, stały worker terminalowy i listener TCP
GET CUSTOMERWorking end to endJSON → 3270/KICKS → COBOL/VSAM → JES → JSON
Operacje bankoweIn developmentklienci, konta, karty, wpłaty, wypłaty i wyciągi
Panel operatoraIn developmentdashboard Vite i podgląd pracy mainframe’u
Pierwszy artykuł technicznyWeryfikowanydzisiaj sprawdzamy go z ukończonym endpointem
Modern BankPlannedprzyszła gałąź IBM Z

Dlaczego powstaje MoniBank

  1. Żeby uczyć się inżynierii mainframe przez budowę pełnego systemu, a nie wyłącznie pojedyncze ćwiczenia COBOL.
  2. Żeby pokazać granicę pomiędzy pokoleniami technologii, również z niewygodnymi detalami, które często znikają z eleganckich diagramów.
  3. Żeby stworzyć uczciwe portfolio techniczne, w którym decyzje, awarie i poprawki można prześledzić w kodzie, artykułach i filmie.

Pierwszy artykuł techniczny przeprowadzi czytelnika przez jeden prawdziwy request GET CUSTOMER: od Postmana do MVS i z powrotem. Przed publikacją sprawdzimy każdą pokazaną klasę, program, strukturę rekordu i linię logu z działającą implementacją.

Masz pytanie dotyczące MoniBanku?

Zauważyłeś nieścisłość techniczną, masz pytanie albo chcesz porozmawiać o architekturze projektu?

Znajdź mnie na LinkedIn → · Zobacz repozytorium MoniBank →

Core Banking · Mainframe Engineering