catalogo emerasoft university 2013
DESCRIPTION
Il catalogo raccoglie tutti i corsi proposti da Emerasoft erogabili in aula, anche presso il cliente.TRANSCRIPT
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].