|
|
|
|
|||||||
|
Ercole Colonese |
|||||||||
|
L’ESPERIENZA AL VOSTRO SERVIZIO! |
|||||||||
|
Consulenza informatica ed organizzativa |
|||||||||
|
|
|||||||||
|
|
|||||||||
|
|
Sviluppare software oggi … |
||||||||
|
Stonehenge
In questa pagina:
Ruoli, responsabilità e competenze
|
Ruoli, responsabilità e competenze Sviluppare software è un'attività tecnica e creativa ad alto contenuto umano. Al successo di un un progetto contribuiscono varie figure, ognuna apportando il proprio contributo determinante. L'analista/architetto Il ruolo Ricopre un ruolo fondamentale nella fase alta del ciclo di vita: “Analisi e Disegno”. Nelle grandi organizzazioni i due ruoli sono distinti, con responsabilità e competenze differenti, anche se la collaborazione è totale. Nelle organizzazioni di dimensioni minore i due ruoli sono invece ricoperti dalla stessa persona. Solo una minore complessità delle architetture tecnologiche adoperate e delle applicazioni progettate permette la sintesi dei due ruoli. Ma non per questo il ruolo è meno importante o meno critico. Anzi, tutt’altro. In estrema sintesi, nella fase di analisi si interpretano le esigenze del cliente (“dominio del problema”), mentre nella fase di disegno si progetta la soluzione (“dominio della soluzione”). Nella fase di analisi il professionista effettua la raccolta e l’analisi dei requisiti, funzionali e qualitativi da indirizzare, dei vincoli da rispettare, degli standard e delle norme da seguire, delle modalità operative da tenere conto, dell’ambiente culturale da rispettare. Il tutto è tradotto in specifiche, scritte in linguaggio naturale e/o tramite casi d’uso (Use case). La documentazione è rivista internamente e condivisa con il cliente per assicurare la piena e corretta interpretazione delle esigenze. Il professionista esegue l’attività con cura e precisione, seguendo il processo, sapendo quanto sia critica tale attività e quali problemi possa generare una incompleta e non corretta definizione dei requisiti nelle fasi successive. Sa che non è mai tropo il tempo speso per l’analisi. Traduce i requisiti in specifiche funzionali, documentate in linguaggio naturale e/o tramite casi d’uso. La soluzione indirizzerà tutti i requisiti condivisi, espliciti ed impliciti, funzionali e prestazionali. La documentazione è prodotta secondo gli standard stabiliti ed è rivista tecnicamente per verificarne la completezza e la correttezza. Progetta – o collabora con l’architetto quando sia presente il ruolo - il sistema, l’applicazione ed i componenti ed effettua la revisione tecnica del disegno per garantirne la completezza, la correttezza e l’aderenza ai requisiti ed alle specifiche. Assicura che la progettazione indirizzi correttamente tutte le caratteristiche del software attese (sicurezza, usabilità, prestazioni, affidabilità, robustezza, manutenibilità, coesistenza). Realizza prototipi per verificare la fattibilità di soluzioni particolari o per valutare in anticipo prestazioni e caratteristiche del software. Effettua l’analisi dei dati, realizza il disegno concettuale e quello logico dei dati e collabora con l’amministratore DB nella realizzazione del disegno fisico dei database. Effettua con estrema cura il dimensionamento del sistema e le stime su tempi e le risorse necessarie a realizzare il sistema e a sviluppare il software. Coordina il gruppo di lavoro e lo supporta nelle attività di disegno di dettaglio e di programmazione controllandone puntualmente i risultati. Partendo dai requisiti progetta i casi di test per indirizzare sia le funzionalità che le prestazioni e produce le specifiche di test. Le responsabilità Il ruolo prevede le seguenti responsabilità:
Le competenze richieste Il ruolo richiede le seguenti competenze ed esperienze maturate:
In particolare, per quanto riguarda l’analisi e la progettazione dei dati, sono richieste competenze specifiche come:
Per quanto attiene il Sistema di gestione per la qualità, sono richieste competenze specifiche come:
|
Metodologia di sviluppo software
Collegamenti esterni utili: SWECC - Software Engineering Coordinating Committee. ACM - Association for Computing Machinery. AICA - Associazione Italiana per l'Informatica ed il Calcolo Automatico AICQ - Associazione Italiana Cultura Qualità. SWEBOK - Software Engineering Body Of Knowledge. PMBOK - Project Management Body of Knowledge. EQDL - European Quality Driving Licence. EUCIP - European Certification of Informatics Professionals. ECDL - European Computer Driving Licence.
Pubblicazioni disponibili sul tema: Introduzione al SWEBOK, Introduzione al Software Engineering Body of knowledge Competenze della professione ingegnere del software, Lezione tenuta all'Università di Tor Vergata sull'argomento
|
|||||||
|
|
Copyright © 2005-2008 - Ultimo aggiornamento: 29 settembre 2008 |
||||||||