ENTERPRISE ARCHITECT – DESIGN E ARCHITETTURE
Le scelte a livello di tecnologie e metodologie, prima, e il disegno delle componenti di un sistema software, poi, rappresentano il punto iniziale di ogni buona applicazione software.
Diventare buoni architetti significa saper fare le scelte giuste e utilizzare le proprie conoscenze per costruire applicazioni migliori: l'architettura è strategia, il design è tattica.
All'interno del corso vedremo come diventare buoni architetti software, partendo da conoscenze di sviluppo.
Durante il corso sarà presentato l’utilizzo degli strumenti: Draw.io, Sparx Enterprise Architect, Archimate Tool
Da sviluppatore a architetto
Concetti di architettura
API - RPC attraverso Interfacce (Swagger, Status Code)
Containerizzazione / Orchestrazione - Esempi Pratici
API REST vs. EDA (Event Driven Architecture) (CQRS/ES ; Choregraphy)
GitOps / Infrastructure as Code
Monolite vs SOA vs MicroServices
Concetti di Design
Design per microservizi: design per affidabilità, alta disponibilità, sicurezza, disaccoppiamento
DevOps: com’è, come si rappresenta in realtà, Automazione fondamentale
Azure DevOps / TFS
Metodologie a confronto: Rational (RUP), “waterfall”, agile → Hybrid, Disciplined Agile
Processi e Procedure
Architettura e Design nel ciclo di vita del software
Conduzione del progetto software
Analisi (Requisiti, Analisi Funzionale, Analisi Tecnica) / Testing Statico
Caratteristiche dell’Analisi dei Requisiti e della Business Analysis
CBAP / PMI-PBA
Business Analysis e Analisi Funzionale
Analisi Tecnica / Disegno Architetturale e di Soluzione
Introduzione a UML / Archimate (architettura in the Large)
Design Object Oriented (OO + Functional Programming) - Principi SOLID
Design Pattern più comuni (Sviluppo, Architettura)