Responsabile della progettazione di procedure software e applicazioni informatiche
Competenze
Qualità del software
Mostra abilità e conoscenze
Mostra abilità e conoscenze
Conoscenze
- Procedure di certificazione 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 tutela della proprietà intellettuale e tutela legale del software, per verificare che siano rispettate in tutte le fasi della progettazione del software
- Normative vigenti in materia di privacy e tutela dei dati personali, per assicurare il rispetto delle disposizioni di legge da parte del software applicativo
- Normative UNI EN ISO relative alla certificazione del software, per valutare l'opportunità di applicarle nella progettazione e nello sviluppo del software
- Metodologie di applicazione dei principi della qualità alla produzione del software
Abilità
- Assicurare il rispetto delle normative vigenti in materia di tutela della proprietà intellettuale e tutela legale del software
- Verificare l'applicazione dei principi della qualità definiti in sede di progetto nel processo di produzione del software
- Valutare i costi dell'applicazione delle procedure di certificazione al software applicativo
- Selezionare e interpretare la normativa UNI EN ISO più adatta per la certificazione del software
- 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 EN ISO
Progettazione del software
Mostra abilità e conoscenze
Mostra abilità e conoscenze
Conoscenze
- Tecniche di programmazione strutturata, per un'ottimizzazione della struttura delle procedure anche in relazione ai tempi necessari per lo sviluppo del codice
- Tecniche di codifica e pseudocodifica delle specifiche del software, per definire le specifiche di ogni procedura in maniera formalmente corretta, precisa, comprensibile ed univoca
- 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
- 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
- Architettura e prestazioni del sistema operativo per ottimizzare la progettazione del software
- Architettura dei sistemi di elaborazione elettronica, al fine di ottimizzare la progettazione del software
Abilità
- Operare le scelte più efficaci/efficienti in relazione all'architettura e alle prestazioni del sistema operativo
- Operare le scelte più efficaci/efficienti in relazione all'architettura del sistema di elaborazione
- Definire nella maniera ottimale l'architettura e la struttura delle basi di dati su cui dovrà operare il software
- Codificare in maniera formalizzata e comprensibile le specifiche delle singole procedure software
- Applicare le metodologie della programmazione strutturata nella progettazione del software
Testing e manutenzione del software
Mostra abilità e conoscenze
Mostra abilità e conoscenze
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
- Coordinare la stesura e l'aggiornamento della documentazione tecnica delle procedure
- 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
- Esaminare le eventuali nuove esigenze o richieste del cliente per valutare l'opportunità di modifiche alla progettazione del software
Analisi dei requisiti
Mostra abilità e conoscenze
Mostra abilità e conoscenze
Conoscenze
- Tecniche di analisi delle organizzazioni e dei processi aziendali per individuare gli elementi (entità, relazioni, processi, ecc...) rilevanti per una corretta rappresentazione formalizzata della realtà da informatizzare
- 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
- 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
- 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
Abilità
- Analizzare con il cliente la realtà ed i processi con cui andrà ad interagire il software da realizzare e le esigenze a cui intende rispondere
- Esaminare con il cliente caretteristiche, obiettivi, requisiti e vincoli delle procedure da informatizzare con il software applicativo
- 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
- Eseguire uno studio di fattibilità, contenente la stima dei benefici, dei costi, delle risorse richieste e dei tempi di consegna del software
- Utilizzare i linguaggi e i metodi di descrizione formalizzata della conoscenza concreta e di catalogazione delle informazioni
- Rappresentare in forma grafica o formalizzata il modello della realtà o dei processi aziendali elaborato
Metodologie di sviluppo del software
Mostra abilità e conoscenze
Mostra abilità e conoscenze
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 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
- 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 l'eventuale documentazione redatta in lingua inglese
Abilità
- 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
- Assicurare l'utilizzo delle opportune metodologie di scrittura strutturata del codice sorgente per rendere comprensibile rapidamente la struttura del programma
- Verificare l'applicazione in maniera corretta ed appropriata delle tecniche di programmazione strutturata durante la scrittura delle procedure software
- Leggere e comprendere la documentazione e la manualistica di supporto redatta in lingua inglese
