Ercole Colonese

Consulenza di direzione e IT

Home |  Sviluppo software | Gestione servizi IT | Gestione progetti | Test e collaudi | Competenze relazionali | Servizi | Pubblicazioni | Chi sono | Info

Software Engineering Body of Knowledge (SWEBOK, 2004)

Sito Web

Home > Sviluppo software

Contesto italiano attuale

Metodologia proposta

Competenze professionali

> SWEBOK

Processi maturi

Processo di sviluppo

Processo di gestione

Metodi e tecniche

Metriche

Strumenti

Modelli di maturità

Norme e standard

Best Practice proposte

Formazione

Breve storia dell'Ingegneria del software

 

Una guida alle competenze della professione

Nell'ordinamento universitari italiano, non esiste una laurea in Ingegneria del software. Esistono invece cattedre e corsi di Ingegneria del software nelle facoltà di scienze.

Diversamente da quanto stabilito per altri settori dell'ingegneria, quindi, per il software non sono definite formalmente le competenze necessarie per ricoprire i vari ruoli previsti. Ancora oggi la professione di Ingegnere del software non è riconosciuta legalmente e non esiste un albo professionale.

Ciò non esime le organizzazioni software dal definire al loro interno ruoli con rispettive responsabilità, autorità e competenze.

Alla professione dell'Ingegnere del software è richiesta una competenza di base identificata come "Software Engineering Body of Knowledge (SWEBOK)", da acquisire presso università, scuole di specializzazione o corsi ad hoc organizzati dall'azienda stessa. La versione corrente della guida emessa già nel 2004 costa di dieci competenze di base che sono:

  1. Software Requirements;

  2. Software Design;

  3. Software Construction;

  4. Software Testing;

  5. Software Maintenance;

  6. Software Configuration Management;

  7. Software Engineering Management;

  8. Software Engineering Process;

  9. Software Tolls and Methods;

  10. Software Quality.

Nota: E' in fase avanzata di revisione la nuova versione della guida 2013.

Ciascuna area di competenza indirizza il relativo processo, i metodi, le tecniche e gli strumenti a supporto.

Alle dieci competenze di base se ne aggiungono altre otto relative a discipline correlate. Esse sono:

  1. Computer Engineering;

  2. Computer Science;

  3. Management;

  4. Mathematics;

  5. Project Management;

  6. Quality Management;

  7. Software Ergonomics;

  8. System Engineering.

Competenze e processi di sviluppo

Le prime cinque competenze si riferiscono ai processi primari dello sviluppo software, mentre gli altri cinque ai processi di supporto (secondo la definizione data da ISO/IEC 12207:2008, Software Life Cycle Processes). La figura che segue mostra tale relazione.

SWEBOK_1 

Codice etico e professionale

Un codice di etica professionale per gli addetti all’ingegneria del software è stato sviluppato in cooperazione da ACM e IEEE. Di seguito è riportata una versione sintetica. La versione estesa del codice professionale aggiunge a questa maggiori dettagli e consistenza.

Gli sviluppatori software devono impegnarsi a rendere il proprio mestiere (l’analisi, la specifica, il disegno, lo sviluppo, il test e la manutenzione del software) una professione rispettata e dagli effetti benefici. Gli sviluppatori devono pertanto aderire alle seguenti regole:

  1. Pubblico. Gli sviluppatori software devono agire in linea con l’interesse pubblico.

  2. Cliente e datore di lavoro. Gli sviluppatori software devono agire in un modo conforme agli interessi del loro cliente e datore di lavoro, restando in accordo con l’interesse pubblico (punto 1).

  3. Prodotto. Gli sviluppatori software devono assicurare che i loro prodotti e le modifiche che vi applicano siano a livello di standard professionale più elevato possibile.

  4. Giudizio. Gli sviluppatori software devono mantenere integrità ed indipendenza nel loro giudizio professionale.

  5. Management. Manager e leader degli sviluppatori devono sottoscrivere e promuovere un approccio etico alla gestione dello sviluppo e della manutenzione del software.

  6. Professione. Gli sviluppatori software devono far progredire l’integrità e la reputazione della professione, restando in accordo con l’interesse pubblico (punto 1).

  7. Colleghi. Gli sviluppatori software devono essere leali e di supporto nei confronti dei loro colleghi.

  8. Se stessi. Gli sviluppatori software devono, per tutta la durata della loro attività  lavorativa, continuare la propria formazione sulla pratica della professione, e devono promuovere un approccio etico ad essa.

Nota: Ogni azienda definirà un proprio codice etico, basato su quello esposto prima e legato alla propria cultura aziendale, al proprio business e al settore di mercato in cui opera.

News/Articoli/Libri

News

SWEBOK, Introduzione

SWEBOK, Requisiti

 

Collaborazioni

Tesit Consulting

Tino Giannini

CPM Team Consulting

Felice Del Mauro

Associazioni

AICQ-CI

APCO

itSMF Italia

Collegamenti utili/Link

Best practice del software

SWEBOK

 

Ercole Colonese © 2005-2012 | Home | Mappa del sito | Pubblicazioni | Chi sono | Info |