CODICE 101810 ANNO ACCADEMICO 2024/2025 CFU 9 cfu anno 2 COMPUTER SCIENCE 10852 (LM-18) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE INF/01 LINGUA Inglese SEDE GENOVA PERIODO 1° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE Questo insegnamento offre agli studenti l'opportunità di mettere in pratica le diverse tecnologie e concetti appresi negli altri insegnamenti durante lo sviluppo di un progetto realistico, seguendo un determinato modello di processo di sviluppo. La partecipazione attiva al processo di sviluppo incoraggia gli studenti a pensare in modo critico, imparare a essere autonomi nella loro formazione continua, risolvere problemi impegnativi e sviluppare competenze trasversali, come lavoro di gruppo, comunicazione e gestione del proprio tempo. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI Acquiring experience of a realistic team development effort that follows a given methodology and harnesses different technologies for the implementation of a specific product. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Alla fine dell'insegnamento, gli studenti diligenti che avranno lavorato come indicato saranno in grado di: comprendere le sinergie fra le competenze e conoscenze sullo sviluppo di sistemi software acquisite (in precedenti corsi di laurea e) attraverso gli altri corsi della laurea magistrale in Computer Science seguire un metodo di sviluppo agile e usare diverse pratiche agili partecipare come membri efficaci di un team di sviluppo del software, grazie ad ampie esperienze pratiche facilitare la formazione di un team di sviluppo capire i vari passi di uno sviluppo completo di un progetto seguendo un processo specifico capire l'importanza dell'esperienza dell'utente e come testare la qualità di un sistema dal punto di vista degli utenti finali avere autonomia decisionale, attitudine collaborativa, gestione di risorse umane e materiali, coordinamento, capacità di negoziazione, gestione dell’incertezza sviluppare la propria immaginazione e creatività, riflessione critica, pensiero strategico, problem solving con particolare riferimento a contesti di innovazione e processi creativi in evoluzione, capacità di trasformare le idee in azioni, autoconsapevolezza. avere consapevolezza delle proprie strategie di apprendimento, organizzazione e valutazione dell’apprendimento personale secondo quanto compreso ed imparato, comprensione delle proprie necessità e modalità di sviluppo di competenze, capacità di individuare e perseguire obiettivi di apprendimento. comunicare efficacemente, adattando la propria comunicazione al contest. utilizzare fonti e ausili di varia natura, pensiero critico utilizzare, elaborare e valutare informazioni, dimostrare abilità argomentativa individuare meglio le proprie abilità, la capacità di concentrazione e riflessione critica rispetto a un compito, la gestione della complessità, l'autonomia nelle decisioni e nello svolgimento di compiti, la ricerca di sostegno se necessario, la gestione dello stress, la resilienza affinare la capacità di gestione delle proprie interazioni sociali, l'atteggiamento collaborativo, la comunicazione costruttiva in ambienti differenti, la capacità di rispettare gli altri e le loro esigenze, la disponibilità a superare pregiudizi, a esprimere e comprendere punti di vista diversi, la gestione del conflitto, la capacità di creare fiducia, l'empatia. PREREQUISITI Per avere successo in questo insegnamento, gli studenti devono avere conoscenze di base relative a programmazione orientata agli oggetti ingegneria del software (terminologia e principali attività di sviluppo) database relazionali e loro progettazione sviluppo web, tecnologie IoT e sviluppo mobile problemi di sicurezza di base progettazione di interfacce utente Per quanto riguarda i primi quattro argomenti appena elencati, in aggiunta alle conoscenze teoriche sono richieste anche competenze pratiche. MODALITA' DIDATTICHE Lezioni standard introdurranno i concetti principali necessari per utilizzare Scrum in pratica. La maggior parte dell’impegno degli studenti sarà dedicata allo sviluppo del progetto, perché l'uso della metodologia di sviluppo in un progetto concreto è l'unico modo per comprendere in profondità il significato della conformità a un metodo. L'attività del progetto sarà seguita rigorosamente e puntualmente dagli insegnanti. Ci si aspetta che gli studenti imparino le tecnologie necessarie essenzialmente da soli, avendo già familiarità con esse o con analoghi ambienti di lavoro per la programmazione orientata agli oggetti, la gestione dei database e lo sviluppo web. Saranno inoltre guidati nella condivisione delle loro conoscenze all'interno del team. PROGRAMMA/CONTENUTO Uno specifico metodo agile, da un punto di vista concettuale, e la sua applicazione pratica. Più in particolare, Scrum (uno dei metodi di sviluppo agili più popolari), i suoi principi e le sue pratiche principali e altre pratiche agili utili per adeguare il processo allo specifico progetto. User-experience: principi, pratiche e modelli. A seconda dell'argomento del progetto, gli studenti dovranno apprendere individualmente alcune tecnologie e condividere le conoscenze acquisite con gli altri membri del team come parte integrante del processo di sviluppo. DOCENTI E COMMISSIONI MAURA CERIOLI Ricevimento: Su appuntamento o via mail. MARINA RIBAUDO Ricevimento: Su appuntamento (in presenza o online) definito per email. Commissione d'esame MAURA CERIOLI (Presidente) GIOVANNI LAGORIO MARINA RIBAUDO (Presidente Supplente) GIANNA REGGIO (Supplente) LEZIONI Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME Una parte sostanziale dell’esame sarà delegato alla valutazione delle attività durante il semestre: partecipazione allo sviluppo del progetto, lavoro di gruppo e contributi tecnici. Alla fine dell'insegnamento, una breve prova orale concluderà la valutazione. MODALITA' DI ACCERTAMENTO Le osservazioni dell'insegnante durante lo sviluppo del progetto consentiranno di valutare le competenze trasversali degli studenti e la loro comprensione del processo. Le presentazioni tecniche dimostreranno sia la padronanza della tecnologia che le capacità di presentazione degli studenti. La qualità del progetto indicherà le capacità di sviluppo del team, sia in ambito tecnico che di aderenza al processo di sviluppo. L'esame orale finale consentirà ai docenti di completare la valutazione, facendo luce sulle competenze acquisite ma non rilevate durante lo sviluppo. OpenBadge PRO3 - Soft skills - Sociale avanzato 1 - A PRO3 - Soft skills - Personale avanzato 1 - A PRO3 - Soft skills - Alfabetica avanzato 1 - A PRO3 - Soft skills - Creazione progettuale avanzato 1 - A PRO3 - Soft skills - Gestione progettuale base 1 - A PRO3 - Soft skills - Imparare a imparare avanzato 1 - A