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

Conosci il tuo debito… tecnologico?

Il software è stato inizialmente visto come qualcosa che poteva essere scritto una volta e usato molte volte senza mai “rompersi”. Tuttavia, quell’illusione svanì quando iniziarono ad apparire problemi, in ultima analisi causati da uno sviluppo continuo senza i giusti processi di controllo della qualità. Ciò era in genere dovuto a pressioni aziendali incredibili per rilasciare nuovi prodotti e funzionalità in un tempo compresso per essere sul mercato.

Questi problemi hanno portato ad applicazioni software che trasportano un’enorme quantità di problemi che hanno un nome ben preciso:

DEBITO TECNOLOGICO

Una metafora dei difetti latenti introdotti durante l’architettura, la progettazione o lo sviluppo del sistema. La difettosità accumulata quando le organizzazioni adottano queste scorciatoie di progettazione e test, al fine di raggiungere gli obiettivi a breve termine, alla fine rende il software difficile da mantenere. Con l’aumento del debito tecnologico, gli sviluppatori dedicano la maggior parte del loro tempo a correggere bug e a lottare con codice fragile, invece di concentrarsi sul core business e creare nuove funzionalità.

Molte organizzazioni ora stanno scoprendo che il software legacy ha in genere una diminuzione della durata della vita utile; dopo averlo creato e rilasciato, sono costretti a decidere se buttarlo via e ricominciare da zero, o cercare di recuperarlo. Nella maggior parte dei casi, è stato fatto un notevole investimento finanziario nella base di codice, quindi c’è una tremenda pressione per riutilizzarlo. La chiave per ridurre il debito tecnologico consiste nel rifattorizzare i componenti (il processo di ristrutturazione dei componenti di un’applicazione senza modificarne il comportamento esterno) nel tempo, ma gli sviluppatori sono spesso riluttanti a farlo per paura di corrompere le funzionalità esistenti. Uno dei maggiori ostacoli al refactoring è la mancanza di test che caratterizzano il comportamento esistente di un componente.

Questo è un problema crescente in quanto vi sono molte applicazioni distribuite basate su basi di codice legacy che non hanno i testcase necessari. Questo è aggravato quando il codice legacy viene distribuito su una nuova piattaforma o prodotto, poiché la mancanza di artefatti di test significa che il debito tecnologico continua a crescere senza possibilità di “ripagarlo”. C’è un enorme gap di qualità che deve essere affrontato, ma molte aziende non sanno da dove iniziare o non hanno le risorse necessarie per affrontare il problema.

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