Netbeans con UML plugin
E’ da poco uscito Netbeans 5.5. In un precedente articolo avevo accennato alla disponibilità di un “enterprise pack” contenente un editor UML integrato in Netbeans. Da allora (eravamo a Netbeans 5.0) l’integrazione e la stabilità dei componenti è migliorata. Vediamo le cose un po’ più nel dettaglio.
Scopo e funzionalità
L’UML plugin è mirato a coloro che vogliono dare maggiore risalto al design rispetto all’implementazione. Ciò risulta utile in caso di sistemi complessi, dove il design deve essere condiviso e concordato fra più persone e dove si vuole mantenere i costi di manutenzione bassi. L’UML plugin permette di creare i seguenti diagrammi secondo la notazione UML:
- activity diagram
- class diagram
- collaboration diagram
- component diagram
- deployment diagram
- sequance diagram
- state diagram
- use case
Il plugin è ancora in uno stato beta: è molto lento, non fa alcune cose e i comandi a volte sono poco intuitivi. Nonostante questo ha anche diversi lati positivi: è integrato in Netbeans, utilizza l’ottimo componente di Tom Sawyer per il layout automatico dei diagrammi, esporta in vari formati.
Installazione
L’UML plugin è pubblicizzato come parte dell’enterprise-pack. In realtà non è necessario installare tutto l’enterprise-pack. E’ sufficiente avviare Netbeans, selezionare il menu Tools->Update Centre, selezionare la checkbox “NetBeans Update Center beta” e premere Next. Dalla lista di moduli selezionare “UML Modeling” e procedere quindi all’installazione. Per attivare il modulo occorre far ripartire Netbeans.
Struttura dei progetti e (mancanza di) round-trip engineering
Quando si lavora con il plugin bisogna sempre ricordarsi di creare due progetti: uno per Java e l’altro per UML. Non è possibile creare la parte UML all’interno di un progetto Java, per esempio nella directory di documentazione. Bisogna per forza tenere i due progetti separati.
Però una relazione fra i due progetti esiste ed è importante spiegarla. Chiamiamo EsempioJava il progetto Java ed EsempioUML il progetto UML. La situazione è mostrata nella seguente figura.

E’ possibile passare da EsempioJava e EsempioUML tramite l’operazione di reverse-engineering (disponibile dal menu sul progetto EsempioJava) come mostrato nella seguente figura. Notare la selezione di “Use Existing Project” e quindi l’indicazione di EsempioUML come “Target Project”.

E’ anche possibile passare da EsempioUML a EsempioJava tramite l’operazione di generazione codice (disponibile dal menu sul progetto EsempioUML), come mostrato nella seguente figura. Notare la selezione della directory di EsempioJava in cui risiedono i sorgenti.

E’ importante sapere che la funzione di generazione del codice distrugge le classi Java eventualmente già presenti, con conseguente perdita di implementazioni, commenti o annotazioni inserite a mano nel codice ma non presenti a livello di UML. Questa limitazione fa sì che il plugin NON sia uno strumento di round-trip engineering in quanto, appunto, il passaggio da UML a Java distrugge le modifiche apportate al codice.
Utilizzo consigliato
Vista la limitazione sul reverse-engineering, rimangono due modi per utilizzare il plugin con successo.
Per progetti nuovi:
- Creare il progetto Java vuoto
- Creare il progetto UML vuoto
- Popolare il progetto UML con i modelli desiderati
- Quando i modelli sono soddisfacenti, eseguire una generazione di codice da UML a Java
- Proseguire con il normale sviluppo Java senza alterare i modelli UML
- Ogni tanto effettuare un reverse-engineering per sincronizzare i modelli a Java
Per progetti Java esistenti:
- Caricare il progetto Java esistente
- Creare il progetto UML vuoto
- Eseguire un reverse-engineering da Java a UML
- Proseguire con il normale sviluppo Java senza alterare i modelli UML
- Ogni tanto effettuare un reverse-engineering per sincronizzare i modelli a Java
Weblog di Paolo Predonzani » Blog Archive » Qualche diagramma UML con Netbeans ha detto,
19 novembre 2006 a 18:02
[...] « Netbeans con UML plugin [...]
matteo ha detto,
7 agosto 2008 a 19:58
salve,
dove posso trovare precisamente il plugin da aggiungere a netbean??
grazie
ciao
paolo.predonzani ha detto,
8 agosto 2008 a 11:22
Il plugin uml fa parte della gestione integrata dei plugin disponibile/migliorata da Netbeans 6 (attualmente siamo alla 6.1 e una 6.5 milestone 1 è già scaricabile).
Quindi dai menu seleziona Tools->Plugins.
Nella finestra che compare seleziona il tab “available plugins” e quindi la checkbox relativa al plugin “UML”.
Infine premi “Install” per installare.
L’articolo originale fa riferimento al vecchio Netbeans 5.5. All’epoca il plugin in questione doveva essere scaricato e installato separatamente. Se proprio ti servisse questa versione si trova nella sezione download->archive del sito NetBeans.
mario ha detto,
19 gennaio 2009 a 10:32
grazie mille…..abbastanza esauriente.