0% encontró este documento útil (0 votos)
21 vistas17 páginas

Ingenieria de Requisitos

La ingeniería de requisitos es esencial en el desarrollo de software, involucrando la identificación, análisis, documentación y validación de necesidades de las partes interesadas. Este proceso incluye fases como obtención, análisis, documentación, verificación y validación de requisitos, y enfrenta desafíos como la falta de comunicación y cambios constantes. Se utilizan diversas técnicas y metodologías, como JAD y FPA, para mejorar la recolección y gestión de requisitos, garantizando que sean claros y consistentes para el éxito del proyecto.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
21 vistas17 páginas

Ingenieria de Requisitos

La ingeniería de requisitos es esencial en el desarrollo de software, involucrando la identificación, análisis, documentación y validación de necesidades de las partes interesadas. Este proceso incluye fases como obtención, análisis, documentación, verificación y validación de requisitos, y enfrenta desafíos como la falta de comunicación y cambios constantes. Se utilizan diversas técnicas y metodologías, como JAD y FPA, para mejorar la recolección y gestión de requisitos, garantizando que sean claros y consistentes para el éxito del proyecto.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación Universitaria


Universidad Territorial Deltaica “Francisco Tamayo”
Programa Nacional de Formación en informática
Tucupita, Estado Delta Amacuro

Tutora: Integrantes:

Irangelys Silva Alejandro Zacarias v-31577721


Bladimir Vegas v-28758438
Jesús Cedeño v-28538583
Jorge Márquez v-17055732
Julio Rodríguez v-31221813
Samuel Arismendi v-28754912

Sección: AM-02 Turno: Mañana Trayecto III – Trimestre I


Introducción

La ingeniería de requisitos es un proceso fundamental en el desarrollo de

software que se encarga de identificar, analizar, documentar y validar las necesidades y

expectativas de las partes interesadas para la construcción de un sistema de software

exitoso. Este proceso consta de diversas fases, como la recolección, análisis,

documentación y validación de requisitos, en las cuales se involucra a un equipo

multidisciplinario que incluye a usuarios, clientes, analistas y desarrolladores. A pesar

de su importancia, la ingeniería de requisitos también presenta desafíos, como la falta

de comunicación efectiva entre los involucrados y la dependencia de su disponibilidad y

participación, lo que puede generar retrasos en el proceso. Para superar estos

obstáculos, se utilizan diversas técnicas de recolección de requisitos, como entrevistas,

cuestionarios, observación y talleres colaborativos como el JAD, que permiten obtener

información precisa y completa. Además, existen metodologías como el Análisis de

Puntos de Función (FPA) que ayudan a medir el tamaño y complejidad de un sistema

de software, lo que facilita la estimación de esfuerzo y recursos necesarios para su

desarrollo. En conjunto, estas herramientas y técnicas contribuyen a garantizar que los

requisitos del sistema sean claros, completos y consistentes, sentando las bases para

el éxito del proyecto de desarrollo de software.


Indice

Introducción .......................................................................................................... 2

Fases de la Ingeniería de Requisitos ................................................................... 4

Obtención de Requisitos ................................................................................... 5

Análisis de requisitos ........................................................................................ 5

Documentación de requisitos ............................................................................ 5

verificación de requisitos ................................................................................... 6

validación de requisitos ..................................................................................... 6

Personal Involucrado en la Ingeniería de Requisitos ............................................ 6

Inconvenientes que se Presentan en el Levantamiento de Requerimientos ........ 8

Técnicas para Obtener Requerimientos de Software ........................................... 9

Ventajas y Desventajas de las Técnicas de Obtención de Requerimientos ....... 11

Metodología JAD & FPA ..................................................................................... 13

Conclusión .......................................................................................................... 15

Bibliografía.......................................................................................................... 17
Fases de la Ingeniería de Requisitos

La ingeniería de requisitos es un conjunto de procesos, tareas y técnicas que

permiten la definición y gestión de los requisitos de un producto de un modo

sistemático. En definitiva, facilita los mecanismos adecuados para comprender las

necesidades del cliente, analizando sus necesidades, confirmando su viabilidad,

negociando una solución razonable, especificando la solución sin ambigüedad,

validando la especificación y gestionando los requisitos para que se transformen en un

sistema operacional.

Llevar a cabo de manera adecuada el proceso de ingeniería de requisitos

disminuye la probabilidad de fracaso de un proyecto. Esto es porque los requisitos bien

definidos permiten conocer de un modo conciso que debe ser capaz de realizar el

software a desarrollar y hace orientar las actividades, recursos y esfuerzos de manera

eficiente permitiendo la disminución de costos y retrasos. Todo ello provoca una mejora

en la calidad del software puesto que los requisitos bien especificados podrán probarse

de manera efectiva y, por tanto, cumplirse.

Para poder llevar a cabo el proceso de ingeniería de requisitos, hay que ejecutar

una serie de pasos o fases:


Análisis de Documentació
Obtención de
Requisitos n de
Requisitos
requisitos

verificación validación
de de
requisitos requisitos

Obtención de Requisitos

La obtención de requisitos es la actividad en la que un grupo especializado

extrae, de cualquier fuente de información disponible (documentos, aplicaciones

existentes, entrevistas, etc.), las necesidades de cubrir dicho sistema. El proceso de

obtención de requisitos puede resultar complejo, debido a esto existen un conjunto de

técnicas que permiten hacer este proceso de una forma más eficiente y precisa,

obteniéndose necesidades y modelos del sistema.

Análisis de requisitos

En esta fase, los requisitos recopilados en la etapa de elicitación se analizan y

se organizan en una estructura coherente. Se identifican posibles conflictos o

inconsistencias entre los requisitos y se priorizan según su importancia y viabilidad.

Documentación de requisitos

En esta fase, los requisitos analizados se documentan de manera detallada y

precisa en un documento formal conocido como especificación de requisitos. Este


documento describe de forma clara y concisa qué funcionalidades debe tener el

sistema, cómo debe comportarse y qué restricciones debe cumplir.

verificación de requisitos

En esta fase, se verifica que los requisitos definidos en la especificación son

correctos, completos y consistentes. Se realizan revisiones y pruebas para garantizar

que los requisitos cumplen con las necesidades del usuario y son factibles de

implementar.

validación de requisitos

La validación de requisitos es el proceso de confirmar que los requisitos

especificados para un sistema de software son correctos, completos y consistentes con

las necesidades y expectativas del usuario. Es una fase crucial en la ingeniería de

requisitos, ya que garantiza que el producto final cumpla con los objetivos del proyecto.

Personal Involucrado en la Ingeniería de


Requisitos

En la ingeniería de requisitos, cada uno de los roles mencionados desempeña

funciones específicas que contribuyen al proceso de definición, validación y gestión de

los requisitos de un sistema de software.

Los roles más importantes pueden clasificarse en el siguiente orden:

Usuario final: Los usuarios finales son las personas que utilizarán el sistema de
software una vez que esté implementado. Su rol es fundamental en la ingeniería de

requisitos, ya que son quienes aportan sus necesidades, expectativas y feedback sobre

cómo debería funcionar el sistema.

Usuario líder: El usuario líder es un representante designado por los usuarios finales

para actuar como intermediario entre ellos y el equipo de desarrollo. Su función

principal es asegurarse de que los requisitos del sistema reflejen adecuadamente las

necesidades del negocio y los usuarios finales

Personal de mantenimiento: El personal de mantenimiento es responsable de

mantener y mejorar el sistema de software una vez que ha sido implementado. En el

contexto de la ingeniería de requisitos, su rol implica participar en la definición de

requisitos de mantenimiento, identificar posibles mejoras y cambios futuros, y asegurar

que los requisitos sean claros y fáciles de entender para facilitar las tareas de

mantenimiento.

Analistas y Programadores: Los analistas son profesionales encargados de analizar,

documentar y gestionar los requisitos del sistema, mientras que los programadores son

responsables de implementar el sistema de software según los requisitos definidos.

Personal de pruebas: El personal de pruebas se encarga de verificar que el sistema

cumpla con los requisitos especificados y funcione correctamente antes de su puesta

en producción.
Inconvenientes que se Presentan en el
Levantamiento de Requerimientos

El levantamiento de requerimientos es una etapa crítica en el proceso de

desarrollo de software, ya que de la correcta identificación y documentación de los

requisitos depende en gran medida el éxito del proyecto. Sin embargo, durante esta

fase pueden surgir diversos inconvenientes como los que se describen a continuación:

Falta de comunicación: La comunicación insuficiente o ineficaz entre los

diferentes actores involucrados el proceso de recolección de requisitos puede llevar a

malentendidos, información incompleta o inconsistente, y a la identificación errónea de

necesidades.

Cambios constantes: Los cambios constantes en los requisitos por parte de los

interesados pueden dificultar la definición y estabilización de los requisitos, lo que

puede provocar retrasos en el proyecto, aumento de costos y desviaciones en el

alcance.

Ambigüedad: La ambigüedad en los requisitos puede generar interpretaciones

erróneas, malentendidos y confusiones durante el proceso de desarrollo. Es importante

ser claro y preciso al documentar los requisitos para evitar malentendidos.

Requisitos contradictorios: En ocasiones, diferentes partes de los interesados


pueden tener requerimientos que entran en conflicto entre sí. Es importante identificar y

resolver estas contradicciones de manera temprana para evitar problemas futuros.

Falta de participación de los interesados clave: Si no se involucra a todos los

interesados relevantes en el proceso de levantamiento de requisitos, es probable que

se pasen por alto necesidades importantes o se tomen decisiones sin tener en cuenta

todas las perspectivas.

Sobreingeniería: Definir requisitos demasiado detallados o complejos puede llevar a

un exceso de funcionalidades innecesarias, aumentando la complejidad del sistema y

el costo del desarrollo.

Subestimación del tiempo y recursos necesarios: No asignar suficiente tiempo y

recursos para el levantamiento de requisitos puede resultar en una recopilación

incompleta o superficial, lo que puede causar problemas durante las etapas posteriores

del proyecto.

Técnicas para Obtener Requerimientos de


Software

Los analistas pueden emplear varias técnicas para obtener los requisitos del

cliente, dichas técnicas son fundamentales para comprender las necesidades de los

usuarios y garantizar que el software desarrollado cumpla con sus expectativas y


requisitos, esto ha incluido técnicas tales como las entrevistas, o talleres en grupos

para crear listas de requisitos, las técnicas más utilizadas son:

Entrevistas: Consiste en reunirse con las partes interesadas, usuarios y otros

involucrados para recopilar información sobre sus necesidades y expectativas con

respecto al software.

Cuestionarios: Se utilizan para recopilar información de un gran número de

personas de manera estandarizada. Pueden ser útiles para obtener una visión general

de los requisitos del software.

Observación: Consiste en observar a los usuarios mientras realizan sus tareas

diarias para identificar problemas, necesidades y oportunidades de mejora que puedan

traducirse en requisitos de software.

Grupos de enfoque: Reunir a un grupo de usuarios representativos para

discutir y compartir sus experiencias, opiniones y necesidades con respecto al

software.

Prototipado: Desarrollar prototipos del software para permitir a los usuarios

experimentar con él y proporcionar retroalimentación sobre sus necesidades y

expectativas.

Casos de Uso: Un caso de uso es una técnica para documentar posibles

requisitos, graficando la relación del sistema con los usuarios u otros sistemas
Ventajas y Desventajas de las Técnicas de Obtención de Requerimientos

Técnicas Ventajas Desventajas


-Permite una interacción directa. -Puede ser costoso en términos de tiempo y
recursos.
Entrevistas -Se puede aclarar dudas y obtener información
detallada. -La información obtenida puede estar
sesgada por la interpretación del
entrevistador.
-Permite recopilar información de un gran número de -Puede haber sesgo en las respuestas debido
-personas de manera eficiente. a la interpretación de las preguntas.

-Facilita la estandarización de las respuestas para su -No permite profundizar en las respuestas ni
Cuestionarios análisis. aclarar dudas.

-Puede ser útil para obtener una visión general de -Puede ser difícil obtener una tasa alta de
los requisitos del software. respuesta.

-Permite identificar problemas, necesidades y -Puede resultar intrusiva para los usuarios.
oportunidades de mejora de manera directa.
-Requiere tiempo y recursos para realizar la
Observación -Proporciona información objetiva sobre cómo los observación.
usuarios interactúan con el software.
-La presencia del observador puede alterar el
-Puede revelar requisitos no expresados por los comportamiento de los usuarios.
usuarios.
-Permite recopilar información de un grupo diverso -Puede haber sesgo en las opiniones
de usuarios en un entorno colaborativo. expresadas por los participantes.
Grupos de -Facilita la generación de ideas y soluciones a través -Algunos usuarios pueden dominar la
enfoque de la discusión grupal. discusión, limitando la participación de otros.

-Puede revelar necesidades y expectativas comunes -Puede ser difícil llegar a un consenso en un
entre los participantes. grupo grande o diverso.
-Permite a los usuarios experimentar con el software -Puede requerir tiempo y recursos adicionales
y proporcionar retroalimentación temprana. para desarrollar prototipos.

-Facilita la validación de requisitos y la detección de -Los usuarios pueden centrarse en aspectos


Prototipado problemas de usabilidad. superficiales del prototipo en lugar de los
requisitos fundamentales.
-Ayuda a visualizar y comunicar las ideas de manera
tangible. -Puede generar expectativas poco realistas
sobre el producto final.
-Los casos de uso son una forma efectiva de -Los casos de uso pueden volverse complejos
comunicar los requisitos del sistema a las partes y difíciles de entender si no se gestionan
interesadas. adecuadamente.
Casos de uso
-Los casos de uso se centran en las interacciones -Los casos de usos pueden ser demasiado
entre el sistema y los usuarios. generales lo cual puede ocasionar falta de
detalle.
Metodología JAD & FPA
Metodología Características Ventajas Desventajas

La Metodología JAD es un -Colaboración: Promueve la -Mayor participación de los -Dependencia de la


enfoque colaborativo que colaboración y la involucrados: Involucra a disponibilidad de las partes
involucra a los participantes comunicación entre las los participantes clave interesadas: Requiere la
clave, como usuarios, diferentes partes interesadas desde el principio, lo que participación constante de
desarrolladores y otros para identificar y validar los ayuda a garantizar que los los involucrados, lo que
expertos, en sesiones de requisitos del sistema. requisitos reflejen con puede ser difícil de
trabajo estructuradas para precisión las necesidades coordinar en entornos
definir y refinar los -Sesiones estructuradas: Se del negocio. donde los horarios son
requisitos del sistema. realizan sesiones de trabajo conflictivos.
estructuradas y guiadas por -Comunicación efectiva:
Consiste en un taller donde un facilitador para discutir, Facilita la comunicación -Posible sesgo en la toma
los empleados de la analizar y documentar los entre los diferentes equipos de decisiones: La influencia
compañía y los técnicos requisitos. y participantes, lo que de ciertos participantes
informáticos se reúnen, reduce malentendidos y puede llevar a decisiones
durante uno o varios días, -Iterativo: Permite la revisión y errores en la definición de sesgadas o no
para definir y revisar los refinamiento continuo de los requisitos. representativas de las
requerimientos de negocio requisitos a lo largo del necesidades generales del
para el sistema. proceso de desarrollo del - Mayor velocidad en la sistema.
sistema. definición de requisitos:
Permite una definición más -Costo y tiempo: Organizar
rápida y precisa de los sesiones de trabajo JAD
requisitos del sistema en puede requerir una
comparación con otros inversión significativa de
enfoques tradicionales. tiempo y recursos, lo que
puede no ser viable en
todos los proyectos.
La Metodología FPA es una -Basada en funciones: Se -Objetividad: Proporciona -Complejidad: La aplicación
técnica de medición del centra en medir el tamaño una medida objetiva y de la Metodología FPA
tamaño funcional de un funcional del sistema en estandarizada del tamaño puede resultar compleja y
sistema informático basada función de las funciones que funcional del sistema, lo requerir un conocimiento
en la identificación y realiza, independientemente que facilita la estimación detallado del sistema y sus
clasificación de las de cómo se implementen. precisa de esfuerzo y funciones para realizar una
funciones que proporciona costos. medición precisa.
el sistema. -Estándar internacional:
Existen estándares -Comparabilidad: Permite -Dependencia de la calidad
Pretende medir la internacionales para la comparar el tamaño de la documentación: La
funcionalidad entregada al aplicación de la Metodología funcional de sistemas precisión de la medición
usuario independientemente FPA, lo que garantiza similares o relacionados, lo FPA depende en gran
de la tecnología utilizada consistencia y comparabilidad que ayuda a identificar medida de la calidad y
para la construcción y en las mediciones. patrones y tendencias en el completitud de la
explotación del software, y desarrollo de software. documentación disponible
también es útil en -Métrica objetiva: Proporciona sobre el sistema.
cualquiera de las fases de una métrica objetiva y -Estimación precisa: Ayuda
vida del software, desde el cuantificable del tamaño del a realizar estimaciones más -Limitaciones en entornos
diseño inicial hasta la sistema, que puede utilizarse precisas del esfuerzo y el ágiles: En entornos ágiles
explotación y para estimar esfuerzo, costos tiempo requeridos para donde los requisitos
mantenimiento. y calidad. desarrollar un sistema cambian con frecuencia, la
informático. Metodología FPA puede no
ser tan efectiva para medir
el tamaño funcional del
sistema.
Conclusión

La ingeniería de requisitos es un proceso fundamental en el desarrollo de

software, ya que establece las bases para la construcción de un sistema que cumpla

con las necesidades y expectativas del cliente, las fases de la ingeniería de requisitos,

como la recolección, análisis, documentación y validación, son críticas para garantizar

que los requisitos sean claros, completos y consistentes. Cada fase tiene su

importancia, ya que la recolección permite entender las necesidades del cliente, el

análisis ayuda a descomponer y priorizar los requisitos, la documentación asegura una

comunicación efectiva y la validación verifica que los requisitos sean correctos, de igual

forma la participación activa del personal involucrado en la ingeniería de requisitos, que

incluye a los participantes clave, como usuarios, clientes, analistas y desarrolladores es

esencial para garantizar que los requisitos reflejen con precisión las necesidades del

negocio y sean factibles de implementar. Sin embargo, la ingeniería de requisitos

también presenta algunos inconvenientes, como la falta de comunicación efectiva entre

los involucrados puede llevar a malentendidos y errores en la definición de requisitos.

Además, la dependencia de la disponibilidad y participación de las partes interesadas

puede generar retrasos en el proceso.

Para superar estos desafíos, existen diversas técnicas de recolección de requisitos que

ayudan a obtener información precisa y completa. Algunas técnicas comunes incluyen

entrevistas, cuestionarios, observación y talleres colaborativos como JAD. Estas

técnicas permiten una comprensión más profunda de las necesidades del cliente y

facilitan la identificación y validación de los requisitos. La ingeniería de requisitos es un


proceso crítico en el desarrollo de software que requiere la participación de los

involucrados y el uso de técnicas adecuadas para garantizar el éxito del proyecto. A

través de sus fases y técnicas, se busca obtener requisitos claros y completos que

sirvan como base sólida para el desarrollo de sistemas exitosos.


Bibliografía

"Requisitos de software" de Karl Wiegers y Joy Beatty.

"Gestión de requisitos de software: un enfoque de casos de uso" de Dean Leffingwell y

Don Widrig.

“CLASIFICACIONES DE TIPOS DE REQUISITOS PARA LA MEJORA DEL PROCESO

DE DESARROLLO DEL SOFTWARE” Adelaida Ramírez Fernández

También podría gustarte