Tecnico di sviluppo software
Descrizione
Progetta procedure informatiche in risposta alle esigenze specifiche di clienti o utenti che abbiano la necessità di gestire in maniera informatizzata determinati processi o applicazioni. Elabora la documentazione progettuale relativa al software da implementare, con la definizione delle specifiche a cui dovrà attenersi il team incaricato di svilupparne il codice.
ADA associate alla qualificazione
ADA.14.01.06Progettazione di Applicazioni
Competenze
Testing e manutenzione del software
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Tecniche di stesura della documentazione tecnica e delle procedure
- Tecniche di pianificazione del testing del software applicativo, applicando metodologie statiche e dinamiche, al fine di realizzare una verifica quanto più completa dell'assenza di eventuali errori di progettazione
- Stato dell'arte nell'evoluzione delle tecnologie informatiche per suggerire al cliente eventuali aggiornamenti del software applicativo in grado di migliorare l'efficacia e/o efficienza dei programmi
Abilità
- Documentare la cronistoria delle modifiche progettuali apportate nel passaggio alle successive versioni (releases) del software applicativo
- Esaminare le eventuali nuove esigenze o richieste del cliente per valutare l'opportunità di modifiche alla progettazione del software
- Coordinare la stesura della documentazione relativa allo sviluppo delle procedure definendo standard comuni all'interno del gruppo di lavoro
- Svolgere puntualmente e tempestivamente le operazioni di manutenzione dell'hardware e del software necessarie per assicurare il corretto funzionamento nel tempo dei dispositivi di programmazione e controllo della produzione
- Apportare le necessarie modifiche ai documenti progettuali in relazione a eventuali nuove esigenze o richieste del cliente
- Esaminare i documenti dei test ed i report delle anomalie e degli errori individuati, per verificare e correggere eventuali errori in sede di progettazione
| ADA |
|---|
ADA.14.01.06 - Progettazione di ApplicazioniRA 1: Validare i requisiti dell'applicazione da sviluppare dopo averli formalizzati, a partire dalla rilevazione e analisi delle esigenze del cliente e delle caratteristiche dell’ambiente di esercizio Rilevazione delle esigenze del cliente Formalizzazione dei requisiti funzionali e non funzionali Validazione dei requisiti formalizzati RA 2: Progettare con linguaggi di modellazione strutture dati e modelli di struttura di sistema adeguati ai risultati dell‘analisi dei requisiti, individuando le soluzioni tecniche più appropriate per la realizzazione di applicazioni, anche ottimizzando l‘equilibrio tra costi/risultati, e garantendone l’interoperabilità, la fruibilità e la sicurezza Analisi dei costi delle fasi del ciclo di vita del software Valutazione comparativa dei diversi metodi di sviluppo dell’applicazione in funzione dello scenario di riferimento Progettazione delle specifiche funzionali partendo dai requisiti definiti Applicazione di principi di security by design and privacy by design RA 3: Organizzare il piano di lavoro per la realizzazione dell’applicazione, monitorandone l’implementazione e verificandone la corrispondenza alla progettazione Predisposizione del piano complessivo di lavoro dell’applicazione Monitoraggio dell'implementazione del piano di lavoro dell’applicazione Verifica della conformità dell’applicazione alle specifiche di progettazione |
Installazione e configurazione dei dispositivi di programmazione e controllo della produzione
Mostra abilità e conoscenze
Mostra abilità e conoscenze
Conoscenze
- Metodologie di installazione ed interfacciamento dell'hardware in ambienti operativi complessi per installare e configurare in maniera ottimale le componenti hardware dei sistemi di programmazione e controllo, curandone il collegamento con la rete informatica
- Protocolli di rete e di interconnessione tra dispositivi elettromeccanici al fine di collegare tra loro i componenti delle reti informatiche per l'automazione di impianti industriali
- Tipologia e funzionamento delle schede hardware dedicate a particolari compiti di automazione (schede di conteggio veloce, schede programmatori a camme, schede PID, schede controllo assi) per installarle correttamente ed utilizzarle nei dispositivi di programmazione e controllo della produzione
- Architettura e funzionalità dei sistemi operativi per installare e configurare in maniera ottimale i sistemi di programmazione e controllo della produzione
- Lingua inglese tecnica per comprendere la documentazione di supporto redatta in inglese
Abilità
- Interfacciare i dispositivi di programmazione e controllo della produzione con gli impianti e con la rete per l'automazione, risolvendo eventuali conflitti e verificando il corretto funzionamento dei collegamenti
- Installare gli appropriati dispositivi di interfaccia uomo-macchina per segnalare errori ed anomalie e dare la possibilità all'operatore di inserire set-point e scegliere tra modalità diverse di funzionamento
- Configurare l'hardware di un Controllore Logico Programmabile (PLC) installando le schede che lo compongono e definendo gli indirizzi da esse occupati in memoria
- Garantire la sicurezza delle persone e delle cose durante l'installazione dei dispositivi di programmazione e controllo della produzione assicurando il rispetto delle normative in materia
- Installare unità di comando e controllo, trasduttori ed attuatori di tipo elettronico, elettromeccanico, pneumatico ed idraulico
Monitoraggio di sistemi Operativi e di qualità del software
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Normative UNI EN ISO relative alla certificazione del software, per valutare l'opportunità di applicarle nella progettazione e nello sviluppo del software
- Caratteristiche e funzionalità dei principali tool di monitoraggio
- Metodologie di applicazione dei principi della qualità alla produzione e della funzionalità dei principali software applicativi
- Procedure di certificazione e caratteristiche del software secondo i vari standard internazionali, per valutare i costi in termini di risorse finanziarie ed organizzative necessarie per il conseguimento
- Normative vigenti in materia di privacy e tutela dei dati personali (D.lgs. 196/2003 e ss.mm.ii.) per assicurare il costante rispetto delle disposizioni di legge
- Normative vigenti in materia di tutela della proprietà intellettuale e tutela legale del software (legge 633/41, decreto legge 518/1992, legge 248/2000 e successive modificazioni), per verificare che siano rispettate in tutte le fasi della progettazione
Abilità
- Selezionare e interpretare la normativa UNI EN ISO più adatta per la certificazione del software
- Valutare i costi dell'applicazione delle procedure di certificazione al software applicativo
- Verificare l'applicazione dei principi della qualità definiti in sede di progetto nel processo di produzione del software
- Assicurare il rispetto delle normative vigenti in materia di tutela della proprietà intellettuale e tutela legale del software (legge 633/41, decreto legge 518/1992, legge 248/2000 e ss.mm.ii.)
- Relazionarsi efficacemente con l'ente prescelto per l'eventuale certificazione del software
- Definire le caratteristiche, gli elementi di verifica e gli indicatori di qualità del software
- Definire il profilo di qualità per il prodotto software secondo le norme UNI CEI ISO/IEC 9126-1:2007
- Redigere report relativi all'intervento di assistenza effettuato
- Utilizzare tool di monitoraggio di sistemi operativi e di software applicativi
| ADA |
|---|
ADA.14.01.06 - Progettazione di ApplicazioniRA 1: Validare i requisiti dell'applicazione da sviluppare dopo averli formalizzati, a partire dalla rilevazione e analisi delle esigenze del cliente e delle caratteristiche dell’ambiente di esercizio Rilevazione delle esigenze del cliente Formalizzazione dei requisiti funzionali e non funzionali Validazione dei requisiti formalizzati RA 2: Progettare con linguaggi di modellazione strutture dati e modelli di struttura di sistema adeguati ai risultati dell‘analisi dei requisiti, individuando le soluzioni tecniche più appropriate per la realizzazione di applicazioni, anche ottimizzando l‘equilibrio tra costi/risultati, e garantendone l’interoperabilità, la fruibilità e la sicurezza Analisi dei costi delle fasi del ciclo di vita del software Valutazione comparativa dei diversi metodi di sviluppo dell’applicazione in funzione dello scenario di riferimento Progettazione delle specifiche funzionali partendo dai requisiti definiti Applicazione di principi di security by design and privacy by design RA 3: Organizzare il piano di lavoro per la realizzazione dell’applicazione, monitorandone l’implementazione e verificandone la corrispondenza alla progettazione Predisposizione del piano complessivo di lavoro dell’applicazione Monitoraggio dell'implementazione del piano di lavoro dell’applicazione Verifica della conformità dell’applicazione alle specifiche di progettazione |
Progettazione del software
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Architettura e prestazioni del sistema operativo per ottimizzare la progettazione del software
- Concetti relativi alla gestione di basi di dati per definire in maniera ottimale l'architettura e la struttura delle basi di dati e degli archivi su cui opererà il software applicativo
- Concetti relativi alla programmazione strutturata per ottimizzare la struttura delle procedure in termini di efficienza ed efficacia dei programmi, riduzione dei tempi di sviluppo, riduzione delle possibilità di errore e facilità di manutenzione
- I sistemi operativi e le piattaforme software e la sicurezza
- L'Integrated Development Environment (IDE), il Rapid Application Development (RAD)
- La progettazione funzionale e tecnica
- Le problematiche legate alla proprietà Intellettuale (IPR)
- Stato dell'arte dell'evoluzione tecnologica nel mondo delle reti informatiche, per proporre all'amministratore di rete o al responsabile del sistema informativo gli aggiornamenti hardware e/o software in grado di migliorare la funzionalità e l'efficienza
- Tecniche di codifica e pseudocodifica delle specifiche del software per definire le specifiche di ogni procedura in maniera formalmente corretta, precisa, comprensibile ed univoca
- Tecniche di programmazione strutturata per un'ottimizzazione della struttura delle procedure anche in relazione ai tempi necessari per lo sviluppo del codice
Abilità
- Applicare le metodologie della programmazione strutturata nella progettazione del software
- Codificare in maniera formalizzata e comprensibile le specifiche delle singole procedure software
- Definire nella maniera ottimale l'architettura e la struttura delle basi di dati su cui dovrà operare il software
- Gestire e garantire un alto livello di coesione e qualità
- Operare le scelte più efficaci/efficienti in relazione all'architettura del sistema di elaborazione
- Operare le scelte più efficaci/efficienti in relazione all'architettura e alle prestazioni del sistema operativo
- Progettare ed eseguire i test nell'ambiente finale del cliente
- Utilizzare modelli di dati
| ADA |
|---|
ADA.14.01.06 - Progettazione di ApplicazioniRA 1: Validare i requisiti dell'applicazione da sviluppare dopo averli formalizzati, a partire dalla rilevazione e analisi delle esigenze del cliente e delle caratteristiche dell’ambiente di esercizio Rilevazione delle esigenze del cliente Formalizzazione dei requisiti funzionali e non funzionali Validazione dei requisiti formalizzati RA 2: Progettare con linguaggi di modellazione strutture dati e modelli di struttura di sistema adeguati ai risultati dell‘analisi dei requisiti, individuando le soluzioni tecniche più appropriate per la realizzazione di applicazioni, anche ottimizzando l‘equilibrio tra costi/risultati, e garantendone l’interoperabilità, la fruibilità e la sicurezza Analisi dei costi delle fasi del ciclo di vita del software Valutazione comparativa dei diversi metodi di sviluppo dell’applicazione in funzione dello scenario di riferimento Progettazione delle specifiche funzionali partendo dai requisiti definiti Applicazione di principi di security by design and privacy by design RA 3: Organizzare il piano di lavoro per la realizzazione dell’applicazione, monitorandone l’implementazione e verificandone la corrispondenza alla progettazione Predisposizione del piano complessivo di lavoro dell’applicazione Monitoraggio dell'implementazione del piano di lavoro dell’applicazione Verifica della conformità dell’applicazione alle specifiche di progettazione |
Eseguire procedure e metodologie di sviluppo del software
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Tecniche di programmazione strutturata per ottimizzare la struttura dei programmi e ridurre i tempi di sviluppo e le possibilità di errore
- Tecniche di documentazione delle procedure per inserire nel codice commenti e documentazione utili a ridurre i tempi in caso di successive modifiche del codice o di correzione degli errori
- Tecniche di strutturazione grafica nella scrittura delle procedure per rendere più comprensibile la struttura del codice sorgente e più agevole l'effettuazione di modifiche o la ricerca e la correzione degli errori
- Linguaggi di programmazione per utilizzare al meglio tutte le possibilità offerte dagli stessi in termini di semplificazione delle procedure e di riduzione dei tempi di sviluppo
- Lingua inglese tecnica per comprendere la documentazione di supporto redatta in inglese
Abilità
- Assicurare l'utilizzo delle opportune metodologie di scrittura strutturata del codice sorgente per rendere comprensibile rapidamente la struttura del programma
- Leggere e comprendere la documentazione e la manualistica di supporto redatta in lingua inglese
- Coordinare lo sviluppo delle procedure nel linguaggio di programmazione prescelto assegnando le priorità ai membri del gruppo di lavoro
- Coordinare la stesura della documentazione relativa allo sviluppo delle procedure definendo standard comuni all'interno del gruppo di lavoro
- Verificare l'applicazione in maniera corretta ed appropriata delle tecniche di programmazione strutturata durante la scrittura delle procedure software
| ADA |
|---|
ADA.14.01.06 - Progettazione di ApplicazioniRA 1: Validare i requisiti dell'applicazione da sviluppare dopo averli formalizzati, a partire dalla rilevazione e analisi delle esigenze del cliente e delle caratteristiche dell’ambiente di esercizio Rilevazione delle esigenze del cliente Formalizzazione dei requisiti funzionali e non funzionali Validazione dei requisiti formalizzati RA 2: Progettare con linguaggi di modellazione strutture dati e modelli di struttura di sistema adeguati ai risultati dell‘analisi dei requisiti, individuando le soluzioni tecniche più appropriate per la realizzazione di applicazioni, anche ottimizzando l‘equilibrio tra costi/risultati, e garantendone l’interoperabilità, la fruibilità e la sicurezza Analisi dei costi delle fasi del ciclo di vita del software Valutazione comparativa dei diversi metodi di sviluppo dell’applicazione in funzione dello scenario di riferimento Progettazione delle specifiche funzionali partendo dai requisiti definiti Applicazione di principi di security by design and privacy by design RA 3: Organizzare il piano di lavoro per la realizzazione dell’applicazione, monitorandone l’implementazione e verificandone la corrispondenza alla progettazione Predisposizione del piano complessivo di lavoro dell’applicazione Monitoraggio dell'implementazione del piano di lavoro dell’applicazione Verifica della conformità dell’applicazione alle specifiche di progettazione |
Analisi dei requisiti
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Linguaggi e metodi di descrizione e catalogazione delle informazioni per descrivere in maniera formalizzata e sistematica la realtà ed i processi aziendali rilevanti per la progettazione del software
- Tecniche di analisi delle organizzazioni e dei processi aziendali per individuare gli elementi (entità, relazioni, processi) rilevanti per una corretta rappresentazione formalizzata della realtà da informatizzare
- Conoscenze specifiche relative ai processi da informatizzare, anche ai fini di comprendere il linguaggio degli addetti ai lavori e rappresentare correttamente la realtà da essi illustrata
- Modelli di rappresentazione formalizzata della realtà o dei processi aziendali per rappresentare in maniera unitaria e coerente le entità, le relazioni ed i processi con cui dovrà interagire il software
Abilità
- Eseguire uno studio di fattibilità contenente la stima dei benefici, dei costi, delle risorse richieste e dei tempi di consegna del software
- Analizzare con il cliente la realtà ed i processi con cui andrà ad interagire il sistema informativo da progettare, le esigenze a cui intende rispondere e le performance attese
- Utilizzare i linguaggi e i metodi di descrizione formalizzata della conoscenza concreta e di catalogazione delle informazioni
- Esaminare con il cliente caratteristiche, obiettivi, requisiti e vincoli delle procedure da informatizzare con il software applicativo
- Rappresentare in forma grafica o formalizzata il modello della realtà o dei processi aziendali elaborato
- Comunicare efficacemente con il cliente e con gli addetti ai lavori per approfondire le informazioni tecniche ed organizzative relative ai processi ed alle applicazioni da informatizzare
| ADA |
|---|
ADA.14.01.06 - Progettazione di ApplicazioniRA 1: Validare i requisiti dell'applicazione da sviluppare dopo averli formalizzati, a partire dalla rilevazione e analisi delle esigenze del cliente e delle caratteristiche dell’ambiente di esercizio Rilevazione delle esigenze del cliente Formalizzazione dei requisiti funzionali e non funzionali Validazione dei requisiti formalizzati RA 2: Progettare con linguaggi di modellazione strutture dati e modelli di struttura di sistema adeguati ai risultati dell‘analisi dei requisiti, individuando le soluzioni tecniche più appropriate per la realizzazione di applicazioni, anche ottimizzando l‘equilibrio tra costi/risultati, e garantendone l’interoperabilità, la fruibilità e la sicurezza Analisi dei costi delle fasi del ciclo di vita del software Valutazione comparativa dei diversi metodi di sviluppo dell’applicazione in funzione dello scenario di riferimento Progettazione delle specifiche funzionali partendo dai requisiti definiti Applicazione di principi di security by design and privacy by design RA 3: Organizzare il piano di lavoro per la realizzazione dell’applicazione, monitorandone l’implementazione e verificandone la corrispondenza alla progettazione Predisposizione del piano complessivo di lavoro dell’applicazione Monitoraggio dell'implementazione del piano di lavoro dell’applicazione Verifica della conformità dell’applicazione alle specifiche di progettazione |
