Learn

Cosa abbiamo imparato? D.D.D. modularizzazione e team distribuiti

7 Aprile 2020 - 2 minuti di lettura

Nell’episodio mensile della rubrica “Cosa abbiamo imparato” si parlerà di D.D.D. modularizzazione e team distribuiti rispettivamente con  Gabor Heves Marco Testa e Marco Loregian.

Marco Loregian scrive di principi agili per un progetto software con team distribuiti, frutto di un workshop al quale ha partecipato di recente.
Successivamente Marco Testa ci parla di un argomento attuale, la modularizzazione di un sistema software, grazie alla lettura di un articolo pubblicato nel 1971. Infine Gabor ci introduce al Domain-Driven Design spiegandoci come implementare passo passo un Value Object.

Per ulteriori link di approfondimento vi rimandiamo al paragrafo finale Riferimenti. Buona lettura.

Sviluppo software e principi agili con team distribuiti

In questo periodo, il tema del lavoro da remoto, o remote working, è di grande attualità. In molti si stanno confrontando con situazioni in cui non è possibile avere tutte le persone del team nello stesso luogo fisico. Al fine di non peggiorare la qualità del lavoro bisogna quindi organizzarsi.

Nel suo articolo Marco Loregian si concentra sul caso specifico dello sviluppo software, e di come assicurare che sia possibile mettere in pratica i principi agili quando si lavora in team distribuiti.

Modularizzazione di un sistema: la storia è maestra di vita

Oggigiorno si usano sempre più spesso le parole architettura a microservizi, ovvero la pratica di suddividere un’applicazione in una serie di parti più piccole e specializzate, ciascuna delle quali comunica con le altre attraverso interfacce comuni come API e interfacce REST – relativamente stabili – per creare un’applicazione più grande.

L’origine del termine microservizio non è facile da rintracciare. Marco Testa propone il resoconto di un vecchio articolo letto di recente che lo ha stupito per l’attualità dei contenuti.

D.D.D in TypeScript: Model, Ubiquitous Language e Value Object

Prendendo spunto dalla pagina Wikipedia, Domain-Driven Design è un approccio dello sviluppo del software che risolve problemi complessi connettendo l’implementazione ad un modello in evoluzione. Le premesse del Domain-Driven sono le seguenti:

  • Puntare il focus primario del progetto sui domini delle entità e la loro logica.
  • Basare il design sulle entità di dominio.
  • Iniziare una creativa collaborazione tra tecnici ed esperti di dominio per definire in maniera iterativa un modello concettuale che possa essere applicato ai particolari problemi del caso.

Gabor Heves, come tanti, è interessato a questo approccio. Cercando informazioni nel Web, ha trovato molti tutorial per Java…e TypeScript? Nell’articolo trovate un tutorial per modellare ed implementare una classe Value Object che rappresenta un numero IBAN.

Articolo scritto da