CASOS DE USO


MODELO DE CASOS DE USO


Los casos de uso son una técnica, muy característica de este modelo de proceso, con la que especificar el comportamiento del sistema.


"Un Caso de Uso es una secuencia de interacciones entre un sistema y alguien o algo que usa alguno de sus servicios".


Si vemos el software como un sistema que ofrece a su entorno una serie de servicios, un caso de uso es una forma de expresar la manera en que un usuario o un sistema externo (llamado 'actor') lo utiliza.
Los casos de uso no describen ninguna funcionalidad interna (oculta al exterior) del sistema, ni explican cómo se implementará. Simplemente muestran los pasos que el actor sigue para realizar una tarea.

La técnica de caso de uso es muy útil en el desarrollo de sistemas interactivos, ya que expresa la intención que tiene el actor al hacer uso del sistema. Como técnica de extracción de requisitos permite que el analista se centre en las necesidades del usuario (¿qué espera éste lograr al utilizar el sistema?), evitando que los desarrolladores dirijan la funcionalidad del nuevo sistema basándose solamente en criterios tecnológicos. A su vez, mientras se obtienen los requisitos, el analista se concentra en las tareas centrales del usuario, las más importantes, describiendo por lo tanto los casos de uso que mayor valor aportan al negocio. Esto facilita luego la priorización de estos requisitos.

Los casos de uso pueden ser útiles para establecer requisitos de comportamiento, pero no establecen completamente los requisitos funcionales ni permiten determinar los requisitos no funcionales. Los casos de uso deben complementarse con información adicional como reglas de negocio, requisitos no funcionales, diccionario de datos, etc. que complementa los requisitos formales del sistema. De hecho cada caso de uso considerado 'crítico' debería tener una serie de requisitos no funcionales que especifiquen a fondo el comportamiento asociado.


El modelo de caso de uso plasma el acuerdo entre clientes y desarrolladores, y es un modelo del sistema desde la perspectiva de la manera como se utiliza el sistema por los usuarios. En un modelo de caso de uso se incluyen los casos de uso y actores, ademas de sus relaciones.



Actor
El modelo de caso de uso describe lo que hace el sistema por cada tipo de usuario. Cada usuario se representa por uno o más actores. Los actores representan terceros que interactuan con el sistema. Un actor es un tipo de usuario, y la instancia de ese tipo, el usuario real. Se representa de la siguiente manera:

Caso de uso
Con un actor es posible identificar las entidades externas al sistema. Para definir las funcionalidades internas al sistema se especifican casos de uso. Un caso de uso es una manera específica de utilizar al sistema mediante la ejecución de una funcionalidad del mismo. 
De manera mas preceis, un caso de uso especifica una secuencia de acciones que el sistema puede llevar a caba interactuando con sus actores, incluyendo alternativas dentro de la secuencia. Un caso de uso es una especificación, que indica el comportamiento de "cosas" dinámicas o instancias de los casos de uso. Se representa como:



Prototipo de interfaz de usuario
Se puede desarrollar un sistema inicial que permita aterrizar los conceptos expuestos en los casos de uso y glosario. Tipicamente el prototipo es una interfaz visual o de comandos que permite expresar los flujos básicos para lograr que el sistema implante su funcionalidad.
Se representa como un icono de clase estereotipada, en este caso, con estereotipo de entidad:



Arquitectura desde la perspectiva de casos de uso

También conocida como las vista del modelo de casos de uso. La arquitectura debe incluir los casos de uso describan una funcionalidad importante y crítica o requisitos importantes que deben desarrollarse de manera inmediata en el ciclo de vida. 

Existen trabajadores, que son los roles que toman las personas en el proceso:

  • El analista del sistema es el responsable del conjunto de requisitos que están modelados en los casos de uso, incluyendo requisitos funcionales y no funcionales. Esto implica que el es el guia para ver como atacar los requerimientos, pero sin llegar al detalle.
  • El especificador de casos de uso dan la descripción detallada de los casos de uso, incluyendo los flujos de sucesos.
  • Diseñador de interfaz de usuario dan forma visual a las interfaces gráficas, y luego entonces auxilian en el desarrollo del prototipo de interfaces de usuario.
  • El arquitecto del sistema ayuda a identificar la vista del modelo de casos de uso.
En el siguiente diagrama se muestra la relación entre los artefactos y los trabajadores: 





Fuentes:
      https://es.wikiversity.org/wiki/Proceso_Unificado_de_Desarrollo
      http://www.oocities.org/gusdelact/ingsoft/temaII.html