La Unified Modeling Language, ab­bre­via­ta in UML, astrae e vi­sua­liz­za i sistemi di pro­gram­ma­zio­ne orientati agli oggetti. Il lin­guag­gio di mo­del­la­zio­ne è quindi uno strumento pratico per gli svi­lup­pa­to­ri. Da un lato consente di creare una rap­pre­sen­ta­zio­ne chiara per i progetti software, mentre dall’altro si possono pre­sen­ta­re i sistemi di software complessi ai non spe­cia­li­sti in modo com­pren­si­bi­le. Ad esempio se de­si­de­ra­te pre­sen­ta­re il software per l’ultima app aziendale al re­spon­sa­bi­le del marketing, anziché uti­liz­za­re il codice per informare i re­spon­sa­bi­li de­ci­sio­na­li riguardo alle fun­zio­na­li­tà più im­por­tan­ti dell’app, potete farlo tramite UML.

Ov­via­men­te non disegnate diagrammi UML con Paint: ci sono degli appositi strumenti UML che vi aiutano a uti­liz­za­re il lin­guag­gio di mo­del­la­zio­ne. Anche se non è così facile trovare il tool giusto, dato che esistono in­nu­me­re­vo­li programmi UML in rete, ma non tutti hanno le stesse funzioni. Sebbene alcuni strumenti ri­chie­da­no meno RAM, a ciò cor­ri­spon­de una minore fun­zio­na­li­tà. Altri strumenti per diagrammi UML possono mappare ed esportare qualsiasi tipo di diagramma in diversi linguaggi di pro­gram­ma­zio­ne e importare un modello partendo dal codice esistente. Tuttavia molti di questi programmi non offrono alcuna funzione per potersi scambiare idee sui progetti in team.

L’Object Ma­na­ge­ment Group (ab­bre­via­to in OMG), che specifica lo standard UML, rac­co­man­da perciò di con­si­de­ra­re in­nan­zi­tut­to cosa si voglia rap­pre­sen­ta­re esat­ta­men­te con l’UML. Si desidera mostrare la struttura o il com­por­ta­men­to del sistema? A seconda della risposta, decidete lo strumento UML adatto al vostro progetto.

Queste in­for­ma­zio­ni sono state ag­gior­na­te a maggio 2021

Tool UML a confronto

Che si tratti di uno strumento UML gratuito, di uno strumento UML online o di un ambiente di sviluppo integrato che fornisce tool UML, il migliore tool UML è quello in grado di eseguire le attività che de­si­de­ra­te in modo ef­fi­cien­te uti­liz­zan­do il minor numero di risorse possibile. Che vogliate fare una bozza veloce o creare frame di codice sorgente per un sistema complesso e ana­liz­zar­li usando i grafici, troverete sempre l’ap­pli­ca­zio­ne adatta. Siccome si è pro­ba­bil­men­te poco propensi a spendere l’intero budget mensile per un semplice tool per le bozze, nel nostro confronto abbiamo con­si­de­ra­to anche i prezzi delle singole offerte. Nella seguente pa­no­ra­mi­ca troverete un riepilogo dei punti chiave per gli strumenti del diagramma UML.

Tool UML Tipo Piat­ta­for­ma Linguaggi di pro­gram­ma­zio­ne/formati sup­por­ta­ti Lavoro in team integrato Versione UML sup­por­ta­ta Adatto a Prezzo
GitMind Strumento per mappe mentali online Browser ? ? Prin­ci­pian­ti, bozze Gratuito; di­spo­ni­bi­le anche un ab­bo­na­men­to premium a un prezzo con­ve­nien­te
Gliffy Software per diagrammi basato sul web Browser, plug-in per Con­fluen­ce o Jira Ja­va­Script, HTML5, VDX, gXML UML 2.5 Prin­ci­pian­ti, bozze Gratuito; di­spo­ni­bi­le anche ab­bo­na­men­to premium a un prezzo con­ve­nien­te
MagicDraw Software pro­prie­ta­rio con licenza single user, floating e mobile Dektop, mul­ti­piat­ta­for­ma Java, C++, C#, CIL, XML, CORBA, WSDL, EJB, DDL, IDL Team server nella versione En­ter­pri­se UML 2.5 Grandi aziende, compiti complessi Pagamento una tantum a un prezzo re­la­ti­va­men­te elevato
Lu­ci­d­chart Software per diagrammi basato sul web Browser Ja­va­Script, HTML5, SQL ? Bozze, grandi progetti, lavoro in team Gratuito; di­spo­ni­bi­le anche ab­bo­na­men­to premium a un prezzo con­ve­nien­te
IBM Rational Rhapsody Ambiente di sviluppo grafico per lo sviluppo e la convalida di software basato su modelli Mul­ti­piat­ta­for­ma Java EE, C++, C#, EJB, WSDL, XSD, CORBA IDL, SQL, .NET Con plug-in ? IDE modulare, com­ple­ta­men­te in­te­gra­bi­le Su richiesta
Microsoft Visio Software pro­prie­ta­rio per grafici vet­to­ria­li e diagrammi Windows, browser, app per iPad, macchine virtuali C++, C#, VSDX, VSDM UML 2.0 + 2.5 Vi­sua­liz­za­zio­ne di grandi progetti Ab­bo­na­men­to a un prezzo con­ve­nien­te o pagamento una tantum costoso

Strumenti del diagramma UML: a cosa prestare at­ten­zio­ne

Lo Unified Modeling Language specifica 14 tipi di diagrammi che rap­pre­sen­ta­no la struttura, il com­por­ta­men­to e le in­te­ra­zio­ni di un sistema. Per lavorare con esso è ne­ces­sa­rio lo strumento giusto: i tool UML sono strumenti di mo­del­la­zio­ne che possono fare molto più di un semplice strumento di disegno.

Infatti questi programmi non solo for­ni­sco­no moduli UML stan­dar­diz­za­ti che potete dotare delle relative frecce ed etichette, ma sono anche spesso in­di­pen­den­ti dalla piat­ta­for­ma ed esportano i vostri diagrammi UML in vari formati. Con alcuni, poi, potete anche importare il codice e vi­sua­liz­zar­lo come grafico o esportare grafici come modello di codice. Altri strumenti vi per­met­to­no di spe­ci­fi­ca­re au­to­no­ma­men­te l’UML per creare profili adeguati al vostro progetto.

A seconda della fase del progetto in cui vi trovate, uno strumento potrebbe essere più adatto di altri per il vostro scopo. Perciò ha senso avere a di­spo­si­zio­ne più di un programma. Non si deve ne­ces­sa­ria­men­te trattare di app desktop, ma ci sono anche numerosi strumenti UML online. Essi hanno spesso una minore gamma di funzioni, ma sono comunque suf­fi­cien­ti per fare ra­pi­da­men­te i primi schizzi.

È im­por­tan­te sot­to­li­nea­re che il programma utilizza XMI (ab­bre­via­zio­ne di: XML Metadata In­ter­chan­ge, un formato di scambio per i metadati) per esportare il grafico in un formato com­pa­ti­bi­le con gli altri tool. Di seguito spie­ghia­mo alcuni casi d’uso e forniamo sug­ge­ri­men­ti su quali funzioni do­vreb­be­ro essere offerte da un tool UML in ciascun caso.

Caso d’uso A: semplici bozze o prototipi

Siete ancora all’inizio e avete solo alcune idee vaghe per la struttura? O volete vi­sua­liz­za­re gra­fi­ca­men­te una sezione del sistema in modo rapido? Allora i tool UML gratuiti sono una soluzione testata. Quando si è di fretta spesso si uti­liz­za­no blocco e penna o un semplice strumento di disegno. Tuttavia queste soluzioni hanno lo svan­tag­gio che le forme grafiche rimangono appunto solo forme, mentre uno strumento UML gratuito assegna anche un si­gni­fi­ca­to a queste forme: ad esempio un semplice ret­tan­go­lo con l’etichetta <<clas­si­fier>> sim­bo­leg­gia l’istanza di una classe.

Se lavorate in team e la bozza diventa un prototipo uti­liz­za­bi­le, uno strumento UML consente di esportare il diagramma in un programma più ricco di fun­zio­na­li­tà grazie a XMI. Ad esempio è possibile in­te­grar­lo nell’ar­chi­tet­tu­ra esistente o espandere il modello appena creato. Quando scegliete un tool UML, ponetevi le seguenti domande:

  • È ne­ces­sa­rio pro­gram­ma­re in base a questo grafico?
  • L’area di sistema da vi­sua­liz­za­re è par­ti­co­lar­men­te complessa?
  • Quanto tempo avete a di­spo­si­zio­ne per fare pratica con il programma?
  • Siete disposti a investire un budget con­si­sten­te per semplici bozze?

Se avete risposto di no alla maggior parte di queste domande, il programma che fa per voi ha le seguenti ca­rat­te­ri­sti­che:

  • lavora in fretta;
  • non offre alcuna funzione superflua, ma modella soltanto il diagramma di cui avete bisogno;
  • ha un’in­ter­fac­cia user-friendly e intuitiva;
  • è pos­si­bil­men­te gratuito;
  • offre un’ap­pli­ca­zio­ne web in modo da non dover scaricare un nuovo programma.

Caso d’uso B: astrarre sistemi complessi

Il compito prin­ci­pa­le dell’UML è quello di rap­pre­sen­ta­re sistemi complessi in modo sem­pli­fi­ca­to ren­den­do­li com­pren­si­bi­li anche ai profani. Un buon tool UML facilita anche il lavoro in team e la coo­pe­ra­zio­ne tra diversi di­par­ti­men­ti: poiché tali strumenti completi raramente sono anche gratuiti, dovreste ac­cer­tar­vi che siano com­pa­ti­bi­li con l’ultima versione di UML 2. UML 2 offre più tipi di grafici rispetto a UML 1 e consente di creare profili che adattano la me­ta­mo­del­la­zio­ne alle proprie esigenze.

Per lo scopo appena men­zio­na­to è ne­ces­sa­rio un tool per diagramma UML che abbia le seguenti ca­rat­te­ri­sti­che:

  • Funziona in­di­pen­den­te­men­te dalla piat­ta­for­ma ed è ideal­men­te com­pa­ti­bi­le con le con­fi­gu­ra­zio­ni pre­ce­den­ti.
  • I tipi di diagrammi UML correnti sono po­si­zio­na­ti cen­tral­men­te in un menu chia­ra­men­te or­ga­niz­za­to, con tutte le forme ne­ces­sa­rie.
  • Consente di creare grafici uti­liz­zan­do la funzione drag&drop, comandi da tastiera o un codice importato.
  • Supporta l’im­por­ta­zio­ne e l’espor­ta­zio­ne del lin­guag­gio di pro­gram­ma­zio­ne che si sta uti­liz­zan­do.
  • Crea au­to­ma­ti­ca­men­te la do­cu­men­ta­zio­ne in back­ground.
  • Anche se si verifica un errore nel sistema, il programma dovrebbe comunque essere uti­liz­za­bi­le: usabilità e ro­bu­stez­za sono par­ti­co­lar­men­te im­por­tan­ti per i progetti su larga scala con numerosi utenti.
  • La con­di­vi­sio­ne e il lavoro si­mul­ta­neo a un progetto, se non inseriti nel tool, do­vreb­be­ro almeno fun­zio­na­re tramite le ap­pli­ca­zio­ni per lavoro di gruppo.
  • Possiede una funzione di debug che segnala im­me­dia­ta­men­te se si ve­ri­fi­ca­no errori nel modello.
  • Fornisce pro­spet­ti­ve diverse per la vi­sua­liz­za­zio­ne e tipi di modelli det­ta­glia­ti che danno una pa­no­ra­mi­ca sia dell’intero sistema che degli aspetti specifici.
  • Consente alle si­mu­la­zio­ni di eliminare le fonti di errore.

Caso d’uso C: creare un codice finito da un modello

Con alcuni tool UML i diagrammi possono essere con­ver­ti­ti in un de­ter­mi­na­to lin­guag­gio di pro­gram­ma­zio­ne. Spesso lavorano con schemi Java, C ++, C # o XML. Alcuni strumenti ri­co­strui­sco­no inoltre i diagrammi UML dal codice esistente. Tuttavia, pa­ra­dos­sal­men­te, alcuni di questi strumenti non for­ni­sco­no ne­ces­sa­ria­men­te la funzione di reverse en­gi­nee­ring per gli stessi linguaggi di pro­gram­ma­zio­ne che usano per creare il codice dai diagrammi UML.

Se volete con­ver­ti­re il codice sorgente finito da un diagramma UML, pensate a quanto com­pli­ca­ta dovrebbe essere alla fine la vostra ap­pli­ca­zio­ne. Chiunque abbia già lavorato con il software di mo­del­la­zio­ne sa quanto tempo necessita il disegno del diagramma. Per un tale compito si può con­si­de­ra­re uno strumento completo ma allo stesso tempo veloce. D’altra parte il compito dell’UML dovrebbe essere proprio quello di sem­pli­fi­ca­re i sistemi complessi. Un diagramma troppo det­ta­glia­to e di­spen­dio­so in termini di tempo con­trad­di­reb­be questo scopo. Creare un diagramma che vi­sua­liz­zi tutte le istanze, incluse le loro di­pen­den­ze, in un modo più det­ta­glia­to ri­chie­de­rà più lavoro che dare una pa­no­ra­mi­ca a un team di pro­gram­ma­to­ri e lasciare che essi ci lavorino.

Gli strumenti del diagramma UML con round trip en­gi­nee­ring generano diagrammi dal codice sorgente e con­ver­to­no la versione rie­la­bo­ra­ta in codice. Il fatto di non dover disegnare da sé tutte le istanze fa ri­spar­mia­re molto tempo e facilita la do­cu­men­ta­zio­ne del progetto. Tuttavia, se disegnate da voi ha senso mantenere un certo livello di astra­zio­ne. Se con­ver­ti­te il vostro diagramma in codice, potrete almeno lavorare su una struttura ordinata.

Strumenti UML a confronto: da quelli gratuiti alle estese versioni desktop

Un buon tool fa il proprio lavoro senza com­pli­ca­re le ope­ra­zio­ni con extra non necessari. Per le bozze semplici, come nel caso d’uso A, bastano i tool UML gratuiti. Per vi­sua­liz­za­re sistemi complessi o trovare modi per integrare i programmi tramite i diagrammi (come nei casi B e C), sono necessari i migliori strumenti UML dotati di numerose fun­zio­na­li­tà. Di seguito, perciò, vi pre­sen­te­re­mo tool con­trad­di­stin­ti da una gamma di funzioni diverse.

N.B.

I tool UML fanno spesso parte dello sviluppo software assistito dal computer (in inglese: Computer-Aided Software En­gi­nee­ring, ab­bre­via­to in CASE), che mira a rendere la creazione del codice sorgente il più au­to­ma­tiz­za­ta possibile, nonché a ef­fet­tua­re la ma­nu­ten­zio­ne dei prodotti software finiti in modo au­to­ma­ti­co. Con l’aiuto di de­scri­zio­ni tecniche, il processo dovrebbe fun­zio­na­re nel modo più fluido possibile e ottenere risultati ra­pi­da­men­te. Come strumento CASE, gli strumenti UML evoluti do­vreb­be­ro ben adattarsi a un ambiente di sviluppo integrato (IDE).

GitMind: facile da uti­liz­za­re nel cloud

Potete con­trol­la­re lo strumento UML GitMind com­ple­ta­men­te dal browser. Oltre ai diagrammi UML, è anche possibile uti­liz­za­re il software per creare mappe mentali o liste della spesa. Par­ti­co­lar­men­te piacevole per i prin­ci­pian­ti: lo strumento è già dotato di alcuni modelli. Nella sezione UML, per esempio, troverete vari diagrammi di casi d’uso e di classi. Così non è ne­ces­sa­rio inserire tutti gli elementi a mano, anche se non risulta com­pli­ca­to: diversi blocchi possono essere trovati in diverse categorie nella barra laterale dell’area di lavoro. Con un clic, è possibile spostare gli elementi sul diagramma tramite la funzione drag&drop. Per l’al­li­nea­men­to aiutano le linee di orien­ta­men­to.

Il lavoro con GitMind si svolge com­ple­ta­men­te online. Tutto è me­mo­riz­za­to nel cloud. Il vantaggio in questo caso è che potete accedere ai vostri diagrammi da qualsiasi luogo e da qualsiasi di­spo­si­ti­vo. In questo modo avete molta libertà di lavorare sui documenti anche spon­ta­nea­men­te. Purtroppo, però, il fornitore non ha fornito una versione da scaricare, il che è un ostacolo so­prat­tut­to quando si lavora su diagrammi dai di­spo­si­ti­vi mobili.

A dif­fe­ren­za di altri strumenti in questo confronto, GitMind dif­fi­cil­men­te si integra con altri processi. Così, potete importare solo file XMind insieme ad altri progetti. XMind è uno strumento simile a GitMind, ma che pone una maggiore at­ten­zio­ne al brain­stor­ming. I formati di file sono anche piuttosto limitati nell’espor­ta­zio­ne. Sono di­spo­ni­bi­li i tre formati immagine PNG, JPG e SVG, oltre che il formato documento PDF.

Molto agevole e utile risulta l’opzione di col­la­bo­ra­zio­ne. Potete fa­cil­men­te ag­giun­ge­re altri utenti di GitMind al vostro team, suc­ces­si­va­men­te con­di­vi­de­re progetti con loro e lavorare insieme sui diagrammi UML. Nel vostro account troverete anche una comoda gestione dei file, in cui potrete anche regolare le con­di­vi­sio­ni.

Tutte le funzioni di GitMind sono già di­spo­ni­bi­li nella versione gratuita. Dovete solo re­gi­strar­vi sulla piat­ta­for­ma e potete già creare, salvare ed esportare ampi diagrammi UML, anche se quest’ultima opzione è possibile solo in maniera limitata. La col­la­bo­ra­zio­ne con altri utenti è di­spo­ni­bi­le anche nella versione gratuita. L’ab­bo­na­men­to a pagamento vi fornisce poi un numero il­li­mi­ta­to di espor­ta­zio­ni e il supporto clienti per e-mail.

Vantaggi Svantaggi
Facile da usare, anche per i prin­ci­pian­ti Nessuna versione da scaricare
Tutte le funzioni sono già comprese nella versione gratuita Nessuna creazione di codice
Adatto per tutti i browser comuni Nessuna in­ter­fac­cia ad altri servizi
Molti modelli
Col­la­bo­ra­zio­ne con altri membri del team

Gliffy: un tool UML online per prin­ci­pian­ti

L’ap­pli­ca­zio­ne online Gliffy è un tool UML basato su cloud per il browser. Lo strumento di mo­del­la­zio­ne, ri­la­scia­to per la prima volta nel 2006, crea tutti i tipi di grafici come diagrammi di flusso, di Eulero-Venn e na­tu­ral­men­te UML. Questo tool online è stato scritto in HTML5 e convince grazie ai rapidi tempi di reazione.

Anche prima che Gliffy avesse superato la fase beta, nel 2007, l’omonima società collaborò con il gruppo di software au­stra­lia­no Atlassian. Già nel 2006 il suo software di col­la­bo­ra­zio­ne Con­fluen­ce integrava un plug-in di Gliffy. Suc­ces­si­va­men­te, il team di Gliffy ha svi­lup­pa­to un plug-in per Jira. Anche Google Workspace e Google Drive includono questo tool UML.

Sia come versione del browser o plug-in sia come software in­di­pen­den­te, è ideale per il lavoro in team. È possibile con­di­vi­de­re versioni di sola lettura così come lavorare at­ti­va­men­te in parallelo sui grafici e scambiare commenti tramite la funzione apposita.

Prima di poter uti­liz­za­re Gliffy, ef­fet­tua­te il login con il vostro indirizzo e-mail o con un account Google, Microsoft o Facebook. La versione di prova gratuita dopo il periodo di test è ancora uti­liz­za­bi­le in modo gratuito, ma con una gamma di funzioni ridotta. Na­tu­ral­men­te potete sempre decidere di ampliare il numero di funzioni con un ab­bo­na­men­to mensile. Gliffy ha una vasta e ben fornita libreria di moduli. Oltre a UML è possibile uti­liz­zar­lo per modellare diagrammi di flusso semplici o Business Process Models and Notations (BPMN).

All’inizio una finestra di orien­ta­men­to vi con­sen­ti­rà di scegliere la lingua di mo­del­la­zio­ne de­si­de­ra­ta. Se se­le­zio­na­te i gruppi, gli strumenti cor­ri­spon­den­ti vengono evi­den­zia­ti nella barra dei menu. Grazie alla griglia e alle linee au­si­lia­rie, gli elementi del diagramma si possono po­si­zio­na­re in modo molto preciso.

Lo strumento “Temi” ha lo scopo di de­ter­mi­na­re la famiglia di colori per il grafico, ma nel test è limitato soltanto agli elementi della freccia. Con un clic su “Classi, com­po­nen­ti e simili” potete regolare ra­pi­da­men­te i simboli a colori e i caratteri. Potete anche creare diversi livelli con un semplice clic sulla voce del menu cor­ri­spon­den­te (a destra nella barra degli strumenti). Inoltre non è ne­ces­sa­rio pia­ni­fi­ca­re il diagramma passo per passo. Se fate degli errori, potete cor­reg­ger­li con la funzione “Cancella”. Se si desidera in­ter­por­re un elemento, Gliffy rileva la modifica e sug­ge­ri­sce le opzioni di in­se­ri­men­to adatte.

Nella versione gratuita, Gliffy importa i diagrammi nei formati GON, Gliffy e gXML. Per il formato Microsoft Visio VDX è invece ne­ces­sa­rio un account aziendale. Per inciso, lo stesso vale per l’espor­ta­zio­ne di formati popolari di immagini come JPG, PNG e SVG e per la con­nes­sio­ne a Google Drive. Anche gli account gratuiti hanno il formato nativo “Gliffy”. Se salvate un documento in questo formato, potete fa­cil­men­te con­di­vi­der­lo con i colleghi del vostro team tramite un link per il download o in­cor­po­rar­lo su varie piat­ta­for­me come HipChat, Slack, Con­fluen­ce o WordPress.

Con un account gratuito avete a di­spo­si­zio­ne 2 MB di spazio di ar­chi­via­zio­ne cloud per i vostri grafici, il che vi consente di con­di­vi­de­re pub­bli­ca­men­te cinque modelli con­tem­po­ra­nea­men­te. Con un account a pagamento a partire da circa 6 € al mese, Gliffy vi offre ancora più opzioni, ad esempio uno spazio di ar­chi­via­zio­ne il­li­mi­ta­to o la pos­si­bi­li­tà di importare diagrammi da Visio ed espor­ta­zio­ni nei formati di immagini men­zio­na­ti. Per avere una potenza de­ci­sa­men­te maggiore è ne­ces­sa­rio un account aziendale. Per esigenze così elevate, tuttavia, ci sono software migliori.

Vantaggi Svantaggi
Adatto a tutti i browser comuni Fun­zio­na­li­tà come l’espor­ta­zio­ne di immagini e l’in­ter­fac­cia di Google Drive possono essere uti­liz­za­te soltanto con un ab­bo­na­men­to per gruppi
As­si­sten­za completa Nessuna funzione di debug
Co­mu­ni­ca­zio­ne in team integrata Nessuna creazione di codice
Fun­zio­na­men­to veloce grazie a HTML5, drag&drop e in­ter­fac­cia utente chiara
Com­pa­ti­bi­le con UML 2

MagicDraw: tutto il ne­ces­sa­rio per diagrammi UML pro­fes­sio­na­li

MagicDraw di No Magic è la prima versione completa per la mo­del­la­zio­ne pro­fes­sio­na­le della nostra lista. Già dal primo sguardo il design moderno e il layout pulito ca­rat­te­riz­za­no l’app desktop come software pro­prie­ta­rio adatto ai più esigenti. Fun­zio­na­li­tà e facilità d’uso non fanno che con­fer­ma­re questa sen­sa­zio­ne.

Lo strumento di mo­del­la­zio­ne supporta UML, il suo equi­va­len­te per sistemi operativi, SysML, la rap­pre­sen­ta­zio­ne grafica dei processi aziendali con BPMN (Business Process Model and Notation), nonché il framework di ar­chi­tet­tu­ra UPDM (United Profile per DoDAF/MODAF). In MagicDraw lavorate con gli ultimi grafici secondo lo standard UML 2.5, i cui profili possono essere adattati alle vostre esigenze. MagicDraw include anche OCL, la notazione dei vincoli e XMI, che consente di esportare i grafici in altri programmi senza perdite.

MagicDraw offre cinque edizioni (da Reader a En­ter­pri­se) che si dif­fe­ren­zia­no per fun­zio­na­li­tà e costi. Nel nostro test abbiamo preso in esame l’edizione En­ter­pri­se perché non solo dispone di tutte le funzioni e dei plug-in per un’efficace mo­del­la­zio­ne, ma consente anche la piena in­te­gra­zio­ne con un ambiente di sviluppo integrato come Eclipse Workbench.

Il tool UML importa molti formati di file, tra cui i formati di metadati XMI nativi da Eclipse e Rhapsody di IBM, CSV, ReqIF, DoDAF e CA Erwin Data Modeler. Potete salvare e stampare i vostri diagrammi nei formati immagine BMP, PNG, JPG ed EMF come copia. Ma sono possibili anche la ge­ne­ra­zio­ne di codice, il reverse en­gi­nee­ring e il round-trip en­gi­nee­ring. MagicDraw si basa su tre lingue: Java, C ++ in diversi dialetti e C #.

Se modellate i diagrammi UML da voi in un documento vuoto o ag­giun­ge­te dettagli a una mo­del­la­zio­ne, vi ac­cor­ge­re­te presto dei vantaggi dei pannelli per­so­na­liz­za­bi­li: già al primo avvio, la chiara clas­si­fi­ca­zio­ne è un grande punto a favore. Ag­giun­ge­te tutte le schede che ritenete ne­ces­sa­rie per il vostro workflow. No­no­stan­te le numerose funzioni e capacità di editing, MagicDraw ga­ran­ti­sce un layout chiaro e spie­ga­zio­ni brevi e discrete che con­sen­to­no anche agli utenti inesperti di mettere insieme i primi schizzi senza lunghi tempi di ap­pren­di­men­to.

Se se­le­zio­na­te la scheda diagramma nella barra del menu prin­ci­pa­le, il tool UML apre il modello per il tipo se­le­zio­na­to nella barra laterale dell’area di lavoro. Se tra­sci­na­te un elemento sul foglio di lavoro e cliccate una volta, compaiono dei piccoli pulsanti. Con un clic (o tasto destro del mouse sull’elemento) mo­di­fi­ca­te le proprietà dell’oggetto o ag­giun­ge­te testo o col­le­ga­men­ti iper­te­stua­li.

La barra degli strumenti per­so­na­liz­za­bi­le sopra il foglio di lavoro mette sempre in evidenza gli strumenti che con­sen­to­no di allineare gra­fi­ca­men­te uno o più elementi se­le­zio­na­ti. Lo strumento di layout dà un aspetto ordinato alle bozze non strut­tu­ra­te. Con il pannello di zoom e pro­spet­ti­va potete avere sott’occhio il vostro progetto, dai piccoli dettagli alla visione d’insieme.

Il programma UML esamina anche il vostro progetto alla ricerca di errori, mo­stran­do­ve­li. Per un’analisi in­di­pen­den­te avete la pos­si­bi­li­tà di con­fron­ta­re fianco a fianco diverse versioni di un diagramma e ve­ri­fi­ca­re i diversi livelli di astra­zio­ne per la trac­cia­bi­li­tà (tra­cea­bi­li­ty). Gli ar­chi­tet­ti ap­prez­za­no in par­ti­co­la­re l’im­mis­sio­ne di testo libero per la creazione di grafici, perché fa­vo­ri­sco­no un flusso di lavoro fluido.

Vantaggi Svantaggi
Contiene tutti i template per i tipi di diagramma nel corrente UML 2.5 Il download dei file è possibile solo dopo l’accesso all’account
Supporta molti linguaggi di pro­gram­ma­zio­ne e formati Prezzi re­la­ti­va­men­te alti
In­ter­fac­cia utente com­pren­si­bi­le in modo intuitivo WebPortal solo nell’edizione En­ter­pri­se
Funzioni di im­por­ta­zio­ne ed espor­ta­zio­ne, ge­ne­ra­zio­ne di codice, reverse en­gi­nee­ring e round-trip en­gi­nee­ring
Ap­pren­di­men­to rapido

Lu­ci­d­chart: il tool UML online per il lavoro in team

Lu­ci­d­chart è un tool UML a cui si può accedere in qualsiasi momento dal browser. L’account gratuito vi offre una fornita cassetta di strumenti UML. Comprende 7 tipi di diagrammi UML nonché linguaggi di mo­del­la­zio­ne dei processi aziendali come BPMN 2.0, template per icone di rete, prototipi di di­spo­si­ti­vi mobili e in­te­gra­zio­ne video.

Il vantaggio di Lu­ci­d­chart è il suo uso intuitivo. Consente inoltre la con­di­vi­sio­ne e la modifica si­mul­ta­nea di grafici all’interno del team e integra i commenti di­ret­ta­men­te nel tool. Come strumento UML che supporta Mac, Linux e Windows, è una buona al­ter­na­ti­va per gli utenti Mac a Microsoft Visio.

Se uti­liz­za­te già altri software per il lavoro in team, date un’occhiata alla lista delle in­te­gra­zio­ni. Se ne­ces­sa­rio, collegate Lu­ci­d­chart come plug-in con Google e le ap­pli­ca­zio­ni Microsoft, i prodotti Atlassian e varie app di chat e servizi web di Amazon.

Se si desidera provare gra­tui­ta­men­te il tool UML, è possibile creare un account gratuito senza impegno o uti­liz­za­re l’account premium per il periodo di prova. Con quest’ultimo, potete mo­di­fi­ca­re un numero il­li­mi­ta­to di documenti (invece che solo tre) e vi consente di esportare grafici, integrare fornitori di terze parti e uti­liz­za­re moduli più pro­fes­sio­na­li. Nell’account gratuito avete i seguenti template per i diagrammi UML:

  • Diagrammi di classe
  • Diagrammi di stato
  • Diagrammi di attività
  • Diagrammi di sequenza
  • Diagrammi dei com­po­nen­ti
  • Diagrammi del caso d’uso
  • Diagrammi di di­stri­bu­zio­ne

Se volete pro­get­ta­re diagrammi complessi con più di 60 oggetti o se lavorate su più di tre documenti attivi con­tem­po­ra­nea­men­te avete bisogno di un account premium.

Potete però importare dati e diagrammi anche con l’account gratuito. Il tool per il diagramma UML supporta i formati di grafici nativi di Microsoft Visio, Om­ni­graf­fle, Gliffy e Draw.io. I dati possono essere ricavati da file CSV, SQL, ar­chi­tet­tu­ra AWS e Mindmaps. La funzione data linking integra anche dati in tempo reale da Excel, CSV e Fogli Google. Se tuttavia de­si­de­ra­te mo­di­fi­ca­re i formati nativi di altri fornitori, avrete di nuovo bisogno di un account a pagamento che vi consente inoltre di eseguire il backup e il ri­pri­sti­no dei dati.

Ma si lavora davvero bene con Lu­ci­d­chart? L’in­ter­fac­cia utente è ca­rat­te­riz­za­ta da un layout chiaro che dà molto spazio all’area di lavoro. Sul lato destro il menu scompare per ri­spar­mia­re spazio tra­sfor­man­do­si in una ristretta barra che si espande soltanto quando la uti­liz­za­te. Con un clic potete mo­di­fi­ca­re le im­po­sta­zio­ni della pagina, creare livelli e pre­sen­ta­zio­ni o con­di­vi­de­re il lavoro con il proprio team. Potete trovare i template in una barra a sinistra dell’area di lavoro. I loro contenuti e di­men­sio­ni si possono per­so­na­liz­za­re ag­giun­gen­do modelli e tra­sci­nan­do la larghezza della barra con il mouse.

La barra degli strumenti oriz­zon­ta­le mostra gli strumenti necessari ogni volta che tra­sci­na­te una forma o una linea nell’area di lavoro. Basta regolare la di­men­sio­ne e l’orien­ta­men­to facendo clic sulla forma. Se passate il mouse su una forma, vedrete comparire piccoli cerchi rossi, dove potete ag­giun­ge­re frecce e linee. Con la griglia e le linee au­to­ma­ti­che potete disegnare con facilità diagrammi puliti con in­ter­val­li coor­di­na­ti. Alcuni svi­lup­pa­to­ri pre­fe­ri­sco­no invece scrivere comandi di input per costruire il loro diagramma UML. Per farlo il tool offre la funzione Markup UML.

L’edizione Team consente di per­so­na­liz­za­re i ruoli utente e di pro­teg­ge­re i documenti con l’au­ten­ti­ca­zio­ne single sign-on. L’ar­chi­via­zio­ne cloud di Lu­ci­d­chart crit­to­gra­fa inoltre i vostri dati. Ogni volta che con­di­vi­de­te un documento potete decidere chi lo possa mo­di­fi­ca­re e com­men­ta­re o anche sem­pli­ce­men­te leggerlo.

Vantaggi Svantaggi
Molte funzioni per il lavoro in team Molte fun­zio­na­li­tà sono di­spo­ni­bi­li solo nell’account Pro o Team
Grande libreria di template Nessuna funzione di debug
I markup UML ac­ce­le­ra­no il flusso di lavoro Non è possibile generare codice dai grafici
Scalabile at­tra­ver­so lo spazio di ar­chi­via­zio­ne cloud
Design chiaro e che permette di ri­spar­mia­re spazio

IBM Rational Rhapsody: ambiente di sviluppo grafico per l’in­te­gra­zio­ne completa dei processi

IBM Rational Rhapsody è un ambiente di sviluppo grafico integrato (in inglese: In­te­gra­ted De­ve­lo­p­ment En­vi­ron­ment, IDE) per sviluppo software e prodotti. Il programma UML supporta lo sviluppo di software basati sugli oggetti sia per le ap­pli­ca­zio­ni basate sul web che per sistemi integrati e in tempo reale basati su C ++ e Java EE. Uti­liz­zan­do la mo­del­la­zio­ne UML/SysML è possibile creare ra­pi­da­men­te il codice sorgente per le lingue già spe­ci­fi­ca­te nell’IDE, nonché C, C# e Ada.

Rhapsody è passato per diverse mani dopo il suo sviluppo nel 1998. Dopo che IBM ha ac­qui­sta­to la società svedese Telelogic AB nel 2008, la società americana ha ampliato la propria gramma di prodotti Rational at­tra­ver­so Te­le­lo­gics Rhapsody. Gli svedesi hanno ac­qui­sta­to l’IDE nel 2006 at­tra­ver­so l’ac­qui­si­zio­ne dello svi­lup­pa­to­re originale I-Logix. Rational Rhapsody si è diffuso ve­lo­ce­men­te, essendo uno dei primi ambienti di sviluppo grafico.

I marchi in­ter­na­zio­na­li uti­liz­za­no il software per i prin­ci­pa­li progetti che ri­chie­do­no di­stin­zio­ni det­ta­glia­te della versione per molti membri del team in diversi paesi. La casa au­to­mo­bi­li­sti­ca Jaguar Land Rover, per fare un esempio, utilizza Rational Rhapsody per mettere a punto il proprio software di in­fo­tain­ment in diversi mercati.

Per queste e altre attività Rhapsody fornisce un ambiente di sviluppo in cui è possibile disegnare diagrammi, generare e con­va­li­da­re codici e con­fron­ta­re o ana­liz­za­re diverse versioni. Il tool UML supporta le seguenti notazioni:

  • UML
  • SysML
  • AUTOSAR
  • DoDAF
  • MODAF
  • UPDM

Questi linguaggi di mo­del­la­zio­ne basati su UML sono adatti allo sviluppo di software basato su strumenti, il che risparmia molto lavoro ai pro­gram­ma­to­ri. Inoltre è possibile fare af­fi­da­men­to sulla com­pa­ti­bi­li­tà, dal momento che UML e Rhapsody sono stati svi­lup­pa­ti dalla stessa azienda, vale a dire da Rational Software.

In Rhapsody potete disegnare li­be­ra­men­te i modelli, importare il codice esistente per la vi­sua­liz­za­zio­ne come grafico o scaricare i requisiti da un Re­qui­re­men­ts Ma­na­ge­ment Tool come Doors, im­pa­ren­ta­to sempre con Rational. Il seguente video di YouTube mostra un esempio di come pro­get­ta­re un modello SysML per un sistema in tempo reale da un elenco di requisiti in Doors. In questo caso IBM introduce il proprio approccio con INCOS Vendor Challenge. Per il progetto doveva essere creato un sistema di par­cheg­gio per una catena di hotel.

ix228OpoCyU.jpg Per visualizzare questo video, sono necessari i cookie di terze parti. Puoi accedere e modificare le impostazioni dei cookie qui.

Gli svi­lup­pa­to­ri hanno creato il tool UML sulla base del software open source Eclipse. La versione corrente continua, inoltre, a sup­por­ta­re la piat­ta­for­ma IDE di Eclipse come in­te­gra­zio­ne o plug-in. Ulteriori In­te­gra­ted De­ve­lo­p­ment En­vi­ron­men­ts lo integrano come in­te­gra­zio­ne del workflow:

  • Wind River Workbench
  • Green Hills MULTI
  • Microsoft Visual Studio 2008

Come IDE Rhapsody funziona in tempo reale e crea codice sorgente a partire dai diagrammi. Il programma è di­spo­ni­bi­le in quattro diversi moduli di licenza. Inoltre, IBM offre diverse versioni dello strumento UML, spe­cial­men­te per le dif­fe­ren­ti esigenze dei diversi reparti. I moduli sono com­pa­ti­bi­li con l’IDE. Scegliete tra l’Architect for Systems Engineers, il designer o lo svi­lup­pa­to­re. I programmi dif­fe­ri­sco­no prin­ci­pal­men­te per fun­zio­na­li­tà e prezzo.

L’edizione Developer è la versione completa, che combina tutte le fun­zio­na­li­tà e integra il codice sorgente creato nell’ambiente di sviluppo integrato. Inoltre ottimizza il percorso dal primo schizzo alla rea­liz­za­zio­ne finale. Ad esempio è possibile uti­liz­za­re la tec­no­lo­gia round-trip e il reverse en­gi­nee­ring. È anche possibile sin­cro­niz­za­re il codice sorgente e pro­get­ta­re o do­cu­men­ta­re il processo.

Tra le versioni snelle Architect for Software è lo strumento più potente per lavorare con UML, in quanto è l’unico che offre fun­zio­na­li­tà per gli svi­lup­pa­to­ri. Il designer per System Engineers, d’altra parte, è par­ti­co­lar­men­te adatto per compiti quali la reazione di prototipi e simula l’ese­cu­zio­ne del sistema nella fase iniziale.

Vantaggi Svantaggi
Design modulare, scalabile Richiede lunghi tempi di ap­pren­di­men­to
Supporta tutti i tipi di grafici UML 2 correnti Prezzo re­la­ti­va­men­te alto
L’ambiente di sviluppo integrato e le in­ter­fac­ce e tool per altre piat­ta­for­me con­sen­to­no un flusso di lavoro sicuro e integrato fin dall’inizio
Ge­ne­ra­zio­ne di frame di codice per molti linguaggi di pro­gram­ma­zio­ne

Microsoft Visio: lo strumento di disegno UML per gli utenti Office

Microsoft Visio è uno strumento molto popolare per grafici e vi­sua­liz­za­zio­ne e ap­par­tie­ne alla famiglia Office. Pertanto, Visio si può integrare senza problemi nella suite. Se ad esempio si utilizza Office Pro 365, Microsoft offre un’esten­sio­ne dietro ab­bo­na­men­to per Visio. Il prezzo verrà aggiunto all’ab­bo­na­men­to di Office.

In Visio Piano 2 online si ottiene un’app desktop e un editor basato sul web per un massimo di cinque PC (su richiesta sono di­spo­ni­bi­li licenze multiple).

In al­ter­na­ti­va potete ottenere una licenza per­ma­nen­te di Visio Pro­fes­sio­nal a un prezzo fisso elevato. Visio Standard non supporta i diagrammi UML. Essendo un tool UML, le versioni di Visio pre­sen­ta­te sono rivolte prin­ci­pal­men­te ai clienti aziendali che ap­prez­za­no l’ambiente familiare di Office e de­si­de­ra­no ot­ti­miz­za­re il loro flusso di lavoro in­te­gran­do senza soluzione di con­ti­nui­tà lo strumento di mo­del­la­zio­ne ap­pro­pria­to nel loro sistema esistente.

Se avete bisogno di una libreria completa per le forme con i più attuali standard di notazione UML (lo standard OMG di UML si riferisce al momento in cui è stato ri­la­scia­to UML 2.5.1) e se siete già abbonati a Microsoft 365, vi con­si­glia­mo il Piano 2 online.

N.B.

At­tual­men­te non è di­spo­ni­bi­le una versione desktop di Visio per macOS. Lu­ci­d­chart, la già citata app basata su cloud può fungere da in­ter­me­dia­rio, poiché importa anche i formati nativi da Visio.

Visio è in gran parte limitato a fun­zio­na­li­tà che con­sen­to­no di disegnare grafici vet­to­ria­li e diagrammi secondo gli standard del settore e di lavorare insieme nel team. Quando con­di­vi­de­te un grafico, i membri del team approvati possono lavorarci in parallelo nel documento. Inoltre Visio si può anche integrare nel software di col­la­bo­ra­zio­ne Microsoft Teams. Bozze e prototipi si possono con­di­vi­de­re fa­cil­men­te tramite il cloud connesso.

Se volete creare frame di codice dai vostri diagrammi, vi servono altri tool UML, come Visual Studio di Microsoft. Poiché esso fa anche parte della famiglia di prodotti, l’ambiente di sviluppo integrato consente a Visio di essere integrato nel processo di sviluppo. Per esportare e con­ti­nua­re a lavorare sui diagrammi con la minore perdita di dati possibile, salvate il vostro lavoro nel tool del diagramma UML nei formati nativi di metadati OPC/XML.

Formati nativi Visio:

  • VSD (disegno)
  • VSS (timbri)
  • VST (template)
  • VSW (disegno nel web)
  • VSDX (disegno con metadati OPC/XML)
  • VSDM (disegno con metadati OPC/XML, macro-com­pa­ti­bi­le)
  • VSSX (timbri con metadati OPC/XML)
  • VSSM (timbri con metadati OPC/XML, macro-com­pa­ti­bi­le)
  • VSTX (template con metadati OPC/XML)
  • VSTM (template con metadati OPC/XML, macro-com­pa­ti­bi­le)
  • VSL (come com­po­nen­te ag­giun­ti­vo)

Visio non dispone né della funzione per la ge­ne­ra­zio­ne di codice né del round-trip en­gi­nee­ring, ma consente il reverse en­gi­nee­ring. Potete creare diagrammi UML da dati importati o codice sorgente. Pertanto il tool UML svolge il proprio compito prin­ci­pa­le, ovvero quello di pre­sen­ta­re chia­ra­men­te processi e sistemi. Inoltre, Visio consente di integrare i dati nei diagrammi in tempo reale con un solo clic. Ad esempio questo co­sid­det­to col­le­ga­men­to dati rap­pre­sen­ta processi business complessi (con BPMN) durante l’intero runtime. In al­ter­na­ti­va è possibile testare le di­pen­den­ze all’interno di un sistema uti­liz­zan­do un diagramma di co­mu­ni­ca­zio­ne UML, e tutto ciò live con dati reali.

Vantaggi Svantaggi
Supporta UML 2.0 (Piano 2 online anche UML 2.5), inclusi i metadati XML Curva di ap­pren­di­men­to ripida per i prin­ci­pian­ti
Il col­le­ga­men­to dati in tempo reale aiuta nel live testing Prezzo re­la­ti­va­men­te alto
Chiara in­ter­fac­cia utente con il noto menu ribbon Non sono integrate ge­ne­ra­zio­ni di frame di codice
Vai al menu prin­ci­pa­le