74
Emerasoft University CATALOGO CORSI 2013/2014 Ultimo aggiornamento ottobre 2013

Catalogo corsi Emerasoft 2013 - 2014

Embed Size (px)

DESCRIPTION

Emerasoft University è la Divisione di Emerasoft che si occupa di fornire corsi di formazione specialistici aziendali e interaziendali. Tutti i corsi forniti da Emerasoft possono essere interamente finanziati grazie ai Fondi Interprofessionali (Fondimpresa, Forte, Fondir, FBA, Foncoop, ecc). Contattateci per costruire insieme il vostro piano formativo aziendale.

Citation preview

Emerasoft  University  CATALOGO  CORSI  

2013/2014  Ultimo  aggiornamento  ottobre  2013  

2  

CHI SIAMO

Emerasoft fornisce soluzioni di web collaboration in diversi settori del business informatico. I percorsi formativi completano l’offerta di commerciale, nell’ottica di offrire ai propri clienti supporto e affiancamento nell’adozione di soluzioni e metodologie nell’ambito dell’ingegneria dello sviluppo software.

INFORMAZIONI GENERALI

Sede dei corsi, salvo esigenze del cliente: sede Emerasoft di Corso Orbassano, 336 – 10137 Torino (Centro Nadim) Scala 2 – 3° piano.

À Orario dei corsi 10.00-13.00 > 14.00-17.00.

€ Pagamento: bonifico bancario, alla data di svolgimento del corso.

La quota d'iscrizione comprende: materiali didattici, eventuali attrezzature multimediali e informatiche a supporto del partecipante, attestato di partecipazione, coffee- break.

8 L’aula è dotata di proiettore e accesso a internet Wifi.

Per la sistemazione alberghiera, i partecipanti possono avvalersi di convenzioni con alcuni hotel vicini alla sede del corso.

TIPOLOGIA CORSI E COSTI IN AULA PRESSO EMERASOFT . . . . . . . . . . . . . . . 350,00 €/giorno a persona

Tutti i corsi sono fruibili presso la sede del Cliente; su richiesta si confezionano percorsi dedicati.

3  

Indice dei Corsi

º Gestione dei Requisiti » 4 Ingegneria dei Requisiti – Corso Base (2 gg) 4 Precisazione dei Requisiti (2 gg) 6 Definizione dei casi d’uso di un sistema (2 gg) 8 Subversion User/Team Training (2 gg) 10 Configurazione e Amministrazione di Subversion (1 g) 12 MySubversion Workshop (1 g) 14 Git User/Team Training (2 gg) 16 Configurazione e Amministrazione di Git (1 gg) 18 MyGit Workshop (1 g) 19

º Modelli e tecniche di analisi e design » 20 UML - per la modellazione del Software (3 gg) 20 SysML - per la modellazione dei sistemi (2 gg) 23 BPM - per la modellazione dei processi di Business (2 gg) 25 Modellazione concettuale e logica dei dati Hardware/Software (3 gg) 27 Maven (2 gg) 29 Maven Repository Management con Nexus (1 g) 31 Build Automation con Jenkins (1 g) 32 Ant – Nant (1 g) 34

º Formazione specialistica di prodotto » 36 Adobe InDesign 36 Enterprise Architect by Sparx Systems (2 g) 38 Sparx Systems Enterprise Architect Foundation (5 gg) 40 Sparx Systems Enterprise Architect Advanced (3 g) 43 Sparx Systems Enterprise Architect Customization (2 g) 45 Polarion™ Quick Start for Subversion 47 Polarion™ Training Utenti Finali 49 Agile SCRUM con Polarion™ (2 gg) 50 Test Automation con Selenium (1 g) 52 Test Complete by SmartBear – Corso Base (2 gg) 54

º Metodi » 55 Metodologie Agili, Scrum e eXtreme Programming (1 g) 55 Produzione di Applicazioni mobilli su Android (3 gg) 57 Il Test in accordo con i modelli di riferimento per il continuous improvement CMMI Constellations 59

º Linguaggi » 62 Da COBOL a JAVA (1 g) 62 SQL Advanced (3 g) 64 Linguaggio WSDL (4 g) 66 Linguaggio XML (3 g) 68 Real Unified Modeling Language (5 g) 70 Unified Modeling Language Foundation (1 g) 72

º Contatti » 74

4  

º Gestione dei Requisiti »

Titolo Ingegneria dei Requisiti – Corso Base

Codice RE01 Durata (GG) 2 Finalità Analisti ed Esperti di dominio acquisiranno in particolare la

conoscenza dei ruoli coinvolti nella gestione dei requisiti; il "ciclo di lavorazione" dei requisiti, dalla scoperta all'analisi, alla negoziazione, all'accordo, alle verifiche in corso d'opera; il conflitto di requisiti e quello tra requisiti, costi e tempi; le tecniche per l'individuazione e la specifica dei requisiti; la definizione dei criteri di accettazione per la verifica di corrispondenza tra requisiti e sistema.

Obiettivi Il corso intende fornire il bagaglio di conoscenze necessario a definire i requisiti di un sistema, ed a gestire il cambiamento di tali requisiti durante le diverse fasi di un progetto.

Contenuto I requisiti nello sviluppo dei sistemi • Ruoli coinvolti nella gestione dei requisiti, e le loro

relazioni • Ciclo di lavorazione dei requisiti e dei sistemi software

nei diversi approcci metodologici (waterfall, processi iterativi, processi agili)

• Gestione dei requisiti nel Capability Maturity Model (CMMI)

• Tracciabilità dei requisiti • Gestione del cambiamento dei requisiti in corso

d'opera Tecniche per la scoperta dei requisiti

• Identificazione degli interlocutori da coinvolgere • Interviste e workshop • Recupero e analisi di documentazione da sistemi

Ingegneria dei Requisiti – Corso Base (2 gg)

5  

esistenti • Descrizione degli scenari di utilizzo • Prototipi degli scenari di interazione

Analizzare e specificare i requisiti • Classificazione dei requisiti per tipologia • Importanza e priorità relativa dei singoli requisiti • Eliminazione delle ambiguità dai requisiti, e modalità

di verifica • Forme di documentazione e template • Strumenti per la definizione e la gestione dei requisiti

Durante il corso vengono effettuate numerose esercitazioni sulle tecniche affrontate in sede di esposizione teorica.

Target Analisti, Esperti di dominio coinvolti nella definizione dei requisiti.

Requisiti di ingresso

E’ opportuna una conoscenza generale delle problematiche relative allo sviluppo e all’evoluzione dei sistemi.

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

6  

Titolo Precisazione dei Requisiti

Codice RE02 Durata (GG) 2 Finalità I partecipanti affronteranno il tema della precisazione dei

requisiti utile al fine della chiarezza, evidenziando differenze di interpretazione tra punti di vista diversi che altrimenti rimarrebbero nascoste. Serve a tutti i ruoli coinvolti nei progetti per valutare meglio le priorità e individuare soluzioni accettabili (trade-off) tra esigenze potenzialmente in contrasto. Serve per decidere le scelte architetturali e per fornire indicazioni migliori a chi sviluppa. Che si tratti di requisiti booleani (verificabili in termini di vero/falso, come i requisiti funzionali) o scalari (verificabili con misurazioni, come la maggior parte dei requisiti non funzionali), la precisazione dei requisiti consente di risparmiare tempi e costi, e di aumentare la qualità del sistema realizzato.

Obiettivi Nel corso vengono insegnate le tecniche più efficaci per precisare i requisiti, con numerose esercitazioni pratiche per consentirne un apprendimento effettivo.

Contenuto Verifiche sui requisiti documentati Verifiche strutturate della documentazione Walkthrough di scenari e casi d'uso Requisiti booleani e requisiti scalari Precisare i requisiti funzionali Precisare i requisiti non funzionali Scomposizione di requisiti complessi in requisiti elementari Scale e misurazioni Derivare i test dai requisiti La relazione tra requisiti e test Test per precisare i requisiti Derivare casi di test dai casi d'uso Specifiche eseguibili: FIT, Behaviour Driven Development

Precisazione dei Requisiti (2 gg)

7  

Target Analisti, Capi progetto, Esperti di dominio coinvolti nella definizione dei requisiti, Architetti e progettisti.

Requisiti di ingresso

Essendo un corso di approfondimento è opportuna la partecipazione preventiva al corso “Ingegneria dei requisiti”.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

8  

Definizione dei casi d’uso di un sistema (2 gg)

Titolo Definizione dei casi d’uso di un sistema

Codice PA01 Durata (GG) 2 Finalità I partecipanti affronteranno sia gli aspetti di modellazione

(diagrammi dei casi d'uso) che le problematiche relative alla descrizione testuale, usata come strumento di specifica per la progettazione del sistema, anche attraverso una cospicua serie di esercitazioni pratiche.

Obiettivi Il corso fornisce il bagaglio di conoscenze necessario per individuare e definire in dettaglio i casi d'uso di un sistema, sia per la descrizione dei processi di business che per l'approfondimento e la specifica degli scenari di operatività degli utilizzatori nei confronti del sistema informatico.

Contenuto Casi d’uso • Teoria dei casi d'uso e ambito della loro applicazione • Individuazione degli attori e definizione del contesto del

sistema • Relazioni tra attori e casi d'uso • Modello dei casi d'uso "business" • Modello dei casi d'uso per il sistema software • Differenze tra casi d'uso e altre tecniche di definizione dei

requisiti Specificare i casi d’uso

• Descrizione testuale degli scenari (scenario base, scenari alternativi, varianti)

• Stili utilizzabili per la descrizione, e linee guida di scrittura • Esercitazioni pratiche di scrittura dei casi d'uso, con verifica

in aula • Ruolo ed utilizzo dei diagrammi UML dei casi d'uso • Relazioni tra casi d'uso in UML (specializzazione, extend,

include), e ambito della loro applicazione

9  

Target Analisti, Esperti di dominio coinvolti nella definizione dei requisiti.

Requisiti di ingresso

È opportuna una conoscenza generale delle problematiche di sviluppo e all’evoluzione dei sistemi.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

10  

Titolo Subversion User/Team Training

Codice CM01 Durata (GG) 2 Finalità La finalità del corso è l’acquisizione della piena conoscenza di

Subversion, uno dei sistemi di controllo di versione Open Source più diffuso. Subversion è uno standard di fatto per i sistemi di controllo delle versioni; è un progetto Open Source ed Emerasoft ne supporta la community Italiana grazie a subversionitalia.it. I partecipanti assisteranno ad interventi di carattere teorico seguiti da esercitazioni pratiche a consolidamento delle nozioni acquisite.

Obiettivi Obiettivo del corso è fornire le basi teoriche e pratiche per sfruttare appieno le potenzialità di Subversion come utente sviluppatore e come configuration manager.

Contenuto • Concetti generali di Subversion

• Task tipici nell'uso di Subversion • Scenari diversi (optimistic locking, pessimistic locking) • Esercizi con il client di Subversion di preferenza

dell'utente (ad esempio TurtoiseSVN, Subversive, linea di comando)

• Lavorare con i branch • merging di bugfix e cambiamenti

Target Requisiti di ingresso

Qualunque utente di Subversion, in particolare se avete deciso di migrare verso Subversion o se la migrazione è già stata fatta. Se il team di sviluppo ha utilizzato fino ad ora uno strumento di controllo di versione differente ed è necessario aumentarne la produttività.

Modalità x Lezione frontale

Subversion User/Team Training (2 gg)

11  

didattiche Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

12  

Titolo Configurazione e Amministrazione di Subversion

Codice CM02 Durata (GG) 1 Finalità Coloro che parteciperanno al corso acquisiranno le

conoscenze necessarie a installare, rendere sicuro e configurare Subversion. Verranno inoltre spiegati concetti avanzati quali branching e merging.

Obiettivi Questo corso fornisce tutte le informazioni necessarie a

eseguire il set up di Subversion e lo si vuole configurare secondo le proprie esigenze.

Contenuto • Concetti generali di subversion • Installazione di Subversion • Backing up Subversion • Branching, merging, tagging • Sicurezza di Subversion • Politiche di locking e proprietà di Subversion

Target Requisiti di ingresso

Amministratori, Build Manager, Configuration Manager, Project Manager

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica

Configurazione e Amministrazione di Subversion (1 g)

13  

E-learning Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

14  

Titolo MySubversion Workshop

Codice CM06 Durata (GG) 1 Finalità I partecipanti al workshop potranno acquisire conoscenze di

Subversion di alto e basso livello.

Obiettivi Fornire nozioni di Subversion sulla base delle esigenze specifiche richieste dal cliente.

Contenuto È possibile scegliere 5 o 6 argomenti a scelta tra i seguenti:

• Concetti generali di Subversion • Installazione di Subversion • Task tipici nell'uso di Subversion • Scenari diversi (optimistic locking, pessimistic locking) • Esercizi con il client di Subversion di preferenza

dell'utente (ad esempio TurtoiseSVN, Subversive, linea di comando)

• Lavorare con i branch • merging di bugfix e cambiamenti • Backing up Subversion • Branching, merging, tagging • Sicurezza di Subversion • Politiche di locking e properties di Subversion

Target A carico del cliente

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

MySubversion Workshop (1 g)

15  

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

16  

Titolo Git User/Team Training

Codice CM04 Durata (GG) 2 Finalità Attraverso interventi di carattere teorico seguiti da

esercitazioni pratiche, i partecipanti acquisiranno e consolideranno nozioni su Git, il sistema di controllo di versione distribuito Open Source più conosciuto e utilizzato. Concepito per il Configuration Management di progetti software di grandi dimensioni (è il sistema di versionamento utilizzato per lo sviluppo di Linux e Android), la sua natura distribuita ne rende l’utilizzo efficace anche in contesti più ristretti. Si tratta di uno strumento molto potente e versatile, che incoraggia l’utilizzo di branch locali e fornisce strumenti quale la stashing area per favorire lo sviluppatore nel cambio del contesto durante la fase di sviluppo. Il supporto a workflow multipli in ambiente distribuito, permette al configuration manager di definire il processo di gestione di configurazione più rispondente alle proprie esigenze.

Obiettivi Obiettivo del corso è fornire le basi teoriche e pratiche per sfruttare appieno le potenzialità di Git come utente sviluppatore e come configuration manager.

Contenuto • Introduzione ai fondamenti del versioning con Git

• Installazione git su macchine win e linux/mac • Git basics: comandi base per l'operatività

quotidiana • Tecniche di branching e merging avanzate • Gestione branch remoti • Workflow distribuiti • Esercitazioni

Git User/Team Training (2 gg)

17  

Target Sviluppatori, Configuration Manager. Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

18  

TITOLO Configurazione e Amministrazione di Git

Codice CM03 Durata(GG) 1 Finalità I partecipanti acquisiranno competenze di configurazione

e amministrazione di Git adeguate al ruolo di Configuration Manager.

Obiettivi Il corso si pone l’obiettivo di fornire ai futuri Configuration Manager di GIT gli strumenti per la definizione dei workflow collaborativi e per la gestione sistemistica dei repository remote.

Contenuto • Workflow distribuiti

• Panoramica dei protocolli disponibili • Panoramica dei tool a supporto della

configurazione sistemistica dei repository remoti • Tematiche di sicurezza e di encryption

Target I futuri amministratori sistemisti di Git (Configuration

Manager e Sistemisti).

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

Configurazione e Amministrazione di Git (1 gg)

19  

Titolo MyGit Workshop

Codice CM05 Durata (GG) 1 Finalità I partecipanti al workshop potranno acquisire conoscenze di Git

di alto e basso livello.

Obiettivi Fornire nozioni di Git sulla base delle esigenze specifiche richieste dal cliente.

Contenuto È possibile scegliere 5 o 6 argomenti a scelta tra i seguenti: • Introduzione ai fondamenti del versioning con Git • Installazione git su macchine win e linux/mac • Git basics: comandi base per l'operatività quotidiana • Tecniche di branching e merging avanzate • Gestione branch remoti • Workflow distribuiti • Panoramica dei protocolli disponibili • Panoramica dei tool a supporto della configurazione

sistemistica dei repository remoti • Tematiche di sicurezza e di encryption

Target A carico del cliente

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

MyGit Workshop (1 g)

20  

º Modelli e tecniche di analisi e design »

UML - per la modellazione del Software (3 gg)

Titolo UML - per la modellazione del Software

Codice MO04 Durata (GG) 3 Finalità Attraverso un’esercitazione / caso studio completa i

partecipanti acquisiranno la piena conoscenza dei modelli e delle tecniche di analisi e design dell’UML (Unified Modeling Language), il linguaggio di rappresentazione standard dei sistemi software, diffuso in tutto il mondo, che ha ormai raggiunto un livello di maturità sufficiente per essere usato in modo efficace e produttivo in ogni settore dello sviluppo software. Le modalità concrete dell’uso di UML, però, variano a seconda dello stile di sviluppo adottato, dell’ambito applicativo, delle relazioni esistenti e delle modalità di comunicazione tra i diversi ruoli coinvolti nei progetti.

Obiettivi Il corso offre una panoramica completa sui concetti, sugli elementi e sui diagrammi di UML, con particolare attenzione alle modalità concrete del loro uso nelle diverse situazioni progettuali, fornendo linee guida minimali e pragmatiche che distinguono tra ciò che è indispensabile fare in ogni caso e ciò che può invece risultare utile solo in ambiti particolari.

Contenuto • Introduzione a UML • Princìpi base Object Oriented • Caratteristiche generali di UML • UML e processi di sviluppo (a cascata, Unified Process,

iterativi, agili) • Panoramica sui diagrammi UML • Model-Driven-Architecture (MDA) • Costrutti generali (package, stereotipi, meccanismi di

estensione, profili)

21  

• Cenni sugli strumenti di modellazione • Casi d'uso • Attori, casi d'uso, sistema di riferimento (subject) • Diagramma dei casi d'uso • Cenni sulla specifica dei casi d'uso Modellare gli aspetti strutturali del sistema Diagramma dei componenti

• rappresentazione di un sistema ad alto livello • componenti • interfacce • dipendenze

Diagramma delle strutture composite

• scomposizione di un elemento complesso in parti • porte e connettori

Diagramma dei package

• package per organizzare la documentazione di progetto

• package per organizzare il software Diagrammi delle classi e degli oggetti

• strategie per l'individuazione e la definizione delle classi

• attributi e operazioni • associazioni e altre relazioni tra classi • rappresentazione delle strutture dati • relazioni tra componenti e classi

Diagramma di deployment

• nodi • connessioni • ambienti di esecuzione

Artifact e componenti Modellare gli aspetti dinamici del sistema Diagrammi di interazione

• messaggi e responsabilità • diagramma di sequenza • diagramma di comunicazione (collaborazione)

22  

• diagramma di overview dell'interazione • diagramma di timing

Diagramma di stato • stati e transizioni • stati compositi • transizioni composite e pseudostati

Diagramma di attività • attività e azioni

• flussi di controllo • parallelismi e sincronizzazioni

oggetti in input ed output

Target

• Analisti • Architetti software • Sviluppatori

Requisiti di ingresso

È opportuna una conoscenza generale delle problematiche di sviluppo e dell’evoluzione dei sistemi software.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

23  

Titolo SysML - per la modellazione dei sistemi

Codice MO02 Durata (GG) 2 Finalità I partecipanti apprenderanno approfondite conoscenze del

Systems Modeling Language (SysML), lo standard OMG per l'ingegneria dei sistemi. Deriva da UML (Unified Modeling Language), lo standard per la rappresentazione del software, e ne costituisce un profilo compatibile. Rispetto a UML, SysML ha introdotto estensioni utili per la rappresentazione di sistemi complessi in cui il software, se presente, costituisce solo una delle componenti. L'esposizione dei concetti viene accompagnata da una nutrita serie di esercitazioni.

Obiettivi Il corso presenta tutti i diagrammi SysML, che coprono dalla specifica dei requisiti alla definizione degli aspetti strutturali e comportamentali, evidenziando le relazioni che legano tra loro gli elementi per consentire la loro tracciabilità.

Contenuto Introduzione a SysML • Ambito di applicazione di SysML • Relazioni con UML • Panoramica sui diagrammi Rappresentazione dei requisiti • Requirement Diagram • Caratteristiche dei requisiti • Tracciabilità dei requisiti con gli elementi di

implementazione Aspetti strutturali • Block Definition Diagram • Internal Block Diagram • Parametric Diagram • Package Diagram Aspetti comportamentali • Use Case Diagram • Sequence Diagram • State Machine Diagram

SysML - per la modellazione dei sistemi (2 gg)

24  

• Activity Diagram Costrutti ulteriori • Allocazioni • Modelli, View, Viewpoint

Target

• Capi progetto • Ingegneri di sistemi • Analisti e architetti IT

Requisiti di ingresso

SysML estende UML. É quindi opportuna la preventiva partecipazione al corso "UML" o il possesso di conoscenze equivalenti.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job x Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

25  

Titolo BPM - per la modellazione dei processi di Business

Codice BU01 Durata (GG) 2 Finalità I partecipanti apprenderanno e approfondiranno le strategie

per l'individuazione dei processi e gli aspetti tecnici per la loro descrizione. Affronteranno inoltre il tema dell'individuazione dei punti critici dei processi, e delle relative possibilità di miglioramento. L'esposizione teorica avviene con l'aiuto di un ampio insieme di esempi, e di esercitazioni pratiche di difficoltà crescente.

Obiettivi Il corso presenta la notazione standard per la rappresentazione dei processi organizzativi, BPMN (Business Process Model and Notation).

Contenuto Introduzione all’analisi dei processi • Livelli di modellazione • Strategie per l’individuazione dei processi di business • Dove fermarsi: individuare i possibili punti di

miglioramento Presentazione di BPMN • Origine • Caratteristiche generali Costrutti di base BPMN • Processi, sottoprocessi, Task • Flussi di sequenza e Gateway • Eventi di inizio, intermedi, di fine • Pool, Lane, Messaggi Costrutti avanzati BPMN • Tipologie di eventi • Tipologie di processi • Tipologie di gateway

BPM - per la modellazione dei processi di Business (2 gg)

26  

Target

• Analisti business • Analisti IT • Esperti di processo coinvolti nelle attività di modellazione

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing x On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni Simulazioni su pc Case study Supporti audio-video Multimedia

27  

Titolo Modellazione concettuale e logica dei dati Hardware/Software

Codice MO01 Durata (GG) 3 Finalità I partecipanti acquisiranno competenze di progettazione

concettuale e logica dei dati.

Obiettivi La progettazione delle basi dati è un'attività essenziale nello sviluppo della maggior parte dei sistemi applicativi. Il corso espone i due modelli teorici più usati per la definizione di schemi concettuali e logici dei dati, l'Entity Relationship (ER) ed il relazionale, trattando in modo dettagliato i meccanismi di astrazione, di generalizzazione e di aggregazione. In termini di rappresentazione vengono presentate le notazioni più diffuse: ER (nelle sue diverse varianti) ed il profilo di data modeling UML. La progettazione logica dei dati ha basi scientifiche (teoria della normalizzazione), ma anche aspetti meno deterministici, per i quali è necessaria la capacità di analizzare i pro ed i contro delle diverse soluzioni possibili per uno stesso problema. Per questo motivo il corso prevede numerose esercitazioni, e studio di casi reali.

Contenuto Concetti base • Natura, obiettivi e vincoli della modellazione dei dati • Architettura dei DBMS secondo il modello ANSI/SPARC • I livelli concettuale, logico e fisico

Il modello Entity Relationship • Entità • Attributo • Tipi di dato base e user-defined • Identificatore • Associazione • Generalizzazione / specializzazione • Aggregazione

Notazioni • Entity Relationship (Chen e varianti)

Modellazione concettuale e logica dei dati Hardware/Software (3 gg)

28  

• Profilo UML di Data Modeling

Il modello relazionale • Relazioni • Domini e Data Type • Vincoli di integrità dei dati • Operatori dell'algebra relazionale

Forme normali e normalizzazione • Dipendenza funzionale, dipendenza multivalente,

dipendenza di join • 1°, 2°, 3° forma normale • BCNF, 4° e 5° forma normale

Integrazione di schemi • Evoluzione di schemi dati nello sviluppo incrementale • Schemi di progetto e schemi aziendali Progettazione logica di data base • Trasposizione di generalizzazioni / specializzazioni nel

contesto relazionale

Denormalizzazioni e altre forme di ottimizzazione Target

• Esperti di dominio applicativo • Analisti • Progettisti software

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

29  

º Build Management »

Titolo Maven

Codice BM03 Durata (GG) 2 Finalità I partecipanti acquisiranno conoscenze approfondite

sull’utilizzo di Maven. Maven è molto di più di un tool di build automation; con Maven è infatti possibile automatizzare non solo il processo di build, ma anche quello di creazione di documentazione e reportistica dei progetti basati su tecnologia Java.

Obiettivi Il corso si propone di fornire gli strumenti per: 1. Configurare il ciclo di vita della propria build, dal caso

della semplice applicazione a quello di applicazioni multi-modulo.

2. Gestire la creazione di build dello stesso progetto destinate ad ambienti differenti

3. Creare la documentazione e la reportistica sul codice sorgente del progetto.

Gli interventi di carattere teorico saranno seguiti da esercitazioni pratiche a consolidamento delle nozioni acquisite.

Contenuto Prima giornata: • Build portability e strumenti di build management. • Breve introduzione al build tool Ant e principali

differenze con Maven. • Introduzione ai concetti fondanti di Maven

(Convention over Configuration, common interface, common interface, universal reuse)

• Maven Project Object Model (POM) • Maven plugins e goals • Maven lifecycle • Maven coordinates • Maven repositories

Maven (2 gg)

30  

• Maven dependency Management • Site generation e reporting • Introduzione al plugin assembly • Esercitazioni

Seconda giornata

• POM in dettaglio o Effective POM e settings o Snapshot e Release o Builds number o Dependency ranges o Dipendenze transitive o POM inheritance

• Maven Multimodule Projects • Multimodule Vs Inheritance • Utilizzo di Profiles e Resource filtering per la gestione

di diversi ambienti • Maven assembly • Esercitazioni

Target Architetti, Sviluppatori, Build Manager

Requisiti di ingresso

Sono richieste competenze di Java e XML base

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc x Case study Supporti audio-video Multimedia

31  

Titolo Maven Repository Management con Nexus

Codice BM04 Durata (GG) 1 Finalità I partecipanti acquisiranno, anche attraverso esercitazioni

pratiche, le competenze per l’utilizzo di Sonatype Nexus.

Obiettivi Il corso si propone di fornire gli strumenti per l’utilizzo di Sonatype Nexus, che rappresenta il tool standard di fatto per il Maven repository management. Attraverso il server Nexus è possibile condividere i propri artefatti all’interno dell’azienda e definire proxy verso repository remoti pubblici. Nexus è rilasciato in versione Open Source e in versione PRO.

Contenuto o Introduzione di Sonatype Nexus o Repository Management o Installazione, configurazione e amministrazione di

Nexus o Esercitazioni

Target Architetti, Sviluppatori, Build Manager Requisiti di ingresso

Conoscenza di Maven

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

Maven Repository Management con Nexus (1 g)

32  

Build Automation con Jenkins (1 g)

Titolo Build Automation con Jenkins

Codice BM02 Durata (GG) 1 Finalità I partecipanti acquisiranno le conoscenze di Build Automation

con Jenkins, un’applicazione web che permette l’esecuzione e il monitoring di job. Grazie all’integrazione con i tool di build automation (ant e Maven) e di Software Configuration Management (quali Svn, Git), viene utilizzato per l’automazione del processo di build, testing e deploy, anche in modalità Continous Integration. Si tratta di uno strumento Open Source molto versatile e aperto all’integrazione di plugin scritti in Java, molti dei quali resi disponibili da un’attiva comunità di sviluppatori.

Obiettivi Il corso viene proposto con un taglio spiccatamente pratico, e si pone l’obiettivo di fornire gli strumenti per la configurazione di un server Jenkins in un ambiente di produzione reale.

Contenuto • Build portability e strumenti di build management • Introduzione e concetti della continuous integration • Installazione e configurazione del server • Configurazione dei vari tipi di build (ant,Maven,Gradle) • Automazione dei test • Mettere Jenkins in sicurezza • Notifiche • Code quality • Configurazione avanzata delle build • Build distribuite • Deploy automatico e Continous Delivery

Target Build Manager

Si richiede la conoscenza di base delle tematiche di build automation e di Maven o Ant

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing

33  

On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc x Case study Supporti audio-video Multimedia

34  

Titolo Ant – Nant

Codice BM01 Durata (GG) 1 Finalità I partecipanti impareranno in concreto l’utilizzo dei software

Ant e Nant. Ant è un software per l’automazione del processo di build di applicativi Java. Il suo corrispettivo in ambiente .Net è NAnt. In generale ant permette l’automazione di un qualsiasi processo possa essere definito in termini di target e task. Ant fornisce una serie di task built-in che permettono la compilazione, il deploy e il running di applicazioni Java e può essere integrato negli IDE e nei tools di build automation quali Jenkins.

Obiettivi Il corso viene proposto con un taglio spiccatamente pratico, e si pone l’obiettivo di fornire gli strumenti per la configurazione di build complesse.

Contenuto • Build portability e strumenti di build management. • Breve introduzione al build tool ANT e principali

differenze con Maven. • Ant concetti e terminologia • Lavorare con Ant • Integrare Ant nel vostro IDE (Eclipse - NetBeans -

IntelliJ) • Ant Tasks • Automatizzare le build, test e deploy con ant • Definire custom ant tasks • Utilizzare Ant con Jenkins • Esercitazioni

Target Sviluppatori, Build Manager

Requisiti di ingresso

Sono richieste competenze di Java o C# e XML base

Modalità didattiche

x Lezione frontale x Lavoro di gruppo

Ant – Nant (1 g)

35  

Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

36  

º Formazione specialistica di prodotto »

Titolo Adobe InDesign CS6 e Adobe InDesign CC

Codice AD01 Durata (GG) 3 Finalità Adobe InDesign è l’applicazione standard di settore per il

publishing di pubblicazioni destinate alla stampa, documenti PDF interattivi, riviste digitali e EPUB. Il corso può essere fornito su InDesign CS6 o su InDesign CC, illustrando le funzionalità generali e avanzate del prodotto e rendendo autonomi gli studenti nella realizzazione di pubblicazioni professionali.

Obiettivi Il corso fornisce ai partecipanti le competenze necessarie a creare documenti con il desktop publishing software a livelli professionali.

Contenuto • Panoramica generale delle funzionalità del prodotto. • Lavorare con i documenti:

o progettazione: perché è importante; o pagine e pagine mastro, sezioni e

numerazione; o oggetti e livelli.

• Lavorare con i documenti “lunghi”. • Lavorare con i testi:

o tecniche e stili (paragrafo e carattere); o import e export; o tecniche di tipografia.

• Lavorare con le immagini: o import e export; o formati supportati; o gestione colori e trasparenze.

• Funzionalità avanzate: o lavorare con le tabelle; o stampa e export di documenti;

Adobe InDesign

37  

o funzionalità avanzate di ricerca/sostituzione; o tecniche di automazione; o funzionalità “nascoste”.

Target Requisiti di ingresso

Chiunque voglia imparare ad impaginare in modo professionale con Adobe InDesign. Occorre una conoscenza base di Adobe InDesign CS

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

38  

Titolo Enterprise Architect by Sparx Systems

Codice EA01 Durata (GG) 2 Finalità I partecipanti impareranno l’utilizzo di Enterprise Architect, lo

strumento di modellazione più conosciuto e usato al mondo. Viene usato per l'analisi, la progettazione e la costruzione di sistemi software e hardware/software, per la modellazione dei processi di business e per la progettazione dei dati. Enterprise Architect è allineato alle ultime specifiche degli standard di modellazione UML, SysML e BPMN. Copre tutti gli aspetti del ciclo di sviluppo fornendo piena tracciabilità dalle fase iniziali di un progetto fino al deployment e alla maintenance. Enterprise Architect fornisce anche supporto per la gestione dei requisiti, il testing e il change control.

Obiettivi Il corso si propone di fornire le conoscenze di base per l’utilizzo di Enterprise Architect e di compiere un’esercitazione / caso studio di modellazione completa.

Contenuto Prima giornata: formazione di base per l’utilizzo di Enterprise Architect:

• Organizzazione dei modelli, modalità di condivisione e riuso

• Package diagram • Requirement diagram • Use case diagram • Descrizione degli scenari e generazione automatica di

Activity diagram • Modelli strutturali di alto livello: Component diagram,

Composite structure diagram • Class diagram • Modelli degli aspetti dinamici: Activity diagram, State

diagram, Sequence diagram • Tracciabilità • Generazione della documentazione (rtf e html) e

Enterprise Architect by Sparx Systems (2 g)

39  

creazione di template aziendali

Seconda giornata: workshop operativo basato su un caso studio completo di modellazione.

Target

• Capi progetto • Analisti • Architetti e progettisti software

Requisiti di ingresso

É opportuna la conoscenza di almeno uno degli standard di modellazione usati in Enterprise Architect

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

40  

Titolo Sparx Systems Enterprise Architect Foundation

Codice EA02 Durata (GG) 5 Finalità Il corso Foundation di Enterprise Architect introduce le feature

principali del tool, i diagrammi del più recente UML e altri formalismi utilizzati, come ad esempio la notazione BPMN. All'interno del corso viene proposto un esempio guida, che viene implementato simulando lo sviluppo di una normale applicazione: si inizia infatti dall'analisi dei requisiti e si procede sino al deploy e al test dell'applicazione stessa. Ogni argomento trattato nel corso è supportato da un esempio pratico, che garantisce ai partecipanti la possibilità di utilizzare le principali feature offerte da Enterprise Architect. Le finalità del corso sono: • Acquisire manualità nell’utilizzo dello strumento. • Conoscere e apprendere l’applicabilità di ogni vista UML. • Generare documentazione.

Obiettivi • Acquisire le conoscenze di base del linguaggio UML. • Migliorare la modellazione dei progetti. • Utilizzare la modellazione ai fini di generare

documentazione. Contenuto • Introduction: UML Dictionary

• Enterprise Architect: Graphical Presentation, Exercise. • Requirements Analysis: Requirements Diagram, Exercise. • Use Case Diagrams: Base Elements, Relationships among Use Cases, Exercise • Traceability: Creating a Traceability Diagram • Business Analysis: BPM diagram, Exercise • Structural Design

◦ Component Diagram: Component definition, Exercise ◦ Composite Structure Diagrams: Base Concepts, Exercise ◦ Package Diagrams: Base Concepts, Exercise ◦ Class Diagrams: Building Blocks, Visibility, Multiplicity,

Sparx Systems Enterprise Architect Foundation (5 gg)

41  

Relationships, Exercise. ◦ Object Diagrams: Base Concepts, Exercise

• Data Modeling: Base concepts of data modeling view, Exercise • Behavioral Modeling

◦ Activity diagrams: Base elements and relationship description, Exercise ◦ State Machine Diagrams: Base elements and relationship definition, Exercise.

• Interactions Diagrams ◦ Communication Diagrams: Base elements, Exercise ◦ Sequence Diagrams: Frames, Fragments and References Gates, Part Decomposition, Invariants, Exercise ◦ Timing Diagrams: Base Elements, Exercise ◦ Interaction Overview Diagrams: Base Elements, Exercise

• Deployment ◦ Deployment Diagrams: Artifact, Node, Communication Path, Adding Custom Images to a Diagram, Exercise.

• Testing ◦ Testing definition, manage test, Exercise

• Documentation ◦ Generating RTF documentation ◦ Generating HTML documentation

• Management basics and project-wide features ◦ Base Line: Exercise ◦ Version Control: How Version Control Works, Basic Concepts, Exercise

• Searches ◦ Exercise: Searching for Model Elements

• Project Management: Metrics Estimation, Exercise • Resource Management: Exercise: Managing Human Resources • Project Tasks and Issues: Exercise: Managing Tasks and Issues

Target

Il corso è rivolto a tecnici e analisti che hanno necessità di utilizzare Enterprise Architect come strumento di modellazione per raccogliere le esigenze dei proprio progetti, descriverne la loro implementazione, trasmettere i concetti architetturali all’area di sviluppo.

42  

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job x Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

43  

Titolo Corso Sparx Systems Enterprise Architect Advanced

Codice EA03 Durata (GG) 3 Finalità Il corso Advanced su Enterprise Architect presenta alcune

funzionalità avanzate del tool ed illustra alcune metodologie implementate nel tool e utilizzabili al suo interno. Il corso contiene un esempio guida e per ogni capitolo viene proposto un esercizio che permette ai partecipanti di mettere in pratica ciò che si è appena appreso, progettando una semplice applicazione. Le finalità del corso sono:

• Apprendere lo script di Enterprise Architect • Acquisire capacità di personalizzazione della feature

generazione di codice. • Acquisire capacità di personalizzazione nella generazione

di documentazione. Obiettivi Gli obiettivi del corso sono:

• Rendere il partecipante in grado di creare la propria generazione di codice.

• Generare documentazione tecnica utilizzando gli standard aziendali.

• Rendere la modellazione comprensibile a chi la legge. Contenuto • Introduction: MDA and the model-driven approach

• MDA transformations in Enterprise Architect: Exercise. • Extending UML

◦ Profiles, Design Patterns, Exercise • The Enterprise Architect SDK

◦ Developing Profiles, Shape Scripts, Tagged value types ◦ Exercise: Creating a Standalone Stereotype, Creating a Profile, Adding a Quick Linker, Getting Familiar with the Scripting Tool, Writing Shape Scripts

• Code Engineering ◦ Forward, Reverse Code Engineering ◦ Importing a Source Package Structure ◦ Importing From Binaries ◦ Exercise: Generating Code for a Single Class,

Sparx Systems Enterprise Architect Advanced (3 g)

44  

Generating Code for a Group of Classes, Generating Code for a Package, Importing Single Source Files into a Diagram

• Debugging and behavioral model reverse engineering ◦ Exercise: inspecting the behavior of a method

• Customizing Document Generation ◦ RTF, HTML templates ◦ Exercise: RTF Templates, HTML Templates

• Project Management ◦ Auditing ◦ Exercise: Auditing

• Administration Tools ◦ License management ◦ User Security ◦ Enabling/Disabling Security, Security Policies, Managing Users, Using Locks, Managing Locks

Target Requisiti di ingresso

Il corso è rivolto a tecnici e analisti che hanno necessità di personalizzare le trasformazioni di Enterprise Architect in base alle esigenze aziendali. Per partecipare al corso si consiglia una conoscenza base di Enterprise Architect o aver partecipato al corso EA01 “Corso SparxSystems Enterprise Architect Foundation”.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job x Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

45  

Titolo Sparx Systems Enterprise Architect Customization

Codice EA04 Durata (GG) 2 Finalità Il corso Customisation su Enterprise Architect spiega come

personalizzare le trasformazioni MDA model-to-model e model-to-code che sono disponibili all'interno di Enterprise Architect. Questo può essere molto utile quando si ha la necessità di generare codice oppure modelli che siano platform-specific per una particolare tecnologia (il più delle volte domain-specific), oppure quando si vuole modificare le trasformazioni fornite con il tool. Il corso illustra gli strumenti ed i linguaggi usati per creare e modificare le trasformazioni e contiene esempi pratici per ogni argomento.

Le finalità del corso sono: • Acquisire competenza nel linguaggio di scripting delle

trasformazioni. • Apprendere le trasformazioni base di Enterprise

Architect. • Definire una propria trasformazione.

Obiettivi • Far apprendere l’utilità della modellazione ai fini di generare codice, testo o file di configurazione.

• Far apprendere i meccanismi automatici a supporto della modellazione.

Contenuto • Introduction ◦ MDA and the Model-Driven Approach

• Code Templates ◦ Macros, More on Control Macros, Variables, Literal Text ◦ Exercise: Creating a Code Template

• Writing Custom MDA Transformations ◦ Translating Objects, Connectors, Converting Names ◦ Exercise: Create a Custom Transformation

Target

Il corso è rivolto a tecnici che hanno necessità di personalizzare le trasformazioni di Enterprise Architect e

Sparx Systems Enterprise Architect Customization (2 g)

46  

vogliono creare degli automatismi per agevolare la modellazione.

Requisiti di ingresso

Per partecipare al corso si consiglia una conoscenza base di Enterprise Architect o aver partecipato al corso EA01 “Corso SparxSystems Enterprise Architect Foundation”.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job x Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

47  

Titolo Polarion™ Quick Start for Subversion

Codice POL01 Durata (GG) 3/5 giorni Finalità Polarion ALM Platform è uno strumento per la copertura delle

diverse Process Area che intervengono nel ciclo di vita dello sviluppo di progetti software. Con questo corso Emerasoft intende fornire ai futuri amministratori di Polarion tutte le competenze necessarie per affrontare in autonomia la configurazione del sistema.

Obiettivi L’obiettivo finale è completare insieme un template di progetto che potrà essere riutilizzato in azienda e successivamente mantenuto per adattarsi alle dinamiche aziendali.

Contenuto Il corso solitamente è tenuto ad un numero ristretto di persone con competenze specifiche dei processi aziendali che andranno affrontati. Il corso si svolge alternando nozioni teoriche a esercitazioni pratiche focalizzate sui reali casi d’uso, come ad esempio: - Gestione dei requisiti, - Task management, - Pianificazione, - Bug tracking, - Test case management.

Argomenti

- Polarion Basic Concepts - Identify process use cases - Configuring work item types - Working with LiveDocuments - Define a Project Template

Target Futuri amministratori di Polarion

Requisiti di ingresso

Conoscenza minima di Subversion

Polarion™ Quick Start for Subversion

48  

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc x Case study Supporti audio-video Multimedia

49  

Titolo Polarion™ Training Utenti Finali

Codice POL02 Durata (GG) 1 Finalità Emerasoft si propone di affiancare gli utenti finali dello strumento

Polarion al fine del consolidamento dei processi aziendali sulla piattaforma. Il corso viene essere declinato alle diverse esigenze di utilizzo del tool, sulla base dei diversi ruoli funzionali ricoperti dagli utenti finali.

Obiettivi L’obiettivo del corso è quello di fornire agli utenti le nozioni necessarie per l’utilizzo del tool, declinando il corso in base alle diverse esigenze aziendali e ai ruoli degli utenti.

Contenuto Argomenti

Polarion Basic Concepts Definizione del processo di lavoro Utilizzo delle intefacce utente Lavorare con i LiveDocuments

Target Utenti finali di Polarion

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

Polarion™ Training Utenti Finali

50  

Titolo Agile SCRUM con Polarion™

Codice AG02 Durata (GG)

2

Finalità Il corso fornisce gli strumenti necessari per poter applicare la metodologia agile SCRUM in Polarion. Il corso propone ai partecipanti una cospicua serie di esercitazioni pratiche.

Obiettivi L’obiettivo del corso è quello di fornire le nozioni per l’applicazione della metodologia agile in Polarion.

Contenuto Argomenti Breve introduzione a SCRUM, definizione e metodologia Breve introduzione a Polarion (dipenderà dal livello dei destinatari) Set up di un progetto Polarion utilizzando il template SCRUM

- Sprint - Release - User stories - Le reportistiche ed il Burn Down chart

Setup di un progetto da zero ed avanzamento

Target • SRUM Master, ma anche gruppi di lavoro che desiderano iniziare a usare SCRUM come metodologia di sviluppo nella propria azienda.

Requisiti di ingresso

Conoscenza anche minima di Polarion

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili x Dispense

Agile SCRUM con Polarion™ (2 gg)

51  

didattici x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

52  

Titolo Test Automation con Selenium

Codice SE01 Durata (GG) 1 Finalità I partecipanti acquisiranno conoscenze di carattere teorico

ed eseguiranno esercitazioni pratiche con l’ultilizzo di Selenium, una suite di tool Open Source di browser automation; utilizzato principalmente come GUI test automator è compatibile con i browser più noti; permette l’export dei test in differenti linguaggi (Java, C#, PHP, Python e Ruby) e l’esecuzioni in diversi Testing Framework (JUnit, NUnit, TestNG..)

Obiettivi Scopo del corso è fornire le nozioni circa i tool della suite e le modalità di scrittura e run dei test automatici (tramite registrazione del browser e tramite sviluppo Java).

Contenuto o Introduzione o Test Automation di applicazioni web o Automatizzare o non automatizzare ? o Introduzione a Selenium o Selenium tool suite o Selenese Commands o Selenium Web Driver (richiesta conoscenza Java) o Introduzione o Selenium Web Driver o Utilizzo Avanzato (richiesta conoscenza Java) o Considerazioni e best practices sulla scrittura dei

test o Selenium Grid o Esercitazioni

Target Sviluppatori, Tester Requisiti di ingresso

Si richiede la conoscenza avanzata di html e una conoscenza di base di Java - JUnit

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing

Test Automation con Selenium (1 g)

53  

On the job Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

54  

Titolo TestComplete by SmartBear

Codice TC01 Durata (GG) 2 Finalità I partecipanti acquisiranno le conoscenze necessarie

all’utilizzo del prodotto di SMARTBEAR TestComplete. Il corso sarà corredato da esercitazioni pratiche, finalizzate su richiesta alla scrittura di semplici test su applicativi reali.

Obiettivi Il corso fornisce gli strumenti di base per la scrittura ed esecuzione dei test automatici su applicazioni desktop e web con il prodotto TestComplete

Contenuto o Introduzione e tipi di test supportati o Getting Started o Parametri e Variabili o Naming Objects o Checkpoints e Stores o Debugging Test o Test Log e Test Results o Testing Web Applications o Testing Flex e Flash Application

Target Utilizzatori di SMARTBEAR TestComplete Requisiti di ingresso

Non è richiesta la conoscenza di linguaggi di programmazione

Modalità didattiche

x Lezione frontale x Lavoro di gruppo Role playing x On the job x Aula didattica E-learning

Ausili didattici x Dispense x Esercitazioni Simulazioni su pc x Case study Supporti audio-video Multimedia

Test Complete by SmartBear – Corso Base (2 gg)

55  

 º Metodi »

Titolo Metodologie Agili, Scrum e eXtreme Programming

Codice AG01 Durata (GG) 1 Finalità I partecipanti apprenderanno le metodologie agili Scrum e eXP

e la loro applicazione su progetti software. I processi software infatti variano da quelli con grande enfasi sulla documentazione (CMMI, Spice, 26262) a quelli agili, con enfasi sulla comunicazione e collaborazione tra persone.

Obiettivi Questo corso si propone di illustrare le tecniche fondamentali

usate dalle metodologie agili più diffuse, Scrum eXP, con l’obiettivo di valutare se e come si possano usare su un progetto software. L'approccio didattico è estremamente pragmatico, con buona parte del tempo dedicato ad illustrare le pratiche di Scrum XP su un caso di studio simulato dal docente con l'aiuto dei partecipanti.

Contenuto Scrum. Ruoli, attività di pianificazione e gestione requisiti XP. Planning game, pair programming, test driven development, continuous integration, collective ownership, user stories. Come scegliere e adattare un metodo agile per il proprio progetto software

Target

Project manager, quality manager

Requisiti di ingresso

Esperienza di gestione progetti software

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job

Metodologie Agili, Scrum e eXtreme Programming (1 g)

56  

Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc x Case study Supporti audio-video Multimedia

57  

Produzione di Applicazioni mobilli su Android (3 gg)

Titolo Produzione di Applicazioni mobilli su Android Codice AN01 Durata (GG) 3 Finalità I partecipanti apprenderanno le conoscenze essenziali allo

sviluppo di applicazioni su piattaforma Android. Il numero di smartphone venduti, infatti, si avvia a superare quello di PC, ampliando enormemente l’accesso a Internet, in mobilità e non. Di conseguenza la domanda di applicazioni per smartphone, in particolare Android, cresce ogni giorno.

Obiettivi Il corso si propone di fornire a programmatori Java le conoscenze essenziali per sviluppare applicazioni sulla piattaforma Android. L'approccio didattico è estremamente pragmatico, con buona parte del tempo dedicato a sviluppare una applicazione su emulatore di terminale.

Contenuto Introduzione, il mercato di smartphone e app Android: Intent, Broadcasts, Files, Threads GUI: Pattern, Convenzioni, Linee guida per il progetto di GUI su terminali Android Localizzazione e mappe Gestione dati, DB per terminali mobile Streaming audio e video Ciclo vita delle applicazioni, Market e deployment

Target

Programmatori, progettisti software

Requisiti di ingresso

Conoscenza di Java

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc

58  

Case study Supporti audio-video Multimedia

59  

Il Test in accordo con i modelli di riferimento per il continuous improvement CMMI Constellations

Titolo Il Test in accordo con i modelli di riferimento per il continuous improvement CMMI Constellations

Codice TE01 Durata 4 ore Finalità Costi, schedule, efficacia, efficienza, qualità e gradimento Clienti, sono

obiettivi di business rilevanti per ogni azienda che intenda mantenere la propria leadership sul mercato. Le organizzazioni adottano di conseguenza modelli che la supportano a raggiungere tali obiettivi. In un contesto di continuous improvement atto ad indirizzare gli obiettivi di business delle organizzazioni, il tutorial ci introduce a come gestire le attività di testing in accordo con i modelli di riferimento CMMI-DEV v1.3, CMMI-SVC v1.3, CMMI-ACQ v1.3 del Software Engineering Institute.

Obiettivi L’obiettivo del corso è quello di approfondire le Pratiche Specifiche e Sotto-Pratiche del modello riguardo alle aree di processo di Verifica (VER) e Validazione (VAL) per quanto concerne il modello CMMI-DEV e Service System Delivery (SSD) inerente al modello CMMI-SVC. Sarà inoltre oggetto del tutorial, un’overview del Framework per Software Product Line Practices (Software Engineering Institute) al fine di inquadrare le attività di testing per “Product Line”, con lo scopo di migliorare ad esempio la qualità del prodotto e ridurre i rischi. In questo contesto di “Product Line” sono analizzate le attività di testing nelle sue principali funzioni: • Contribuire a identificare faults che possono condurre a failures

e quindi poter intervenire in anticipo • Specificare se il software o work product rispetta i suoi requisiti • Valutare se il product o product component soddisfa quanto

richiesto. Contenuto • Introduzione

• Concetti di Process Improvement e CMMI • Overview dei Modelli (CMMI Constellations)

§ CMMI-DEV v1.3 § CMMI-SVC v1.3 § CMMI-ACQ v1.3

60  

• Struttura del modello CMMI e Best Practices • Overview Appraisal Method (SCAMPI – Standard CMMI

Appraisal for Process Improvement) • CMMI-DEV

§ Verification Process Area (VER) o Approfondimento delle “Specific

Practices” o Esempi di Work Products o Approfondimento delle

”Subpractices” § Validation Process Area (VAL)

o Approfondimento delle “Specific Practices”

o Esempi di Work Products o Approfondimento delle

“Subpractices” • CMMI-SVC

§ Service System Delivery Process Area (SSD) o Approfondimento delle “Specific

Practices” o Esempi di Work Products o Approfondimento delle

“Subpractices” • Framework for Product Line Practices overview

§ Software Engineering Practice Areas -Testing • Case Studies

Target

• Test Managers, • Regulatory Managers, • Compliance Managers, • Auditors

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni

61  

 

x Simulazioni su pc Case study Supporti audio-video Multimedia

62  

 º  Linguaggi  »  

Titolo Da COBOL a JAVA

Codice DE01 Durata (GG) 1 Finalità Il corso fornisce gli strumenti per una rapida ed efficiente transizione

allo sviluppo Object Oriented. E’ un corso finalizzato a facilitare il programmatore COBOL a comprendere i concetti indicati come contenuto con riferimento alla terminologia, alle conoscenze e alle competenze consolidate. Si propone di predisporre il programmatore COBOL ad assimilare più facilmente e più rapidamente le nozioni di un successivo corso di linguaggio JAVA. Precisazioni: il corso non si propone di insegnare a programmare in JAVA, ma è propedeutico a un successivo corso di programmazione JAVA. Il corso si propone di facilitare i programmatori COBOL ad accogliere i concetti dell'OOP raffrontati con i concetti di programmazione procedurali e strutturati.

Obiettivi L’obiettivo principale è quello di trasferire quanta più conoscenza possibile per facilitare gli sviluppatori COBOL a comprendere la terminologia Object Oriented e le relative tecniche di programmazione e sviluppo con l’utilizzo di JAVA. • Conoscere l’architettura Java • Identificare i concetti base dell’Object Oriented • Essere in grado di mappare i concetti da COBOL a JAVA • Essere in grado di interpretare le funzionalità di codice Java

Contenuto • Introduzione a OO in parallelo al COBOL o Oggetti e Classi o Ambiente di sviluppo o Messaggi e metodi o Membri delle classi

• I dati • Statements

o Ereditarietà, Interfacce e polimorfismo

Da COBOL a JAVA (1 g)

63  

• Design Patterns • Sintassi JAVA vs sintassi COBOL • Controllo del flusso

o IF o FOR, DO, WHILE -à PERFORM o SWITCH à EVALUATE

• Dati • Stringhe e Numeri • Array e Collezioni • I/O in JAVA • Leggere e scrivere un sequenziale • Gestione degli errori • Altri argomenti

o Utility o Database o WEB (Servlet, JSP) o EJB

Target

Questo corso è rivolto a programmatori COBOL che cercano di sviluppare applicazioni usando JSE (Java Standard Edition). Analisti/Programmatori, Programmatori Junior e Senior di COBOL.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job x Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni Simulazioni su pc Case study x Supporti audio-video Multimedia

64  

Titolo SQL Advanced

Codice LI01 Durata (GG) 3 Finalità Questo corso spiega la semantica del linguaggio Structured

Query Language (SQL) relativamente agli aspetti di Data Definition (DDL), Data Manipulation (DML) e di Query (QL). Questo corso non affronta la metodologia per la corretta definizione del modello dati, la cui conoscenza viene data per assodata.

Obiettivi Obiettivo di questo corso è spiegare la sintassi e la semantica del linguaggio SQL, tramite esempi concreti applicati a database di esempio, in modo da rafforzare, attraverso la pratica, l’efficacia delle spiegazioni. In virtù delle conoscenze acquisite, gli studenti saranno in grado di mantenere il modello dati dei propri sistemi informativi, qualora esso venisse persistito in un database relazionale.

Contenuto • Relational Database Management Systems (RDBMS): overview and main concepts

• What SQL is • DDL Statements: Create, Alter, Drop Table and Schema

statements, stored procedures, Triggers, DB Catalogues • Query Statements: Select, Views • Data Manipulation Statements: Insert, Update, Delete

Target

Il corso è orientato alle figure tecniche di Database Administrator a livello junior le quali debbano imparare le nozioni principali per poter mantenere una base di dati relazionale.

Requisiti di ingresso

È preferibilmente richiesta la conoscenza del modello dati relazionale, almeno teorica.

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job

SQL Advanced (3 g)

65  

Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

66  

Titolo Linguaggio WSDL per Web Services

Codice LI02 Durata (GG) 4 Finalità Il formato WSDL è un linguaggio di definizione per servizi,

largamente utilizzato per descrivere funzionalità offerte e distribuite tramite web service; si tratta di uno standard promosso da W3C che permette di specificare, oltre ad una definizione dichiarativa dei vari servizi, le informazioni necessarie alla loro localizzazione ed ai protocolli da utilizzare per accedervi.

Obiettivi Obiettivo di questo corso è fornire una formazione di base sul formato WSDL e sui suoi usi nell'ambito delle architetture orientate ai servizi (SOA). All'interno del corso verrà utilizzato il tool SoapUI per il test dei web service creati negli esempi pratici; verranno inoltre illustrati i framework Axis e XFire e la loro integrazione nell'IDE Eclipse. La struttura del corso prevede che per ogni argomento trattato siano eseguiti degli esercizi che permetteranno di mettere in pratica le nozioni teoriche apprese; al termine del corso seguiranno esercitazioni ed esempi riepilogativi riguardanti i concetti principali ed eventuali approfondimenti a richiesta.

Contenuto • WSDL Introduction: what it is, how to use it to define Web Services, standards

• WSDL Superstructure: Types, Messages, Port Types, Bindings, Ports and Services

• WSDL by example: SoapUI • WSDL Implementation: Axis2, XFire

Target

Il corso è orientato alle figure tecniche che hanno necessità di integrare i propri sistemi informativi con fornitori di servizi IT esterni, sia nel ruolo di client, che nel ruolo di server.

Requisiti di ingresso

Conoscenza base di Xml

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing

Linguaggio WSDL (4 g)

67  

On the job Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

68  

Titolo Linguaggio XML

Codice LI03 Durata (GG) 3 Finalità Comprendere i concetti ed i termini associati alla creazione e

gestione di documenti XML, dare la possibilità di integrare o estendere applicazioni esistenti, aumentare l’interoperabilità tra applicazioni esistenti.

Obiettivi Lo scopo del corso è di permettere la definizione e l’utilizzo di un linguaggio XML per lo scambio o la persistenza di documenti XML corretti e ben formati. Il corso è orientato alla gestione programmatica dei documenti XML: parsing, navigazione del Document Model, trasformazioni tra documenti.

Contenuto • XML Introduction • XML Infrastructure: syntax, declaration, tags, attributes,

namespaces • XML Examples • Validation: Document Type Definition (DTD), XML

Schema (XSD) • Transformations: XPath, XSLT • XML Development: DOM, SAX

Target

Il corso è orientato alle figure tecniche che hanno necessità di integrare file XML nell'architettura della loro applicazione o che devono creare, leggere o trasformare file XML utilizzando linguaggi di programmazione.

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing x On the job Aula didattica E-learning

Ausili x Dispense

Linguaggio XML (3 g)

69  

didattici x Esercitazioni Simulazioni su pc Case study Supporti audio-video Multimedia

70  

Titolo Real UML

Codice MO03 Durata (GG) 5 Finalità Il corso UML, strutturato ad esempi, introduce le nozioni

principali di UML: motivazioni, concetti essenziali e utilizzo dei vari diagrammi UML. In questo corso, UML è considerato un linguaggio indipendente dai tool utilizzati: non viene utilizzata nessuna particolare metodologia, permettendo così ai partecipanti di scegliere liberamente la tecnica di modellazione più adatta alle loro esigenze. Le finalità del corso sono:

• Acquisire competenza sui concetti di UML. • Acquisire competenze sui processi di sviluppo. • Acquisire competenze sull’utilizzo di UML.

Obiettivi Far apprendere l’importanza di modellare secondo standard in modo che il modello possa essere letto e interpretato correttamente sia da un umano che da procedure automatiche.

Contenuto • Introduzione • Teoria del Software engineering. • Introduzione alla teoria Model Driven • Analisi dei requisiti. • Diagrammi UML di tipo strutturale. • Diagrammi UML di tipo comportamentale. • Diagrammi UML di tipo deploy. • Estensioni di UML: UML profile.

Target

Il corso è rivolto a tecnici e analisti che intendono apprendere le potenzialità di UML e cercano uno standard per disegnare requisti, definire architetture e framework e renderli disponibili agli sviluppatori.

Requisiti di ingresso

Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing

Real Unified Modeling Language (5 g)

71  

On the job x Aula didattica E-learning

Ausili didattici

x Dispense x Esercitazioni x Simulazioni su pc Case study Supporti audio-video Multimedia

72  

Titolo UML Foundation

Codice MO05 Durata (GG) 1 Finalità Questo è un corso introduttivo che contiene degli esempi

guidati su UML. Il corso fornisce le nozioni necessarie per un rapido avvio alla modellazione usando il linguaggio UML e le convenzioni grafiche associate. In questo corso, UML è considerato un linguaggio indipendente dai tool utilizzati: non è quindi utilizzata nessuna particolare metodologia, permettendo così ai partecipanti di scegliere liberamente la tecnica di modellazione più adatta alle loro esigenze.

Le finalità del corso sono: • Acquisire le potenzialità di UML. • Acquisire le potenzialità dei profili UML.

Obiettivi Far apprendere le potenzialità della modellazione e la possibilità di definire modelli personalizzati.

Contenuto • Introduzione • Teoria del Software engineering. • Introduzione alla teoria Model Driven • Introduzione all’analisi dei requisiti. • Introduzione ai diagrammi UML di tipo strutturale. • Introduzione ai diagrammi UML di tipo comportamentale. • Introduzione alle estensioni di UML: UML profile.

Target Requisiti di ingresso

Il corso è rivolto a tecnici e analisti che intendono apprendere le potenzialità di UML per verificarne la compatibilità con il proprio standard aziendale. Nessuno

Modalità didattiche

x Lezione frontale Lavoro di gruppo Role playing On the job x Aula didattica E-learning

Ausili x Dispense

Unified Modeling Language Foundation (1 g)

73  

didattici Esercitazioni Simulazioni su pc Case study Supporti audio-video Multimedia

74  

º Contatti » Emerasoft University c/o Emerasoft Srl - www.emerasoft.com C.so Orbassano, 336 - 10137 Torino (TO) T +39 011 19879273 F +39 011 3710371 Modalità di pagamento: Pagamento anticipato all’atto dell’iscrizione tramite bonifico bancario a: Emerasoft Srl - UNICREDIT BANCA – AG. TESORIERA TORINO IBAN IT19X0200801110000040411669. Causale: “Emerasoft University: Titolo Corso (numero partecipanti)” Esempio: Emerasoft University: Build Automation con Jenkins (8) Scontistica: Sono previsti sconti su un numero di partecipanti maggiore di 3 per Azienda e per iscrizioni antecedenti ai 3 mesi. Tutti I corsi si svolgono, salvo diversa indicazione, presso la sede Emerasoft di

Torino, Corso Orbassano, 336 – 10137 Torino (Centro Nadim) Scala 2 – 3° piano

À Orario corsi 10.00-13.00 > 14.00-17.00. La quota d'iscrizione comprende: materiale didattico, utilizzo delle

attrezzature multimediali a supporto, attestato di partecipazione, coffee- break 8 L’aula è dotata di proiettore, lavagna e accesso a internet Wifi Per la sistemazione alberghiera i partecipanti possono avvalersi di una

convenzione con alcuni hotel vicini alla sede del corso.

@ Per richiedere il modulo di iscrizione scrivere a [email protected].