INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso...

14
INGENIERÍA DEL SOFTWARE

Transcript of INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso...

Page 1: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DEL SOFTWARE

Page 2: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

1

Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización

¿Cómo modelar las funciones del sistema?

Las funciones del sistema se modelan por medio de diagramas de diferentes

tipos, dependiendo a quien va orientada esa información, hay que tomar en

cuenta todos los factores, eternos, recursos, restricciones, tiempos, costos, etc.

Los diagramas son un elemento importante de la estructuración de información

que debe cumplir con las características principales a desarrollar, es decir la

representación que se da en los diagramas es solamente para el código que

contendrá, no es para el desarrollo de la interfaz, para esta se requiere de una

representación diferente que puede ser un framework o algún otro marco en el

que se puede diseñar el uso de botones, la distribución de espacios y la

ubicación de cada elemento visual que la compone.

Page 3: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

2

Introducción al Tema

¿Cómo indicar a crear diagramas de software?

Una vez que definimos las funciones que se van a moldear se procede a crear

los diagramas, para iniciar debemos conocer que parte del sistema queremos

representar y cual diagrama, por ejemplo, con el equipo de desarrollo se crearan

los diagramas de clases y objetos, con el equipo de análisis de requerimientos

se crearan los casos de uso, y si con cada uno se crea el diagrama de su

especialidad, no sin antes tener en claro que es sugerirle tener a varios

integrantes del equipo que ejercen diferentes funciones en las creaciones de

diagramas, ya que cambia la percepción y esto nos ayuda a detectar fallas o

mejoras del sistema.

Page 4: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

3

Explicación

Diagramas de casos de uso

Los diagramas de caso de uso sirven para documentar el comportamiento de un

sistema visto por el usuario. Los elementos principales de éstos son;

Actores: éstos representan a un tipo de usuario del sistema, un usuario es

un elemento externo el cual puede modificar o crear acciones en los

entornos internos de un sistema, no siempre se define como humano,

puede ser un elemento informático de control a distancia o de control de

sesiones remotas. El actor de un diagrama de caso de uso representa un

rol importante, puede haber elementos independientes que utilizan el

sistema de formas diferentes.

Caso de uso: ésta es una tarea que debe poder llevarse a cabo con la

ayuda del sistema en desarrollo, pero sin importar de qué se trate,

siempre debe detallarse cada uno de los casos mediante una descripción

textual.

Asociaciones: ésta se da entre los actores y los casos, por tanto cuando

interactúan entre sí determinan el caso en el que lo hacen, ya sea

realizando una función específica o de uso de alguna herramienta.

Los diagramas de caso de uso se determinan para cualquier situación de la vida

cotidiana, pues es posible cambiarlas y programarlas, es decir, casi cualquier

hecho real, puede ser codificado y representado de manera gráfica o numérica

mediante una computadora, pero es importante contar con los diagramas que la

estructuran y definen sus funciones, dependiendo del caso será la extensión del

diagrama, cuando es un caso pequeño, el diagrama no es complejo pero cuando

las situaciones cambian e integran un mayor número de elementos, estos

diagramas pueden ser muy extensos e incluso manejar uno dentro de otro.

Page 5: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

4

Figura 1. Microsoft Developer Network. Diagramas de casos de uso de UML. Recuperado de:

https://msdn.microsoft.com/es-es/library/dd409432.aspx

Modelado del contexto de un sistema

Este medio trata de definir los elementos existentes que pueden haber dentro de

una representación como un sistema, para poder expresar los principales

atributos es importante contar con;

Identificar los actores entorno al sistema, se consideran los grupos que

requieren ayuda del sistema para poder llevar las tareas a cabo.

Identificar qué grupos son necesarios para lograr la ejecución de

funciones de los sistemas que se manejan.

Determinar los grupos que interactúan con el hardware de forma interna y

externa.

Se deben organizar los actores en jerarquías de generalización.

Introducir actores al diagrama de casos de uso y se especifican las vías

de comunicación de cada actor y cada elemento de uso del sistema.

Page 6: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

5

Estos elementos sirven para crear un entorno funcional y una pieza de software

útil para los usuarios que requieren de una solución para los sistemas que

maneja, ya sea de forma personal o empresarial.

Se deben determinar varios de los elementos más importantes y funcionales que

determinan las características de uso para cada usuario, estos modelados se

pueden hacer de forma independiente, pues no todas las aplicaciones que se

desarrollan son de uso comercial, sino que pueden determinar variables

importantes y de uso exclusivo y desconocido por empresas que mantienen la

privacidad de los datos lejos del conocimiento público, lo que ayuda a determinar

sistemas más robustos, como los que se utilizan con comandos de voz, control

mediante el movimiento corporal, sistemas Business Inteligencie, etc.

¿Cómo modelar el contexto del sistema?

En la ingeniería de software, existe un diagrama conocido como “diagrama de

contexto del sistema”, éste representa los límites entre el sistema y su entorno,

mostrando las entidades que interactúan con él, su objetivo es representar los

factores externos y eventos que se pueden considerar como restricciones o

requerimientos del sistema.

Page 7: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

6

Figura 2. INSICO. Sistema de gestión documental [Diagrama de contexto]. Recuperado de:

http://www.insico.cl/interior_productos_municipales.php?id=28

Modelado de los requisitos de un sistema

Ésta es una característica de diseño, es decir; es una propiedad o

comportamiento del sistema sobre el cual se refiere la creación de modelos, la

modificación de elementos o el trabajo. Al determinar los requisitos necesarios

de un sistema se establece un contrato de los elementos externos del sistema

con los propios que se manejan de forma interna.

La expresión de los requisitos se puede realizar de diferentes maneras, puede

ser desde texto hasta el uso de un lenguaje formal para determinar elementos

principales e importantes dentro del mismo, los elementos del sistema puede

expresar los casos de uso y los diagramas de uso UML, pues son fundamentales

para el uso y expresión de los requisitos:

Se establece el contexto del sistema identificando a los actores a su

alrededor.

Page 8: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

7

Considerar el comportamiento que cada actor espera del sistema

Se deben renombrar comportamientos y casos de uso comunes dentro de

los sistemas.

Se factoriza el comportamiento común en nuevos casos de uso, los

cuales pueden ser utilizados dentro de otros.

Se factoriza el comportamiento en otros casos de uso de extensión en los

flujos principales.

Se hace el uso de notas enunciando los requisitos no funcionales y los

funcionales al sistema global.

Figura 3. García, J., Ortín, M., Moros, B., Nicolás, J., & Toval, A. Procesos del Negocio a los

Casos de Uso [Relaciones de trazabilidad entre los modelos de negocio y de requisitos].

Recuperado de: http://www.cyta.com.ar/ta0604/v6n4a1.htm

Page 9: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

8

Interacciones en el sistema

Las interacciones en el sistema como se ha mencionado en algunos temas

anteriores, se dan cuando los elementos internos y externos pueden

comunicarse entre sí, es decir puede que los elementos internos tengan relación

con los mismos internos y los externos solo con los externos, pero también

puede que los internos tengan relación con los de exterior y se establezca una

comunicación, recordemos que los elementos externos pueden ser usuarios o

algún sistema que maneja desde una sesión remota o cualquier otro sistema de

control cercano.

Las interacciones que se dan deben ser “compatibles”, pues de lo contrario

pueden crear errores en un sistema o en algunos de los elementos que manejan

la información primordial de éste. Cuando no se conocen los elementos, los

requerimientos o la forma en que estos interactúan puede que no se lleve a cabo.

Se pueden representar las interacciones mediante diagramas o medios visuales

en papel expresando las ventajas, desventajas y componentes con los que se

cuentan y los atributos que pueden manejar en un lapso de tiempo determinado.

Figura 4. Canales, A., Peredo, R., Balladares, L., Peredo, I., & Sossa, J.H., (2009) Arquitectura

de sistemas tecnológicos para la educación basada en Web [Interacciones entre las entidades

del sistema]. Recuperado de: http://www.scielo.org.mx/scielo.php?pid=S1405-

77432009000200006&script=sci_arttext

Page 10: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

9

Diagramas de secuencia

Los diagramas de secuencia son elementos con los cuales podemos visualizar

las interacciones dentro del sistema, es decir son una representación gráfica con

la cual se puede apreciar de una forma lógica lo que sucede dentro del sistema

gracias a los códigos que se ejecutan en el ambiente determinado. Éstos pueden

mostrar una aplicación a través de tiempo y modela los usos de un sistema.

Estos diagramas se utilizan por cada caso de uso que se tenga, los detalles de

los diagramas dependen de la fase en que se encuentre el desarrollo y los

medios que se deseen demostrar con el diagrama. Cuando la fase es avanzada,

se está en el procedimiento de diseño del programa y se deben dejar los detalles

entre los desarrolladores, pues estos dependen de la información para crear las

etapas y el uso de clases.

Figura 12. Oscar. (2011) Metodología de Sistemas. [Diagrama de Secuencias]. Recuperado

de http://utnsimocametodologia.blogspot.mx/2011/10/aprendiendo-uml-hora-9-

diagrama-de.html

Page 11: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

10

Conclusión

Los requisitos de un sistema son difíciles de determinar de una simple vista, por

lo que se utiliza el modelado de requisitos permitiendo que se puedan establecer

parámetros generales de recursos y atributos que el sistema que controlará la

aplicación deberá tener disponibles. No se debe dejar a un lado ningún elemento

por muy pequeño que sea, pues cuando no se determinan esos elementos

pueden ocasionar problemas en los sectores principales o de arranque,

volviendo el problema en una pérdida de información o de mal funcionamiento

en el software principal que es la plataforma que soporta las aplicaciones y el

que se ha desarrollado para ofrecer soluciones.

Page 12: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

11

Para aprender más

Sistemas para educación en web.

• Canales, A., Peredo, R., Balladares, L., Peredo, I., & Sossa, J.H. (2009).

Arquitectura de sistemas tecnológicos para la educación basada en Web. Ingeniería, investigación y tecnología, 10(2), 145-157. Recuperado en 24

de octubre de 2015. Sitio web:

http://www.scielo.org.mx/scielo.php?pid=S1405-

77432009000200006&script=sci_arttext

Modelado de requisitos con UML.

• Pereñiguez, P. [portalucam]. (2013, Nov 23).Ingeniería del Software II -

Modelado de requisitos con UML (Casos de Uso) - Fernando

Pereñiguez.[Archivo de video].Recuperado de:

https://youtu.be/5ezWOj0k02k

Page 13: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

12

Actividad de Aprendizaje Instrucciones:

Con la finalidad de aplicar tus conocimientos adquiridos en esta sesión, tendrás

que realizar una actividad la cual consiste en crear al menos 4 diagramas de flujo, el diagrama de contexto y el diagrama de interacciones del sistema

para la biblioteca escolar.

Puedes apoyarte de alguna de las siguientes herramientas que sirven para el

diseño de estos diagramas:

• Microsoft Visio (Algunas veces está incluido en el paquete de office).

• Visual Paradigm http://www.visual-paradigm.com/

• ArgoUML http://argouml.tigris.org/

Deberás guardarlo en formato JPG, para subirlo a la plataforma de la asignatura.

Recuerda que esta actividad te ayudará a poner en práctica tus conocimientos

acerca del diseño de software y UML.

Para esta actividad se tomará en cuenta lo siguiente:

Título

Datos personales

Ortografía y redacción

Los diagramas solicitados

Bibliografía

Page 14: INGENIERÍA DEL SOFTWARE...INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización ¿Cómo modelar las funciones del sistema? Las funciones del

INGENIERÍA DE SOFTWARE

13

Bibliografía

• Popkin Software and Systems. (s.f.) Modelado de sistemas con UML. Sitio

web:

http://es.tldp.org/Tutoriales/doc-modelado-sistemas-UML/doc-modelado-

sistemas-uml.pdf

• Valero Gómez, A. (s.f.), Introducción a los casos de uso. Sitio

web: http://iearobotics.com/alberto/lib/exe/fetch.php?media=teaching:caso

s_de_uso.pdf