SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Universidad Nacional del Oeste
Escuela de informática
Ingeniería de Software II
MODELADO DE REQUISITOS.
ESPECIFICACIÓN DE REQUISITOS
Ingeniería de Software II 1
Especificación de requisitos
▪ Proceso de escribir, en un Documento de Requisitos, los requerimientos y
requisitos.
▪ Idealmente los requisitos deben ser claros, sin ambigüedades, fáciles de entender,
completos y consistentes.
▪ Deben describirse los requisitos FUNCIONALES y NO FUNCIONALES.
▪ Solo se debe describir el comportamiento externo del sistema.
▪ NO es un documento de diseño, pero será imposible excluir toda la información de
diseño.
Ingeniería de Software II
2
Formas para escribir una
especificación de requisitos.
Ingeniería de Software II
3
Especificaciones en lenguaje natural
Es expresivo, intuitivo y universal, también vago, ambiguo y su significado depende
del lector.
Para minimizar interpretaciones erróneas, se puede:
▪ Elaborar un formato estándar: redactar el requisito en una sola oración, incluir las
razones por las que se propuso (puede agregarse quién lo propuso).
▪ Resaltar las partes claves del requisito.
▪ Evitar el lenguaje técnico de la Ingeniería de Software.
Ingeniería de Software II
4
Especificaciones estructuradas
▪ Conserva la expresividad y comprensión del lenguaje natural pero asegurando
uniformidad en las especificaciones.
▪ Se emplean “plantillas” para especificar cada requisito.
Ingeniería de Software II
5
Cuando sigue siendo complejo definir los requisitos
pueden incluirse modelos gráficos o tablas.
6
Escenarios
“Los escenarios describen secuencias narrativas que pueden
ser reales (reconstrucción de incidentes), deseadas (ilustración
de la aplicación satisfactoria de una política determinada) o
imaginadas pero no deseadas (ilustración de una política que
tiene que ser evitada).” (*)
(*) Anton, A., Earp, J., Potts, C., Alspaugh, T., “The Role of Policy an
Stakeholder Privacy Values in Requirements Engineering”, Proceedings of
Fifth IEEE International Symposium on Requirements Engineering, Toronto,
Canada, 2001, pp. 138-145.
Ingeniería de Software II
Ingeniería de Software II
7
Escenarios
“Los escenarios son casos particulares de uso del sistema”.
“Aunque los escenarios son útiles para adquirir y validar
requisitos, no son requisitos en si mismos. Describen el
comportamiento del sistema sólo en situaciones específicas.
Una especificación, en cambio, describe los que el sistema
debería hacer de una forma general.” (*)
(*) Potts, C., Takahashi, K., Antón, A. I., “Inquiry-Based Requirements
Analysis”, IEEE Software, Vol. 11, N° 2, 1994, pp. 21-32 .
Ingeniería de Software II
8
Escenarios
“Una vez que el contexto ha sido establecido, el
próximo paso es determinar lo que se espera que el
sistema haga, y para quién y con quién lo hará. La
idea básica es especificar escenarios de uso que
cubran todos los posibles caminos a través de las
funciones del sistema.” (*)
(*) Rubin, K.S., Goldberg, J., “Object Behavior Analysis”, Communications of
the ACM, Vol. 35, N° 9, Sep. 1992.
Ingeniería de Software II
9
Escenarios. Objetivos
ESCENARIOS: Describen situaciones específicas de la aplicación
centrando su atención en el comportamiento.
Objetivos:
▪ Capturar los requisitos.
▪ Proveer un medio de comunicación entre los stakeholders.
▪ Proveer un soporte para trazabilidad.
Ingeniería de Software II
10
Escenarios: Componentes
▪ Título
▪ Objetivo
▪ Contexto
▪ Ubicación Geográfica
▪ Ubicación Temporal
▪ Precondiciones
▪ Recursos
▪ Actores
▪ Episodios
▪ Excepciones
Ingeniería de Software II
11
Ejemplo de Escenario
Título: Entrega de pasaporte en el Box de Reválidas
Telefónicas
Objetivo: Entregar al solicitante el pasaporte solicitado
Contexto: Se efectúa en el Box de ReválidasTelefónicas
El solicitante debe haber iniciado el trámite telefónicamente
Se entrega el pasaporte dentro de las 24 horas desde que el
solicitante se lleva el talón
Actores: Solicitante
Empleado del Box de Reválidas Telefónicas
Recursos: Pasaporte
Talón
Episodios:
1. El solicitante llega al Box de Reválidas Telefónicas una vez
cumplido el plazo y entrega el talón
2. El empleado verifica que el pasaporte esté listo
3. El empleado entrega el pasaporte al solicitante
Excepciones:
SI el pasaporte tiene alguna observación ENTONCES
DERIVACIÓN DE PASAPORTES OBSERVADOS
Ingeniería de Software II
12
Jerarquía de Escenarios
ESCENARIOS INTEGRADORES
ESCENARIOS
SUBESCENARIOS
¿Qué son los casos de uso?
• Técnica para especificar el comportamiento de un sistema.
• Secuencia de interacciones entre un sistema y alguien o algo (otro sistema o una máquina)
que usa alguno de sus servicios.
• Son una excelente forma de especificar el comportamiento externo del sistema.
• Su notación fue incorporada al lenguaje estándar de modelado UML (Lenguaje Unificado
de Modelado)
Ingeniería de Software II
Como ejemplo:
En un sistema de ventas se debe ofrecer la posibilidad de ingresar un nuevo pedido
de un cliente. Cuando un usuario accede a ese servicio se está ejecutando el caso
de uso “Ingresando pedido”
13
▪ Los casos de uso, a pesar de ser considerados una técnica de Análisis
Orientado a Objetos, son independientes del método de diseño que
se utilice, y por lo tanto del método de programación.
▪ Es probable esperar que en el futuro los métodos de análisis y
diseño que prevalezcan adopten las principales ventajas de todos los
métodos disponibles actualmente
Ingeniería de Software II
14
¿Qué son los casos de uso?
Tiene principalmente dos objetivos:
• Encontrar los verdaderos requisitos, los que “agreguen” el valor
esperado por los usuarios.
• Representar los requisitos de un modo adecuado (comprensible)
por usuarios y desarrolladores.
Ingeniería de Software II
15
Captura de requisitos con
casos de uso
• Proporcionan un medio sistemático e intuitivo de capturar requisitos
funcionales, centrándose en el usuario.
• Dirigen todo el proceso de
desarrollo: todas las etapas pueden
plantearse en términos de
casos de uso.
Ingeniería de Software II
16
¿Por qué casos de uso?
• Tomando la perspectiva de cada tipo de usuario, se pueden capturar los requisitos
que necesitan para realizar su trabajo.
• La pregunta clave: ¿Qué se quiere que haga el sistema para cada usuario?
• Los usuarios y clientes pueden participar del proceso junto a los desarrolladores.
• Permite conseguir un acuerdo con usuarios y clientes sobre que debería hacer el
sistema
Ingeniería de Software II
17
Captura de REQUISITOS
con valor añadido
Puede utilizarse
como parte del
contrato con el cliente
Permiten delimitar
el sistema
• ACTORES
• CASOS DE USO
• ALTERNATIVAS
• RELACIONES DE EXTENSIÓN
• RELACIONES DE USO
Ingeniería de Software II
18
DEFINICIONES BÁSICAS
• Es una agrupación uniforme de personas, sistemas o máquinas que
interactúan con el sistema.
• Los actores son externos al sistema: permiten comenzar a definir
límites y alcances
• UN ACTOR ES UNA CLASE DE ROL, UN USUARIO ES UNA
PERSONA QUE CUANDO USA EL SISTEMA ASUME ESE ROL
Ingeniería de Software II
19
Actores
• Se representan con “stick man” (Hombres de palo)
Ingeniería de Software II
20
Actores
Sistema de Ventas
Empleado
de ventas
En UML siempre se representan a los actores con “hombres de palo” pero a
veces es más útil representar a otros sistemas con un dibujo más claro (ej. una
computadora)
Sistema de
producción
• Las flechas indican el flujo de información entre el actor y el sistema.
(no se utilizan en UML)
• Identificar a los actores es el primer paso para utilizar casos de uso.
• Generalmente los actores coinciden con área de la empresa o
jerarquías dentro de la organización.
Ingeniería de Software II
21
Actores
• El nombre de un caso de uso se expresa con un verbo en gerundio (también en
infinitivo), seguido por un objeto.
• Se representan con un óvalo con el nombre del caso en su interior.
• Se expresan SIEMPRE desde el punto de vista del actor y no del sistema.
• Se documentan con texto informal.
• Representan una determinada funcionalidad,claramente definida del sistema.
Ingeniería de Software II
22
CASOS DE USO
Es una secuencia de acciones que el sistema lleva a cabo para
para ofrecer algún resultado de valor para el usuario
Descripción de CASOS DE USO
▪ Los casos de uso se documentan a través de una lista numerada de pasos en texto
informal
Ingeniería de Software II
23
Caso de uso: Ingresando Pedido
Actor: Empleado de ventas
1- El cliente se comunica con la oficina de ventas, informa su número de cliente
2- El oficial de ventas ingresa el nº de cliente en el sistema
3- El sistema obtiene la información básica del cliente
4- El cliente informa el producto que quiere comprar e indica cantidad
5- El sistema obtiene la información sobre el producto, confirma su disponibilidad
6- Se repite paso 4- hasta que el cliente no informa más productos
7-….
Limitaciones de los CASOS
DE USO
Ingeniería de Software II
24
• Los casos de uso son limitados cuando se realiza una gran cantidad de
cálculos con los datos ingresados. UML propone en estos casos utilizar
un “Diagrama de actividad” (similar a un diagrama de flujo)
• No hay una sintaxis clara para indicar decisiones o iteraciones. Se
utilizan frases como “Se repite el paso ….” “Si ocurre X ….” Debe
hacerse de forma consistente. En caso de ser muy complejo debe
recurrirse a los mencionados diagramas de actividad.
ALTERNATIVAS
• Son errores o excepciones que “desvían” el curso normal de un caso
de uso.
• No tienen sentido en si mismas.
• Pueden documentarse al final del caso de uso o dentro del caso de
uso en dos columnas.
Ingeniería de Software II
25
• Consisten en interrumpir un caso de uso y pasar a ejecutar otro pero solo en
determinadas ocasiones.
• Se representan con una línea de trazos desde el caso que “extiende a”
(secundario) al caso que “es extendido” (principal).
Ingeniería de Software II
26
RELACIONES DE EXTENSIÓN
Son una parte del
caso de uso, que no
siempre ocurre
Son un caso de uso
en si mismo
No provienen
necesariamente de un
error o excepción
RELACIONES DE USO
• Es una funcionalidad común accedida desde varios casos de uso.
• Puede asociarse al concepto de subrutina o subprograma.
• Son casos de uso en sí mismos.
• Se usa SIEMPRE que el caso que lo usa es ejecutando.
Ingeniería de Software II
27
TIPOS DE CASOS DE USO
Ingeniería de Software II
28
TEMPORALES:
Su inicio es provocado por el paso del tiempo (sin actor)
Ej.“Recibiendo estadística mensual de ventas”
Para diferenciarlos pueden ser representados con un óvalo pero de bordes
de línea punteada.
Proceso de análisis de
requisitos con CASOS DE USO
• Identificar a los actores. Identificar los principales casos de uso de cada actor.
• Identificar nuevos casos a partir de los existentes:
MÉTODOS: * Variaciones significativas
* Opuestos
* Preceden a casos existentes
* Suceden a casos existentes
• Enumerar casos de uso a nivel de nombres.
• Definir prioridades (imprescindibles-importantes-deseables) y seleccionar casos para la primera iteración.
• Realizar las descripciones de los casos de uso.
29
Ejemplos…
Ingeniería de Software II
30
Links: documentación
casos de uso
⚫ Especificación de casos de uso – (RUP)
• Especificación de casos de uso –(Basado en EA)
⚫ Diagramas de actividades para describir casos de uso
Ingeniería de Software II
31

Más contenido relacionado

Similar a Modelado de Requisitos - 1ra parte 2022.pdf

Análisis y diseño de sistemas sesion 06 - fundamentos y capturas de requisitos
Análisis y diseño de sistemas   sesion 06 - fundamentos y capturas de requisitosAnálisis y diseño de sistemas   sesion 06 - fundamentos y capturas de requisitos
Análisis y diseño de sistemas sesion 06 - fundamentos y capturas de requisitosGianfrancoEduardoBra
 
Ingeniería de requisitos
Ingeniería de requisitosIngeniería de requisitos
Ingeniería de requisitosZuleima
 
Primeros artefactos de análisis. casos de uso
Primeros artefactos de análisis. casos de usoPrimeros artefactos de análisis. casos de uso
Primeros artefactos de análisis. casos de usoJuan Pablo Bustos Thames
 
Analisis y-tecnicas-de-recoleccion-de-datos
Analisis y-tecnicas-de-recoleccion-de-datosAnalisis y-tecnicas-de-recoleccion-de-datos
Analisis y-tecnicas-de-recoleccion-de-datosElvis De Lal Cruz
 
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOS
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOSUNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOS
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOSRosemary Samaniego
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientosChamoChuma Marin
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de softwareOscar López
 
IngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptxIngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptxssuser8c00ad
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemascardan2007i
 
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdfTema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdfNinoskaChuraLlojlla1
 
Pavan teorico04-requerimientos
Pavan teorico04-requerimientosPavan teorico04-requerimientos
Pavan teorico04-requerimientosvictorpatio
 
A2 requerimientos de software - programando
A2   requerimientos de software - programandoA2   requerimientos de software - programando
A2 requerimientos de software - programandomariopino129
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientoskaresha3
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientoskaresha3
 
Requerimientos
RequerimientosRequerimientos
Requerimientoskaresha3
 
Csof5101 requerimientos
Csof5101 requerimientosCsof5101 requerimientos
Csof5101 requerimientosarmadoCA
 
Sistemas de Gestión de Bases de Datos y desarrollo de prototipos
Sistemas de Gestión de Bases de Datos y desarrollo de prototiposSistemas de Gestión de Bases de Datos y desarrollo de prototipos
Sistemas de Gestión de Bases de Datos y desarrollo de prototiposArianna Peralta
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientosElvis Muñoz
 

Similar a Modelado de Requisitos - 1ra parte 2022.pdf (20)

Diseño orientado a objeto
Diseño orientado a objetoDiseño orientado a objeto
Diseño orientado a objeto
 
Análisis y diseño de sistemas sesion 06 - fundamentos y capturas de requisitos
Análisis y diseño de sistemas   sesion 06 - fundamentos y capturas de requisitosAnálisis y diseño de sistemas   sesion 06 - fundamentos y capturas de requisitos
Análisis y diseño de sistemas sesion 06 - fundamentos y capturas de requisitos
 
Ingeniería de requisitos
Ingeniería de requisitosIngeniería de requisitos
Ingeniería de requisitos
 
Primeros artefactos de análisis. casos de uso
Primeros artefactos de análisis. casos de usoPrimeros artefactos de análisis. casos de uso
Primeros artefactos de análisis. casos de uso
 
Analisis y-tecnicas-de-recoleccion-de-datos
Analisis y-tecnicas-de-recoleccion-de-datosAnalisis y-tecnicas-de-recoleccion-de-datos
Analisis y-tecnicas-de-recoleccion-de-datos
 
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOS
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOSUNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOS
UNIDAD V - MODELADO DE ANALISIS ORIENTADO A OBJETOS
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de software
 
Requisitos
RequisitosRequisitos
Requisitos
 
IngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptxIngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptx
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemas
 
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdfTema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
 
Pavan teorico04-requerimientos
Pavan teorico04-requerimientosPavan teorico04-requerimientos
Pavan teorico04-requerimientos
 
A2 requerimientos de software - programando
A2   requerimientos de software - programandoA2   requerimientos de software - programando
A2 requerimientos de software - programando
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientos
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientos
 
Requerimientos
RequerimientosRequerimientos
Requerimientos
 
Csof5101 requerimientos
Csof5101 requerimientosCsof5101 requerimientos
Csof5101 requerimientos
 
Sistemas de Gestión de Bases de Datos y desarrollo de prototipos
Sistemas de Gestión de Bases de Datos y desarrollo de prototiposSistemas de Gestión de Bases de Datos y desarrollo de prototipos
Sistemas de Gestión de Bases de Datos y desarrollo de prototipos
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 

Modelado de Requisitos - 1ra parte 2022.pdf

  • 1. Universidad Nacional del Oeste Escuela de informática Ingeniería de Software II MODELADO DE REQUISITOS. ESPECIFICACIÓN DE REQUISITOS Ingeniería de Software II 1
  • 2. Especificación de requisitos ▪ Proceso de escribir, en un Documento de Requisitos, los requerimientos y requisitos. ▪ Idealmente los requisitos deben ser claros, sin ambigüedades, fáciles de entender, completos y consistentes. ▪ Deben describirse los requisitos FUNCIONALES y NO FUNCIONALES. ▪ Solo se debe describir el comportamiento externo del sistema. ▪ NO es un documento de diseño, pero será imposible excluir toda la información de diseño. Ingeniería de Software II 2
  • 3. Formas para escribir una especificación de requisitos. Ingeniería de Software II 3
  • 4. Especificaciones en lenguaje natural Es expresivo, intuitivo y universal, también vago, ambiguo y su significado depende del lector. Para minimizar interpretaciones erróneas, se puede: ▪ Elaborar un formato estándar: redactar el requisito en una sola oración, incluir las razones por las que se propuso (puede agregarse quién lo propuso). ▪ Resaltar las partes claves del requisito. ▪ Evitar el lenguaje técnico de la Ingeniería de Software. Ingeniería de Software II 4
  • 5. Especificaciones estructuradas ▪ Conserva la expresividad y comprensión del lenguaje natural pero asegurando uniformidad en las especificaciones. ▪ Se emplean “plantillas” para especificar cada requisito. Ingeniería de Software II 5 Cuando sigue siendo complejo definir los requisitos pueden incluirse modelos gráficos o tablas.
  • 6. 6 Escenarios “Los escenarios describen secuencias narrativas que pueden ser reales (reconstrucción de incidentes), deseadas (ilustración de la aplicación satisfactoria de una política determinada) o imaginadas pero no deseadas (ilustración de una política que tiene que ser evitada).” (*) (*) Anton, A., Earp, J., Potts, C., Alspaugh, T., “The Role of Policy an Stakeholder Privacy Values in Requirements Engineering”, Proceedings of Fifth IEEE International Symposium on Requirements Engineering, Toronto, Canada, 2001, pp. 138-145. Ingeniería de Software II
  • 7. Ingeniería de Software II 7 Escenarios “Los escenarios son casos particulares de uso del sistema”. “Aunque los escenarios son útiles para adquirir y validar requisitos, no son requisitos en si mismos. Describen el comportamiento del sistema sólo en situaciones específicas. Una especificación, en cambio, describe los que el sistema debería hacer de una forma general.” (*) (*) Potts, C., Takahashi, K., Antón, A. I., “Inquiry-Based Requirements Analysis”, IEEE Software, Vol. 11, N° 2, 1994, pp. 21-32 .
  • 8. Ingeniería de Software II 8 Escenarios “Una vez que el contexto ha sido establecido, el próximo paso es determinar lo que se espera que el sistema haga, y para quién y con quién lo hará. La idea básica es especificar escenarios de uso que cubran todos los posibles caminos a través de las funciones del sistema.” (*) (*) Rubin, K.S., Goldberg, J., “Object Behavior Analysis”, Communications of the ACM, Vol. 35, N° 9, Sep. 1992.
  • 9. Ingeniería de Software II 9 Escenarios. Objetivos ESCENARIOS: Describen situaciones específicas de la aplicación centrando su atención en el comportamiento. Objetivos: ▪ Capturar los requisitos. ▪ Proveer un medio de comunicación entre los stakeholders. ▪ Proveer un soporte para trazabilidad.
  • 10. Ingeniería de Software II 10 Escenarios: Componentes ▪ Título ▪ Objetivo ▪ Contexto ▪ Ubicación Geográfica ▪ Ubicación Temporal ▪ Precondiciones ▪ Recursos ▪ Actores ▪ Episodios ▪ Excepciones
  • 11. Ingeniería de Software II 11 Ejemplo de Escenario Título: Entrega de pasaporte en el Box de Reválidas Telefónicas Objetivo: Entregar al solicitante el pasaporte solicitado Contexto: Se efectúa en el Box de ReválidasTelefónicas El solicitante debe haber iniciado el trámite telefónicamente Se entrega el pasaporte dentro de las 24 horas desde que el solicitante se lleva el talón Actores: Solicitante Empleado del Box de Reválidas Telefónicas Recursos: Pasaporte Talón Episodios: 1. El solicitante llega al Box de Reválidas Telefónicas una vez cumplido el plazo y entrega el talón 2. El empleado verifica que el pasaporte esté listo 3. El empleado entrega el pasaporte al solicitante Excepciones: SI el pasaporte tiene alguna observación ENTONCES DERIVACIÓN DE PASAPORTES OBSERVADOS
  • 12. Ingeniería de Software II 12 Jerarquía de Escenarios ESCENARIOS INTEGRADORES ESCENARIOS SUBESCENARIOS
  • 13. ¿Qué son los casos de uso? • Técnica para especificar el comportamiento de un sistema. • Secuencia de interacciones entre un sistema y alguien o algo (otro sistema o una máquina) que usa alguno de sus servicios. • Son una excelente forma de especificar el comportamiento externo del sistema. • Su notación fue incorporada al lenguaje estándar de modelado UML (Lenguaje Unificado de Modelado) Ingeniería de Software II Como ejemplo: En un sistema de ventas se debe ofrecer la posibilidad de ingresar un nuevo pedido de un cliente. Cuando un usuario accede a ese servicio se está ejecutando el caso de uso “Ingresando pedido” 13
  • 14. ▪ Los casos de uso, a pesar de ser considerados una técnica de Análisis Orientado a Objetos, son independientes del método de diseño que se utilice, y por lo tanto del método de programación. ▪ Es probable esperar que en el futuro los métodos de análisis y diseño que prevalezcan adopten las principales ventajas de todos los métodos disponibles actualmente Ingeniería de Software II 14 ¿Qué son los casos de uso?
  • 15. Tiene principalmente dos objetivos: • Encontrar los verdaderos requisitos, los que “agreguen” el valor esperado por los usuarios. • Representar los requisitos de un modo adecuado (comprensible) por usuarios y desarrolladores. Ingeniería de Software II 15 Captura de requisitos con casos de uso
  • 16. • Proporcionan un medio sistemático e intuitivo de capturar requisitos funcionales, centrándose en el usuario. • Dirigen todo el proceso de desarrollo: todas las etapas pueden plantearse en términos de casos de uso. Ingeniería de Software II 16 ¿Por qué casos de uso?
  • 17. • Tomando la perspectiva de cada tipo de usuario, se pueden capturar los requisitos que necesitan para realizar su trabajo. • La pregunta clave: ¿Qué se quiere que haga el sistema para cada usuario? • Los usuarios y clientes pueden participar del proceso junto a los desarrolladores. • Permite conseguir un acuerdo con usuarios y clientes sobre que debería hacer el sistema Ingeniería de Software II 17 Captura de REQUISITOS con valor añadido Puede utilizarse como parte del contrato con el cliente Permiten delimitar el sistema
  • 18. • ACTORES • CASOS DE USO • ALTERNATIVAS • RELACIONES DE EXTENSIÓN • RELACIONES DE USO Ingeniería de Software II 18 DEFINICIONES BÁSICAS
  • 19. • Es una agrupación uniforme de personas, sistemas o máquinas que interactúan con el sistema. • Los actores son externos al sistema: permiten comenzar a definir límites y alcances • UN ACTOR ES UNA CLASE DE ROL, UN USUARIO ES UNA PERSONA QUE CUANDO USA EL SISTEMA ASUME ESE ROL Ingeniería de Software II 19 Actores
  • 20. • Se representan con “stick man” (Hombres de palo) Ingeniería de Software II 20 Actores Sistema de Ventas Empleado de ventas En UML siempre se representan a los actores con “hombres de palo” pero a veces es más útil representar a otros sistemas con un dibujo más claro (ej. una computadora) Sistema de producción
  • 21. • Las flechas indican el flujo de información entre el actor y el sistema. (no se utilizan en UML) • Identificar a los actores es el primer paso para utilizar casos de uso. • Generalmente los actores coinciden con área de la empresa o jerarquías dentro de la organización. Ingeniería de Software II 21 Actores
  • 22. • El nombre de un caso de uso se expresa con un verbo en gerundio (también en infinitivo), seguido por un objeto. • Se representan con un óvalo con el nombre del caso en su interior. • Se expresan SIEMPRE desde el punto de vista del actor y no del sistema. • Se documentan con texto informal. • Representan una determinada funcionalidad,claramente definida del sistema. Ingeniería de Software II 22 CASOS DE USO Es una secuencia de acciones que el sistema lleva a cabo para para ofrecer algún resultado de valor para el usuario
  • 23. Descripción de CASOS DE USO ▪ Los casos de uso se documentan a través de una lista numerada de pasos en texto informal Ingeniería de Software II 23 Caso de uso: Ingresando Pedido Actor: Empleado de ventas 1- El cliente se comunica con la oficina de ventas, informa su número de cliente 2- El oficial de ventas ingresa el nº de cliente en el sistema 3- El sistema obtiene la información básica del cliente 4- El cliente informa el producto que quiere comprar e indica cantidad 5- El sistema obtiene la información sobre el producto, confirma su disponibilidad 6- Se repite paso 4- hasta que el cliente no informa más productos 7-….
  • 24. Limitaciones de los CASOS DE USO Ingeniería de Software II 24 • Los casos de uso son limitados cuando se realiza una gran cantidad de cálculos con los datos ingresados. UML propone en estos casos utilizar un “Diagrama de actividad” (similar a un diagrama de flujo) • No hay una sintaxis clara para indicar decisiones o iteraciones. Se utilizan frases como “Se repite el paso ….” “Si ocurre X ….” Debe hacerse de forma consistente. En caso de ser muy complejo debe recurrirse a los mencionados diagramas de actividad.
  • 25. ALTERNATIVAS • Son errores o excepciones que “desvían” el curso normal de un caso de uso. • No tienen sentido en si mismas. • Pueden documentarse al final del caso de uso o dentro del caso de uso en dos columnas. Ingeniería de Software II 25
  • 26. • Consisten en interrumpir un caso de uso y pasar a ejecutar otro pero solo en determinadas ocasiones. • Se representan con una línea de trazos desde el caso que “extiende a” (secundario) al caso que “es extendido” (principal). Ingeniería de Software II 26 RELACIONES DE EXTENSIÓN Son una parte del caso de uso, que no siempre ocurre Son un caso de uso en si mismo No provienen necesariamente de un error o excepción
  • 27. RELACIONES DE USO • Es una funcionalidad común accedida desde varios casos de uso. • Puede asociarse al concepto de subrutina o subprograma. • Son casos de uso en sí mismos. • Se usa SIEMPRE que el caso que lo usa es ejecutando. Ingeniería de Software II 27
  • 28. TIPOS DE CASOS DE USO Ingeniería de Software II 28 TEMPORALES: Su inicio es provocado por el paso del tiempo (sin actor) Ej.“Recibiendo estadística mensual de ventas” Para diferenciarlos pueden ser representados con un óvalo pero de bordes de línea punteada.
  • 29. Proceso de análisis de requisitos con CASOS DE USO • Identificar a los actores. Identificar los principales casos de uso de cada actor. • Identificar nuevos casos a partir de los existentes: MÉTODOS: * Variaciones significativas * Opuestos * Preceden a casos existentes * Suceden a casos existentes • Enumerar casos de uso a nivel de nombres. • Definir prioridades (imprescindibles-importantes-deseables) y seleccionar casos para la primera iteración. • Realizar las descripciones de los casos de uso. 29
  • 31. Links: documentación casos de uso ⚫ Especificación de casos de uso – (RUP) • Especificación de casos de uso –(Basado en EA) ⚫ Diagramas de actividades para describir casos de uso Ingeniería de Software II 31