Zpět na domů

Nuxeo pro hypotéční konvejér: low-code přístup

Článek rozebírá použití Nuxeo pro konvejér hypotéčních žádostí prostřednictvím deklarativního lifecycle a vlastních schémat. Srovnání s mikroslužbami, příklady XSD-konfigurací. Vhodné pro úkoly dokumentového oběhu s automatizací přechodů.

Low-code Nuxeo vs mikroslužby: hypotéční konvejér
Advertisement 728x90

Nuxeo pro zpracování hypotečních žádostí: low-code versus mikroslužby

Vývojové týmy často volí architekturu mikroslužeb pro zpracování hypotečních žádostí: samostatné služby pro správu stavů, workflow, dokumentů, auditu a orchestrace. To však přináší složitosti s integrací, distribuovanými transakcemi a infrastrukturou. Low-code platforma Nuxeo umožňuje takový proces implementovat deklarativně — zaměřením se na obchodní logiku bez nutnosti vytvářet desítky samostatných služeb.

Nuxeo modeluje hypoteční žádost jako strukturovaný dokument s metadaty, životním cyklem a přílohami. Jde o jeden jednotný objekt, který spojuje soubor, atributy klienta i žádosti, stavy a přechody mezi nimi.

Model dokumentu v Nuxeo

V Nuxeo dokument rozšiřuje základní typ File přidaním vlastních schémat. Pro hypoteční žádost jsou definována dvě schémata:

Google AdInline article slot
  • mortgage_applicant: name (řetězec), income (desetinné číslo), creditScore (celé číslo).
  • mortgage_application: applicationNumber (řetězec), requestedAmount (desetinné číslo), riskLevel (řetězec), status (řetězec), termMonths (celé číslo).

Typ dokumentu MortgageApplication dědí chování souboru a propojuje obě schémata. Konfigurace probíhá vizuálně v Nuxeo Studio nebo prostřednictvím XML v JAR balíčku.

Příklad XSD pro mortgage_applicant.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:nxs="http://www.nuxeo.org/ecm/project/schemas/Test0124/mortgage_applicant" xmlns:nxsv="http://www.nuxeo.org/ecm/schemas/core/validation/" xmlns:ref="http://www.nuxeo.org/ecm/schemas/core/external-references/" targetNamespace="http://www.nuxeo.org/ecm/project/schemas/Test0124/mortgage_applicant">  
  <xs:element name="creditScore" type="xs:integer"/>
  <xs:element name="income" type="xs:double"/>
  <xs:element name="name" type="xs:string"/>
</xs:schema>

Analogicky pro mortgage_application.xsd s poli žádosti. Registrace schémat v extensions.xml:

Google AdInline article slot
<extension target="org.nuxeo.ecm.core.schema.TypeService" point="schema">
    <schema name="mortgageapplication" prefix="mortgageapplication" override="true" src="data/schemas/mortgageapplication.xsd"/>
    <schema name="mortgage_applicant" prefix="appl" override="true" src="data/schemas/mortgage_applicant.xsd"/>
</extension>

Tím se zajišťuje typová bezpečnost dat a opětovné použití schémat mezi různými dokumenty.

Životní cyklus žádosti: deklarativní model

Životní cyklus v Nuxeo je definován stavy (states) a přechody (transitions), které se nastavují přímo v Nuxeo Studio. Pro hypoteční žádost:

  • Draft (koncept): vytvoření žádosti s nahráním žádanky.
  • Submitted (odesláno): kontrola příloh (občanský průkaz, číslo pojištěnce, daňový doklad 2-NDFL) podle názvu souboru.
  • Scoring (skórování): vyplnění údajů o příjmu, požadované částce a rizikové kategorii; automatický přechod.
  • Committee (komise): výpočet rizikového indexu a aktualizace pole.
  • Approved/Rejected (schváleno/zamítnuto): rozhodnutí provádí člověk.

Přechody řídí samotná platforma: zaznamenává se kompletní historie změn a povolené akce jsou striktně omezeny. Žádná samostatná workflow-služba není potřeba — vše funguje nativně.

Google AdInline article slot

Automatizace přechodů a kontrol

Přechod z Draft do Submitted probíhá automaticky po nahrání všech požadovaných souborů. Ve fázi Scoring se vyplňují klíčová pole a spouští se skórování. V komisní fázi se hodnota riskLevel vypočítá na základě zadaných údajů.

V Nuxeo se toto dosahuje pomocí:

  • Automatických posluchačů (listeners) sledujících změny polí.
  • Obchodních pravidel v Nuxeo Studio pro podmínky přechodů.
  • Vestavěného auditu, který zaznamenává všechny změny stavů.

Platforma brání neoprávněným přechodům a zaručuje předvídatelnost bez nutnosti distribuované logiky.

Výhody pro middle/senior vývojáře

Nuxeo minimalizuje boilerplate kód:

  • Žádné samostatné služby pro gateway, service discovery ani distributed tracing.
  • Jedna centrální databáze pro všechny dokumenty.
  • Životní cyklus nahrazuje složitou orchestraci.
  • Schémata zajišťují přísnou typovou kontrolu bez nutnosti DTO v aplikaci.

Omezení: logika běžící uvnitř platformy vyžaduje porozumění jejím interním mechanikám pro efektivní ladění. Pro složité výpočty (např. skórování) lze integrovat externí kód prostřednictvím automation chains nebo Java rozšíření.

Co je klíčové:

  • Nuxeo modeluje obchodní entity jako dokumenty se životním cyklem — zjednodušuje celé dokumentové procesy.
  • Schémata a Nuxeo Studio umožňují konfigurovat data bez psaní kódu, ale s plnou typovou bezpečností.
  • Automatické přechody a kontroly nahrazují mikroslužbovou orchestraci.
  • Ideální pro úlohy zaměřené na správu dokumentů; pro čisté API je vhodné kombinovat s mikroslužbami.
  • Historie změn a audit jsou součástí platformy od základu.

Škálování a integrace

Nuxeo podporuje clusterizaci a nabízí REST API pro snadnou integraci. Pro hypoteční proces:

  • Uživatelské rozhraní se generuje automaticky na základě modelu.
  • Tlačítka „Schválit“ / „Zamítnout“ se zobrazují podmíněně podle aktuálního stavu.
  • Výpočet rizikového indexu lze provést buď přes listener, nebo voláním externí služby.

To umožňuje rychlé iterace: od návrhu modelu k funkčnímu prototypu za několik hodin místo týdnů.

— Editorial Team

Advertisement 728x90

Číst dál