2010-03-11 16 views
6

Extends¿Con qué diagrama UML debería comenzar?

Diga usted está buscando en los 6 tipos básicos de diagrama UML (de este los elementos de UML 2.0 Estilo)

  1. Los diagramas de clases
  2. Caso de uso diagramas
  3. diagramas de máquina de estados
  4. diagrama de actividad
  5. diagrama de secuencia
  6. Diagrama físico

Imagine que está loco y le gustaría elaborar los 6 diagramas para su sistema.

¿Con cuál comenzarías? Entonces, ¿a qué irías? ¿Cuál es el mejor orden para visitar cada diagrama si tiene una idea bastante clara de de lo que quiere que haga su sistema?

Creo que deberías comenzar con el diagrama físico y seguir el diagrama de clases. De arriba hacia abajo, siempre digo ...? ¿Me equivoco?

Respuesta

6

Los casos de uso son las principales que definen el "qué" de su sistema hace, posiblemente seguida de máquinas de estado y diagramas de actividad (que podría ser visto de cualquier manera - normalmente los diagramas de actividad son más sobre el "qué "y el estado maneja más sobre el" cómo ", pero he visto contraejemplos para cada uno); los diagramas de clases y secuencias, y aún más los componentes y los de implementación (colectivamente el "físico"), son cada vez más acerca de cómo cómo su sistema hace lo que hace. Definitivamente pasaría del "qué" al "cómo", ya que la secuencia inversa tiene poco sentido. ¿Cómo puede "cómo" tener sentido si no se ha definido el "qué"?

Por lo tanto, resumiendo aproximadamente: casos de uso, actividad, máquina de estado, clase, secuencia, componente, implementación. Este orden tiene sentido porque se profundiza en los aspectos de implementación y se aleja de los aspectos de análisis, por ejemplo, Alguien interesado en comprender exactamente qué casos de uso atenderá y qué reglas de negocio aplicará (diagramas de actividad) puede dejar de "leer" antes que alguien que necesita comprender la lógica detallada de su estrategia de implementación.

+1

Tengo que decir que esta respuesta fue particularmente útil. Disfruté especialmente la actividad antes de la máquina de estado, y la clase antes de la secuencia, y la actividad antes de la clase. – bobobobo

+1

@bobobobo, tx por los elogios - ¡siempre me alegro de ser de ayuda! –

0

Es probable que el diagrama físico sea tan bueno como cualquier otro. Encuentro diagramas de actividad realmente útiles para resolver los problemas en un diseño, y las secuencias son buenas por la misma razón. Raramente me he molestado con los diagramas de máquinas de estado.

Creo que de todos modos querrás volver a visitar cualquier diseño que hagas primero (¡diseño iterado, woo!) Por lo que probablemente valga la pena comenzar con lo que sea más claro para tu proyecto.

0

Los diagramas UML son representaciones de varios modelos de un diseño. No estoy seguro de que puedan ser serializados limpiamente de la manera que usted describe. Con frecuencia, se utiliza un diagrama de clases en las fases de análisis y diseño de un proceso. De manera similar, otros diagramas se usan en múltiples fases.

Depende de qué aspecto de un diseño le interese usar en cualquier momento el diagrama apropiado para "ver" un modelo del diseño.

He visto tanto "comenzar con el diagrama de clase" como "comenzar con el modelo de caso de uso" propuesto. Me he dado cuenta de que realmente no importa.

Creo que desea comenzar con el comportamiento de alto nivel del sistema usando varios diagramas y luego gradualmente vaya bajando a un diseño más detallado utilizando el mismo conjunto de diagramas.

2

El diagrama de clase, secuencia y de uso representa más del 90% del diagrama generalmente creado dentro de un proyecto. El diagrama de clase a veces representa más un diagrama que todos los otros diagramas.

La mejor solución es mantenerlo simple y adaptar el modelado al nivel del equipo.

Si no hay experiencia en UML, simplemente cree un diagrama de clase para representar el esqueleto de su aplicación.

Si el nivel de principiante comienza con un diagrama de uso, secuencia y clase.

Si el nivel medio es, utilice todos los diagramas porque cada diagrama cubre otra vista que no siempre es posible codificar con Java. Quiero decir que java solo está relacionado con la clase y el diagrama de secuencia.

Cuestiones relacionadas