Full stack developer
Descrizione
Il Full stack developer progetta, sviluppa, modifica, ottimizza software applicativi sulla base delle esigenze degli utenti. Collabora con la committenza alla definizione delle specifiche funzionali e tecniche delle applicazioni, provvede alla elaborazione dei documenti di analisi e ne assicura la loro approvazione. E' in grado di progettare e sviluppare oggetti, procedure, moduli e applicazioni informatiche nonché di modificare, ottimizzare software applicativi analizzando le esigenze degli utilizzatori e avvalendosi delle tecnologie adottate nell'organizzazione di riferimento. Esegue interventi di manutenzione correttiva e evolutiva su procedure esistenti, realizza interventi di ottimizzazione e ingegnerizzazione delle applicazioni, elabora e aggiorna la documentazione funzionale, tecnica e i manuali utente.
ADA associate alla qualificazione
Competenze
Mostra abilità e conoscenze
- Elementi di diritto del lavoro, con particolare riferimento alle caratteristiche delle più frequenti tipologie di contratto di lavoro dipendente, autonomo e parasubordinato. Format tipo di contratto. Principi relativi alla responsabilità civile e penale dei prestatori. Aspetti contrattualistici, fiscali e previdenziali. Obblighi di tenuta contabile, in ragione delle diverse possibili forme di esercizio. Elementi di normativa fiscale, con particolare riferimento all'esercizio di lavoro autonomo.
- Definire gli aspetti contrattuali della prestazione professionale; verificare l'applicabilità e la correttezza del contratto di lavoro in rapporto al tipo di prestazione richiesta Comprendere gli adempimenti necessari al corretto esercizio di un contratto di lavoro autonomo o parasubordinato; gestire le procedure necessarie all'avvio di un'attività professionale autonoma o parasubordinata; gestire gli adempimenti fiscali e previdenziali obbligatori per l'esercizio dell'attività in oggetto
Mostra abilità e conoscenze
- Le professioni nel settore dei servizi digitali: ruoli, attività e responsabilità. Caratteristiche e modalità organizzative delle imprese ICT. Principi e norme di esercizio dell'attività professionale di Full stack developer in forma di impresa. Procedimento di iscrizione al Registro delle Imprese - CCIAA. CCNL di riferimento e format tipo di contratto. Principi dell'IT Governance. I driver tecnologici e le tecnologie emergenti. Fonti e dati per l'individuazione delle innovazioni nel settore ICT. Vantaggi e miglioramenti derivanti dall'adozione delle tecnologie emergenti.
- Conoscere e comprendere le caratteristiche della prestazione professionale di Full stack developer Individuare le diverse tipologie di imprese nel settore ICT in termini di caratteristiche fondamentali, processi di riferimento, offerte, tipologia di clientela, normativa europea, nazionale e regionale applicabile Conoscere e comprendere le caratteristiche dei diversi ruoli professionali operanti nel settore dei servizi digitali (attività di riferimento, livelli di responsabilità ecc.), prestando particolare attenzione al proprio Definire le condizioni della prestazione professionale di Full stack developer Negoziare le condizioni della prestazione professionale, a partire dal sistema contrattuale applicabile e dagli incentivi economici a disposizione del committente Stipulare i diversi contratti di prestazione, nel rispetto delle norme civilistiche e fiscali – generali e specifiche – applicabili Avviare e gestire il procedimento di iscrizione al registro delle imprese – CCIAA Monitorare le fonti informative (riviste, conferenze e eventi, newsletter, opinion leader, on-line forum ecc.) Identificare le tecnologie emergenti e le applicazioni più importanti del mercato Analizzare i vantaggi e i miglioramenti del business derivanti dall'adozione delle tecnologie emergenti
Mostra abilità e conoscenze
- Elementi di comunicazione. Elementi di psicologia della comunicazione nell'erogazione di un servizio presso la sede del cliente. Principi e modalità di realizzazione dell'ascolto attivo. Princìpi e modalità di prevenzione e gestione dei conflitti. Princìpi e modalità di trasmissione di conoscenze e competenze agli utilizzatori finali.
- Comunicare in maniera efficace con le diverse tipologie di clienti/utilizzatori Utilizzare codici e modalità di interazione diversi a seconda della tipologia dei clienti/utilizzatori, al fine di comprendere le problematiche, acquisire informazioni diagnostiche, trasmettere corretti protocolli d'uso e valorizzare il servizio svolto Costruire relazioni di fiducia con il cliente, in modo tale che le proprie proposte risultino convincenti e vengano accolte con partecipazione Adottare, nel caso in cui si rilevino malfunzionamenti dovuti ad errori d'uso da parte del cliente, atteggiamenti caratterizzati da tatto e persuasione, al fine non urtarne la sensibilità e favorire i processi di apprendimento Adottare stili di comportamento improntati alla cordialità e alla cortesia e, in caso di eventi imprevisti e reclami, mantenere un atteggiamento caratterizzato da autocontrollo ed assunzione di responsabilità Gestire in modo trasparente e positivo le eventuali criticità nell'erogazione del servizio
Mostra abilità e conoscenzeMostra attività
- Processi per lo sviluppo del software; processo a cascata; processo iterativo, evolutivo e agile; Unified Process (UP) tecniche di programmazione. I Requisiti del software: Requisiti, Casi d'uso, Altri requisiti. Analisi orientata agli oggetti: Modelli di dominio, Diagrammi di sequenza di sistema, Contratti delle operazioni. Mockup, prototipazione wireframe e demo. Le interviste con il cliente. Processi di modellazione del software. Domain Driven Design. Architetture e Patterns. Design Patterns. TDD: Test Driven Developement.
- Applicare gli adeguati pattern di analisi. Applicare le metodologie per lo sviluppo guidato dai test al Refactoring Realizzare modelli di oggetti Sviluppare prototipi di applicazioni con tool di wireframing da sottoporre un cliente Applicare i principali Design Patterns Realizzare oggetti software robusti attraverso le metodologie di analisi e sviluppo orientato al test Produrre e aggiornare i documenti di analisi
| ADA |
|---|
ADA.14.01.05 - Progettazione di Architetture RA 1: Definire l'architettura del sistema informativo e il suo aggiornamento nel tempo, a partire dall'analisi delle esigenze dell'organizzazione, dalla valutazione comparativa di costi/benefici e rischi delle varie soluzioni, garantendo l'ottimizzazione della performance e della sicurezza Analisi di esigenze, obiettivi, driver e organizzazione del business che impattano su componenti architetturali dell’IS Monitoraggio della disponibilità sul mercato di nuove soluzioni tecnologiche Analisi comparativa di costi, rischi e benefici delle soluzioni architetturali Definizione/aggiornamento dell'insieme dei componenti software e hardware che costituiscono l’IS (Information System) Progettazione/aggiornamento dell’integrazione e dell'interconnessione dell’IS (Information System) Progettazione della resilienza dell'IS per contrastare i points of failure e garantire continuità operativa Definizione e valutazione di principi e tecniche di gestione degli accessi e della disponibilità delle informazioni per gli utenti del sistema RA 2: Supportare i team applicativi realizzando modelli e pattern di ausilio alla progettazione e allo sviluppo di applicazioni e garantendo l'efficace comunicazione delle caratteristiche dell'architettura Sviluppo di modelli e pattern per supportare la progettazione di applicazioni consistenti Cura della comunicazione e della collaborazione tra i diversi team di sviluppo Archiviazione di documenti specifici per esplicitare i modelli e i pattern e assicurare omogeneità di sviluppo degli applicativi |
Mostra abilità e conoscenzeMostra attività
- Il linguaggio di rappresentazione dei sistemi UML. Progettazione di gerarchie di oggetti. Notazione e Semantica . Codifica di oggetti per l'interfaccia . Utilizzo di tool per la rappresentazione grafica UML. Standard OMG. UML: Meta - modello e diagrammi. Diagrammi logici, di implementazione e d'uso. Diagrammi delle classi e diagrammi di sequenza. Filosofia della programmazione ad oggetti. Incapsulamento, astrazione, ereditarietà, polimorfismo. Analisi e progettazione di software Object Oriented.
- Realizzare diagrammi UML. Creare Class Diagram. Creare State Diagram. Creare Use case diagram. Definire e realizzare oggetti software. Produrre e aggiornare la documentazione tecnica.
| 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 |
Mostra abilità e conoscenzeMostra attività
- Elementi fondamentali dei Database informatici . Classificazione dei Database: Relazionali, Document, Key-Valued, Column family ecc.. Metodi di progettazione, creazione, gestione di database relazionali e non relazionali. Le tipologie di database e le loro applicazioni.Tecniche e metodi di accesso ai dati correlati alla tipologia di Database e di applicazione Progettazione e gestione di Database non relazionali. Modelli avanzati di Basi di Dati: Datawarehouse e GIS Tecniche di Data Mining e Data Visualization.7
- Comprendere le logiche dell'architettura dei dati e orientarsi tra gli strumenti e i metodi di sviluppo dei Database Definire nel dettaglio il modello logico e fisico dei dati per i diversi data base (modelli e schemi di DB) Applicare modelli e schemi di Database e procedure di gestione dati in relazione alle esigenze di accesso ed elaborazione delle applicazioni a supporto dei diversi processi di business Gestire il popolamento/migrazione in fase di start-up del Database Assicurare l'integrità dei dati e la continuità di accesso agli stessi Eseguire procedure di test per la gestione e verifica delle funzionalità e performance del Database Garantire i principi di database security Produrre l'adeguata documentazione dell'esito dell'implementazione della struttura logica dei dati, delle procedure di elaborazione e del popolamento dei dati
| ADA |
|---|
ADA.14.01.19 - Gestione dell'Informazione e della ConoscenzaRA1: Definire la strategia relativa all’informazione, identificando il fabbisogno, i requisiti e il valore per il business dell’informazione e il processo per la sua gestione, selezionando le fonti dei dati interne e/o esterne e la loro forma e mantenendo la compliance con i requisiti di Privacy e il rispetto dei diritti di Proprietà Intellettuale Rilevazione/analisi dei fabbisogni di informazione Analisi del valore dell'informazione Formalizzazione dei requisiti di informazione Definizione del processo per la gestione dell’informazione Applicazione degli standard e delle norme relative alla proprietà intellettuale (IPR) e le norme della privacy RA2: Definire l'architettura per la gestione dell'informazione e disegnare l’infrastruttura tecnica funzionale allo sfruttamento, ottimizzazione e condivisione delle informazioni, identificando gli strumenti appropriati per creare, estrarre, mantenere, rinnovare, presentare e diffondere le conoscenze al fine di capitalizzare il patrimonio informativo. Traduzione del funzionamento del business in informazione strutturata Definizione dell'architettura a supporto della gestione dell'informazione Disegno dell'infrastruttura tecnica per la gestione dei dati Analisi di data set complessi, interni o esterni, di varia estensione, natura e struttura Scelta delle tecniche di presentazione dei dati orientate al business |
| 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 |
Mostra abilità e conoscenzeMostra attività
- Concetti fondamentali di architettura delle piattaforme software del framework di riferimento. Principi e fondamenti del funzionamento delle tecnologie software. Paradigmi di programmazione a oggetti e la loro implementazione pratica in classi software, senza riferimenti specifici a linguaggi o framework. Applicazioni console, principali concetti di gestione degli errori e delle eccezioni. Definizione e implementazione di applicazioni grafiche. Metodologie di accesso ai dati e interazione con database. Principali design pattern software, inclusi i pattern architetturali come MVC e le best practice di sviluppo. Principi e fondamenti dello sviluppo web, inclusi i principi di multi-tier architecture e le tecniche di programmazione web. Tecniche di comunicazione e integrazione tra sistemi software.Principi e fondamenti dello sviluppo guidato dai test (Test Driven Development) e le best practice associate.
- Sviluppare applicazioni con accesso ai dati. Implementare architetture seguendo il pattern MVC o pattern simili. Realizzare servizi per applicazioni enterprise seguendo le best practices di sviluppo. Creare strati di accesso ai dati indipendenti dalle specifiche del database sottostante. Implementare interfacce utente interattive utilizzando tecnologie web moderne. Sviluppare applicazioni enterprise con un focus sull'architettura e la scalabilità. Creare e consumare servizi web utilizzando protocolli standard come SOAP e JSON. Installare e configurare ambienti di sviluppo senza vincoli tecnologici specifici. Scrivere codice modularizzato e manutenibile utilizzando principi di programmazione generici. Realizzare interfacce grafiche intuitive e user-friendly. Definire e implementare applicazioni complesse rispettando i principi architetturali. Produrre documentazione tecnica esaustiva e aggiornata per le applicazioni sviluppate
| 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 |
Mostra abilità e conoscenzeMostra attività
- Il linguaggio Object-Oriented di riferimento per un dato dispositivo mobile. Le librerie di base del dispositivo. Progettazione di user interface. Dati in dispositivi mobili. Performance. Web Views e Location C Maps. Gestione di add-on quali Accelerometri, fotocamere ecc. Gestione delle batterie e sistemi di alimentazione. API per l'audio e il video. Web Content Settings. Data Storage. GPS, Mappe, geolocalizzazione. Gestione delle lingue e culture. Realizzazione e sviluppo di App internazionalizzate. Comunicazioni Peer-to-Peer. Web app. Sviluppo di applicazioni web responsive fruibili anche da dispositivi mobile. Realizzazione e sviluppo di una App e inserimento sullo store.
- Realizzare semplici classi per dispositivi mobili. Creare una GUI per dispositivi mobili. Realizzare classi per la gestione di interfacce grafiche. Sviluppare applicazioni mobile con accesso a database. Sviluppare applicazioni con grafica tridimensionale Realizzare Applicazioni avanzate con gestione della lingua e della cultura. Produrre e aggiornare la documentazione tecnica.
| 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 |
Mostra abilità e conoscenzeMostra attività
- Gli ambienti cloud (MS Azure, Amazon AWS ecc.). Gestione e integrazione dati on-premises/on-the-cloud. Ambienti di sviluppo per applicazioni Cloud. Strumenti e metodi di progettazione e sviluppo di applicazioni in ambienti ibridi e multi-Cloud. Modelli e tecniche di Deploy su Microsoft Azure. Tecniche, possibilità, infrastrutture finalizzate a Scalare una applicazione Cloud.
- Sviluppare una applicazione Cloud oriented. Implementare una applicazione che possa “scalare” facilmente. Integrare la propria applicazione in un ecosistema Cloud. Migrare una applicazione “on premise” a Cloud. Deployare una applicazione Cloud. Conoscere e comprendere i vantaggi e le limitazioni delle applicazioni cloud. Conoscere le principali piattaforme di Cloud Computing: Azure, AWS, Google ecc. Definire differenze e similitudini tra applicazioni Cloud e “on premise”. Integrare la propria applicazione web con meccanismi di sicurezza autenticazione, database ecc. offerti dal servizio di Cloud Computing. Sviluppare una applicazione Cloud con Azure.
| 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 |
Mostra abilità e conoscenzeMostra attività
- Principali framework disponibili nel mercato. Principali editor per lo sviluppo ed il test delle pagine. Concetti “core” di un client web ricco e “adattabile” al dispositivo. Classi e i pattern principali utilizzati. Ciclo di vita della pagina ed il dialogo con il backend applicativo. Client per Web service: JSON e altri formati per lo scambio di informazioni. Il design delle finestre: componenti principali, finestre, finestre di dialogo, bottoni, caselle di test, widget principali. Layout responsive. Tecnolgie di comunicazione con il Backend. Gestione dei dati, modello, validazione. Sviluppo di un front end completo per una applicazione web.
- Utilizzare i principali framework javascript per lo sviluppo di interfacce web evolute. Implementare classi e oggetti in JavaScript in conformità con le best practice del framework utilizzato, garantendo una struttura di codice modulare e manutenibile. Implementare classi e oggetti in JavaScript in conformità con le best practice del framework utilizzato, garantendo una struttura di codice modulare e manutenibile. Creare web form avanzati arricchiti con componenti dinamici come griglie dati, tree view, drag and drop, utilizzando framework o librerie. Sviluppare applicazioni web che consumano servizi web utilizzando per la comunicazione con il backend, utilizzando le attuali tecnologie disponibili. Creare layout responsive utilizzando i principali framework di layout, garantendo un'esperienza utente ottimale su diverse dimensioni di schermo e dispositivi. Realizzare pagine per la gestione dei dati che includono funzionalità di validazione dei dati in input, operazioni di inserimento, ricerca, modifica ed eliminazione, utilizzando pattern e librerie di validazione. Creare frontend per applicazioni orientate ai servizi. Definire e realizzare interfacce grafiche per applicazioni architetturalmente complesse. Produrre e aggiornare la documentazione tecnica.
| 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 |
Mostra abilità e conoscenze
- Machine Learning, Deep Learning. Principi e metodologie della progettazione di algoritmi di Machine Learning. Analisi dei Modelli. Principi e fondamenti dei Dataset strutturati o non strutturati. Normalizzazione dei Dataset. Apprendimento Supervisionato - Regressione. Apprendimento Supervisionato – Classificazione. Scrivere client per la API più diffuse di LLM. Disegno applicazioni di Machine Learning. Sviluppo di applicazioni di tipo RAG.
- Applicare i principi che sono alla base dell'AI e del Machine Learning. Applicare le metodologie e le tecniche per selezionare i dati da fornire ad un algoritmo per poter “apprendere” da essi. Disegnare applicazioni di Machine Learning. Definire applicazioni in grado di caricare dataset e creare modelli di machine learning in grado di estrarre e visualizzare riepiloghi statistici. Applicare concetti avanzati come il Fine Tuning dei modelli pre-addestrati, che permette di adattare i modelli esistenti a specifici contesti o domini, migliorandone le prestazioni e l'adattabilità ai dati di input. Utilizzare API di servizi di linguaggio naturale (LLM) per l'elaborazione del linguaggio naturale (NLP), consentendo alle applicazioni di comprendere e generare testo in modo intelligente e contestualmente appropriato. Integrare la tecnologia RAG (Retriever, Answer Generator, Generator) per creare sistemi di domanda-risposta basati su documenti, che permettono di recuperare informazioni rilevanti da grandi corpora di testo e generare risposte accurate e coerenti.
Mostra abilità e conoscenze
- Internet of things e le nuove frontiere dell'interazione tra uomo e computer. Principi della progettazione dell'interazione e della UX. Piattaforme per IoT: Panoramica sul RaspberryPi / Arduino / Intel Galileo. Principali framework Java per l'internet of Things. Principi e tecniche per la progettazione e lo sviluppo di APP per l'Internet of Things. Tecniche per l'acquisizione e la gestione dei dati rilevati dai sensori. Tecniche della progettazione e sviluppo di APP connesse ad internet. I principali protocolli per l'internet of Things. Gestione delle code di messaggi. Internet of Things ed il Cloud computing. Aspetti organizzativi e di progettazione: la progettazione delle interfacce, le problematiche di privacy, analisi e gestione del rischio, analisi di capacità e requisiti di disponibilità. Principi dei sistemi open hardware. Tecniche di programmazione dei sistemi open hardware. Fondamenti di elettronica analogica e digitale. Gli Input: catturare e interpretare i fenomeni esterni (connessione con bottoni, sensori ecc.). Gli Output: interagire col mondo fisico (led, motori ecc.). Principi di comunicazione con gli oggetti.
- Sviluppare APP internet of Things. Acquisire e gestire i dati dai sensori. Sviluppare APP connesse ad internet. Analizzare e i principali protocolli per l'internet of Things. Gestire le code di messaggi. Definire e applicare gli aspetti organizzativi e di progettazione. Applicare le basi della programmazione dei sistemi open hardware. Definire e applicare i Fondamenti di elettronica analogica e digitale. Catturare e interpretare i fenomeni esterni (connessione con bottoni, sensori ecc.). Interagire col mondo fisico (led, motori ecc.). Comunicare con gli oggetti.
Mostra abilità e conoscenzeMostra attività
- Le modalità di sicurezza operative dell'applicazione e dell'ambiente di sviluppo. I requisiti di sicurezza in ogni fase del ciclo di vita di una applicazione. La normativa di riferimento. Principi di programmazione sicura. Sicurezza dei sistemi operativi. Sicurezza delle applicazioni web. Sicurezza delle basi di dati. Normativa sulla protezione dei dati personali. Normativa sull'informazione. Principi comuni e aspetti applicativi della legislazione vigente in materia di sicurezza. Le professionalità con cui interagire.
- Applicare principi di programmazione sicura. Applicare tecniche di valutazione del rischio informatico. Utilizzare strumenti di controllo degli accessi e di aggiornamento automatico di un sistema operativo. Utilizzare strumenti di controllo degli accessi alle basi di dati. Applicare informative sulla privacy ed informative cookie privacy. Applicare tecniche di protezione crittografica. Applicare tecniche di valutazione del rischio informatico. Utilizzare strumenti di controllo degli accessi e di aggiornamento automatico di un sistema operativo.
| ADA |
|---|
ADA.14.01.05 - Progettazione di Architetture RA 1: Definire l'architettura del sistema informativo e il suo aggiornamento nel tempo, a partire dall'analisi delle esigenze dell'organizzazione, dalla valutazione comparativa di costi/benefici e rischi delle varie soluzioni, garantendo l'ottimizzazione della performance e della sicurezza Analisi di esigenze, obiettivi, driver e organizzazione del business che impattano su componenti architetturali dell’IS Monitoraggio della disponibilità sul mercato di nuove soluzioni tecnologiche Analisi comparativa di costi, rischi e benefici delle soluzioni architetturali Definizione/aggiornamento dell'insieme dei componenti software e hardware che costituiscono l’IS (Information System) Progettazione/aggiornamento dell’integrazione e dell'interconnessione dell’IS (Information System) Progettazione della resilienza dell'IS per contrastare i points of failure e garantire continuità operativa Definizione e valutazione di principi e tecniche di gestione degli accessi e della disponibilità delle informazioni per gli utenti del sistema RA 2: Supportare i team applicativi realizzando modelli e pattern di ausilio alla progettazione e allo sviluppo di applicazioni e garantendo l'efficace comunicazione delle caratteristiche dell'architettura Sviluppo di modelli e pattern per supportare la progettazione di applicazioni consistenti Cura della comunicazione e della collaborazione tra i diversi team di sviluppo Archiviazione di documenti specifici per esplicitare i modelli e i pattern e assicurare omogeneità di sviluppo degli applicativi |
Mostra abilità e conoscenzeMostra attività
- Tipologie di test di una applicazione informatica. Criteri di pianificazione e costruzione di matrici di test. Tecniche, metodologie e strumenti di testing
- Sviluppare ed applicare test rivolti alla messa in evidenza di potenziali vulnerabilità. Definire il piano di test, sulla base delle caratteristiche della applicazione informatica. Predisporre ed effettuare i test delle applicazioni, documentandone caratteristiche ed esiti. Valutare gli esiti dei test e produrre la relativa documentazione.
| ADA |
|---|
ADA.14.01.11 - Testing di sistemi ITRA1: Predisporre procedure e standard interni per i processi di testing di varia tipologia, rispettando gli standard esterni di riferimento Definizione di protocolli e standard per le attività di testing RA2: Supervisionare processi di testing di sistemi ICT, garantendo il rispetto delle procedure e assicurando il corretto afflusso di informazioni relative al testing ad altri soggetti coinvolti nella produzione o nell’utilizzo (progettisti, manutentori, utenti, ecc.) Supervisione di processi di test di sistemi ICT Cura del flusso informativo tra il testing e altri soggetti coinvolti nel processo di produzione RA3: Effettuare test di sistemi ICT nel rispetto delle procedure e degli standard di riferimento, avendo precedentemente provveduto alla loro organizzazione, valutandone i risultati e predisponendo la documentazione prevista Organizzazione di piani di test di sistemi ICT Preparazione di test, di varia natura, di sistemi ICT (funzionali, di integrazione, di performance, di usabilità, di accessibilità, di sicurezza, di resilienza, ecc.) Conduzione di test di componenti e sistemi ICT Analisi dei risultati dei test Cura del reporting e della documentazione dei test e dei relativi risultati |
Mostra abilità e conoscenze
- Normative vigenti in materia di sicurezza, prevenzione infortuni, prevenzione incendi e igiene del lavoro, anche con riferimento agli obblighi previsti dal T.U.81/08 • Fattori di rischio professionale e ambientale, e successive disposizioni integrative e correttive, in relazione alla specifica destinazione dei locali e delle attività lavorative di riferimento
- Prevenire e ridurre il rischio professionale, ambientale e del beneficiario. Adottare stili e comportamenti idonei alla prevenzione e riduzione del rischio professionale e ambientale. Adottare comportamenti per la prevenzione del rischio elettrico. Adottare comportamenti per la prevenzione degli incendi.
