Archivi categoria: UML

Arc42, per documentare le architetture software

Arc42 è un framework semplice e concreto per documentare le architetture software. L’impostazione è essenziale, ma completa.

Basato su una serie di template, è stato realizzato da Gernot Starke e Peter Hruschka, ed è usabile  gratuitamente e senza vincoli. Prevede come opzione, anche se non obbligatoria, l’uso di UML.

Le caratteristiche di Arc42 vengono spiegate in questa intervista su Software Engineering Radio.

Intervista a Grady Booch su UML

InfoQ ha pubblicato un’intervista a Grady Booch, uno dei principali autori di UML (Unified Modeling Language – la notazione standard per rappresentare i sistemi software).

L’intervista tocca vari temi, tra cui lo sviluppo iterativo e agile, UP, XP, Scrum, linguaggi di programmazione – ma buona parte è dedicata a UML, alla sua diffusione, ai suoi vantaggi e limiti, alla sua evoluzione nel corso dei due decenni trascorsi dall’idea iniziale a oggi.

Tra le osservazioni di Booch, il fatto che il 20% di UML è sufficiente nell’80% dei casi; che la diffusione di UML non ha mai superato il 20% delle realtà che sviluppano software (a parte il mondo real time, dove le percentuali sono superiori); che l’uso di UML come linguaggio di programmazione è molto diverso da ciò che i suoi autori intendevano.

Per i curiosi, può essere interessante confrontare l’intervista del 2014 con le risposte che mi diede nel 1998, poco dopo la pubblicazione di UML.

Enterprise Architect – video tutorial (in italiano)

Ho pubblicato su YouTube una serie di 14 video sull’uso dello strumento di modellazione Enterprise Architect, di Sparx Systems, uno degli strumenti più diffusi per la modellazione UML, SysML e BPMN. Sono stati registrati durante un corso tenuto recentemente presso uno dei miei clienti, che ringrazio per il permesso di diffonderli.

I video sono stati pensati per guidare i primi passi di chi non conosce Enterprise Architect, ma possono anche fornire indicazioni utili a chi già lo usa già. Sono relativi alla versione 10 dello strumento.

Programmare in UML? No, grazie.

Quando lo Unified Modeling Language (UML) nacque, attorno alla metà degli anni novanta, l’obiettivo era definire un linguaggio-notazione comune per gli sviluppatori software, che fosse in grado di standardizzare (e quindi agevolare) la documentazione dei prodotti e la comunicazione tra le persone.

Ma poi, con il nuovo millennio, l’ambizione cresce. Gli obiettivi, almeno quelli di alcuni all’interno dell’Object Management Group (OMG – il consorzio che “possiede” UML), si allargano: Model Driven Architecture, Model Driven Development, generazione di codice a partire dai modelli.

Un esempio è questa presentazione del 2013 di Ed Seidewitz, dove a pagina 19 si chiarisce la meta finale di chi spinge in questa direzione: programmare in UML.

Non era certamente questo, l’obiettivo di chi ha ideato UML. E non lo è neanche per la grande maggioranza dei suoi utilizzatori, né tantomeno per chi sviluppa davvero software. Per rimettere un po’ i piedi per terra, rimando ai miei video introduttivi su come si può usare UML in pratica (ora disponibili anche su un nuovo canale YouTube).