Domanda

Si estende

Supponi che stai guardando i 6 tipi di base di diagramma UML (da questo gli elementi dello stile UML 2.0)

  1. Diagrammi di classe
  2. Usa i diagrammi del caso
  3. Diagrammi di macchine a stato
  4. Diagramma di attività
  5. Diagramma di sequenza
  6. Diagramma fisico

Fai finta di essere pazzo e hai voglia di disegnare tutti e 6 i diagrammi per il tuo sistema.

Con quale inizieresti? Allora a quale andresti? Qual è l'ordine migliore per visitare ogni diagramma se hai un Abbastanza chiaro idea di cosa vuoi che faccia il tuo sistema?

Penso che dovresti iniziare con il diagramma fisico e lavorare verso il diagramma di classe. Top Down, dico sempre ..? Ho sbagliato?

È stato utile?

Soluzione

Casi d'uso sono i principali che definiscono "cosa" il tuo sistema fa, probabilmente seguiti da macchine statali e diagrammi di attività (che si possono vedere in entrambi i modi - normalmente i diagrammi di attività riguardano più il "cosa" e le macchine di stato più sul "come", ma ho visto unese campioni per ciascuno); Diagrammi di classe e sequenza, e ancora più componenti e distribuzioni (collettivamente il "fisico"), sono sempre più in merito come Il tuo sistema fa quello che fa. Passerei sicuramente dal "cosa" verso il "come", poiché la sequenza inversa ha poco senso - come può "come" ha senso se non hai definito il "cosa"?

Quindi, riassumendo, approssimativamente: casi d'uso, attività, macchina a stato, classe, sequenza, componente, distribuzione. Questo ordine ha senso perché diventa più profondo per gli aspetti di implementazione e lontano dagli aspetti dell'analisi, quindi ad esempio qualcuno interessato a capire esattamente quali casi utili "Prima di qualcuno che ha bisogno di comprendere la logica dettagliata della tua strategia di distribuzione.

Altri suggerimenti

Diagramma di classe, sequenza e usecase rappresenta oltre il 90% del diagramma generalmente creato all'interno di un progetto. Il diagramma di classe stesso a volte rappresenta più diagramma di tutti gli altri diagrammi.

La soluzione migliore è mantenerlo semplice e adattare la modellazione al livello del team.

Se nessuna esperienza UML Quindi basta creare diagramma di classe per rappresentare lo scheletro della tua applicazione.

Se principiante Livello quindi inizia con una sequenza, una sequenza e un diagramma di classe.

Se livello medio Quindi utilizzare tutti i diagrammi perché ogni diagramma copre un'altra vista che non è sempre possibile codificare con Java. Voglio dire che Java è correlato solo al diagramma di classe e sequenza.

Il diagramma fisico è probabilmente un posto per iniziare. Trovo i diagrammi di attività davvero utili per elaborare i nodi in un design e le sequenze sono buone per lo stesso motivo. Raramente mi sono infastidito con i diagrammi della macchina a stato.

Penso che realisticamente vorrai rivisitare qualsiasi design che fai per primo (design iterato, woo!) Quindi probabilmente vale la pena iniziare con qualunque cosa porterà la massima chiarezza al tuo progetto.

I diagrammi UML sono raffigurazioni di vari modelli di un design. Non sono sicuro che possano essere serializzati in modo pulito nel modo in cui descrivi. Spesso un diagramma di classe viene utilizzato sia nelle fasi di analisi che di progettazione di un processo. Allo stesso modo, altri diagrammi sono usati in più fasi.

Dipende dall'aspetto di un design a cui sei interessato in qualsiasi momento usi il diagramma appropriato per "visualizzare" un modello del design.

Ho visto sia "Inizia con il diagramma di classe" sia "Inizia con il modello di case d'uso". Mi sono reso conto che davvero non importa.

Penso che tu voglia iniziare con il comportamento di alto livello del sistema utilizzando diversi diagrammi, quindi scendi gradualmente verso un design più dettagliato utilizzando lo stesso set di diagrammi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top