Archivi categoria: UML

UML in Practice …

UML in Practice è una ricerca di Marian Petre della Open University, pubblicata negli atti del convegno ICSE (International Conference on Software Engineering) 2013 (devo a Jordi Cabot la segnalazione).

Si tratta dell’ennesima critica accademica allo Unified Modeling Language. Priva di ogni base scientifica (sono stati selezionate 50 persone che lavorano nello sviluppo software, e solo 15 tra queste hanno dichiarato di usare UML), e basata su criteri arbitrari (l’idea, sbagliata anche se fantasiosa, che possa esistere un uso “completo” di UML).

UML può essere usato per pensare a come risolvere un problema (disegnando forme e linee su un pezzo di carta) OPPURE per comunicare qualcosa a qualcuno per qualche scopo specifico OPPURE per generare codice software a partire da modelli. In ognuno di questi diversi ambiti di utilizzo ha senso solo l’uso selettivo di qualche parte di UML, non certamente di tutto il linguaggio.

UML 2.5: documentazione più semplice

Sul sito dell’Object Management Group è stata pubblicata, come beta, la versione 2.5 di UML, Unified Modeling Language, la notazione standard per rappresentare i sistemi software.

Dal punto di vista del linguaggio, non ci sono novità sostanziali.
Dal punto di vista della documentazione, invece, le novità ci sono, importanti: la distinzione tra “infrastructure” e “superstructure” è stata eliminata, e il manuale è stato notevolmente semplificato.

La versione 2.5 sarà ufficializzata nel 2013.

Casi d’uso 2.0

Ivar Jacobson, ideatore dei casi d’uso, ha pubblicato una presentazione di “Use Cases 2.0” (è richiesta una registrazione per scaricarla).

L’elemento più interessante è il concetto di “use case slice” (fetta di caso d’uso).

La “use case slice” corrisponde ad un insieme di scenari e di relativi casi di test da implementare in modo incrementale. Solo alcuni tra i possibili percorsi all’interno del caso d’uso, non tutti.

A volte può anche essere opportuno rilasciare la “slice” prima che l’intero caso d’uso sia completato, in quanto rappresenta già da sola un elemento di valore per gli utenti del sistema. In questo modo lo sviluppo di “slice” successive si coniuga efficacemente con gli approcci iterativi e incrementali.

UML e SysML – interoperabilità strumenti

Acquisire in uno strumento UML o SysML dei modelli creati con un altro strumento. Esigenza molto comune, per proteggere gli investimenti di modellazione precenenti nel momento in cui si decide di passare ad uno strumento diverso.

L’interoperabilità tra strumenti UML è stata possibile fin dalla partenza di UML, grazie allo standard di interscambio XMI (XML Model Interchange). Solo che il livello di interoperabilità era spesso poco soddisfacente.

Nel 2009 si è costituito, nell’ambito dell’Object Management Group (OMG), il Model Interchange Working Group (MIWG), che ha l’obiettivo di migliorare il livello di interscambio tra strumenti UML/SysML.
Ne fanno parte questi produttori (tra parentesi i relativi prodotti):

  • Atego (Artisan Studio)
  • IBM (Rational Software Architect)
  • Sodio (IBM Rhapsody)
  • NoMagic (MagicDraw)
  • Softeam (Modelio)
  • Sparx Systems (Enterprise Architect)

Il gruppo ha comunicato i risultati dei propri lavori, che dimostrano un significativo miglioramento del livello di interscambio tra i prodotti usati nello studio.