World Software Quality Report: questo non è un paese per tecnici!

Webinar “FOCUS & POSITIONING”

Giovedì 27/02/2020 ore 14.00

Stavolta un webinar chiaramente dedicato a un argomento non tecnico: con il rischio che venga bollato come “noioso” e poco eccitante per un programmatore/sviluppatore, in realtà l’argomento è estremamente spinoso e riguarda tutti quanti, più da vicino di quanto tu possa immaginare.

In molti si chiedono in che cosa investono le aziende per garantire la qualità dei loro prodotti. Alcuni spunti di riflessione arrivano dal recente World Quality Report 2019, una finestra sul mondo del Quality Assurance (QA) e Test. Il report misura l’importanza delle attività di QA e Test per circa 1.700 CIO e altri professionisti senior di 32 paesi, su 8 aree di applicazione.

Un report sempre molto attuale ed efficace nel descrivere quelli che sono i trend, le esigenze e le sfide del mondo dello Sviluppo Software di Qualità. Su una cosa in particolare poi mi trovo totalmente d’accordo… sul fatto che l’IT non debba assolutamente essere solo nella ricerca della Qualità ma debba essere accompagnato da altre figure aziendali, in una visione aziendale olistica.

La novità è che la Qualità tende a non essere più un’attività isolata dello Sviluppo Software, ma assume contorni sempre più sfumati e pervade tutti i processi aziendali di sviluppo del prodotto. Il report tenta inoltre di tracciare gli investimenti in Quality Assurance e Test ma trova difficoltà in questo compito a causa del nuovo carattere pervasivo della Qualità. Però… questo secondo me è il grosso limite dello studio: quel coraggio in più nell’analizzare la situazione da vari punti di vista non convenzionali.

Infatti, quali sono le soluzioni proposte?

Soluzioni tecniche… sempre e solo tecniche… AI, reti neurali, security, automazione…

Ecco, il rischio è sempre il solito, quello tipico di tutti noi tecnici cioè quello di

fare i nerd e continuare ad avvitarci su noi stessi, in maniera ricorsiva, senza guardarsi intorno e soprattutto senza uscire dalle mura dell’IT e del Software

cercando di capire cosa fanno le aziende di successo nel mondo e soprattutto in altri settori.

Molto spesso i problemi che si trova ad affrontare un reparto R&D di un’azienda sono semplicemente irrisolvibili perché fallaci fin dalla base… perché manca totalmente una cultura aziendale adeguata, o perché la stessa azienda ha un posizionamento sul mercato totalmente sbagliato, perché opera in un settore e in una categoria già affollati o ancora peggio che non interessano a nessuno.

E questo perché noi esperti di sviluppo software e attività affini non abbiamo il coraggio di dialogare con (o di assumere!) altre figure aziendali considerate del tutto estranee e “sporche” rispetto al puro mondo dei bit.

Non parliamo con gli esperti di marketing e non ci mettiamo a studiare con loro delle soluzioni efficaci per risolvere i problemi dei clienti PRIMA di creare una nuova soluzione che magari non serve a nessuno, invece che proporre prodotti che non risolvono nessuna esigenza e alla fine, anche se tecnicamente perfetti e bug-free, non si venderanno (vedi SONY BetaMax, IBM OS/2, ecc…)

Così come noi manager di R&D Software o IT non dialoghiamo con le controparti aziendali economiche e finanziarie… non abbiamo idea dei costi, di parametri come il T.C.O. (Total Cost of Ownership) di un progetto, per cui continuiamo a selezionare fornitori che ci costeranno troppo in futuro come supporto, clienti che non portano nessun margine anzi ci danno problemi di cashflow e così via, perché l’economia e il marketing vengono considerati una materia noiosa e inutile.

Noi tecnici, sviluppatori, manager, CIO dobbiamo rimetterci a studiare o almeno ad apprendere i concetti basilari di marketing, di posizionamento, di focus, di economia, di R.O.I. (Ritorno dall’Investimento), di T.C.O… solo così si può pensare di costruire un’azienda, un brand o anche solo un progetto che possa stare in piedi, al di là dei meravigliosi tecnicismi che si usano per tenere insieme un novello moderno Frankenstein tecnologico, che però non serve a nessuno e ci si rivolta contro.

In questo webinar troverai finalmente le risposte a queste domande:

  • Quali sono i ragionamenti da fare possibilmente PRIMA di entrare sul mercato?
  • Come mi devo comportare rispetto alla mia concorrenza, diretta e indiretta?
  • Meglio concentrarsi su pochi prodotti e servizi, o trovare il modo di accontentare tutti?
  • Come posso estendere la varietà di prodotti che vendo o realizzo, senza danneggiare me stesso?

Le tematiche che verranno affrontate infatti non sono di stampo esclusivamente tecnico ma sono divise in tre macro-aree:

MARKETING-FIRST

Le 3 ere delle aziende di produzione software e l’impatto con il mondo tecnico e dei Requisiti

POSITIONINING

Analizzare il mercato, la concorrenza e posizionarsi nella testa del cliente

FOCUS

Concentrare tutta la potenza di fuoco del tuo marketing su pochi (ma buoni) servizi e prodotti, in modo da massimizzare il ritorno economico e il successo aziendali

Anche se sei un tecnico, dammi retta: iscriviti senza indugio a questo webinar e se fai parte del livello M.E.D.S. DAL-B potrai farmi anche delle domande durante lo stesso.

Per registrarti a questo webinar:

Webinar “FOCUS & POSITIONING per aziende Software

Giovedì 27/02/2020 ore 14:00

Massimo

[WEBINAR] Metriche e KPI per lo Sviluppo Software di Qualità

E’ disponibile la registrazione del Webinar di giovedì 16 Gennaio dedicato a uno degli strumenti più potenti e sottovalutati del mondo dello Sviluppo Software.

Presentato da Massimo Bombinouna delle autorità di riferimento del software Business- e Safety-Critical in Italia, il webinar ha trattato le tematiche già presenti nel libro Software Sicuro, ma in particolare ha risposto alle seguenti domande:

  • Quali numeri del tuo progetto ti serve sapere? 
  • Quali metriche devi sempre tenere sotto controllo?
  • Sto guadagnando o perdendo, economicamente parlando? 
  • Quali trend sono preoccupanti e come individuarli in tempo? 
  • Quando ti puoi finalmente rilassare?

Ecco le registrazioni del webinar dedicato a Metriche e KPI: un argomento per il quale mi chiedete sempre più spesso approfondimenti, perché presenta tanti aspetti abbastanza sconosciuti e perché comunque ha un sacco di sfaccettature possibili e non si capisce bene qual è l’approccio più corretto.

Infatti, condurre un progetto di sviluppo di codice senza degli indicatori precisi, è come guidare un’auto di notte, a fari spenti, senza strumentazione del cruscotto e senza navigatore. Piuttosto pericoloso, vero? E questa sensazione di non sapere dove si sta andando è proprio identica a quella di un progetto software che procede senza verifiche.

Quali metriche?

Le metriche che sono state affrontate infatti non sono di stampo esclusivamente tecnico ma sono divise in tre macro-aree:

  • KPI ECONOMICI: gli indicatori finanziari chiave per valutare lo stato di salute di un’azienda
  • KPI SUPPORTO: un punto di vista analitico e numerico sul livello di servizio del supporto
  • KPI PROCESSO: l’approfondimento sugli aspetti tecnici analizzati da un punto di vista sintetico

Inoltre sono state date delle spiegazioni sulle metriche più interessanti e misconosciute come:

DRE (Defect Removal Efficiency)

Si chiama Defect Removal Efficiency: è la capacità di estrarre quindi identificare e correggere gli errori all’interno di un ciclo di sviluppo software, prima che il prodotto esca sul mercato. Come un setaccio a più livelli, infatti, il ciclo di verifica e validazione deve individuare più problemi possibili, prima che il prodotto contenente software venga consegnato al cliente.

E’ una metrica semplicissima da calcolare ma nello stesso tempo una delle più efficaci in assoluto per stimare la bontà di un processo di sviluppo software, la sua efficacia nel raggiungere la qualità tramite la rimozione dei bug prima possibile nel ciclo di sviluppo.

Infatti, le migliori organizzazioni al mondo ormai utilizzano questo sistema per valutare gli sforzi di miglioramento nella continua ricerca di dare dei prodotti sempre più affidabili. 

Nel Webinar “Metriche & KPI”di Giovedì 16/01/2020 ho dato le risposte a queste domande:

  • Come si fa a calcolare questa metrica così semplice ed efficace?  
  • Quali sono i vantaggi rispetto ad altri approcci e ad altre metriche anche più sofisticate?  
  • Come è possibile riassumere in un solo numero una serie di valutazioni sull’intero ciclo di vita di design, sviluppo e test del software?   

MOL

Model Oriented Language?

Multiple Object Lines?

Micro-Optimized Linker?

No il significato di questo acronimo è semplicemente:

Margine Operativo Lordo

Un termine usato in economia per identificare un parametro ben preciso del Bilancio, in particolare del Conto Economico.

Significa in parole povere quanto ti rimane in tasca dopo che hai pagato tutti i costi variabili di un progetto, quelli strettamente correlati all’esecuzione del progetto stesso. 

Rimangono fuori quindi tutti gli stipendi, gli affitti e le spese fisse… che vengono considerate in altri ambiti del bilancio che in questo momento non ci interessano.

Ascolta tutte le risposte nel Webinar “Metriche & KPI”di Giovedì 16/01/2020

  • Che senso ha usare questa metrica economica in un ambiente così tecnico come quello dello sviluppo software?   
  • Per quale motivo un manager dovrebbe fare attenzione ad aspetti che non gli competono direttamente come quella di badare al bilancio
  • Come si lega questa metrica al più importante ma trascurato parametro di costo di un progetto ossia il T.C.O. (Total Cost of Ownership) 

TCO (Total Cost of Ownership)

Il T.C.O. (Total Cost of Ownership) è un numero molto subdolo, perché è l’unico che ti dice la vera verità riguardo ai costi durante tutto il ciclo di vita di un prodotto. Quindi anche quelli che devi spendere dopo l’entrata sul mercato… quando i clienti cominciano a usare i tuoi prodotti e a riscontrare problemi sul campo di vario tipo.

Questo è il motivo per cui dovresti cominciare già da subito a calcolare questa metrica, ma se non l’hai fatto anche se rischi di trovarti a rimbalzare contro un muro di gomma.   

  • Come mai tutta questa resistenza a parlare e soprattutto a implementare il calcolo del T.C.O.?   
  • Come mai quasi nessuno in azienda, nemmeno tu pensandoci bene, ha un vero interesse a tirare fuori questi conti?  
  • Perché soltanto il C.F.O. (Chief Financial Officer) di un’azienda spinge a calcolare il T.C.O. ma in realtà dovresti cominciare a preoccuparti neanche tu?

Tu pensa come potresti essere avanti rispetto alla concorrenza, conoscendo queste strategie di Modellazione e Simulazione… che saranno poi ben esposte nel corso M.E.D.S. Milano e Roma (Primavera 2020).

Ascolta tutti i Webinar del 2019!

Registrati al canale YouTube per guardare gli altri video ed essere avvisato quando ne escono altri!

Canale YouTube SOFTWARE SICURO

Per chiarimenti, dubbi e informazioni e per essere avvertito per i prossimi webinar, non esitare a contattarmi:

A presto!

Massimo

WEBINAR 2019: registrazioni disponibili

Dopo il successo del 2019, ecco le registrazioni dei webinar effettuati:

07-28 Marzo: Requisito Perfetto (da cui il video-corso) 

21 Maggio: Verifica e Validazione del Software Automotive con ISO-26262 
 
 

04 Luglio: Presentazione Metodo M.E.D.S. 25 Luglio: Il grande inganno del Test Software

19 Dicembre: Modellazione e Simulazione dei Requisiti Software

Sappi che ho voluto pianificare altri 5 incontri per la prima metà del 2020, dedicati ad approfondire gli argomenti da voi più richiesti.

DI SEGUITO, LE DATE DEI PROSSIMI WEBINAR:

  • 16/01: Metriche KPI
  • 20/02: Focus Positioning per aziende Software
  • 19/03: Team Management Cultura Aziendale
  • 16/04: Strategie Avanzate di Testing Continuous Integration
  • 25/06: Approfondimento su Requisito Perfetto

A CHI SONO RIVOLTI I MIEI WEBINAR?    


– IMPRENDITORI che hanno a che fare con il software, direttamente o all’interno dei prodotti che creano

– MANAGER che gestiscono un gruppo di lavoro che scrive o integra del software

– TECNICI che vogliono imparare delle metodologie avanzate che migliorano la qualità e velocizzano il lavoro di scrittura del software

TI ASPETTO AI PROSSIMI INCONTRI!  

Registrati al canale YouTube di SOFTWARE SICURO per guardare gli altri video:

Canale YouTube SOFTWARE SICURO

Clicca invece qui per conoscere meglio CHI SONO IO E QUALI SONO I MIEI PROGETTI RICONOSCIUTI SIA A LIVELLO NAZIONALE SIA INTERNAZIONALE!
Per ogni tuo dubbio, perplessità e curiosità, scrivi pure a:
assistenza@softwaresicuro.it
Massimo

WEBINAR Modellazione e Simulazione dei Requisiti Software

E’ disponibile la registrazione di un webinar dedicato a uno degli strumenti più potenti e sottovalutati del mondo dello Sviluppo Software:

La Modellazione e Simulazione (dei Requisiti Software)

Presentato da Massimo Bombinouna delle autorità di riferimento del software Business- e Safety-Critical in Italia, il webinar parlerà di tematiche già trattate nel libro Software Sicuro, ma in particolare insisterà sul fatto che   

le normali tecniche di scrittura dei Requisiti Software soffrono di un ENORME problema perché sono:

  • POCO FORMALI
  • SOGGETTIVE
  • NON CONTROLLABILI

Per questo motivo, infatti, da oramai tanti anni esistono strumenti molto potenti non tanto per la scrittura, ma per la MODELLAZIONE e la SIMULAZIONE. Ma di cosa? Proprio dei REQUISITI SOFTWARE!

In questo webinar sono stati introdotti alcuni concetti fondamentali come:

  • MODELLAZIONE: LINGUAGGI E TECNICHE 
  • REQUISITI: COME MODELLARLI?
  • SIMULAZIONE: VERIFICA ANTICIPATA
  • SysML, UML, MARTE, DoDAF/MODAF
  • MATLAB Simulink, Ansys SCADE

e vengono presentati tutti i pro e i contro e potresti scoprire come la modellazione e simulazione potrebbero darti enormi vantaggi.
Tu pensa come potresti essere avanti rispetto alla concorrenza, conoscendo queste strategie di Modellazione e Simulazione… che saranno poi ben esposte nel corso M.E.D.S. Milano e Roma (Primavera 2021).

A CHI E’ RIVOLTO?

IMPRENDITORI che ha a che fare con il software, direttamente o all’interno dei prodotti che crei

MANAGER che gestisce un gruppo di lavoro che scrive o integra del software

TECNICI che vuole imparare delle metodologie avanzate che migliorano la qualità e velocizzano il lavoro di scrittura del software

Registrati al canale YouTube per guardare gli altri video ed essere avvisato quando ne escono altri!

Canale YouTube SOFTWARE SICURO


Stai proteggendo il tuo Business dai rischi dello Sviluppo Software?

Mi capita molto spesso di parlare con molti di voi professionisti che si occupano di sviluppo software a vari livelli (sviluppatori, manager, imprenditori) e spesso mi confronto con una preparazione tecnica ineccepibile, eccezionale: molto spesso migliore della mia! 

Avendo lavorato pure io per oltre vent’anni nel puro sviluppo software critico, in settori come telecomunicazioni, aerospaziale, automazione industriale e altri ancora, soprattutto agli esordi e per parecchi anni a seguire, mi sono sempre sentito sicuramente un vero “nerd” su tanti argomenti, nel senso positivo di sviluppatore appassionato e sempre aggiornato su qualunque novità e innovazione, con la sensazione di essere imbattibile nel mio settore. Anche se poi purtroppo ho dovuto smettere di seguire alcune di queste tecnologie, perché rimanere aggiornati risulta sempre più difficile, in quanto si spende un sacco di tempo per altre attività più “noiose” e burocratiche e nel frattempo la tecnologia corre molto veloce.

Infatti, chi lavora da anni quotidianamente immerso in un settore specifico, applicando sempre più spesso la stessa tecnica, un tool, un linguaggio sviluppa una padronanza tale della materia da avere letto più o meno tutto quello che esiste sull’argomento, sperimentato varie soluzioni e alla fine si sente circondato da un’aura di sicurezza, di confidenza che d’altra parte è del tutto motivata, sia dalla teoria che dai fatti. Difficile se non impossibile prenderli in fallo: d’altronde, anche nel tuo specifico caso… sei giustamente convinto che, nel tuo lavoro, te la cavi piuttosto bene e non hai bisogno di consigli, giusto? 

Ecco, questo è un po’ quello che mi capita quotidianamente, lavorando con tanti clienti diversi in vari settori:

spesso uno si ritrova un po’ chiuso nel suo habitat tecnologico e informativo, convinto di sapere esattamente quali sono i propri punti di forza e le debolezze sulle quali lavorare e sviluppa una sorta di diffidenza, di chiusura verso apporti esterni di esperienza, di consigli, se non addirittura di corsi o consulenze che vengono ritenute inutili e superflue

con il rischio di essere inavvertitamente esposti ai rischi continui e inaspettati legati allo sviluppo del Software e la conseguenza di mettere in pericolo il proprio Business (da cui il concetto di Business-Critical)

In realtà, ci sono almeno due aspetti aggiuntivi che nulla tolgono alla competenza e capacità tecnologica nel proprio settore specifico, ma che sono fondamentali per gestire i variegati rischi relativi allo sviluppo di codice e di conseguenza per poter rispondere alla incredibile complessità dello sviluppo software, che rimane l’attività umana intellettiva più complessa in assoluto: in termini di numero di giorni/uomo, un qualunque software applicativo neanche troppo sofisticato batte senza problemi la complessità, la varietà, il tempo impiegato nella creazione anche di grandi opere come la Divina Commedia o la Cappella Sistina.

Di seguito, cercherò di spiegarvi come la mia esperienza costellata di errori, di passi falsi, di pessime esperienze sia stata implementata con una serie di suggerimenti, di strategie prima appresi da studi teorici, da Master, da approfondimenti, poi sperimentati negli anni su vari fronti e infine distillati in un metodo che potrebbe rivelarsi fondamentale su come fare a cambiare rotta e a gestire tutti gli aspetti critici dello sviluppo applicativo.

Vediamo quali sono questi due approcci fondamentali ma che chi è troppo immerso negli aspetti puramente tecnologici e specifici del settore tende a trascurare, preso com’è dalla quotidianità e dalla fretta di consegnare, di soddisfare il cliente, di rispondere al management.

Read More

Presentazione corso M.E.D.S.

Questo video servirà a presentare il nuovo corso M.E.D.S. sul metodo più innovativo e strategico mai visto in Italia nel campo del software critico:
Method for 
Efficient 
Development of 
Software

Presentato da Massimo Bombino, una delle autorità di riferimento del software Safety-Critical in Italia, e da Giuseppe Randazzo, esperto di sofware per la robotica, il webinar parlerà di questo nuovo metodo M.E.D.S. e di come si stia affermando, grazie anche al libro Software Sicuro, come  

l’unico modo di gestire un progetto software in maniera efficiente, sicura e soprattutto remunerativa   

Infatti, non sarà solamente un corso tecnico, anche se ovviamente verranno trattate alcune tematiche avanzate, ma si tratterà di un vero e proprio corso che si rivolge principalmente a MANAGER NEL MONDO DEL SOFTWARE: quindi a tutti coloro che gestiscono team (o intere aziende) dove il software giochi un ruolo fondamentale nel fornire le funzionalità del prodotto.


I 5 principi fondamentali del corso M.E.D.S:

  1. STRATEGIA
  2. ECONOMIA
  3. GESTIONE
  4. SUPPORTO
  5. PROCESSO

sono l’unico modo per tenere sotto controllo non solo gli aspetti tecnici (dove sicuramente sei già bravo, ma qualcosa da imparare c’è sempre anche e soprattutto dagli eccellenti co-docenti come appunto Giuseppe Randazzo e… un importantissimo ospite che verrà svelato nel webinar!), ma soprattutto aspetti di marketing specifico per il software, di posizionamento sul mercato, di costi e di ritorno dall’investimento, di gestione di team anche distribuiti geograficamente, della gestione dell’imprevistoe altre tematiche di sicuro mai affrontate in Italia, almeno non in uno stesso corso.


Tu pensa come potresti essere avanti rispetto alla concorrenza, applicando queste tecniche… che saranno poi ben esposte nel corso M.E.D.S. Milano (PRIMAVERA 2021).

Il videoPresentazione corso M.E.D.S.” è disponibile sul nostro canale YouTube:

La via AGILE alla Certificazione Avionica del Software

Se ci sei passato, saprai benissimo che la Certificazione Avionica Safety-Critical del Software ha una brutta fama… quella di letteralmente un bagno di sangue.

Sono tantissime le cose che devi fare di più rispetto a un normale progetto… vediamo alcune tanto per intenderci:

  • Avere un processo formale, rigido e ben definito
  • Rispettare formalmente tutte le fasi del ciclo di vita e le transizioni fra di esse
  • Soddisfare tutti gli obiettivi richiesti tramite attività, documenti, evidenze, checklist
  • Dotarsi dei migliori strumenti nonché di fornitori o sub-contractor adeguati

In poche parole… questo vuol dire solamente tre cose:

SOLDI, SOLDI e ancora SOLDI

E ovviamente tempi molto più lunghi, ritardi che si dilatano in maniera esponenziale così come i rischi di insuccesso e via discorrendo.

Esiste una via più rapida ed efficiente alla Certificazione Avionica?

E’ possibile riuscire ad essere più efficienti , senza sacrificare nessuno degli obiettivi Safety-Critical? Si possono accorciare i tempi, senza scordare nessuno degli obblighi dati dagli standard? Come si possono contenere i costi e rimanere compliant? Come ci può aiutare in tutto questo il M.E.D.S. (Method for Efficient Development of Software)?

Ne parlerò a Monaco, alla conferenza Aerospace Testing Europe durante la Aerospace Tech Week:

https://www.aerospacetechweek.com/aerospace-testing-europe-conference-programme/

Come ogni anno, sono invitato a presentare delle soluzioni più efficienti per la Certificazione Avionica (e di conseguenza tutte le altre), quest’anno mi concentrerò su un compito apparentemente “impossibile”: dimostrare proprio come la Metodologia AGILE, che in teoria mal si presta al mondo “sicuro”, in realtà se ben usata può aiutare le aziende come la tua a vincere la sfida col Software Certificato, aiutandoti a essere più snello e rapido senza nessun sacrificio sulla Safety.

In poche parole, come il M.E.D.S. riesce a mettere insieme il Safety- e il Business-Critical.

Scopri la mia “sfida” impossibile partecipando alla mia presentazione a Monaco il 7 Marzo alle 14!

Se ti prenoti a questo link:

https://www.softwaresicuro.it/Mautic/software-sicuro-il-libro

potrai nell’occasione ricevere di persona una copia autografata (e ancora per poco gratuita!) del mio libro “Software Sicuro”, anche in inglese!

I 10 peggiori errori nel software che devi assolutamente evitare

Qual è la classifica dei 10 peggiori errori nel software che potrebbero far saltare il tuo progetto o la tua azienda?

Ho commesso errori nella mia vita professionale, tanti, anche se fortunatamente non troppi: è la strada inevitabile degli innovatori, dei curiosi, di chi adotta tecnologie promettenti o al contrario è obbligato a utilizzare quelle vecchie per vincoli aziendali imposti. Ancora più spesso, mi sono trovato a gestire i problemi degli altri! Guai a ripetizione per scelte magari fatte da chi c’era prima di me, o gerarchicamente sopra di me, o che metteva i soldi ma non si rendeva conto di quello che erano le conseguenze di certe scelte.

Ma oltre agli effetti negativi, per i quali ho quasi sempre dovuto trovare personalmente delle soluzioni o comunque dei rimedi, ho passato anche tantissimo tempo a pensare a come evitare di farli in futuro e come evitare che li facessero i miei clienti e i miei collaboratori.

Così come ci sono tanti colleghi, clienti, partner strategici con cui mi confronto quotidianamente, che da sempre vista la mia passione e dedizione alla tecnologia, mi hanno riferito le loro “disgrazie” sulle quali siamo finiti a ragionare insieme, al lavoro ma spesso anche in orari improponibili a cena se non dopocena, passati a parlare di lavoro ed elaborare insieme una soluzione, un rimedio ma soprattutto il modo per scongiurare il loro ripetersi.

Da queste cattive esperienze e dall’enorme fatica fatta per comprenderle in profondità, ho imparato tanto: mi permetto di suggerirti quali sono i 10 peggiori errori, in modo che tu possa evitare le stesse conseguenze disastrose in futuro, e le migliori strategie per evitarli.

Read More

Sticky

SOFTWARE SICURO: il libro!

Il nuovo libro di Massimo Bombino

Il primo libro che ti insegna a sviluppare

Software Affidabile ad Alta Qualità 

con l’esclusivo Metodo M.E.D.S.

Ciao, mi presento: sono Massimo Bombino, e mi occupo dello Sviluppo di Software ad Alta Qualità da 30 anni, in particolare mi sono dedicato negli ultimi 20 anni al Software soggetto alla Certificazione Safety-Critical per il Settore Avionico e Aerospaziale, il settore più rigido e impegnativo ma anche quello dove ho imparato di più in assoluto su come impostare un processo di sviluppo software che sia veramente affidabile.

Ho lavorato (e lavoro tuttora) con aziende del calibro di: Ferrari Automobili, AUDI TTTech, Boeing, Airbus, Leonardo Finmeccanica, Aermacchi, Agusta Westland, Nortrhop Grumman, Piaggio Aerospace, Thales Alenia Space, Honeywell, Telespazio, Ansaldo, Hitachi, Datalogic, AUTEC Safety, Electrolux, Transenterix, Boston Scientific, STIGA, Tecnodal, Brusa e tantissime altre, aiutandole a ottimizzare il loro Ciclo di Sviluppo Software, identificare prima gli errori tramite la Modellazione e la Simulazione, migliorare la Strategia di Test, raggiungere prima la Certificazione.

Nel corso degli anni, con i miei collaboratori ho sviluppato un metodo di lavoro molto sicuro, affidabile e veloce di scrivere il software, attigendo al meglio che offriva il panorama mondiale.

Ma mica è sempre andata così: quando ho iniziato a programmare, oramai a fine anni ’80, il mio entusiasmo iniziale da neo-programmatore si è subito scontrato con le difficoltà dello scrivere codice… bug, instabilità, problemi vari, clienti che si lamentavano… insomma altro che infinite possibilità e flessibilità, la programmazione software assomigliava sempre di più a UN INCUBO!

Dopo anni di ricerche, studi su come scrivere software migliore e notti insonni passati a sbattere la testa contro gli stessi problemi che affronti anche tu quotidianamente con lo sviluppo del software, ho finalmente trovato la strada del Software Sicuro ed Affidabile per definizione: la severissima CERTIFICAZIONE AVIONICA DO-178C.

Al costo della molta rigidità nello standard avionico, di severi standard e controlli rigorosi, di procedure lunghe e costose, finalmente però lo sviluppo software diventava una disciplina ingegneristica e ripetibile, l’ideale per produrre codice di qualità.

E così ho scoperto oramai quasi 20 anni fa come tutto il Software Safety-Critical (medicale, automotive, ferroviario ecc.) fa capo a standard simili alla DO-178C (come ISO-26262, IEC-62304, IEC-61508 ecc.), sempre però piuttosto rigidi e costosi.

Ma non era sufficiente: quando parlavo di queste cose con i colleghi, i clienti, gli imprenditori scuotevano la testa… mi dicevano:

“Massimo, io non faccio software per aerei, io faccio firmware per lavatrici, per citofoniper apparecchi industriali, per elettrodomestici,  app per telefonini… non devo lanciare missili nello spazio, il tuo approccio è TROPPO COSTOSO E COMPLICATO! Io devo consegnare al cliente settimana prossima… non tra 2 anni”

Da lì è nata la sfida: dovevo trovare il modo di svecchiare questo processo così farraginoso e rigido, dovevo snellire le procedure troppo burocratiche, ma sopratutto dovevo trovare il modo di applicare questo metodo, o meglio una sua versione più flessibile, anche al software di tutti i giorni, quello Business-Critical.

Provando e riprovando, ho attinto al meglio dello sviluppo Safety-Critical, andandolo a rendere più gestibile e più flessibile con l’altro standard dello sviluppo software moderno: AGILE. Da questo strano incrocio, è nato un metodo di lavoro assolutamente innovativo e vincente, unico nel suo genere, perché unisce il meglio dei due mondi: l’approccio M.E.D.S. (Method for Efficient Development of Software).

Esatto:

ho preso il meglio in termini di sicurezza, affidabilità e ingegnerizzazione della Certificazione Safety-Critical e il meglio in termini di flessibilità, velocità e adattabilità di AGILE e DevOps e li ho messi insieme nel Metodo M.E.D.S.

Ho quindi deciso di mettere nero su bianco la mia esperienza internazionale, fatta in decine e decine di progetto in tutto il mondo e di creare più che un libro, una vera e propria guida allo Sviluppo di Software Sicuro, dove concentrare tutte le Best Practise, le migliori tecniche e i miei peggiori errori da evitare a tutti i costi.

Con questa splendida introduzione del mio amico Vance Hilderman (Ceo AFunzion), “guru” della Certificazione Avionica, voglio farti capire come questo NON sia il classico libro di informatica o similari: 

“Ci sono buoni libri di software, che consentono al lettore di essere più intelligente dopo la lettura rispetto a prima. Ci sono grandi libri, che permettono al lettore di essere più intelligente, mentre insegnano simultaneamente le migliori strategie per colmare le lacune di conoscenza. Il libro di Massimo è un libro fantastico in quanto spiega sia il mondo del software critico, sia le intuizioni per risolvere molti aspetti legati alla qualità del codice, oggi sempre più importanti. Max ha fatto un lavoro magistrale nel rendere interessante e divertente un argomento normalmente complesso e noioso. Ci mostra in questo libro come capire meglio il regno dello sviluppo del software Safety- e Business-Critical e come applicare queste conoscenze nel mondo reale. Io e Massimo abbiamo entrambi commesso degli errori tecnici sostanziali nei nostri decenni combinati di sviluppo di software e sistemi critici per la sicurezza: con questo libro, tu puoi prevenire gli stessi errori e capire al meglio come evitare di aggiungerne di altri”

Infatti, ti posso dire che questo libro non è (solo) un libro tecnico, didascalico, solo per addetti ai lavori, nemmeno un libro teorico, astratto, basato su concetti inapplicabili o un libro generico, che parla di mille cose senza concludere niente.

E’ invece un libro concreto, basato sull’esperienza di quasi 30 anni di sviluppo di software altamente critico; pratico in quanto presenta in maniera semplice e comprensibile i concetti che devi cominciare a conoscere per far diventare il tuo sviluppo software efficiente e snello, focalizzato su un aspetto ben preciso:

trasformare lo sviluppo software

da spina nel fianco e tuo punto debole

A VANTAGGIO COMPETITIVO STRATEGICO

Vuoi sapere come ho fatto? Allora continua a leggere…

AGILE E DO-178: UN MATRIMONIO (IM)PERFETTO?

AGILE e DO-178: un matrimonio (im)perfetto?

AGILE e DO-178: quali sono gli aspetti di queste che sono tra le migliori metodologie di sviluppo che si sono affermate negli ultimi anni sul mercato e che vogliamo selezionare accuratamente in modo da prenderne il meglio?

Quali sono all’interno di questi due mondi, AGILE e DO-178, diciamo i migliori nel loro ambito ma imperfetti o troppo specializzati per essere applicati ovunque, le idee e le tecniche migliori che vogliamo cannibalizzare e parassitare, per piegarle a nostro piacimento?

Come possiamo sfrondare di orpelli, attività burocratiche e inutili, o inefficienti e costose, due processi altamente diffusi nel mondo del software in modo da ottenere una nuova sommatoria che è (quasi) perfetta?

Ecco, questo lungo articolo andrà a esaminare due metodologie molto conosciute da (quasi) tutti: il metodo AGILE e la Certificazione Avionica DO-178.

Due tecnologie mature, complete, ricche di un sacco di aspetti interessanti ma a volte burocratiche, ridondanti, inefficienti. O al contrario sbrigative, superficiali, incomplete.

Per cui andiamo a fare un po’ di cosiddetto cherry-picking e selezioneremo uno per uno gli aspetti, i principi, gli obiettivi principali dei due mondi e decideremo se portarli con noi e in che modo, se integralmente o con giudizio.

E ne tireremo fuori una metodologia nuova e a prova di bomba, da adottare in qualunque tipo di sviluppo, normato e certificato quindi Safety Critical, ma anche e soprattutto in quello normale, quotidiano del mondo Business-Critical.

 

Read More

La tua azienda sta producendo pessimo software, bruciando prezioso budget in una spirale che presto ti manderà gambe all’aria. Te ne sei già accorto? E cosa stai facendo per evitarlo?
Tech Nerd theme designed by Siteturner