Strategie Avanzate di Testing e Continuous Integration

Giovedì 16/04/2020 ore 14.00

Torniamo sul tecnico, molto tecnico, anzi tecnicissimo con un webinar straordinario che va subito al sodo su un argomento caldissimo:

il TEST SOFTWARE

E lo fa andando ad analizzare in dettagli le tecniche più avanzate al mondo, le strategie più efficienti e i tool più moderni adottate da un’elite di aziende tecnologicamente dominanti, per rendere più rapida l’attività di Software Test anche di un fattore 1000 e oltre, contribuendo a migliorare in maniera drastica la Qualità del codice fin dal giorno Zero.

Ma di cosa stiamo parlando esattamente? No, non sono miracoli ma solide realtà: da dove si inizia quindi?

Zero-Day Testing?

Come si fa a testare dal giorno Zero, quando ancora il codice non è stato scritto? Beh AGILE ha dato una sua risposta…

il TDD: Test Driven Development

Ma come ben sa chi si sia trovato ad usare questo approccio, è più un’utopia che una realtà… una dichiarazione di intenti che si scontra con la realtà quotidiana. E allora come si fa?

Ci viene incontro nientepopodimeno che… l’avionica!

Requirement-Based Testing

Tutto si collega… tutti i webinar fatti finora e quelli futuri sono legati da un unico fil rouge, da un tema conduttore: una filiera, una catena di montaggio dove ogni elemento ha il suo peso fondamentale.

Se i requisiti sono fatti bene, come si evidenzia nel corso Requisito Perfetto… allora puoi accedere alla seconda fase: come in un videogioco, passato il primo livello, accedi al secondo. E dal TDD parti dall’inizio ad assicurare la qualità. E il test basato sui Requisiti, conti alla mano, è l’unica vera chiave per una Qualità Totale.

E poi come fai a mantenere il tuo codice sempre in costante miglioramento, anche in caso di cambiamento? Qui entra in gioco la…

Continuous Integration & Testing

Certo: integri costantemente ogni modifica e la testi… sembra facile, sembra ovvio, ma è impossibile da fare. La potenza in gioco sarebbe ingestibile:

nessuno tranne forse Google avrebbe la capacità di calcolo per realizzare veramente una Regression Testing per ogni singola modifica.

A meno che… entra in gioco la parola magica, il grande trucco finale che lascia tutti a bocca aperta:

Change-Based Testing

Basta: eccoci qua alla vera regina della festa:

la tecnica super-avanzata per una Change-Impact Analysis fatta in tempo reale, rapidissima, che abbatte tutti i tempi come dicevamo anche di un fattore 1000 ed oltre

Ma da sola non basta… ci vogliono tutti gli step precedenti: come in una catena, l’anello debole pregiudica totalmente la tenuta e il risultato finale.

Cosa ti perdi a non partecipare?

Ti perdi la strategia più avanzata al mondo di Software Testing, quella che solo le migliori aziende al mondo conoscono e utilizzano per un Time To Market sempre più opprimente.

E tu? Pensi di poterti perdere un webinar del genere che ti parla in una sola sessione di una catena di tecnologie che insieme formano un motore potentissimo:

  • Zero-Day Testing
  • Test-Driven Development
  • Requirement-Based Testing
  • Continuous Integration
  • Change-Based Testing

In una sola sessione, veramente vedrai

tutto quello che ti farà mettere il turbo al tuo processo di Sviluppo e Test Software, eliminando colli di bottiglia facendoti fare un salto quantico?

Webinar “Strategie Avanzate di Testing e Continuous Integration”

Giovedì 16/04/2020 ore 14:00

Per vedere le registrazioni dei webinar precedenti vai su…

https://www.softwaresicuro.it/Mautic/webinar-2019-registrazioni

Massimo

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 (Autunno 2020).

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

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…

Il segreto su come battere la concorrenza dei paesi low-cost nel software

Oggi vincere la sfida contro i paesi emergenti low-cost nel campo della produzione di software e firmware non è cosa facile. Quasi tutte le PMI, dopo la crisi del 2008, hanno subito profondi cambiamenti e hanno dovuto reinventare un metodo diverso per sopravvivere a queste potenti economie in espansione.

Dopo la crisi molte piccole e medie aziende di produzione di sistemi dove la componente software ha un peso crescente, hanno sperimentato la guerra dei prezzi provenienti da queste nuove economie, che spesso sono generate non solo dal bassissimo costo della manodopera seppur qualificata di ingegneri e tecnici, ma anche da politiche di aiuto statale dei paesi stessi.

Oltre a subire questo attacco a livello economico, spesso aziende spregiudicate si sono copiate anche i nostri marchi, incuranti di ogni brevetto o registrazione. Ho un cliente che ha addirittura subito una causa legale negli USA perché il suo distributore ufficiale lo ha portato in tribunale per aver venduto direttamente sul mercato a clienti finali senza riconoscere una commissione al distributore. Alla fine il risultato è stato che erano stati dei cinesi a copiare talmente bene il prodotto, con funzionalità apparentemente identiche, marchio e imballo incluso, che persino il distributore non si era accorto della truffa!!

Chissà quante altre storie probabilmente anche tu stesso hai vissuto o sentito raccontare, aziende ridotte a dimezzare o chiudere definitivamente per via di questa concorrenza sleale, basata sullo sfruttamento delle persone abbinato a politiche di aiuto statale dei paesi stessi.

Quando sei investito da questo tipo di concorrenza, all’inizio provi a resistere facendo la cosa apparentemente più logica: abbassare il tuo prezzo! Si inizia sempre in questo modo, ovviamente abbassare il prezzo è l’arma più immediata che hai a disposizione, ma anche la più pericolosa.

Read More

Scrivere software è come scrivere un romanzo di Harry Potter

HAI MAI CONSEGNATO UN TEMA, UN ARTICOLO, UN LIBRO SENZA RILEGGERLO?

    OPPURE LO HAI MAI MANDATO IN STAMPA COSI’ COM’ERA, SPERANDO CHE IL LETTORE O IL PROFESSORE TROVASSERO LORO I TUOI ERRORI ?

    SE LO RILEGGI: OGNI QUANTO LO FAI?

 

Tu normalmente quando scrivi cosa fai, aspetti di avere scritto 300 pagine per dare una rilettura? O 50? Ovviamente la risposta è uguale per tutti: NO.

Questo è un esempio che faccio spesso ai miei clienti più digiuni dell’importanza teorica e pratica dell’attività di test del software.

 

Scrivere un software è come scrivere un libro: soprattutto quando si tratta di rileggerlo

 

Prendiamo uno studente, un professionista di un altro settore, un giornalista, uno scrittore. Possiamo prendere noi stessi come esempio, perché nella vita a partire dai banchi di scuola in poi, qualcosa l’abbiamo scritta: quando rileggiamo quello che abbiamo scritto?

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