TECNICO ANALISTA PROGRAMMATORE

SEP
14. Servizi digitali
REPERTORIO
Emilia-Romagna

Descrizione

Il tecnico analista programmatore è in grado di intervenire nel processo di creazione e/o modifica di un applicativo anche web based occupandosi dell’attività di analisi del contesto in cui si colloca, della definizione delle specifiche funzionali, delle progettazione tecnica e sviluppo dell’applicativo, garantendone la conformità ai requisiti previsti e la manutenzione delle funzioni in esercizio.

Competenze

Conformazione specifiche tecniche applicativi informatici
Mostra abilità e conoscenzeMostra attività
Conoscenze
  • caratteristiche ed evoluzioni del settore informatico
  • principi di ingegneria del software
  • concetti base di networking e comunicazioni: tipologie di rete, componenti, protocolli di comunicazione, tecnologie cloud
  • tecniche e linguaggi di modellazione delle specifiche
  • principali caratteristiche del documento di specifica dei requisiti
  • lingua inglese di settore
  • principi comuni e aspetti applicativi della legislazione vigente in materia di sicurezza
  • la sicurezza sul lavoro: regole e modalità di comportamento (generali e specifiche)
Abilità
  • individuare e tradurre esigenze e bisogni del committente in termini informatici tenendo conto dei processi organizzativi e del dominio applicativo in cui il software si va a collocare
  • decodificare le informazioni e i dati raccolti in possibili funzionalità con particolare riferimento ai requisiti che l'applicativo e/o l'eventuale prototipo da sviluppare (ex novo o preesistente) dovrà soddisfare
  • tradurre i requisiti in specifiche tecniche adeguate a fornire una descrizione completa del comportamento dell'applicativo informatico
  • definire gli elementi di carattere generale (funzioni del prodotto, caratteristiche utente, vincoli, ecc.) e i requisiti specifici (funzionali, prestazionali, interfaccia, ecc.) caratterizzanti il documento di specifica dei requisiti
ADA
ADA.14.01.06 - Progettazione di Applicazioni

RA 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
ADA
ADA.14.01.09 - Sviluppo applicazioni

RA1: Sviluppare applicazioni in coerenza con la progettazione e a partire dall’individuazione delle migliori opzioni tecniche disponibili, anche riutilizzando e migliorando componenti già esistenti, e verificando e testando la rispondenza del prodotto alle specifiche tecniche

Definizione delle caratteristiche degli ambienti applicativi di sviluppo
Selezione e utilizzo di strumenti a supporto del processo di sviluppo del software
Sviluppo delle componenti software in base alle specifiche funzionali e coerentemente con il disegno architetturale
Sviluppo delle interfacce utente
Adattamento di soluzioni esistenti (riutilizzo, miglioramento, riconfigurazione di componenti esistenti)
Realizzazione di test di prodotto sulla scorta delle specifiche tecniche
Produzione dei documenti relativi ai deliverable di ciascuna fase di sviluppo del prodotto
Illustrazione al cliente degli aspetti progettuali/realizzativi del prodotto
Modellazione dei dati
Progettazione tecnica applicativi informatici
Mostra abilità e conoscenzeMostra attività
Conoscenze
  • principi di ingegneria del software
  • concetti base di networking e comunicazioni: tipologie di rete, componenti, protocolli di comunicazione, tecnologie cloud
  • principali tipologie di architettura hardware e software (client-server, three-tier, DBMS, protocolli di rete, ecc.)
  • tecniche e linguaggi di modellazione delle specifiche
  • principali caratteristiche del documento di specifica dei requisiti
  • principali metodologie di software design (waterfall, a forma di V, a spirale, Incrementale ed iterativo, Agile, DevOps, ecc.)
  • lingua inglese di settore
  • principi comuni e aspetti applicativi della legislazione vigente in materia di sicurezza
  • la sicurezza sul lavoro: regole e modalità di comportamento (generali e specifiche)
Abilità
  • identificare le metodologie di software design per la gestione del processo di sviluppo dell'applicativo più adeguate al tipo di intervento da eseguire (waterfall, a forma di V, a spirale, Incrementale ed iterativo, Agile, DevOps, ecc.)
  • individuare e riconoscere le principali tipologie di architettura hardware e software, le diverse peculiarità e vincoli (client-server, three-tier, DBMS, protocolli di rete, ecc.)
  • prefigurare la struttura complessiva dell'applicativo software, le caratteristiche dei singoli componenti (moduli) e delle relative relazioni ed interrelazioni tenendo conto della fattibilità tecnologica ed economica
  • adottare metodologie standard per la progettazione dell'interfaccia utente, la definizione della struttura dati e degli algoritmi dei singoli moduli tenendo conto dei requisiti di usabilità, accessibilità e sicurezza
ADA
ADA.14.01.06 - Progettazione di Applicazioni

RA 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
ADA
ADA.14.01.09 - Sviluppo applicazioni

RA1: Sviluppare applicazioni in coerenza con la progettazione e a partire dall’individuazione delle migliori opzioni tecniche disponibili, anche riutilizzando e migliorando componenti già esistenti, e verificando e testando la rispondenza del prodotto alle specifiche tecniche

Definizione delle caratteristiche degli ambienti applicativi di sviluppo
Selezione e utilizzo di strumenti a supporto del processo di sviluppo del software
Sviluppo delle componenti software in base alle specifiche funzionali e coerentemente con il disegno architetturale
Sviluppo delle interfacce utente
Adattamento di soluzioni esistenti (riutilizzo, miglioramento, riconfigurazione di componenti esistenti)
Realizzazione di test di prodotto sulla scorta delle specifiche tecniche
Produzione dei documenti relativi ai deliverable di ciascuna fase di sviluppo del prodotto
Illustrazione al cliente degli aspetti progettuali/realizzativi del prodotto
Modellazione dei dati
Implementazione applicativi informatici
Mostra abilità e conoscenzeMostra attività
Conoscenze
  • principi di ingegneria del software
  • struttura degli applicativi software, tradizionale e web based: componenti, relazioni, collegamenti
  • funzioni e linguaggi dei data base relazionali
  • principi di logica di programmazione: struttura del programma, dati, strutture di controllo
  • principali metodi di programmazione (non strutturato, procedurale, modulare, ecc.)
  • principali linguaggi di programmazione, linguaggi di marcatura, CASE tool's e IDE di sviluppo
  • lingua inglese di settore
  • elementi di networking e di Cyber Security
  • principi comuni e aspetti applicativi della legislazione vigente in materia di sicurezza
  • la sicurezza sul lavoro: regole e modalità di comportamento (generali e specifiche)
Abilità
  • individuare gli elementi del progetto tecnico utili a tradurre le specifiche in moduli conformi mediante l'uso di strumenti di sviluppo e linguaggi di programmazione
  • adottare il metodo (non strutturato, procedurale, modulare, ecc.) e il linguaggio di programmazione (interpretato e/o compilato) più idoneo a tradurre in codice sorgente la struttura dati e gli algoritmi dei singoli moduli in coerenza con destinazione d'uso e caratteristiche dell'applicativo
  • applicare strumenti e tecniche di verifica necessarie ad individuare eventuali errori di programmazione (bug) e a correggere i difetti riscontrati (debugging)
  • adottare strumenti e procedure per il controllo delle configurazioni del software al fine di garantirne la qualità e la rispondenza alle specifiche previste anche attraverso la creazione di un prototipo
ADA
ADA.14.01.06 - Progettazione di Applicazioni

RA 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
ADA
ADA.14.01.09 - Sviluppo applicazioni

RA1: Sviluppare applicazioni in coerenza con la progettazione e a partire dall’individuazione delle migliori opzioni tecniche disponibili, anche riutilizzando e migliorando componenti già esistenti, e verificando e testando la rispondenza del prodotto alle specifiche tecniche

Definizione delle caratteristiche degli ambienti applicativi di sviluppo
Selezione e utilizzo di strumenti a supporto del processo di sviluppo del software
Sviluppo delle componenti software in base alle specifiche funzionali e coerentemente con il disegno architetturale
Sviluppo delle interfacce utente
Adattamento di soluzioni esistenti (riutilizzo, miglioramento, riconfigurazione di componenti esistenti)
Realizzazione di test di prodotto sulla scorta delle specifiche tecniche
Produzione dei documenti relativi ai deliverable di ciascuna fase di sviluppo del prodotto
Illustrazione al cliente degli aspetti progettuali/realizzativi del prodotto
Modellazione dei dati
ADA
ADA.14.01.12 - Rilascio (deployment) della soluzione

RA1: Organizzare e coordinare il processo di deployment e le attività di rollout della soluzione, anche pianificando, se necessario, le attività di beta testing

Organizzazione e coordinamento del workflow del deployment e delle attività di rollout del prodotto
Pianificazione attività di beta-test

RA2: Consegnare la soluzione perfettamente operante all’utente nel rispetto degli standard predefiniti di esercizio, provvedendo alla sua installazione e configurazione, allo start-up e al necessario training dell’utente, avendo cura di documentare adeguatamente il deployment

Installazione/rimozione di componenti
Configurazione di componenti (hardware, software) e reti
Realizzazione test e collaudi del prodotto in ambiente finale di esercizio
Identificazione di componenti non performanti e delle relative cause
Risoluzione di criticità relative all’interoperabilità
Cura delle operazioni di popolamento/migrazione di base dati
Cura del training utente in fase di start-up di sistema
Compilazione della documentazione di deployment e registrazione di informazioni rilevanti (indirizzi delle macchine, dati di configurazione, dati di performance, ecc.)
Convalida applicativi informatici
Mostra abilità e conoscenzeMostra attività
Conoscenze
  • principi di ingegneria del software
  • struttura degli applicativi software, tradizionale e web based: componenti, relazioni, collegamenti
  • principi di logica di programmazione: struttura del programma, dati, strutture di controllo
  • strumenti e tecniche di testing dinamico e statico
  • lingua inglese di settore
  • elementi di networking e di Cyber Security
  • principi comuni e aspetti applicativi della legislazione vigente in materia di sicurezza
  • la sicurezza sul lavoro: regole e modalità di comportamento (generali e specifiche)
Abilità
  • individuare e adottare piani di test e collaudo di conformità alle specifiche di progetto (test di accettazione)
  • interpretare i dati forniti dalle operazioni di testing e collaudo per la correzione di eventuali anomalie riscontrate
  • identificare ed applicare tecniche per testare e collaudare la funzionalità, le sollecitazioni e il carico del sistema (test funzionali)
  • definire e adottare procedure per il monitoraggio delle performance del software in esercizio individuando eventuali situazioni di incompatibilità tra il software e il sistema
ADA
ADA.14.01.06 - Progettazione di Applicazioni

RA 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
ADA
ADA.14.01.09 - Sviluppo applicazioni

RA1: Sviluppare applicazioni in coerenza con la progettazione e a partire dall’individuazione delle migliori opzioni tecniche disponibili, anche riutilizzando e migliorando componenti già esistenti, e verificando e testando la rispondenza del prodotto alle specifiche tecniche

Definizione delle caratteristiche degli ambienti applicativi di sviluppo
Selezione e utilizzo di strumenti a supporto del processo di sviluppo del software
Sviluppo delle componenti software in base alle specifiche funzionali e coerentemente con il disegno architetturale
Sviluppo delle interfacce utente
Adattamento di soluzioni esistenti (riutilizzo, miglioramento, riconfigurazione di componenti esistenti)
Realizzazione di test di prodotto sulla scorta delle specifiche tecniche
Produzione dei documenti relativi ai deliverable di ciascuna fase di sviluppo del prodotto
Illustrazione al cliente degli aspetti progettuali/realizzativi del prodotto
Modellazione dei dati
ADA
ADA.14.01.12 - Rilascio (deployment) della soluzione

RA1: Organizzare e coordinare il processo di deployment e le attività di rollout della soluzione, anche pianificando, se necessario, le attività di beta testing

Organizzazione e coordinamento del workflow del deployment e delle attività di rollout del prodotto
Pianificazione attività di beta-test

RA2: Consegnare la soluzione perfettamente operante all’utente nel rispetto degli standard predefiniti di esercizio, provvedendo alla sua installazione e configurazione, allo start-up e al necessario training dell’utente, avendo cura di documentare adeguatamente il deployment

Installazione/rimozione di componenti
Configurazione di componenti (hardware, software) e reti
Realizzazione test e collaudi del prodotto in ambiente finale di esercizio
Identificazione di componenti non performanti e delle relative cause
Risoluzione di criticità relative all’interoperabilità
Cura delle operazioni di popolamento/migrazione di base dati
Cura del training utente in fase di start-up di sistema
Compilazione della documentazione di deployment e registrazione di informazioni rilevanti (indirizzi delle macchine, dati di configurazione, dati di performance, ecc.)