Grazie per aver inviato la tua richiesta! Uno dei nostri team membri ti contatterà a breve.
Grazie per aver inviato il tuo prenotazione! Uno dei nostri team membri ti contatterà a breve.
Struttura del corso
Fondamenti del Pensiero Agile
- La Manifesto Agile e la sua rilevanza oltre il software
- Confronto tra agile e modelli tradizionali a cascata e basati sulla pianificazione
- Ruoli, eventi e artefatti Scrum mappati sui cicli dei progetti accademici
- Kanban e gestione basata sul flusso per team di ricerca e didattica
- Scelta di ibridi agile adatti agli ambienti di ingegneria e design
Pianificazione Agile e Collaborazione
- Scrittura di user story e definizione dei criteri di accettazione per problemi ingegneristici
- Tecniche di priorità del backlog: MoSCoW, valore vs. sforzo, ordinamento basato sul rischio
- Pianificazione degli sprint e stime con team non software
- Retroscope e miglioramento continuo in un contesto accademico
- Strumenti e board di collaborazione per partecipanti multidisciplinari
Introduzione alla Cultura DevOps
- Definizione di DevOps: abbattimento dei silos tra sviluppo e operazioni
- Il modello CALMS: Cultura, Automazione, Lean, Misurazione, Condivisione
- DevOps nei laboratori di ricerca, team di ingegneria civile e studi di architettura
- Costruzione di una cultura senza colpevoli e loop di feedback nelle istituzioni educative
- Considerazioni etiche, sulla sicurezza e sulla conformità nell'adozione di DevOps in ambito accademico
Controllo di Versione e Gestione Collaborativa del Codice
- Fondamenti di Git per ingegneria e design riproducibili
- Strategie di branching: trunk-based, feature branches e GitFlow semplificato
- Pull request, revisione tra pari e proprietà del codice nei team didattici
- Gestione di asset non codici: file CAD, modelli BIM, dataset di simulazione
- Organizzazione dei repository per materiali di corso e progetti studenteschi
Integrazione Continua e Automazione delle Build
- Concetti di CI e la loro applicazione a strumenti ingegneristici compilati e scripting
- Impostazione di build automatizzate per software, simulazioni e documentazione
- Fasi della pipeline: compilazione, packaging, linting e controlli pre-impostazione
- Panoramica delle principali piattaforme CI: GitHub Actions, GitLab CI, Jenkins
- Gestione di artefatti di grandi dimensioni, caching delle dipendenze ed esecuzione parallela
Qualità del Software e Analisi Statica
- Definizione della qualità del software: manutenibilità, affidabilità, usabilità, efficienza
- Metriche del codice: complessità cicomatica, accoppiamento, coesione e duplicazione
- Strumenti di analisi statica per Python, Java, C++ e scripting ingegneristico comune
- La documentazione come qualità: docstring, standard README e documentazione vivente
- Integrazione di gate di qualità nelle pipeline CI senza bloccare il progresso degli studenti
Strategie di Test e Progettazione dei Test
- La piramide dei test: unit test, test di integrazione, test di sistema e test di accettazione
- Scrittura di unit test per calcoli ingegneristici, simulazioni e utilità
- Fondamenti di Sviluppo Guidato dai Test (TDD) e Sviluppo Guidato dal Comportamento (BDD)
- Mocking di sistemi esterni: sensori, API, solver agli elementi finiti
- Strutturazione delle suite di test per progetti di équipe multidisciplinari
Automazione dei Test e Testing Continuo
- Automazione dell'esecuzione dei test all'interno delle pipeline CI/CD
- Reporting dei test, soglie di copertura e gestione dei test instabili (flaky tests)
- Testing basato sulle proprietà e fuzzing per algoritmi ingegneristici
- Strategie di regression testing per compiti di corso in evoluzione
- Testing delle prestazioni e del carico per carichi di lavoro di simulazione e rendering
Concetti di Consegna Continua e Deployment
- Fondamenti di CD: consegna vs. deploy, ambienti e promozione
- Pattern di deploy: blue-green, canary e feature toggles
- Applicazione dei principi CD per pubblicare artefatti di ricerca, siti di corso e applicazioni
- Introduzione ai container con Docker per ambienti ingegneristici riproducibili
- Introduzione all'Infrastructure as Code: gestione dichiarativa di setup di laboratori e cloud
Osservabilità, Monitoraggio e Feedback
- Logging, metriche e tracing per software accademico e simulazioni
- Impostazione di un monitoraggio leggero per progetti studenteschi e strumenti di ricerca
- Utilizzo dei dati di feedback per iterare su materiali didattici e compiti di laboratorio
- Dashboard e allerting appropriati per contesti educativi
- Verifica post-deploy e procedure di rollback
Best Practice di Sicurezza e Qualità
- Fondamenti di coding sicuro: convalida degli input, autenticazione e gestione dei segreti
- Scanning delle dipendenze e gestione delle vulnerabilità negli stack open source
- Conformità delle licenze per il software utilizzato nella didattica e nella pubblicazione
- Considerazioni sulla privacy dei dati quando si gestiscono dati studenteschi e di ricerca
- Creazione di una cultura consapevole della sicurezza nei programmi di ingegneria e design
Traduzione delle Pratiche in Moduli Didattici
- Progettazione di assegnazioni di progetto agile per studenti di sistemi, ingegneria civile, design e architettura
- Creazione di rubriche che valutano la qualità del processo alongside la qualità del prodotto
- Impostazione di repository modello con CI pre-configurata per l'uso degli studenti
- Graduale introduzione dei concetti DevOps durante un semestre
- Valutazione delle équipe studentesche utilizzando metriche reali di qualità e automazione
Selezione delle Toolchain e Vincoli Accademici
- Valutazione di strumenti gratuiti e open source per dipartimenti attenti al budget
- Integrazione con LMS esistenti, archiviazione file e infrastrutture di laboratorio
- Gestione del technical debt in codebase di ricerca di lunga durata
- Onboarding di studenti e docenti con background tecnici variabili
- Mantenimento della sostenibilità quando i contributori chiave si laureano o ruotano
Requisiti
- Una comprensione di base dei concetti di sviluppo software
- Conoscenza dei flussi di lavoro generali di ingegneria o design
- Esperienza nell'utilizzo di computer per lavoro accademico o basato su progetti
Destinatari
- Professori e docenti dei corsi di Ingegneria dei Sistemi, Ingegneria Civile, Design e Architettura
- Personale accademico che intende modernizzare la propria didattica con pratiche rilevanti per il settore
- Responsabili della ricerca e coordinatori di laboratori che integrano la tecnologia nei programmi di studio
42 ore
Recensioni (2)
Craig era estremamente coinvolto nella formazione, sempre assicurandosi che prestassimo attenzione, adattando gli esempi alle nostre attività quotidiane e fornendo sempre una risposta quando sollecitato, anche se l'informazione non era inclusa nella presentazione.
Ecaterina Ioana Nicoale - BOOKING HOLDINGS ROMANIA SRL
Corso - DevOps Foundation®
Traduzione automatica
Alto livello di impegno e conoscenza del formatore
Jacek - Softsystem
Corso - DevOps Engineering Foundation (DOEF)®
Traduzione automatica