2ing Softaware

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 28

Ingeniería de Requisitos:

Ingeniería de Software I

Fundamentos
Edgar Sarmiento Calisaya

Escuela Profesional de Ciencia de la Computación


Universidad Nacional de San Agustín de Arequipa, Arequipa, Perú

7/03/2024 @UNSA/EPCC 1
Contenido
1. Ingeniería de Software
2. Ingeniería de Software y Requisitos
3. Importancia
4. Requisito de Software
5. Ingeniería de Requisitos
6. Carateristicas del Ingeniero de Requisitos
7. Conclusión

7/03/2024 @UNSA/EPCC 2
Ingeniería de Software
Ingeniería de Software (IS): La aplicación de un enfoque sistemático, disciplinado y
cuantificable en el desarrollo, operación y mantenimiento de software [IEEE].

Provee
Ingeniería de
Requisitos

Métodos
Evolución Diseño
Incorpora
PROCESO DE
Prácticas para SOFTWARE
minimizar
problemas
Implement
Prueba
ación
Técnicas Herramientas

Producto de Software

7/03/2024 @UNSA/EPCC 3
Por qué Ingeniería de Requisitos?

7/03/2024 @UNSA/EPCC 4
Ingeniería de Software y Requisitos

Chung, L. Why is RE?

7/03/2024 @UNSA/EPCC 5
Ingeniería de Software y Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 6
Ingeniería de Software y Requisitos

Halligan Robert, 2014 - Project Performance International (PPI)

7/03/2024 @UNSA/EPCC 7
Ingeniería de Software y Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 8
Ingeniería de Software y Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 9
Por qué Ingeniería de Requisitos?

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 10
Por qué Ingeniería de Requisitos?

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 11
Importancia
• Sabemos que un trabajo más delicado en el área de requisitos es
fundamental para el éxito de proyectos de software.
• Conocer y
• Documentar los requisitos;

7/03/2024 @UNSA/EPCC 12
Requisito de Software
• Requisito:
1. Una condición o capacidad necesaria para que un usuário pueda resolver un
problema o alcanzar un objetivo;
2. Una condición o capacidad que debe ser alcanzada o estar presente en un sistema
o componente de sistema para satisfacer un contrato, norma, especificación u otro
documento formalmente impuesto.
3. Una representación documentada de una condición o capacidad como en (1) y (2).

IEEE standard 610.12-1990


7/03/2024 @UNSA/EPCC 13
Requisito de Software
• Stakeholder
• Un stakeholder de un sistema es una persona o una organización que tiene una
influencia (directa o indirecta) sobre los requisitos del sistema
IREB

Usuarios
Finales

Desarrolladores
Requisitos

Organización

7/03/2024 @UNSA/EPCC 14
Requisito de Software
• Ejemplos de Requisitos:
• "El usuario debe realizar búsquedas en todo el acervo de materiales bibliográficos."
• "El sistema debe proporcionar pantallas apropiadas para que el usuario pueda leer
documentos disponibles en el repositorio de documentos ".
• "El sistema debe permitir el registro de los proveedores de la tienda “
• "El sistema debe utilizar los datos obtenidos a partir de los sensores e interpretarlos
para realizar la navegación "

7/03/2024 @UNSA/EPCC 15
Ingeniería de Requisitos
• La Ingeniería de Requisitos establece el procedimiento de definición de Requisitos como
un proceso en el que lo que se debe hacer es elicitado, especificado, analizado y
gestionado.
• Este proceso debe tratar con diferentes puntos de vista, y utilizar una combinación de
métodos, herramientas y el personal.
• El producto de este proceso es un modelo, del que un documento de requisitos se
produce.
• Este proceso se realiza en un contexto previamente definido a la que llamamos Universo
de Información.

(Júlio Leite, 1994)

7/03/2024 @UNSA/EPCC 16
Ingeniería de Requisitos
• Universo de Información.
• Es el conjunto general en el que el software será desarrollado.
• Incluye todas las fuentes de información y todas las personas relacionadas con el
software, a las que se denominan agentes de ese universo.
• El UdeI es la realidad circunstanciada por el conjunto de objetivos definidos por quién
solicitó el software.
(Júlio Leite, 1994)

7/03/2024 @UNSA/EPCC 17
Ingeniería de Requisitos
• Ingeniería de Requisitos : Es un enfoque sistemático y disciplinado para la
especificación y gestión de requisitos, con los siguientes objetivos:
• Conocer los requisitos relevantes, establecer un consenso entre los stakeholders sobre estos
requisitos, documentarlos según los estándares, y gestionar los requisitos de forma sistematica.
• Entender y documentar las expectativas y necesidades de los stakeholders, especificar y gestionar
los requisitos para minimizar el riesgo de entregar un sistema que no satisfaga las expectativas y
necesidade de los stakeholders.

IREB – International Requirements Engineering Board


7/03/2024 @UNSA/EPCC 18
Ingeniería de Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 19
Ingeniería de Requisitos
• Actividades de Ingenriería de Requisitos
• Los requisitos y las formas de obtenerlos y documentarlos varían drásticamente de un
proyecto a otro
• Sin embargo, existe una serie de actividades genéricas comunes a todos los procesos:
• Elicitación (Extracción) de requisitos;
• Especificación de requisitos;
• Análisis de requisitos;
• Gestión de requisitos.

7/03/2024 @UNSA/EPCC 20
Ingeniería de Requisitos
SADT – Actividades
UdeI (SDS)
SELECCIONAR Ingenieros de Software (Puntos de vista)
PERSONAS
Método
clientes

UdeI (Personas,
ELICITAR
Fuentes de hechos
Información)

requisitos
ESPECIFICAR

modelo

ANALISAR
UdeI (SDS) Discrepancias, errores, omisiones – defectos

SELECCIONAR
METODOS
herramientas

Julio Leite, 1994


7/03/2024 @UNSA/EPCC 21
Ingeniería de Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 22
Ingeniería de Requisitos

Chung, L. Why is RE?


7/03/2024 @UNSA/EPCC 23
Carateristicas del Ingeniero de Requisitos (Pohl, K. and Rupp, C. 2015)
• Analytic thinking: The requirements engineer must be able to become familiar with domains that are unknown to her
and must understand and analyze complicated problems and relationships. Since stakeholders often discuss
problematic requirements by means of concrete examples and (suboptimal) solutions, the requirements engineer
must be able to abstract from the concrete statements of the stakeholder.
• Empathy: The requirements engineer has the challenging task of identifying the actual needs of a stakeholder. A core
requirement to be able to achieve this is to have good intuition and empathy for people. In addition, she must identify
problems that might arise in a group of stakeholders and act accordingly.
• Communication skills: To elicit the requirements from stakeholders and to interpret them correctly and communicate
them in a suitable manner, a requirements engineer must have good communication skills. She must be able to listen,
ask the right questions at the right time, notice when a statement does not contain the desired information, and make
further inquiries when necessary.
• Conflict resolution skills: Different opinions of different stakeholders can be the cause of conflicts during requirements
engineering. The requirements engineer must identify conflicts, mediate between the parties involved, and apply
techniques suitable to resolving the conflict.
• Moderation skills: The requirements engineer must be able to mediate between different opinions and lead
discussions. This holds true for individual conversations as well as group conversations and workshops.
• Self-confidence: Since the requirements engineer is frequently at the center of attention, she occasionally is exposed
to criticism as well. As a result, she needs a high level of self-confidence and the ability to defend herself should strong
objections to her opinions arise. She should never take criticism personally.
• Persuasiveness: Among other things, the requirements engineer is, in a matter of speaking, a kind of attorney for the
requirements of the stakeholders. She must be able to represent the requirements in team meetings and
presentations. In addition, she must consolidate differing opinions, facilitate a decision in case of a disagreement, and
create consensus among the stakeholders.
7/03/2024 @UNSA/EPCC 24
7/03/2024 @UNSA/EPCC 25
Conclusión
• La Ingeniería de Requisitos tiene como tarea fundamental definir los
requisitos de un software [Julio Leite, 1994].

7/03/2024 @UNSA/EPCC 26
Conclusión
• Los principales beneficios que se obtienen de la Ingeniería de Requisitos son [Ecured]:
• Permite gestionar las necesidades del proyecto en forma estructurada: Cada actividad de la Ingeniería de Requisitos consiste de
una serie de pasos organizados y bien definidos.
• Mejora la capacidad de predecir cronogramas de proyectos, así como sus resultados: La Ingeniería de Requisitos proporciona un
punto de partida para controles subsecuentes y actividades de mantenimiento, tales como estimación de costos, tiempo y
recursos necesarios.
• Disminuye los costos y retrasos del proyecto: Muchos estudios han demostrado que reparar errores por un mal desarrollo no
descubierto a tiempo, es sumamente caro; especialmente aquellas decisiones tomadas durante la Especificación de Requisitos.
• Mejora la calidad del software: La calidad en el software tiene que ver con cumplir un conjunto de requisitos (Funcionalidad,
Facilidad de Uso, Confiabilidad Desempeño, etc.).
• Mejora la comunicación entre equipos: La especificación de requisitos representa una forma de consenso entre clientes y
desarrolladores. Si este consenso no ocurre, el proyecto no será exitoso.
• Evita rechazos de usuarios finales: La Ingeniería de Requisitos obliga al cliente a considerar sus requisitos cuidadosamente y
revisarlos dentro del marco del problema, por lo que se le involucra durante todo el desarrollo del proyecto.

7/03/2024 @UNSA/EPCC 27
Referencias
• Basado en:
• Leite, J.C.S.P. 2007. Livro Vivo: Engenharia de Requisitos, PUC-Rio.
http://livrodeengenhariaderequisitos.blogspot.com/
• Chung, L. 2015. Requirements Engineering: Introduction.U. Dallas.
http://www.utdallas.edu/~chung/SYSM6309/Introduction.pdf
• Devmedia. 2008. Artigo Engenharia de Software - Introdução à Engenharia de Requisitos.
https://www.devmedia.com.br/artigo-engenharia-de-software-introducao-a-engenharia-de-requisitos/8034
• Rosana T. Vaccare Braga. 2017. Requisitos de Software. USP.
https://edisciplinas.usp.br/pluginfile.php/3142953/mod_resource/content/2/Aula09-Requisitos.pdf
• Elisa Yumi Nakagawa. ENGENHARIA DE REQUISITOS. USP.
https://edisciplinas.usp.br/pluginfile.php/58062/mod_resource/content/1/Aula08_Engenharia_Requisitos.pdf
• Ecured. Ingeniería de Requisitos. https://www.ecured.cu/Ingenier%C3%ADa_de_requisitos
• Pohl, K. and Rupp, C. 2015. Requirements Engineering Fundamentals. IREB

7/03/2024 @UNSA/EPCC 28

También podría gustarte