Qual è il miglior strumento di diagrammi UML? [chiuso]


490

Sto cercando di scegliere uno strumento per la creazione di diagrammi UML di tutti i gusti. L'usabilità è un criterio fondamentale per me, ma prenderei ancora più potenza con una curva di apprendimento più ripida e sarei felice. Gratuito (come nella birra) sarebbe bello, ma sarei disposto a pagare se lo strumento vale la pena. Cosa dovrei usare?


Il migliore utilizzabile secondo me è yUML, vedi askuml.com
Rebol Tutorial

IBM Rational Modeler ha una versione gratuita e, se si desidera più funzioni, è possibile pagare per la versione aziendale. Sono abbastanza soddisfatto.

Puoi provare la distribuzione di Eclipse Modeling Tools . È Eclipse ed è gratuito!
barista dilettante

Per la generazione di modelli visivi basati su testo, consiglierei yuml.me o plantuml.
AL

Risposte:


354

Qualche contesto: recentemente per la scuola di specializzazione ho studiato strumenti UML per l'usabilità e la comprensione UML in generale per un progetto indipendente. Ho anche modellato / architetto per vivere.

I post precedenti hanno troppe risposte e non abbastanza domande. Un malinteso comune è che UML riguarda la creazione di diagrammi. Certo, i diagrammi sono importanti, ma in realtà stai creando un modello. Ecco le domande a cui dovrebbe essere data risposta in quanto ogni prodotto / soluzione di fornitore fa alcune cose meglio di altri. Nota: le risposte elencate sono a mio avviso le migliori anche se altri prodotti supportano una determinata funzionalità o necessità.

  • Stai modellando o disegnando? (Disegno - ArgoUML , implementazioni gratuite e Visio )
  • Modellerai in futuro? (Per la modellazione di base - Edizioni comunitarie di prodotti a pagamento)
  • Vuoi formalizzare la tua modellazione attraverso profili o meta-modelli? OCL? ( Sparx , RSM, Visual Paradigm )
  • Sei preoccupato per la portabilità del modello, il supporto XMI? ( GenMyModel , Sparx , Visual Paradigm , Altova )
  • Hai una serie esistente di documenti con cui devi lavorare? (Dipende dai documenti)
  • Desideri generare stub di codice o codice completamente funzionante ( GenMyModel , Visual Paradigm , Sparx , Altova )
  • Hai bisogno di processi più maturi come la gestione dei casi d'uso, la creazione di modelli, la creazione di risorse, l'integrazione di RUP, ecc.? (RSA / RSM / IBM Rational Products)

Esempi dettagliati: IBM Rational Software Architect non ha implementato UML 2.0 completamente quando si tratta di realizzare relazioni di tipo durante la creazione di un profilo UML, ma Visual Paradigm e Sparx hanno fatto bene.
Ok, era troppo dettagliato, quindi un esempio più semplice sarebbe ArgoUML , che non ha funzionalità di generazione del codice e si concentra sul disegno più dell'aspetto di modellazione di UML.
Sparx e Visual Paradigm fanno UML davvero bene e generano bene il codice, tuttavia, agganciando i cicli di vita del progetto e altri processi è dove RSM / RSA è forte.
Fai attenzione ai processi o ai framework di generazione del codice chiusi o specifici del prodotto che potrebbero finire bloccati con quel prodotto.

Questa è una discarica del cervello, quindi un paio di dettagli potrebbero non essere perfetti, tuttavia, ciò dovrebbe fornire una mappa generale delle domande e delle soluzioni da esaminare.

NOVITÀ: trovato un buon elenco di molti strumenti UML con descrizioni. Elenco degli strumenti UML di Wiki


2
potresti includere un link alla tua valutazione se è possibile pubblicarla? Di recente ho fatto una valutazione più semplice per un cliente e ho scelto Sparx EA (per modelli, codegen, importazione di codice, disegno, estensibile) che è abbastanza snello e funziona ancora molto bene su Mac a bassa specifica con Virtual PC.
Andy Dent,

1
Scusa per il ritardo. In realtà ho fatto ricerche informali sugli strumenti. Per la mia ricerca principale non ho nemmeno usato uno strumento UML, solo carta e una matita. Ho continuato a cercare questi strumenti. Ognuno ha i suoi punti di forza. RSM / RSA secondo me non funzionerebbero molto bene su Mac con specifiche basse per esempio.
Ted Johnson,

1
@Lucas & Ted: ArgoUML ha la funzione diagramma diagramma, oltre alla generazione del codice. (0.30)
solotim,

3
Mi scusi ma qual è la differenza tra modellare e disegnare? O vuoi dire che la modellazione sta disegnando diversi tipi di diagrammi collegati tra loro mentre il disegno sta semplicemente disegnando diagrammi statici che non hanno alcun effetto su altri diagrammi se modificati e viceversa?
Muhammad Gelbana,

3
Ho visto che GenMyModel è basato su cloud, i modelli sono progettati in un browser web. Sono convinto che la collaborazione dovrebbe essere un altro elemento rilevante in questa risposta: condivisione, modellazione in tempo reale, gestione delle versioni, repository ... Ho provato la maggior parte dei principali strumenti di desktop uml. Non è facile per diversi membri del team lavorare insieme sullo stesso modello. Speriamo che la modellazione online cambierà il modo in cui molte persone IT valutano e usano la modellazione (UML) nei loro progetti di sviluppo quotidiani. Sarei felice di leggere di più sulla modellazione online. Qualcuno sa se è una tendenza in corso?
Georges,

100

Solo per i diagrammi di sequenza, provare websequencediagrams.com . È un prodotto freemium (gratuito per le attività di base, pagato per funzionalità avanzate) e ti consente di sbattere rapidamente un diagramma senza preoccuparti di linee e stencil.

Alice-> Bob: richiesta di autenticazione
nota a sinistra di Bob: Bob ci pensa
Bob-> Alice: risposta di autenticazione


6
È interessante ma non sono sicuro di vedere il valore di esso basato sul web - sicuramente sarebbe meglio averlo sul tuo PC e puoi salvare i file ecc. - E una GUI, il trascinamento della selezione è sicuramente più semplice degli script che hai sapere.
Vidar,

70
Perché questo è votato così in alto perché non risponde alla domanda? Oh bene, sono d'accordo che è un sito web elegante. La prima riga della domanda dice "creazione di diagrammi UML di tutti i gusti". Voterei sotto, ma sono debole, quindi commenterò.
Ted Johnson,

2
+1. Sono entrato per condividere anche questo, rendendomi conto che non risponde completamente alla domanda. I diagrammi di sequenza sono sempre sembrati un po 'imbarazzanti / fuori posto quando giustapposti con il resto di UML, ma sono comunque UML. A mio avviso, i diagrammi di sequenza sono la parte più immediatamente preziosa di UML.
Justin Searls il

22
Come si dice "No, l'altra tua sinistra"?
Matt Brunell,

7
Un utente anonimo suggerisce che potresti anche usare PlantUML , che è uno strumento Java / Graphviz gratuito per generare diagrammi UML dal testo. È molto probabile che sia lo strumento che questo sito Web utilizza dietro le quinte.
Cody Grey

46

Per me è Enterprise Architect di Sparx Systems. Uno strumento UML molto arrotondato per un prezzo molto ragionevole.

Elenco di funzionalità molto forte tra cui: gestione integrata del progetto, baselining, esportazione / importazione (inclusa esportazione in html), generazione di documentazione dal modello, vari modelli (Zachman, TOGAF, ecc.), Plug-in IDE, generazione di codice (con plug-in IDE disponibili per Visual Studio, Eclipse e altri), API di automazione: l'elenco potrebbe continuare.

Oh sì, non dimenticare il supporto per il controllo del codice sorgente direttamente dall'interno dello strumento (SVN, CVS, TFS e SCC).

Vorrei anche stare alla larga da Visio: ottieni solo diagrammi, non un modello. Rinomina una classe in un posto in uno strumento di modellazione UML e rinomini in tutti i posti. Questo non è il caso di Visio!


Dopo aver provato una dozzina o due strumenti UML, ho anche optato per EA di Sparx. Sto usando solo il 5-10% delle sue capacità, però ... :-)
Yarik,

1
Sono solo io o la gestione del layout in EA è terribile almeno con le classi UML? Difficile ridimensionare le cose e mostrare solo quello che voglio. L'uso dei layout predefiniti colloca le classi ovunque. Lo strumento ha un aspetto fantastico ma il layout mi sta davvero rendendo difficile.
Segna il

1
Uso Visio per la modellazione fisica di database (ammettendo che non è perfetto per l'attività) e questo non è vero. Se rinomino una tabella, il suo nome viene sostituito in tutti i diagrammi (ovviamente all'interno dello stesso VSD). A proposito utilizzo Sparx per la modellazione UML.
Lluis Martinez,

45

Per il mio funzionamento UML semplice e breve, ho usato questo strumento:

StarUML - http://staruml.sourceforge.net/en/

Ottimo software gratuito per il disegno UML.


Sebbene l'originale Star UML non sia più mantenuto, ora esiste un fork chiamato White Star UML , che è attivamente sviluppato.


Staruml è ancora in fase di sviluppo attivo?
Fawce

4
Sfortunatamente sembra che sia solo per Windows. Essere multipiattaforma è uno dei miei primi requisiti quando si tratta di scegliere uno strumento per il mio team.
Adam Byrtek,

4
Sfortunatamente il progetto sembra essere morto. Controlla la recente discussione alla fonte forge per maggiori dettagli: sourceforge.net/forum/…
Piotr Czapla,

StarUML non riconosce la nuova sintassi di java1.6. È morto.
solotim,


31

Dato che di solito utilizzo UML più come strumento di comunicazione che come strumento di modellazione, a volte ho la necessità di flettere un po 'il linguaggio, il che rende gli strumenti di modellazione rigidi piuttosto ingombranti. Inoltre, tendono ad avere un grande sovraccarico per il disegno occasionale. Questo significa anche che non offro strumenti che gestiscono bene la modellazione di andata e ritorno con punti bonus. Con questo in testa...

Quando uso Visio , tendo a usare questi stampini per le mie esigenze di UMLing (il tipo incorporato di succhiare). È possibile che mi sia abituato perché è lo strumento di diagramma principale del mio incarico attuale.

OmniGraffle ha anche alcuni stampini UML integrati e molti altri sono disponibili su Graffletopia , ma non lo consiglierei come strumento di diagramma in quanto ha troppe stranezze (stranezze che sono buone per molte cose, ma non UML). Versione di prova gratuita, quindi ... :)

Ho provato un po ' MagicDraw , ma mentre funzionava, ho trovato l'interfaccia utente distraente.

Altrimenti trovo Topcased un progetto interessante (o un gruppo di progetti). L'ultima volta che l'ho usato aveva ancora alcuni bug, ma ha funzionato e sembra essersi evoluto bene da allora. Funziona alla grande su qualsiasi piattaforma abilitata per Eclipse. Gratis come nel discorso e nella birra :)

Per quanto riguarda lo strumento Diagram , Dia è piuttosto brutto (interfaccia e disegni risultanti), ma fa il lavoro. Un'interessante alternativa gratuita agli strumenti di modellazione è Umbrello , ma non l'ho usato molto.

Sono assolutamente d'accordo con Mashi sul fatto che le lavagne sono fantastiche (insieme a una fotocamera digitale o un cellulare).

Probabilmente alcuni degli strumenti più belli che ho usato appartengono alla famiglia di strumenti Rational .


2
+1 per Dia: è un piccolo strumento piacevole ed è assolutamente eccezionale per i diagrammi di flusso. Tuttavia, Umbrello si schianta un po 'su di me (quello e Qt è comunque un tumulo di cruft).
nuovo123456

24

Potresti essere alla ricerca di uno strumento automatizzato che generi automaticamente molte cose per te. Ma ecco uno strumento di diagrammi gratuito, generalmente potente utile non solo per UML ma per tutti i tipi di attività di diagrammi. Accetta come input e output per un'ampia varietà di formati di file comunemente usati. Si chiama yEd e vale la pena dare un'occhiata


3
Il layout sembra fantastico, è veloce e sembra essere utilizzabile in 5 minuti. Una grande caratteristica è che puoi scegliere come disporre il diagramma: gerarchico, organico, stile UML, circolare o simile ad un albero. Lo fa in un batter d'occhio. Finora ho delle riserve per il software scritto in Java, ma questo ha cambiato la mia opinione :)
J Pollack,

21

Visual Paradigm for UML http://content.usa.visual-paradigm.com/websiteimages/images/products/vpuml60/vpumltitle.gif

Sono molto affezionato a Visual Paradigm per UML. È molto potente e ha anche una Community Edition gratuita e una Personal Edition economica .

Http://content.usa.visual-paradigm.com/websiteimages/images/products/ag10/agtitle.gif

Per la modellazione Agile c'è anche Agilian che è un po 'più flessibile, aggiunge funzionalità extra per supportare le smartboard e conosce anche la mappatura mentale.

La cosa che mi piace di più dei loro prodotti è la flessibilità. Sto usando Enterprise Architect al lavoro al giorno d'oggi, ma penso che non sia abbastanza intelligente. Voglio essere in grado di elaborare rapidamente alcuni diagrammi di sequenza e fare in modo che l'applicazione mantenga il mio modello aggiornato in background, qualcosa su cui VPUML fa un ottimo lavoro.

Secondo me è molto meglio di Enterprise Architect, anche se è un ottimo strumento :)


1
Ho usato la maggior parte dei principali strumenti UML (la maggior parte dei quali ampiamente) (Rational Rose, Tau, Rhapsody, Enterprise Architect, Visio e molti altri) e mi sono imbattuto per caso in Visual Paradigm, di cui non avevo mai sentito parlare. Soffia tutti gli altri fuori dall'acqua. Ha le sue 'stranezze ma non è così noioso con cui lavorare (rispetto alle altre che sono molto fastidiose) ed è molto potente.
Dunk,

2
Paradigma decisamente visivo. Lo sto usando da qualche tempo, e recentemente ho anche valutato altri strumenti di modellazione UML (gratuiti e commerciali) e Visual Paradigm è semplicemente il migliore quando si tratta di usabilità e chiara struttura dell'interfaccia utente. Inoltre, tutti i diagrammi sembrano essere assolutamente conformi agli standard (purtroppo, non tutti gli strumenti di modellazione lo sono). Posso dirlo, come ho anche recentemente lavorato attraverso gli standard UML, MOF, XMI. VP è il preferito in assoluto per me.
Kissaki,

19

Dai un'occhiata a BOUML : multipiattaforma (QT), funziona abbastanza bene e supporta il lavoro di collaborazione.

BOUML è un toolbox UML 2 gratuito (in fase di sviluppo) che consente di specificare e generare codice in C ++, Java, Idl, Php e Python.

BOUML funziona con Unix / Linux / Solaris, MacOS X (Power PC e Intel) e Windows.

Da Wikipedia :

Le versioni precedenti alla versione 4.23 sono software libero concesso in licenza in GPL. BOUML 5 e versioni successive sono software proprietari.


@Silvia +1 per aver consigliato BOUML. È un peccato che lo sviluppatore sia stato spinto a smettere di svilupparlo. A differenza di altri strumenti che sembrano più giocattoli e sono incompleti, questo è in grado di leggere il codice esistente (reverse engineering) in diverse lingue e anche di importare da Rational (IBM) Rose e altri strumenti UML. È nostra perdita che ha smesso di svilupparlo.
Win Win

In effetti, lo sviluppo è appena stato interrotto nella sua forma gratuita, lo sviluppatore principale ora utilizza le licenze a pagamento, mantenendo lo strumento aggiornato.
Kikeenrique,

In effetti, c'è un fork dell'ultima versione open source attualmente in fase di sviluppo. Anche se non è ancora del tutto presente, alcune cose funzionano e funzionano meglio rispetto all'originale. Google "Douml"
Zeks

Inoltre, mi piacerebbe molto un po 'di aiuto nello sviluppo perché ci sono un sacco di cose da sistemare / fare e ce n'è solo una: sono un po 'troppo difficili da eliminare, non essendo sviluppatori originali.
Zeks,

18

Se stai cercando di uscire e lavorare su UML senza dover imparare un nuovo strumento complesso, darei un'occhiata a Violet UML . L'ho usato per un discreto successo in passato.


Schermata: img516.imageshack.us/img516/2069/violeti.jpg . È di gran lunga il miglior strumento uml gratuito a mio avviso
Chris S

Wow, l'ho appena provato ed è fantastico. L'unica cosa sulla mia lista dei desideri è un modo per reindirizzare le frecce. Vale a dire un punto medio trascinabile.
sixtyfootersdude,

17

PlantUML è uno strumento open source di markup da linguaggio di linguaggio a diagramma UML in Java che merita di essere menzionato qui. Si posiziona in alto nella scala di usabilità a causa della sua sintassi intuitiva per i vari diagrammi e componenti del diagramma.


14

Dia è una scelta possibile. Non è sicuramente lo strumento migliore, ma è funzionale.


Schermate con la modalità UML qui: live.gnome.org/Dia/Screenshots
Janus Troelsen

È comunque uno strumento facile da usare e ideale per i miei scopi (solo diagrammi, nessuna generazione / integrazione di codice, principalmente diagrammi di classe). Funziona su Linux, Winodws e MacOSX: il formato file può essere utilizzato su più piattaforme.
dodgy_coder il

13

Enterprise Architect dei sistemi Sparx è lo strumento migliore che abbia mai usato. Un po 'caro a $ 199 (edizione professionale), ma ne vale la pena.


2
Mi piace molto usare Enterprise Architect. Non lo considero così costoso, soprattutto per uso professionale. E quando lo confronti nel prezzo e nelle caratteristiche con la rosa razionale, vince a mani basse.
Ajaxx,

avendo appena fatto una valutazione per un cliente, sono d'accordo - $ 199 è un valore eccezionale considerando che include l'importazione del codice e il codegen! Nulla si è avvicinato in termini di efficacia dei costi.
Andy Dent,

tra l'altro, Visio professionale costa MOLTO di più
Boris Treukhov il

Per un'azienda 200 $ sono solo un uomo di mezza giornata. Molto a buon mercato.
Lluis Martinez,

13

Aggiungerò UMLet che non ho ancora provato, ma sono stato selezionato nel mio ufficio per iniziare a fare diagrammi.
Sembra semplice, i diagrammi non sono sexy, ma sembra abbastanza completo per quanto riguarda il tipo di diagrammi che puoi fare. Sembra avere anche buone capacità di esportazione (importante!), È flessibile può supportare componenti personalizzati) e può essere utilizzato come plugin Eclipse.


Ho appena iniziato a usare UMLet oggi: in breve, è semplice, veloce e facile.
Dolph,

11

Astah UML (ex-JUDE) è abbastanza buono.


Funzionalità mancanti: denominazione dello stato iniziale e finale, nidificazione dei diagrammi gerarchici della macchina a stati nello stesso diagramma (senza diagrammi di collegamento). Cosa c'è di buono: miglioramenti continui, l'autore si è impegnato nelle specifiche UML, più di un semplice strumento di disegno. Funziona su UNIX. Ha una lunga strada da percorrere per portarla al livello di funzionalità "Enterprise Architect".
user77115

10

Non sono stato in grado di trovare uno strumento di creazione di diagrammi UML gratuito di prim'ordine, ma se sei interessato a diagrammi puri, al contrario di ingegneria di andata e ritorno, andrei con Microsoft Visio. Se vuoi un'ingegneria di andata e ritorno completa, Rational Rose.

Questo elenco di strumenti UML su Wikipedia potrebbe anche tornare utile.


10

Carta e penna. Se riesci a ottenere la scansione in un formato vettoriale, ciò può essere utile quando apporti modifiche minori.


Con la stessa penna puoi scrivere il codice su un altro foglio e scansionarlo. Grazie alla OCRtecnologia disponibile , puoi convertirlo nel testo in un secondo momento per un ulteriore utilizzo! (A proposito, uso anche carta e penna per i diagrammi solo perché è più veloce e mi piace anche disegnare molto dall'infanzia!)
Mahdi,

10

Dovresti provare Creately. Funziona nel tuo browser e può collaborare in team.

supporta diagrammi di sequenza, classe, ER, usecase ecc. funziona alla grande e ha una versione gratuita disponibile.

Creately.com


9

Puoi anche dare un'occhiata a Lucid Chart per uml e altri tipi di diagrammi.


Wow. LucidChart è fantastico per questo. Ho già visto le loro cose flowcharting prima, ma questi strumenti UML sono facili da usare e abbastanza completi per quello che mi serve.
xiaoqun,

Ho anche trovato LucidChart perfetto per la creazione di diagrammi UML rapidi e di bell'aspetto. L'account gratuito ti consente di avere un numero illimitato di diagrammi, inoltre puoi esportare in formato PNG, JPEG, PDF, selezione area o intero documento. Colpito!
Cam




4

Mi piace VisualParadigm menzionato prima in questo thread. È potente e facile da usare, penso che dia più potenza rispetto ad altri strumenti.

Se hai bisogno di qualcosa di semplice, rapido e facile (e gratuito) c'è un ottimo strumento chiamato UMLet - lo consiglio vivamente . Ho provato molti degli strumenti di creazione di diagrammi UML e questo è il più semplice (e mi permette ancora di fare grandi diagrammi). Questa è la mia scelta :)


3

Ovviamente se a lungo termine sei seriamente interessato a UML, devi utilizzare uno strumento software UML come quelli suggeriti nelle altre risposte, ma ho scoperto che una lavagna è uno dei migliori strumenti per diagrammi UML, specialmente durante la progettazione fase o quando stai esplorando alternative diverse. Niente è meglio di una lavagna per velocità / flessibilità nella mia mente. Sono anche ottimi per la collaborazione, supponendo che tu sia collocato fisicamente.



3

Non posso credere che nessuno abbia menzionato l'Editor UML di NetBeans, è fantastico e soddisfatto tutti i miei requisiti UML basati su Java.

Questo dopo aver testato JDeveloper UML, ArgoUML e StarUML.


3

Di recente ho condotto un sondaggio " Quali strumenti UML usi ?" nel mio blog NetBeans UML è stata la migliore scelta open source e Enterprise Architect è stata la migliore scelta commerciale.


3

È possibile creare diagrammi di classe, sequenza, componente, caso d'uso e attività UML in Visual Studio 2010 Ultimate. È possibile collegare questi diagrammi agli elementi di lavoro di Team Foundation in modo da poter pianificare e tenere traccia dello sviluppo e testare il lavoro. È inoltre possibile creare sequenze, grafici delle dipendenze e diagrammi di livello dal codice e utilizzare Architecture Explorer per esplorare ed esplorare la soluzione.

Ho pubblicato più collegamenti sul mio profilo per ulteriori informazioni.


2

Potresti dare un'occhiata a MagicDraw o Visual Paradigm per UML . Entrambi offrono edizioni della community che, ovviamente, non coprono l'intera gamma di funzionalità, ma potrebbero essere sufficienti se si desidera creare solo diagrammi e non generare codice o eseguire un'ingegneria di andata e ritorno completa.


2

Rational e Together / J sono i prodotti migliori, ma costosi.

Nella mia esperienza, mi sono divertito con Eclipse Omondo e Sparx Enterprise Architect. Omondo si integra perfettamente con Eclipse per la generazione di codice e ha un aspetto molto intuitivo. Tuttavia, è fortemente legato a Java. Sparx è un buon strumento per il prezzo, ma manca dell'intera gamma di diagrammi UML 2.0.

NON preoccuparti di Poseidon. È pieno di bug, gonfio e inutilizzabile a tutti gli effetti.


2

Per i diagrammi di sequenza puoi anche provare Trace Modeler . Non è gratuito ma ha un'interfaccia eccezionale, molto amichevole e produttiva. Puoi usarlo su qualsiasi piattaforma.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.