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.
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.0017.00.
€
Pagamento: bonifico bancario, alla
data di svolgimento del corso.
8
La quota d'iscrizione comprende: materiali didattici, eventuali
attrezzature multimediali e informatiche a supporto del partecipante,
attestato di partecipazione, coffee- break.
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.
2
3. Indice dei Corsi
º Gestione dei Requisiti »
Ingegneria dei Requisiti – Corso Base (2 gg)
Precisazione dei Requisiti (2 gg)
Definizione dei casi d’uso di un sistema (2 gg)
Subversion User/Team Training (2 gg)
Configurazione e Amministrazione di Subversion (1 g)
MySubversion Workshop (1 g)
Git User/Team Training (2 gg)
Configurazione e Amministrazione di Git (1 gg)
MyGit Workshop (1 g)
º Modelli e tecniche di analisi e design »
UML - per la modellazione del Software (3 gg)
SysML - per la modellazione dei sistemi (2 gg)
BPM - per la modellazione dei processi di Business (2 gg)
Modellazione concettuale e logica dei dati Hardware/Software (3 gg)
Maven (2 gg)
Maven Repository Management con Nexus (1 g)
Build Automation con Jenkins (1 g)
Ant – Nant (1 g)
º Formazione specialistica di prodotto »
Adobe InDesign
Enterprise Architect by Sparx Systems (2 g)
Sparx Systems Enterprise Architect Foundation (5 gg)
Sparx Systems Enterprise Architect Advanced (3 g)
Sparx Systems Enterprise Architect Customization (2 g)
Polarion™ Quick Start for Subversion
Polarion™ Training Utenti Finali
Agile SCRUM con Polarion™ (2 gg)
Test Automation con Selenium (1 g)
Test Complete by SmartBear – Corso Base (2 gg)
º Metodi »
Metodologie Agili, Scrum e eXtreme Programming (1 g)
Produzione di Applicazioni mobilli su Android (3 gg)
Il Test in accordo con i modelli di riferimento per il continuous improvement CMMI
Constellations
º Linguaggi »
Da COBOL a JAVA (1 g)
SQL Advanced (3 g)
Linguaggio WSDL (4 g)
Linguaggio XML (3 g)
Real Unified Modeling Language (5 g)
Unified Modeling Language Foundation (1 g)
º Contatti »
4
4
6
8
10
12
14
16
18
19
20
20
23
25
27
29
31
32
34
36
36
38
40
43
45
47
49
50
52
54
55
55
57
59
62
62
64
66
68
70
72
74
3
4. º Gestione dei Requisiti »
Ingegneria dei Requisiti – Corso Base (2 gg)
Titolo
Ingegneria dei Requisiti – Corso Base
Codice
Durata (GG)
Finalità
RE01
2
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
4
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
Requisiti di
ingresso
Analisti, Esperti di dominio coinvolti nella definizione dei
requisiti.
E’ opportuna una conoscenza generale delle problematiche
relative allo sviluppo e all’evoluzione dei sistemi.
Modalità
didattiche
x
x
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
5
6. Precisazione dei Requisiti (2 gg)
Titolo
Precisazione dei Requisiti
Codice
Durata (GG)
Finalità
RE02
2
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
6
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
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
7
8. Definizione dei casi d’uso di un sistema (2 gg)
Titolo
Definizione dei casi d’uso di un sistema
Codice
Durata (GG)
Finalità
PA01
2
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
8
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
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
9
10. Subversion User/Team Training (2 gg)
Titolo
Subversion User/Team Training
Codice
Durata (GG)
Finalità
CM01
2
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
•
•
•
•
•
•
Target
Requisiti di
ingresso
Modalità
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
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à.
x
Lezione frontale
10
12. Configurazione e Amministrazione di Subversion (1 g)
Titolo
Configurazione e Amministrazione di Subversion
Codice
Durata (GG)
Finalità
CM02
1
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
Target
•
•
•
•
•
•
Concetti generali di subversion
Installazione di Subversion
Backing up Subversion
Branching, merging, tagging
Sicurezza di Subversion
Politiche di locking e proprietà di Subversion
Amministratori, Build Manager, Configuration Manager,
Project Manager
Requisiti di
ingresso
Modalità
didattiche
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
12
14. MySubversion Workshop (1 g)
Titolo
MySubversion Workshop
Codice
Durata (GG)
Finalità
CM06
1
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
14
16. Git User/Team Training (2 gg)
Titolo
Git User/Team Training
Codice
Durata (GG)
Finalità
CM04
2
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
16
17. Target
Requisiti di
ingresso
Sviluppatori, Configuration Manager.
Nessuno
Modalità
didattiche
x
x
Ausili didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
17
18. Configurazione e Amministrazione di Git (1 gg)
TITOLO
Configurazione e Amministrazione di Git
Codice
Durata(GG)
Finalità
CM03
1
I partecipanti acquisiranno competenze di configurazione
e amministrazione di Git adeguate al ruolo di
Configuration Manager.
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.
Obiettivi
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
x
Ausili didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
18
19. MyGit Workshop (1 g)
Titolo
MyGit Workshop
Codice
Durata (GG)
Finalità
CM05
1
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
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
19
20. º Modelli e tecniche di analisi e design »
UML - per la modellazione del Software (3 gg)
Titolo
UML - per la modellazione del Software
Codice
Durata (GG)
Finalità
MO04
3
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.
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.
• 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)
Obiettivi
Contenuto
20
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)
21
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
•
•
•
Requisiti di
ingresso
È opportuna una conoscenza generale delle
problematiche di sviluppo e dell’evoluzione dei sistemi
software.
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
x
Dispense
x
Esercitazioni
x
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
Modalità
didattiche
Ausili didattici
Analisti
Architetti software
Sviluppatori
22
23. SysML - per la modellazione dei sistemi (2 gg)
Titolo
SysML - per la modellazione dei sistemi
Codice
Durata (GG)
Finalità
MO02
2
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.
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à.
Obiettivi
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
23
24. •
Activity Diagram
Costrutti ulteriori
• Allocazioni
• Modelli, View, Viewpoint
Target
•
•
•
Requisiti di
ingresso
SysML estende UML. É quindi opportuna la preventiva
partecipazione al corso "UML" o il possesso di conoscenze
equivalenti.
Modalità
didattiche
x
x
Ausili
didattici
x
x
x
Capi progetto
Ingegneri di sistemi
Analisti e architetti IT
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
24
25. BPM - per la modellazione dei processi di Business (2 gg)
Titolo
BPM - per la modellazione dei processi di Business
Codice
Durata (GG)
Finalità
BU01
2
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
25
27. Modellazione concettuale e logica dei dati
Hardware/Software (3 gg)
Titolo
Modellazione concettuale e logica dei dati Hardware/Software
Codice
Durata (GG)
Finalità
MO01
3
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.
Concetti base
• Natura, obiettivi e vincoli della modellazione dei dati
• Architettura dei DBMS secondo il modello ANSI/SPARC
• I livelli concettuale, logico e fisico
Contenuto
Il modello Entity Relationship
• Entità
• Attributo
• Tipi di dato base e user-defined
• Identificatore
• Associazione
• Generalizzazione / specializzazione
• Aggregazione
Notazioni
• Entity Relationship (Chen e varianti)
27
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
Target
Denormalizzazioni e altre forme di ottimizzazione
• Esperti di dominio applicativo
• Analisti
• Progettisti software
Requisiti di
ingresso
Nessuno
Modalità
didattiche
x
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
28
29. º Build Management »
Maven (2 gg)
Titolo
Maven
Codice
Durata (GG)
Finalità
BM03
2
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.
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.
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
Obiettivi
Contenuto
29
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
Ausili
didattici
x
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
30
31. Maven Repository Management con Nexus (1 g)
Titolo
Maven Repository Management con Nexus
Codice
Durata (GG)
Finalità
BM04
1
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.
o
o
o
Contenuto
o
Introduzione di Sonatype Nexus
Repository Management
Installazione, configurazione e amministrazione di
Nexus
Esercitazioni
Target
Requisiti di
ingresso
Architetti, Sviluppatori, Build Manager
Conoscenza di Maven
Modalità
didattiche
x
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
31
32. Build Automation con Jenkins (1 g)
Titolo
Build Automation con Jenkins
Codice
Durata (GG)
Finalità
BM02
1
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.
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.
Obiettivi
Contenuto
•
•
•
•
•
•
•
•
•
•
•
Target
Build Manager
Si richiede la conoscenza di base delle tematiche di build
automation e di Maven o Ant
Nessuno
Requisiti di
ingresso
Modalità
didattiche
x
x
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
Lezione frontale
Lavoro di gruppo
Role playing
32
34. Ant – Nant (1 g)
Titolo
Ant – Nant
Codice
Durata (GG)
Finalità
BM01
1
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.
Il corso viene proposto con un taglio spiccatamente pratico, e si
pone l’obiettivo di fornire gli strumenti per la configurazione di
build complesse.
Obiettivi
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
x
Lezione frontale
Lavoro di gruppo
34
36. º Formazione specialistica di prodotto »
Adobe InDesign
Titolo
Adobe InDesign CS6 e Adobe InDesign CC
Codice
Durata (GG)
Finalità
AD01
3
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.
Il corso fornisce ai partecipanti le competenze necessarie a
creare documenti con il desktop publishing software a livelli
professionali.
Obiettivi
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;
36
37. Target
Requisiti di
ingresso
Modalità
didattiche
o funzionalità avanzate di ricerca/sostituzione;
o tecniche di automazione;
o funzionalità “nascoste”.
Chiunque voglia imparare ad impaginare in modo
professionale con Adobe InDesign.
Occorre una conoscenza base di Adobe InDesign CS
x
x
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
37
38. Enterprise Architect by Sparx Systems (2 g)
Titolo
Enterprise Architect by Sparx Systems
Codice
Durata (GG)
Finalità
EA01
2
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.
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.
Obiettivi
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
38
39. creazione di template aziendali
Seconda giornata: workshop operativo basato su un caso studio
completo di modellazione.
Target
Requisiti di
ingresso
Modalità
didattiche
Ausili
didattici
•
•
•
Capi progetto
Analisti
Architetti e progettisti software
É opportuna la conoscenza di almeno uno degli standard di
modellazione usati in Enterprise Architect
x Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
x Dispense
x Esercitazioni
x Simulazioni su pc
Case study
Supporti audio-video
Multimedia
39
40. Sparx Systems Enterprise Architect Foundation (5 gg)
Titolo
Sparx Systems Enterprise Architect Foundation
Codice
Durata (GG)
Finalità
EA02
5
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
•
•
•
Contenuto
Acquisire le conoscenze di base del linguaggio UML.
Migliorare la modellazione dei progetti.
Utilizzare la modellazione ai fini di generare
documentazione.
• 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,
40
41. Target
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
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.
41
43. Sparx Systems Enterprise Architect Advanced (3 g)
Titolo
Corso Sparx Systems Enterprise Architect Advanced
Codice
Durata (GG)
Finalità
EA03
3
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.
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.
• 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,
Obiettivi
Contenuto
43
44. Target
Requisiti di
ingresso
Modalità
didattiche
Ausili
didattici
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
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”.
x
Lezione frontale
Lavoro di gruppo
Role playing
x
On the job
x
Aula didattica
E-learning
x
Dispense
x
Esercitazioni
x
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
44
45. Sparx Systems Enterprise Architect Customization (2 g)
Titolo
Sparx Systems Enterprise Architect Customization
Codice
Durata (GG)
Finalità
EA04
2
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.
• 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.
Obiettivi
Contenuto
Target
• 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
Il corso è rivolto a tecnici che hanno necessità di
personalizzare le trasformazioni di Enterprise Architect e
45
46. vogliono creare degli automatismi per agevolare la
modellazione.
Requisiti di
ingresso
Modalità
didattiche
Per partecipare al corso si consiglia una conoscenza base di
Enterprise Architect o aver partecipato al corso EA01 “Corso
SparxSystems Enterprise Architect Foundation”.
x
x
Ausili didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
46
47. Polarion™ Quick Start for Subversion
Titolo
Polarion™ Quick Start for Subversion
Codice
Durata (GG)
Finalità
POL01
3/5 giorni
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.
L’obiettivo finale è completare insieme un template di progetto
che potrà essere riutilizzato in azienda e successivamente
mantenuto per adattarsi alle dinamiche aziendali.
Obiettivi
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
47
49. Polarion™ Training Utenti Finali
Titolo
Polarion™ Training Utenti Finali
Codice
Durata (GG)
Finalità
POL02
1
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.
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.
Obiettivi
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
Modalità
didattiche
Nessuno
x
x
Ausili
didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
49
50. Agile SCRUM con Polarion™ (2 gg)
Titolo
Agile SCRUM con Polarion™
Codice
Durata
(GG)
Finalità
AG02
2
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
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.
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
Ausili
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
50
52. Test Automation con Selenium (1 g)
Titolo
Test Automation con Selenium
Codice
Durata (GG)
Finalità
SE01
1
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..)
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).
Obiettivi
o
o
o
o
o
o
o
o
o
o
o
Contenuto
o
o
Introduzione
Test Automation di applicazioni web
Automatizzare o non automatizzare ?
Introduzione a Selenium
Selenium tool suite
Selenese Commands
Selenium Web Driver (richiesta conoscenza Java)
Introduzione
Selenium Web Driver
Utilizzo Avanzato (richiesta conoscenza Java)
Considerazioni e best practices sulla scrittura dei
test
Selenium Grid
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
52
53. Ausili didattici
x
x
x
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
53
54. Test Complete by SmartBear – Corso Base (2 gg)
Titolo
TestComplete by SmartBear
Codice
Durata (GG)
Finalità
TC01
2
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
o
o
o
o
o
o
o
o
o
Contenuto
Introduzione e tipi di test supportati
Getting Started
Parametri e Variabili
Naming Objects
Checkpoints e Stores
Debugging Test
Test Log e Test Results
Testing Web Applications
Testing Flex e Flash Application
Target
Utilizzatori di SMARTBEAR TestComplete
Requisiti di
ingresso
Non è richiesta la conoscenza di linguaggi di
programmazione
Modalità
didattiche
x
x
x
x
Ausili didattici
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
Case study
Supporti audio-video
Multimedia
54
55.
º Metodi »
Metodologie Agili, Scrum e eXtreme Programming (1 g)
Titolo
Metodologie Agili, Scrum e eXtreme Programming
Codice
Durata (GG)
Finalità
AG01
1
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.
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
Contenuto
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
55
57. Produzione di Applicazioni mobilli su Android (3 gg)
Titolo
Codice
Durata (GG)
Finalità
Produzione di Applicazioni mobilli su Android
AN01
3
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.
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
Contenuto
Target di
Requisiti
ingresso
Modalità
didattiche
Programmatori, progettisti software
Conoscenza di Java
Ausili
didattici
x
x
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
Simulazioni su pc
57
59. Il Test in accordo con i modelli di riferimento per il
continuous improvement CMMI Constellations
Titolo
Codice
Durata
Finalità
Obiettivi
Contenuto
Il Test in accordo con i modelli di riferimento per il continuous
improvement CMMI Constellations
TE01
4 ore
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.
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 CMMIDEV 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.
• Introduzione
• Concetti di Process Improvement e CMMI
• Overview dei Modelli (CMMI Constellations)
§ CMMI-DEV v1.3
§ CMMI-SVC v1.3
§ CMMI-ACQ v1.3
59
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
Requisiti di
ingresso
• Test Managers,
• Regulatory Managers,
• Compliance Managers,
• Auditors
Nessuno
Modalità
didattiche
x
Ausili
didattici
x
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
Esercitazioni
60
62.
º
Linguaggi
»
Da COBOL a JAVA (1 g)
Titolo
Da COBOL a JAVA
Codice
Durata (GG)
Finalità
DE01
1
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.
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
• 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
Obiettivi
Contenuto
62
63. Target
Modalità
didattiche
Ausili
didattici
• 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
Questo corso è rivolto a programmatori COBOL che cercano di
sviluppare applicazioni usando JSE (Java Standard Edition).
Analisti/Programmatori, Programmatori Junior e Senior di COBOL.
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
x
Aula didattica
E-learning
x
Dispense
x
Esercitazioni
Simulazioni su pc
Case study
x
Supporti audio-video
Multimedia
63
64. SQL Advanced (3 g)
Titolo
SQL Advanced
Codice
Durata (GG)
Finalità
LI01
3
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.
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.
• 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
Obiettivi
Contenuto
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
64
66. Linguaggio WSDL (4 g)
Titolo
Linguaggio WSDL per Web Services
Codice
Durata (GG)
Finalità
LI02
4
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.
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.
• 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
Obiettivi
Contenuto
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
Modalità
didattiche
Conoscenza base di Xml
x
Lezione frontale
Lavoro di gruppo
Role playing
66
68. Linguaggio XML (3 g)
Titolo
Linguaggio XML
Codice
Durata (GG)
Finalità
LI03
3
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
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.
Target
•
•
Requisiti di
ingresso
Nessuno
Modalità
didattiche
x
x
Ausili
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
68
70. Real Unified Modeling Language (5 g)
Titolo
Real UML
Codice
Durata (GG)
Finalità
MO03
5
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
Target
Requisiti di
ingresso
Modalità
didattiche
• 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.
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.
Nessuno
x
Lezione frontale
Lavoro di gruppo
Role playing
70
72. Unified Modeling Language Foundation (1 g)
Titolo
UML Foundation
Codice
Durata (GG)
Finalità
MO05
1
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
Target
Requisiti di
ingresso
Modalità
didattiche
• 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.
Il corso è rivolto a tecnici e analisti che intendono apprendere
le potenzialità di UML per verificarne la compatibilità con il
proprio standard aziendale.
Nessuno
x
x
Ausili
x
Lezione frontale
Lavoro di gruppo
Role playing
On the job
Aula didattica
E-learning
Dispense
72
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.
8
L’aula è dotata di proiettore, lavagna e accesso a internet Wifi
@
La quota d'iscrizione comprende: materiale didattico, utilizzo delle
attrezzature multimediali a supporto, attestato di partecipazione, coffee- break
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 sales@emerasoft.com.
74