Modello di Esecuzione
Principio di esecuzione
In MySirt il sistema non viene implementato — viene derivato.
Le applicazioni non vengono scritte direttamente in codice. Vengono derivate da modelli strutturati espressi attraverso il meta-modello di esecuzione.
Una definizione formale descrive dati, comportamento e responsabilità. L’engine di esecuzione interpreta questa definizione e produce il sistema informativo che la realizza.
L’applicazione in esecuzione rimane una conseguenza diretta del modello, non un artefatto separato che evolve indipendentemente.
Fondamenti della DSL eseguibile
Definizione di base
La DSL di MySirt è un linguaggio dichiarativo utilizzato per definire sistemi informativi operativi completi. Descrive struttura, comportamento e regole organizzative all’interno di un’unica definizione formale.
Dimensioni del sistema
Un modello MySirt definisce tre dimensioni fondamentali di un sistema:
- Struttura — entità, campi e relazioni
- Comportamento — trigger, job e regole operative
- Organizzazione — ruoli e politiche di accesso
Insieme questi elementi formano la specifica eseguibile dell’applicazione.
Modello invece di codice
La DSL descrive cosa deve fare il sistema, non come viene implementato. L’engine di esecuzione interpreta il modello e genera l’applicazione operativa.
Sistemi completi in un’unica definizione
Un sistema di business completo può essere definito all’interno di un singolo file DSL. La definizione include strutture dati, workflow, regole di sicurezza e strutture di interazione utente richieste dall’applicazione.
Comportamento operativo nel modello
Trigger e job permettono alla DSL di modellare direttamente i workflow operativi all’interno della definizione del sistema.
La logica di business è espressa in modo dichiarativo senza implementazione procedurale.
Principio del modello di esecuzione
La DSL agisce come modello eseguibile del sistema. L’engine deriva l’applicazione runtime e applica le regole definite nella specifica.
La chiarezza emerge attraverso l’esecuzione.
Definire il modello di dominio
- Entità e relazioni
- Regole di business
- Ruoli e permessi
- Logica di workflow
Eseguire il modello
- Il modello viene interpretato
- Le strutture vengono validate
- Le dipendenze vengono risolte
Sistema informativo
- Ambiente eseguibile derivato dal modello
- Comportamento governato dalle definizioni
- Responsabilità incorporate nel sistema
Iterare strutturalmente
- Modificare il modello
- Rigenerare il sistema
- Mantenere coerenza strutturale
Operatività continua del modello
Il sistema generato non è un artefatto finale. L’ambiente operativo rimane derivato dal modello per tutto il suo ciclo di vita.
L’evoluzione del sistema avviene modificando le definizioni, non intervenendo sull’implementazione.
Rigenerazione strutturale
Le modifiche a livello di modello si propagano in modo coerente al sistema. Il modello rimane l’unica fonte di verità.
Il modello come artefatto primario
Il modello non è documentazione. È una specifica eseguibile. Il sistema è l’esecuzione del modello.
Estensione controllata
Comportamenti personalizzati possono essere aggiunti in punti di estensione definiti. La logica manuale opera all’interno della struttura definita dal modello, senza sostituirla.
Impatto ingegneristico
Lo sforzo di sviluppo si sposta dalla scrittura di codice alla definizione del comportamento. La complessità si sposta dal volume di implementazione alla chiarezza del modello.
Perché questo cambia lo sviluppo
Lo sviluppo tradizionale è code-first e la struttura emerge nel tempo. MySirt è model-first: la struttura è definita a monte e la logica è formalizzata. Questo sposta lo sviluppo dalla scrittura incrementale di codice all’esecuzione strutturale.
