UML - ¿Usuario ó subcaso de uso?

 
Vista:

¿Usuario ó subcaso de uso?

Publicado por Hugo Gsell (1 intervención) el 24/03/2008 13:40:11
Estoy desarrollando un soft de resolución de problemas. Por una lado el actor puede "Agregar, modificar, eliminar, cargar" problema y configuraciones de resolución y obtener informes de los mismos. Cada uno esta como un caso de uso. Además el actor puede "Iniciar el proceso de ejecución de resolución de UN PROBLEMA". Aquí viene la cosa. Si bien el inicia la acción (por lo que en un principio lo puse como un caso de uso mas" el proceso en sí es un algoritmo relativamente complejo (algoritmos genéticos) por lo que cada "paso" del proceso lo puse como un subcaso:

ACTOR usuario => Procesar Problema (y como subcasos con uses):
<= paso 1
<= paso 2
... ... ... ...
<= paso n
Ahora lo estoy viendo como que la aplicación puede ser un tipo de usuario diferente y que este lanze los casos, es decir,:

ACTOR Aplicación => Paso 1
=> Paso 2
... ... ... ...
=> Paso n

¿CUAL VISIÓN ES CORRECTA?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¿Usuario ó subcaso de uso?

Publicado por Vicente Godoy (10 intervenciones) el 21/04/2008 20:29:45
Hola,

Se que ya pasó tiempo, pero por si te sirve te doy mi punto de vista:

1- Actor: usuario, caso de uso: Resolver problema. Y no te compliques, para tu usuario el sistema es como una caja negra y no le preocupa si el proceso tiene 2 o 20 pasos, si son o no complejos.

2- Pasemos a especificar el caso de uso. Para el usuario el sistema sigue siendo una caja negra, así que simplemente describe SÓLO DESDE EL PUNTO DE VISTA DEL USUARIO el diálogo entre el usuario y el sistema. Imaginate que estas frente a un cajero automático, ¿acaso sabes que ocurre en ese momento?, para ti sólo hay un display y un teclado. Vuelvo a lo mismo no te compliques cuenta la historia y punto.

Esos paso que tu comentas parecen más el resultado del diseño que de la propia especificación del caso de uso. SI durante la especificación detectas que hay funcionalidad común en varios casos de uso entonces puedes reutilizar creando otros casos de uso que incluir, o si existen alternativas en la interacción entre usuario y sistema puedes extender la funcionalidad que representa tu caso de uso.

Si nada de esto ocurre lo único que tienes es un actor y un caso de uso. Recuerda que lo que muestres debe entenderlo un usuario (prueba a darle tu especificación a alguien que no tenga conocimientos técnicos).

Saludos,
Vicente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar