Tecnico per la programmazione di Web/Mobile Applications e Internet of Things
Descrizione
La figura professionale si occupa della scrittura e testing dei programmi e delle applicazioni, dell'aggiornamento e correzione degli stessi, dello sviluppo e integrazione di applicazioni e inoltre della loro diffusione e distribuzione; è pertanto in grado di sviluppare programmi e applicazioni e rendere qualunque tipo di oggetto, anche senza una vocazione digitale, un dispositivo collegato ad internet, in grado di godere di tutte le caratteristiche che hanno gli oggetti nati per utilizzare la rete.
ADA associate alla qualificazione
ADA.14.01.09Sviluppo applicazioni
Competenze
Analisi dei requisiti
Mostra abilità e conoscenze
Mostra abilità e conoscenze
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
Testing del software
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Principali tecniche di debugging per individuare e correggere gli errori presenti nel codice
- Principali tecniche di testing del software per verificare il corretto funzionamento delle procedure in tutte le possibili condizioni di utilizzo
- Varie tipologie di errori per elaborare procedure di testing specifiche per la loro rilevazione
Abilità
- Svolgere i test più appropriati ad individuare le varie tipologie di errori presenti nelle procedure
- Pianificare le procedure di testing più adatte ad individuare gli errori, tanto progettuali che di sviluppo del software
- Applicare le principali tecniche di testing verificando il corretto funzionamento delle procedure in tutte le condizioni di possibile utilizzo
- Redigere i documenti dei test ed elaborare i report delle anomalie e degli errori individuati per documentare il processo di testing
| ADA |
|---|
ADA.14.01.09 - Sviluppo applicazioniRA1: 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 |
Sviluppo e integrazione di applicazioni
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Ambienti Integrati di sviluppo (IDE)
- Best practice delle tecniche di progettazione
- Data Base Management System
- Linguaggi di Programmazione, Linguaggi di Modellazione, Mark-up Languages
- principali processi per lo sviluppo di applicazioni, metodologie di Progettazione e architetture Software
- Processi e Tecniche di Test d'Integrazione, Strumenti di test (anche Automatizzati)
- Programmazione Sicura, Principi e Tecniche Standard per la progettazione di interfacce, Principi di Editing Multimediale
- Sistemi Operativi
- Tecniche di interfaccia tra moduli, sistemi e componenti
Abilità
- Contribuire all'Analisi del Rischio
- Coordinare il Progetto Sviluppo Applicativo
- Gestire gli strumenti di Versioning, il Configuration Manager, Eccezioni ed Errori
- Misurare e garantire l'Integrità dei sistemi durante la fase di System Integration, Testing e Tuning
- Misurare le performance di sistema prima, durante e dopo l'integrazione di sistema
- Organizzare un ambiente di sviluppo ed il relativo Workflow
- Progettare Interfaccia Utente
- Rispondere con prodotti esistenti alle necessità dei clienti
- Sviluppare secondo il paradigma Object‐Oriented, Applicazioni Web‐Based, e software orientato al Reporting
- Verificare che capacità ed efficienza dei sistemi integrati rispondano alle specifiche
| ADA |
|---|
ADA.14.01.09 - Sviluppo applicazioniRA1: 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 |
Scrittura dei programmi
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- 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
- Tecniche di programmazione strutturata per ottimizzare la struttura dei programmi, ridurre i tempi di sviluppo e le possibilità di errore
- Tecniche di documentazione delle procedure per inserire nel codice sia i commenti che la documentazione utili a ridurre i tempi, in caso di successive modifiche del codice o di correzione degli errori
- Principali compilatori e/o tools di programmazione per ridurre i tempi nello sviluppo delle procedure
- Lingua inglese tecnica per comprendere l'eventuale documentazione redatta in lingua inglese
Abilità
- Applicare in maniera corretta ed appropriata le tecniche di programmazione strutturata durante la scrittura delle procedure software
- Documentare in maniera completa e comprensibile le procedure, inserendo note e commenti all'interno del codice, utilizzando tutte le tecniche previste nello specifico linguaggio di programmazione
- Leggere e comprendere la documentazione e la manualistica di supporto alla programmazione redatta in lingua inglese
- Scegliere e utilizzare in maniera evoluta i compilatori ed i tools di programmazione relativi al linguaggio o all'ambiente di programmazione prescelto
- Sviluppare le procedure nel linguaggio di programmazione prescelto nella maniera più efficace ed efficiente, utilizzando tutte le potenzialità offerte dal linguaggio in termini di sintassi e comandi
| ADA |
|---|
ADA.14.01.09 - Sviluppo applicazioniRA1: 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 |
Diffusione e distribuzione applicazioni web e mobile
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Caratteristiche dei principali tools presenti sul mercato per semplificare le operazioni, ridurre i tempi e le possibilità di errore nell'installazione del software
- Caratteristiche e potenzialità dei maggiori canali di distribuzione delle applicazioni
- Strategie di determinazione del prezzo dell'applicazione web-mobile
- Tecniche di installazione dei programmi in ambienti operativi complessi, per installare correttamente e consegnare le applicazioni web-mobile presso il cliente o utilizzatore finale
- Tecniche di presentazione delle applicazioni web- mobile a fini commerciali
- Tecniche di redazione dei manuali d'uso per l'utilizzo del programma
Abilità
- Diffondere attraverso i maggiori canali di distribuzione le applicazioni mobili
- Elaborare una completa documentazione delle procedure di installazione contenente i parametri di configurazione, le anomalie riscontrate, le modifiche apportate ed ogni informazione ritenuta utile per le successive modifiche o correzioni
- Illustrare al cliente/utilizzatore finale le principali funzionalità e l'utilizzo del software installato
- Installare il software presso il cliente/utilizzatore finale, curando l'interfaccia con il preesistente ambiente operativo, individuando e risolvendo le eventuali problematiche connesse all'installazione e verificando il funzionamento di tutte le procedure
- Redigere le istruzioni e/o i manuali d'uso per l'utilizzo del programma da parte degli utenti finali
| ADA |
|---|
ADA.14.01.09 - Sviluppo applicazioniRA1: 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 |
Aggiornamento, rilascio nuove versioni e bug fix (correzione errori)
Mostra abilità e conoscenzeMostra attività
Mostra abilità e conoscenzeMostra attività
Conoscenze
- Principali necessità di aggiornamento del l'applicazione in relazione a mutate condizioni o a nuove necessità espresse dal cliente o dall'utilizzatore finale
- Principali necessità di manutenzione dell'applicazione per assicurarne l'affidabilità ed il corretto funzionamento nel tempo
- Stato dell'arte nell'evoluzione tecnologica dell'informatica per suggerire al progettista, all'analista programmatore o al cliente finale eventuali aggiornamenti delle procedure o dei programmi in grado di migliorare l'efficacia o l'efficienza dell'applicazione
Abilità
- Aggiornare tempestivamente l'applicazione in relazione a nuove specifiche fornite dal progettista o a nuove esigenze segnalate dal cliente finale
- Intervenire rapidamente in caso di errore nell'applicazione per individuare le cause ed operare le opportune correzioni secondo le richieste
- Svolgere puntualmente e tempestivamente le operazioni di manutenzione dell'applicazione necessarie per assicurarne la corretta funzionalità nel tempo
| ADA |
|---|
ADA.14.01.09 - Sviluppo applicazioniRA1: 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 |
