E tu nei diagrammi che frecce usi?

Luigi Poderico
2 min readOct 28, 2021

--

Per chi fa un lavoro come il mio, non c’è documento o presentazione senza un diagramma che rappresenti lo schema di un’idea e l’architettura di una soluzione. Generalmente, questi diagrammi sono composti da due elementi:

  • Dei blocchi che rappresentano oggetti
  • Delle frecce che rappresentano relazioni

Nella maggior parte dei diagrammi che vedono, le frecce rappresentano il flusso dei dati. Prendiamo il caso di un’applicazione principale che utilizza un servizio di ottimizzazione, scambiando i dati di input e output mediante un’area di scambio.

Quando le frecce rappresentano il flusso dei dati, abbiamo:

  • Una freccia per caricare i dati di input nell’area di scambio
  • Una freccia per attivare il servizio
  • Una freccia per leggere i dati di input
  • Una freccia per scrivere i dati di output
  • Una freccia per dire che il servizio ha finito
  • Una freccia per scaricare i dati di output dall’area di scambio

Il risultato: un gomitolo di frecce. Un diagramma che dice poco e male.

È per questo motivo che preferisco dare alle frecce un’altra semantica: le relazioni d’uso. In questo caso una freccia che dal blocco A punta il blocco B indica il fatto che “A usa B”. Detto in altre parole: senza B, A non può funzionare.

Quando le frecce rappresentano le relazioni d’uso, abbiamo:

  • Una freccia per indicare che l’applicazione principale usa l’area di scambio dei dati
  • Una freccia per indicare che l’applicazione principale usa il servizio di ottimizzazione
  • Una freccia per indicare che il servizio di ottimizzazione usa l’area di scambio dei dati

Il risultato: un diagramma più pulito e “parlante”. Che cosa ci dice o ci dà?

  • Una perfetta rappresentazione delle catene di valore di un sistema
  • La presenza di cicli, indicano errori di progettazione
  • Il grado di accoppiamento di una componente con le altre
  • Sono evidenti le gerarchie e le suddivisioni in livelli

E tu, nei diagrammi, che frecce usi?

--

--

Luigi Poderico
Luigi Poderico

Written by Luigi Poderico

I help people building machines that give the best answers to their best questions. https://linktr.ee/poderico

Responses (1)