Archivi categoria: system engineering

SysML 2.0 in arrivo

La nuova versione 2.0 di SysML (Systems Modeling Language) dovrebbe essere pubblicata ufficialmente entro il 2024.

Si tratta di una versione “major”, importante perché modifica alcuni elementi sostanziali del linguaggio.

In particolare:

  • SysML 2.0 affianca una sintassi testuale a quella visuale espressa nei diagrammi, con conversione 1:1 tra le due forme di rappresentazione
  • Il metamodello di SysML 2.0 è svincolato da quello di UML  – Unified Modeling Language – per quanto le somiglianze tra i due linguaggi restino forti
  • I diagrammi strutturali di SysML 2.0 sono stati notevolmente modificati rispetto alle versioni precedenti

La documentazione “beta” della versione 2.0 di SysML è disponibile sul sito dell’OMG (Object Management Group), l’organizzazione che gestisce le evoluzioni dello standard: https://www.omg.org/spec/SysML/2.0/Beta1

Qui un video (e una presentazione pdf) che illustrano le principali novità di SysML 2.0:

System e Software Engineering – rivedere il rapporto

Nei sistemi attuali l’interazione tra progettazione degli aspetti hardware e software è sempre più importante.

Il rapporto tradizionale tra le due discipline, il system engineering e il software engineering, deve essere riconsiderato alla luce del peso sempre maggiore che il software sta assumendo.

Il direttore del Software Engineering Institute, Paul Nielsen, aveva scritto un articolo sulla necessità di una maggiore integrazione qualche mese fa: “Systems Engineering and Software Engineering: Collaborating for the Smart Systems of the Future

Ha poi ripreso e sviluppato l’idea in questo video:

Organizzazioni antifragili

Gli errori sono inevitabili. Nell’hardware, nel software, nell’uso che ne facciamo. Quando poi i sistemi sono attivi nel cloud, la complessità globale aumenta, ed aumentano di conseguenza i possibili errori. Come ridurli, o ridurne gli impatti negativi?

In The Antifragile Organization (su Communications of the ACM, agosto 2013 – articolo a pagamento) Ariel Tseitlin propone di non basarsi solo su verifiche in ambiente di test, ma di provare a creare in modo sistematico malfunzionamenti anche sui sistemi in esercizio, per renderli progressivamente sempre più robusti: “Embracing failure to improve resilience and maximise availability”.

ROI degli investimenti in system engineering

Uno studio pubblicato nel 2008 da Barry Boehm, Ricardo Valerdi e Eric Honour esamina il ritorno di investimenti (ROI) nelle pratiche di system engineering (requisiti, riduzione dei rischi architetturali, project management).

Lo studio prende in esame 151 progetti software, analizzati secondo la griglia interpretativa del metodo COCOMO (Constructive Cost Model).

Tra i risultati più rilevanti:

  • le pratiche di system engineering hanno un effetto positivo generalizzato in termini di aumento della produttività e di riduzione dei costi, a prescindere da altri fattori
  • il livello di system engineering opportuno varia in funzione delle dimensioni e della criticità dei progetti (al crescere delle dimensioni e della criticità, è necessaria una quota maggiore di attività di system engineering)

Lo studio riporta una serie di considerazioni specifiche relative al ROI delle attività di system engineering in progetti che comportano relazioni di outsourcing.

Barry Boehm, Ricardo Valerdi, Eric Honour, “The ROI of Systems Engineering: Some Quantitative Results for Software-Intensive Systems,” Systems Engineering, Volume 11, Issue 3, April 2008, pp. 221-234, disponibile all’indirizzo http://csse.usc.edu/csse/TECHRPTS/2008/usc-csse-2008-808/usc-csse-2008-808.pdf