Schema Repository, Versioning & Visual Diff
In un team enterprise, molteplici architetti lavorano in parallelo su diversi domini applicativi e infrastrutturali. Senza un controllo centralizzato, il rischio di sovrascritture accidentali o diagrammi non allineati è altissimo.
Lo Schema Repository di EasyEA introduce un rigoroso sistema di versioning con blocco esclusivo e un avanzato motore di Visual Diff.
1. Lo Schema Repository & Ciclo di Vita
Tutti i diagrammi architetturali risiedono nello Schema Repository centrale (ArchitectHub ➔ Schemi). Ogni schema è caratterizzato da:
- Codice & Nome Univoco: Identificatore univoco dello schema nel workspace.
- Tipo di Schema: Vista ArchiMate multi-layer, diagramma di processo BPMN 2.0, mappa di capability o architettura applicativa logica.
- Stato del Ciclo di Vita:
Draft: Diagramma in fase di modellazione iniziale.In Review: Proposta di modifica sottomessa per approvazione al team di architettura.Approved: Versione ufficiale di riferimento per il business e l’IT.Deprecated: Schema relativo a un’architettura legacy dismessa.
2. Blocco Concorrente: Check-out e Check-in
Per consentire la modellazione collaborativa senza collisioni, EasyEA implementa un meccanismo di locking a livello di diagramma:
sequenceDiagram autonumber actor A as Architetto A participant S as EasyEA Repository actor B as Architetto B
A->>S: Esegue Check-out su "Architettura Pagamenti v2" S-->>A: Schema Bloccato per Architetto A (Token di Modifica emesso) B->>S: Tenta di modificare lo schema S-->>B: Accesso in Sola Lettura (Bloccato da Architetto A) A->>S: Esegue Check-in con messaggio: "Aggiunto Microservizio Carte" S-->>S: Incrementa Versione (v2.1) & Rilascia Blocco S-->>B: Schema Sbloccato e Aggiornato- Check-out: Assegna un lock esclusivo all’utente. Lo schema può essere aperto nell’editor web o scaricato su strumenti desktop (Archi Tool / Draw.io) tramite il protocollo
easyea://. - Check-in: Rilascia il lock salvando una nuova revisione numerata, richiedendo all’architetto una descrizione testuale delle modifiche apportate.
3. Motore di Visual Diff Semantico
Quando si confrontano due revisioni storiche di uno schema, EasyEA non esegue un banale confronto tra immagini raster, ma un Visual Diff Semantico basato sui nodi del grafo:
- 🟢 Elementi e Relazioni Aggiunti: Evidenziati con contorno verde brillante e badge
+ Added. - 🔴 Elementi e Relazioni Rimossi: Evidenziati con contorno rosso tratteggiato e badge
- Removed. - 🟡 Elementi Modificati: Evidenziati in ambra (es. cambio di nome, modifica degli attributi APM o aggiornamento dello stato di lifecycle).
- Pannello delle Differenze Dettagliate: Lista tabellare navigabile di tutte le modifiche strutturali intervenute tra le due versioni selezionate.