370 likes | 510 Views
Applicazione pratica di un processo di sviluppo Agile in azienda. Paolo Quaglia. Chi Siamo. Chi siamo Il Gruppo Intesys. Intesys. Project Management Corporate Web Site, Brand Site, Portali Marketing On-line Sem, Seo, Dem, Display Adv E-Commerce Content Management System
E N D
Applicazione pratica di un processo di sviluppo Agile in azienda Paolo Quaglia
Chi Siamo • Chi siamoIl Gruppo Intesys Intesys • Project Management • Corporate Web Site, Brand Site, Portali • Marketing On-line • Sem, Seo, Dem, Display Adv • E-Commerce • Content Management System • Gestione Documentale • Enterprise Application – Enterprise 2.0 • Creatività • Digital Design • Adver game • System Integration • Security • Networking • Web semantico • Knowledge Management Creative Agency Intesys Networking ACP
Chi Sono • Paolo Quaglia • Laureato in Scienze dell’Informazione all’Università degli Studi di Verona • Attività • Project Manager • Responsabile Area Sviluppo Software • contribuito a definire il processo di sviluppo software aziendale partendo dai principi delle metodologie Agili • Aree di Interesse • Project Management • Coaching • Processi di sviluppo (es RUP ed ICONIX) e metodologie Agili (XP e SCRUM) • Ingegneria del Software
Manifesto Agile • Manifesto Agile • Valori Principali • Individui ed Interazionirispetto a Processi e Tools • Software Funzionanterispetto a Documentazione omnicomprensiva • Collaborazione col Clienterispetto a Negoziazione contrattuale • Rispondere ai cambiamentirispetto a Seguire un Piano Rigido
Agenda • Implementazione Pratica • Ruoli e Attori • Azioni e Passi • Prodotti del Processo • Tool di supporto
Ruoli e Attori del Processo • Ruoli • Quali Sono? • Cliente • Responsabile di Progetto • Responsabile tecnico • Sviluppatore • Commerciale
Ruoli e Attori del Processo • Cliente • Ruolo attivo e Presente • Co-Assume il ruolo di Guida del progetto partecipando attivamente alle riunioni e le fasi che il progetto prevede • Fornisce tutte le informazioni necessarie • Definisce le priorità Caratteristiche • Esperto del Dominio Applicativo • Disponibile • Capacità Decisionale
Ruoli e Attori del Processo • Responsabile di Progetto • Obiettivo: Il raggiungimento della soddisfazione del cliente rimanendo entro i tempi e costi stabiliti • Garante del processo • Interfaccia per il cliente • Raccoglie e Analizza i requisiti • Redige il documento di progetto (Analisi) • Redige il documento di stima • Gestisce la pianificazione e controlla le attività • Convoca i Meeting previsti • Armonizza le Relazioni e agisce da Facilitatore • Gestisce la qualità percepita • Controlla tempi • Coordina la produzione di materiali ed i fornitori esterni
Ruoli e Attori del Processo - Team • Team - Responsabile Tecnico • Obiettivo: definisce le linee guida di sviluppo e da supporto ed aiuto agli sviluppatori. • Decide l’architettura tecnologica • Guida il Team (Tutoring) • Stima le Attività assieme al Responsabile di Progetto • Redige il documento di Progetto assieme al Responsabile di Progetto • Redige il documento Tecnico • E’ responsabile della qualità interna del prodotto Team - Sviluppatore • Supporta il processo di stima • Sviluppare i requisiti nel rispetto dei tempi stimati. • Implementa il codice seguendo standard di qualità e le pratiche previste • Compila la Time Table
Ruoli e Attori del Processo • Commerciale • Presenta ai clienti soluzioni a valore aggiunto • Contatta e coinvolge il cliente nel progetto • Gestisce l’Offerta commerciale • Controlla i costi di progetto • Richiede al cliente incarichi formali per eventuali modifiche onerose
Passi e Azioni • Passi del Processo • Analisi • Analisi Iniziale • Stima • Offerta economica • Sviluppo Iterativo • Piano Iterazione • Sviluppo Iterazione • Conclusione Iterazione • Release e Manutenzione • Release Prodotto
Stimare in Intesys • Elementi della stima • Macro Use Cases del progetto, individuati e documentati • Attività Fisse • Configurazioni ambienti e tempi di deploy • Project Management • Test e collaudo • Formazione al cliente • Documentazione • Spread • Si stima in “Perfect Engineering days” • La pianificazione a calendario viene fatta successivamente
Pratiche Sviluppo Adottate • Sviluppo • Coding Standard • Design Pattern e Framework Applicativi • Desing Session • Pair Programming al bisogno • Test Automatici per le parti algoritmiche (Unit test e Functional Test) • Refactoring
Release e Manutenzione • Release • Redazione del Documento Tecnico • Redazione del Manuale Utente • Beta Test • Consolidamento della Versione • Installazione e configurazione • Go Live Manutenzione • Sistema di Ticketing • Manutenzione Bugs • Manutenzioni Evolutive nuovi Progetti
Prodotti del Processo • PRODOTTI DEL PROCESSO
Documento di Progetto • Documento di Progetto • Obiettivo, Requisiti e Vincoli • Pianificazione • Analisi • Dominio Applicativo • Attori • Elementi del dominio • Flusso Informativo • Soluzione Proposta • Descrizione • Integrazioni • Specifiche software sottoforma di Use Cases • Obiettivo: Minimo livello di documentazione necessaria
Altri “Prodotti” • Documento Tecnico • Scelte Architetturali adottate • Informazioni tecniche (DB, framework, File System, etc..) • Informazioni di Deploy e Faq • Manuale Utente • Scenari applicativi • Funzionalità del sistema • Esempi • Manuale Amministratore • Installazione e Configurazione del sistema • Funzionalità amministrative
Time Table Strumento per il supporto a tutto il Processo • Modulo Gestione Progetto • Definizione Progetto • Definizione Team • Definizione Attività/Task Progetto • Gestione Assegnazioni • Reportistica tempistiche e allineamento stime originali • Gestione Time Tracking • Su attività Assegnate • Su attività task non Assegnate • Controllo di Gestione • Verifica carichi dei team • Reportistica relativa all’insieme dei progetti
Sistema di Ticketing Manutenzion: Gestione delle Change Request / Bugs • Sistema opensource di Ticketing • Gestione dei Ticket • Assegnazione del Ticket • Gestione richieste via Email
Parallelo con XP • Tabella comparativa Processo Intesys - XP
Parallelo con SCRUM • Tabella comparativa Processo Intesys - SCRUM
PRO • Incentrato sui principi delle Metodologie Agili – si mappano sui principi e valori aziendali • “Customizzato” secondo le esigenze aziendali • Adottato in modo Flessibile in base al tipo di progetto • Supportato da strumenti
Criticità e Miglioramenti Possibili • Flessibilità → non si crea uno “standard”, ogni protetto è a sé • Introduzione di una figura di Process Master (à la SCRUM Master) • Strumenti di governo migliorabili • Processo in Evoluzione
Thank you for your attention!Grazie per la vostra attenzione! Relazione curata da: Paolo Quaglia, Responsabile Area Sviluppo Software, Intesys paolo.quaglia@intesys.it LinkedIn: www.linkedin.com/in/paoloquaglia Intesys S.r.l. Via dell’Artigianato, 3 - 37135 Verona voice +39 045 503663 - fax +39 045 503604