ANALISTA PROGRAMMATORE Corso GRATUITO per giovani e adulti disoccupati o occupati, già in possesso di conoscenze e capacità nel settore Rif. PA n 2014-3297/RER Finanziato dalla Regione Emilia Romagna tramite il Fondo Sociale Europeo - Approvato con Determinazione Dirigenziale n 1927 del 28/11/2014
SCHEDA DI SINTESI DELL'ATTIVITÀ FINALITA La figura professionale si occupa di progettare, sviluppare, gestire e collaudare software applicativi, utilizzando tecniche di progettazione e programmazione avanzata in ambiente Microsoft DOT NET. Conosce le tecniche di programmazione ad oggetti ed è in grado di affrontare problematiche e realizzare soluzioni per un vasto numero di applicazioni gestionali orientate al web e client server, e di far migrare vecchie applicazioni ai nuovi standard di sviluppo adeguandone le funzionalità alle nuove tecnologie. Assume un ruolo tecnico di rilievo nella progettazione di sistemi informativi e deve essere molto efficace nella realizzazione e manutenzione di moduli software complessi, che tipicamente dovranno essere integrati in un più ampio sistema informativo. Definisce specifiche dettagliate e contribuisce direttamente alla creazione e/o modifica efficiente di sistemi software complessi utilizzando standard e strumenti adeguati. Garantisce che i risultati rispondano ai requisiti sia per l alta qualità della progettazione tecnica che in termini di conformità alle specifiche funzionali concordate. DESTINATARI Giovani e adulti disoccupati o occupati già in possesso di conoscenze e capacità nel settore, con priorità alle persone disoccupate. L ammissione al corso è subordinata al superamento di una selezione che prevede colloqui individuali e test attitudinali. METODOLOGIE DIDATTICHE Durante lo svolgimento del corso si effettueranno periodi di alternanza tra: lezioni in aula, esercitazioni pratiche con analisi di casi, simulazioni, dimostrazioni, verifiche di apprendimento e stage aziendale. MODALITA DI REALIZZAZIONE DEL CORSO Struttura del corso: formazione teorica stage totale 180 ore 120 ore 300 ore Periodo di svolgimento: da marzo 2015 a giugno 2015 Sede di svolgimento: For.P.In. Scarl - Viale S. Ambrogio 23 Piacenza Articolazione orario: circa 32 ore settimanali dal lunedì al venerdì Frequenza: obbligatoria. Sono consentite assenze per un massimo del 30% del monte ore totale. Al termine dell intervento formativo è prevista un esame finale per il rilascio del Certificato di qualifica professionale in Pagina 2
"Analista programmatore" L accesso all esame finale è vincolato ad una frequenza superiore al 70% delle ore complessive del corso. PER ULTERIORI INFORMAZIONI For.P.In. Scarl, Viale S. Ambrogio 23-29121 Piacenza dal lunedì al giovedì dalle ore 9.00 alle 13.00 e dalle 14.00 alle 18.00 ed il venerdì dalle ore 9.00 alle 13.00 e dalle 14.00 alle 17.00 Tel. 0523/307411 - fax 0523/307417 e-mail: forpin@forpin.it www.forpin.it COME ISCRIVERSI Presentare o inviare la domanda di partecipazione al corso ENTRO IL 20 MARZO 2015, presso For.P.In. Scarl, Viale S. Ambrogio 23-29121 Piacenza (anche via fax al 0523-307417 o via e-mail a forpin@forpin.it). Pagina 3
PROFILO PROFESSIONALE IN USCITA La figura dell Analista Programmatore richiede buone conoscenze e competenze in area informatica e programmazione, ma al contempo necessita di specializzazione sui principali applicativi oggi disponibili sul mercato ed in grado di tradurre in applicazioni web le richieste dei clienti. Si tratta di una figura che individua le esigenze del committente e definisce i requisiti del software da creare; utilizzando i linguaggi di programmazione sviluppa applicazioni software che soddisfano specifiche esigenze. Si tratta di un ruolo che è soprattutto presente all interno di softwarehouse, vale a dire società che realizzano programmi informatici destinati ai più diversi settori di attività, da quello commerciale a quello scientifico o quello pubblico. Il suo lavoro non si limita però a questa sola fase, le sue mansioni prevedono anche il collaudo e la messa a punto del software, che consistono rispettivamente nell identificazione e nella successiva eliminazione degli eventuali errori, fino al raggiungimento della versione definitiva del programma. Deve essere in grado di individuare gli strumenti di sviluppo del software, per creare un prodotto conforme alle specifiche progettuali indicate dal Cliente. In particolare, deve conoscere i più diffusi linguaggi di programmazione, le principali regole della programmazione strutturata, le diverse tipologie di applicazioni software e i principali sistemi operativi utilizzati dai computer. Le competenze richieste sono dunque complesse, variegate e difficilmente rintracciabili in un diplomato. ARTICOLAZIONE DIDATTICA DEL PERCORSO Il percorso ha una durata di 300 ore, di cui 180 di aula e 120 di stage. Di seguito vengono esplicitate le unità formative: UNITÀ FORMATIVE ORE CONTENUTI Sistema Azienda, Settore informatico, Sicurezza 8 AZIENDA E SETTORE (4 ore) L azienda come sistema: funzioni, processi e struttura organizzativa Le strategie d impresa I processi aziendali: come funziona un azienda dentro e fuori i propri confini Le applicazioni a supporto dei processi Trend evolutivo del settore informatico LA SICUREZZA IN AZIENDA (4 ore) La normativa generale e le norme specifiche previste dal D. Lgs. 81/2008 Pagina 4
Analisi applicazioni informatiche Fondamenti di logica di programmazione Applicativi del sistema informativo 20 20 26 e s.m.i. (ex L. 626/94) Requisiti essenziali di sicurezza e salute degli ambienti e dei processi di lavoro I dispositivi di protezione individuale Concetti base relativi alla Prevenzione e Protezione negli ambienti di lavoro Obblighi e responsabilità dei lavoratori Primo Soccorso Riconoscere e valutare i rischi dell'ambiente di lavoro Definizione dei requisiti di una applicazione a partire dalle specifiche date dal cliente e dagli strumenti a disposizione Raccolta e analisi di requisiti utente, requisiti operativi e requisiti di sistema per l'hardware, il software e l'infrastruttura di rete Traduzione dei requisiti in specifiche funzionali: considerazioni su prestazioni, manutenibilità, estendibilità, scalabilità, disponibilità, rilasciabilità, sicurezza e l'accessibilità Traduzione delle specifiche funzionali in specifiche tecniche: considerazioni su prestazioni, manutenibilità, estendibilità, scalabilità, disponibilità, rilasciabilità, sicurezza e l'accessibilità La scelta delle tecnologie più adatte per la progettazione tecnica della soluzione La validazione del progetto tecnico Controllo di flusso nella programmazione strutturata Gli algoritmi: definizione, elementi descrittivi Variabili, costanti, tipi di dati Array e strutture dati Operatori aritmetici e logici, condizioni Istruzioni di assegnazione, di controllo e iterative Introduzione alle mobile application Programmazione ad oggetti (cenni) C++; C#; Java, Visual Basic, ASP.Net Introduzione al.net Framework Introduzione al linguaggio C# Sintassi e costrutti di base Tipi di base ed enumeratori Funzioni e parametri Gestione delle eccezioni Programmazione ad oggetti Classi, membri ed ereditarietà Interfacce ed eventi Generics e Collections Accesso IO ai file Introduzione allo sviluppo di applicazioni Windows Introduzione a WPF Sviluppo di applicazioni con WPF Studio dell interfaccia utente Accesso ai dati Distribuzione di un applicazione TECNOLOGIE DI ACCESSO AI DATI Introduzione alle sorgenti dati Pagina 5
Basi di dati 24 ADO.NET e l architettura connessa ADO.NET e l architettura disconnessa Utilizzo di LINQ to SQL Introduzione all Entity Framework Esempi di utilizzo di Entity Framework PROGETTAZIONE E IMPLEMENTAZIONE DELLE BASI DATI La scelta tra diversi tipi di architetture di basi dati (quali relazionale, gerarchico, a matrice, orientato agli oggetti) quella adatta ai requisiti dell applicazione Astrazione dei dati: livello fisico, concettuale e vista, modello logico basato su oggetti, modello logico basato su record e modello dati fisico Progettazione delle chiavi delle entità: vincoli FOREIGN KEY, PRIMARY KEY e UNIQUE Progettazione dell integrità del dominio di attributi Strumenti di progettazione di una base dati Implementazione di una base dati fisica Creazione e modifica le basi dati Creazione e modifica degli oggetti di una base dati: (vincoli, indici, stored procedure, tabelle, trigger, funzioni definite dall utente e viste) Definizione della sicurezza a livello di oggetti Modifica degli oggetti di un database Individuazione di malfunzionamenti Sviluppo di applicazioni informatiche 50 STRUTTURA E IMPLEMENTAZIONE DI SQL SERVER Installazione e configurazione di SQL Server Creazione di tipi dati e tabelle Utilizzare le caratteristiche XML Microsoft SQL Server Pianificazione, creazione e ottimizzazione di indici Integrità dei dati nei database Microsoft SQL Server: constraints e trigger Implementazione di viste, stored procedures e funzioni Implementare codice gestito nel database Utilizzo di blocchi e transazioni Il Service Broker per creare una soluzione di tipo comunicativo Effettuare il backup e restore del database SVILUPPO DI APPLICAZIONI CON LINGUAGGI MICROSOFT.NET Microsoft Intermediate Language e JITter Il Common Language Runtime (CLR) Librerie di classi.net Framework Il Linguaggio C#: Tipi e Variabili Istruzioni Programmazione orientata agli oggetti Lavorare con le Collection I Generics I Delegate e gli eventi La gestione delle eccezioni Linq to Object Linq to XML Pagina 6
Tecniche per la convalida delle applicazioni software 32 Istruzioni e controllo del flusso Namespace Classi Interfacce Strutture dati: array e structs Gestione delle eccezioni SVILUPPO DI APPLICAZIONI WEB CON ASP.NET Introduzione allo sviluppo web Integrazione.NET Framework e web server IIS Progettazione di una web application Introduzione a ASP.NET MVC Sviluppo di codice lato server Interazione con codice lato client Javascript/Ajax Accesso ai database Protezione dell applicazione e profilazione utente Distribuzione di una web application Struttura di un applicazione ASP.NET Lavorare con i principali Server Control Tecniche di debugging del software Analisi dei log applicativi e di sistema Sistemi operativi più diffusi: Linux/Unix, Windows, MacOS Installazione e aggiornamento dei sistemi operativi sopra menzionati Gestione della concorrenza, blocco critico (deadlock) e attesa illimitata (starvation) Scheduling Operazioni di ingresso/uscita e loro gestione Sistemi di gestione dei file Gestione di utenti e accessi Analisi delle capacità della rete Configurazione delle interfacce di rete Configurazione dei diversi protocolli e servizi di rete (inclusi http, SMTP, POP, IMAP, DNS) Pubblicazione risorse su una rete (quali stampanti e cartelle condivise) Messa a punto del sistema per ottenere le prestazioni richieste Gestione utenti e gruppi di utenti e impostazione delle corrispondenti politiche di sicurezza Applicazione degli accorgimenti per l interoperabilità (formati di file, protocolli disponibili, ecc.) Impostazione dei sistemi in modo che raggiungano il livello di interoperabilità richiesto tra sistemi operativi eterogenei Utilizzo di tecniche di aumento delle prestazioni quali il clustering Individuazione e soluzione di problemi Pagina 7
STAGE (120 ORE) Lo stage costituisce parte integrante del programma formativo e si propone di offrire ai partecipanti l opportunità di vivere, seppur per un breve periodo, il clima del lavoro aziendale e di vedere come vengono effettivamente applicate a livello professionale le nozioni apprese sul piano teorico. Lo stage che sarà strutturato come una esperienza di tipo applicativo e di pre-inserimento nel tessuto lavorativo, rappresenta un momento particolarmente importante nell equilibrio complessivo dell intervento formativo, per una serie di motivi: permette agli utenti in formazione di confrontarsi direttamente con il contesto lavorativo dell impresa ospitante e di apprendere sul campo approcci e mentalità tipiche del modo di affrontare le responsabilità e le mansioni lavorative; consente alle aziende che si sono rese disponibili ad ospitare gli allievi con un futuro ed eventuale rapporto di lavoro di instaurare con gli stessi, un rapporto di collaborazione e fiducia reciproca, trasmettendo loro quelle metodologie operative che saranno richieste al momento del loro ingresso nella struttura organizzativa. SELEZIONI L'ammissione al corso è subordinata al superamento di una selezione che prevede: Test logico-attitudinale: atto a valutare il possesso delle competenze trasversali; Test di informatica: atto ad accertare il possesso delle conoscenze tecniche relative all area di riferimento del profilo professionale Test di inglese: atto ad accertare il possesso di un livello di conoscenze e competenze in lingua inglese almeno pari al livello B1 Threshold degli standard British Institutes; Colloquio individuale: si analizzeranno le conoscenze possedute dal candidato in merito alla figura professionale oggetto del corso e si verificheranno le motivazioni alla base della scelta e la compatibilità dei contenuti del corso con le esperienze del candidato e con le reali aspettative all'inserimento nel mondo del lavoro. Soltanto i candidati che avranno ottenuta una soglia di giudizio almeno sufficiente per ciascuna delle prove avrà accesso al corso. Verranno ammessi al corso i primi 12 candidati. In caso di rinuncia di Pagina 8
uno o più candidati selezionati, la graduatoria sarà utilizzata per individuare in ordine progressivo i candidati subentranti. Pagina 9
16/11/04 Rev. 1 Pag. 1/12 NOME: foto COGNOME: SCHEDA DI PARTECIPAZIONE ALLA SELEZIONE DEL CORSO ANALISTA PROGRAMMATORE
16/11/04 Rev. 1 Pag. 2/12 Dati Anagrafici: Cognome...... Nome...... Luogo di nascita...... Data...... Prov....... Nazionalità...... Comune di residenza...... Via e n civico...... CAP Provincia... Telefono...... Altro recapito...... Cod. fiscale:...e-mail...... Domicilio (se diverso dalla residenza)...... stato civile: coniugato non coniugato servizio di leva: assolto esonerato da assolvere rinvio fino al... Condizione occupazionale: In cerca di prima occupazione da meno di 6 mesi In cerca di prima occupazione da 6 a 11 mesi In cerca di prima occupazione da 12 a 23 mesi In cerca di prima occupazione da oltre 24 mesi In cerca di nuova occupazione da meno di 6 mesi In cerca di nuova occupazione da 6 a 11 mesi In cerca di nuova occupazione da 12 a 23 mesi In cerca di nuova occupazione da oltre 24 mesi Occupato alle dipendenze Occupato con contratti a causa mista (es. CFL) Lavoratore autonomo Collaboratore con contratto di collaborazione coordinata e Studente Altro (es. casalinga, ecc.) E' iscritto all'ufficio di Collocamento? sì no Formazione personale: - Diploma di scuola media superiore.... Conseguito presso... anno votazione / - Diploma universitario - laurea breve..... Conseguita presso... mese anno votazione Indirizzo di laurea breve.... - Laurea..... Conseguita presso... mese anno votazione Indirizzo di Laurea.... Titolo tesi.... Corsi di specializzazione: Tipo di specializzazione..... Durata...... Conseguito c/o......... anno...
16/11/04 Rev. 1 Pag. 3/12 Lingue straniere: Inglese: mediocre sufficiente discreto buono ottimo Francese: mediocre sufficiente discreto buono ottimo Tedesco: mediocre sufficiente discreto buono ottimo Spagnolo: mediocre sufficiente discreto buono ottimo Conoscenze Informatiche: (indicare quali) Sistemi Operativi...... Linguaggi di programmazione...... Software applicativo...... Internet e posta elettronica....... Precedenti esperienze lavorative (indicare quella più recente o più significativa): Periodo: da...... a...... Tipo di attività: dipendente autonomo Società...... Mansioni.......... Settore in cui ha svolto l'attività...... Settori di attività preferenziale (Indicare quali):............ Disponibilità ad effettuare trasferte (stage/lavoro): Disponibilità totale Disponibilità parziale Non disponibile Indicare la fonte informativa: Quotidiano / rivista... Lettera Altro... Informativa: Dlgs 196/03 Nuovo Codice Privacy Il Consorzio For.P.In, ai sensi del Nuovo codice in materia di trattamento dei dati personali, approvato con D. Lgs. 196 del 30 giugno 2003, si riserva il trattamento dei dati personali per consentire le pratiche relative all organizzazione e alla gestione dei corsi nonché per l invio gratuito di materiale pubblicitario ed informazioni commerciali sui corsi; le informazioni raccolte saranno inserite nella nostra banca dati per essere utilizzate per gli scopi sopra citati. Inviando la domanda di iscrizione, il sottoscritto autorizza il Consorzio For.P.In. al trattamento dei dati personali. In qualsiasi momento avrete il diritto di accedere e di modificare le informazioni personali rilasciate, nonché negare l invio, da parte del Consorzio For.P.In., di materiale pubblicitario o informazioni commerciali inviando una e-mail a forpin@forpin.it un fax al 0523-334923 oppure scrivendo a: Consorzio For.P.In. Att.ne Resp. Trattamento dati personali V.le S. Ambrogio n 23 29100 Piacenza. Inoltre, consapevole delle responsabilità e delle pene stabilite dalla legge per false attestazioni e mendaci dichiarazioni, sotto la sua personale responsabilità (art. 489 cod. pen. art. 26 L. 04.01.1968 n. 15) il sottoscritto dichiara che i dati forniti corrispondono a verità. Data Firma