Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA:
3- Ingeniería de requisitos
ACTIVIDAD:
T3-01 Resumen
ALUMNO (A):
CARRERA:
DOCENTE:
Km. 5.35 Carretera San Pedro Pochutla-Puerto Ángel, Localidad El Colorado, C.P.70902, San
Pedro Pochutla, Oaxaca, México. Tel. 01 (958) 5878050, e-mail: dir_pochutla@tecnm.mx
www.tecnm.mx | www.pochutla.tecnm.mx
Introducción
La Ingeniería de requerimientos comprende todas las tareas relacionadas con la determinación de las
necesidades o de las condiciones a satisfacer para un nuevo software nuevo o modificado, tomando en
cuenta los diversos requisitos de los inversores, que pueden entrar en conflicto entre ellos.
El propósito de la ingeniería de requisitos es hacer que los mismos alcancen un estado óptimo antes de
alcázar la fase de diseño en el proyecto. Los buenos requisitos deben ser medibles, comprobables, sin
ambigüedades.
En este Resumen se estará abordando como tema principal la ingeniería de requisitos donde
abordaremos sus características y tipos de requisitos para el desarrollo de software al final del resumen
se agrego un cuadro sinóptico de las herramientas case para la ingeniería de requisitos
A través de los años se ha podido constatar que los requerimientos o requisitos son la pieza
fundamental en un proyecto de desarrollo de software, ya que marcan el punto de partida para
actividades como la planeación, básicamente en lo que se refiere a las estimaciones de tiempos y
costos, así como la definición de recursos necesarios y la elaboración de cronogramas que será uno de
los principales mecanismos de control con los que se contará durante la etapa de desarrollo.
La Ingeniería de Requerimientos (IR) cumple un papel primordial en el proceso de producción de
software, ya que se enfoca un área fundamental: la definición de lo que se desea producir. Su principal
tarea consiste en la generación de especificaciones correctas que describan con claridad, sin
ambigüedades, en forma consistente y compacta, las necesidades de los usuarios o clientes; de esta
manera, se pretende minimizar los problemas relacionados por la mala gestión de los requerimientos en
el desarrollo de sistemas.
• Estudio de viabilidad
• Recogida de requisitos
• Requisitos del Software
• Validación de los requisitos de Software
Requisitos de Software: El SRS define cómo va a interactuar el software que quiere crearse con el
hardware, las interfaces externas, la velocidad operativa, el tiempo de respuesta del sistema, la
portabilidad del software en las diversas plataformas, el mantenimiento, la velocidad de reponerse
después de estropearse, su seguridad, calidad, limitaciones, etc.
Validación de los requisitos de Software: Después del desarrollo de los requisitos, los que se mencionen
en este documento serán validados. El usuario puede que pida soluciones ilegales y poco prácticas, y
los expertos puede que interpreten los requisitos de forma incorrecta. Estos resultados se incrementan
en coste si no se cortan de raíz. Los requisitos se pueden evaluar en contraste con las siguientes
condiciones -
La especificación de requisitos de software (ERS) es una descripción completa del comportamiento del
sistema que se va a desarrollar. Incluye un conjunto de casos de uso que describe todas las
interacciones que tendrán los usuarios con el software. Los casos de uso también son conocidos como
requisitos funcionales. Además de los casos de uso, la ERS también contiene requisitos no funcionales
(complementarios). Los requisitos no funcionales son requisitos que imponen restricciones en el diseño
o la implementación, como, por ejemplo, restricciones en el diseño o estándares de calidad.
Está dirigida tanto al cliente como al equipo de desarrollo. El lenguaje utilizado para su redacción debe
ser informal, de forma que sea fácilmente comprensible para todas las partes involucradas en el
desarrollo.
Las características de una buena ERS deben ser:
✓ Completa. Todos los requerimientos deben estar reflejados en ella y todas las referencias
deben estar definidas.
✓ Consistente. Debe ser coherente con los propios requerimientos y también con otros
documentos de especificación.
✓ Inequívoca. La redacción debe ser clara de modo que no se pueda mal interpretar.
✓ Correcta. El software debe cumplir con los requisitos de la especificación.
✓ Trazable. Se refiere a la posibilidad de verificar la historia, ubicación o aplicación de un ítem a
través de su identificación almacenada y documentada.
✓ Priorizable. Los requisitos deben poder organizarse jerárquicamente según su relevancia para
el negocio y clasificándolos en esenciales, condicionales y opcionales.
✓ Modificable. Aunque todo requerimiento es modificable, se refiere a que debe ser fácilmente
modificable.
✓ Verificable. Debe existir un método finito sin costo para poder probarlo
TIPOS DE REQUISITOS
Requisitos de Software
Debemos intentar entender qué tipo de requisitos pueden aparecer en la fase de educción de requisitos
y qué tipo de requisitos se esperan del sistema de software. En líneas generales los requisitos de
software se deben caracterizar en dos categorías:
Requisitos funcionales
Requisitos que se relacionan a aspectos funcionales del software irían en esta categoría. Definen las
funciones y la funcionalidad en y desde el sistema de software.
Ejemplos -
• Buscar una opción dada al usuario para buscar desde varias facturas.
• El usuario debe ser capaz de enviar por correo electrónico cualquier informe a la
Dirección.
• Los usuarios se pueden dividir en grupos y los grupos pueden tener derechos diferentes.
• Debe cumplir reglas empresariales y funciones administrativas.
• El Software se desarrolla manteniendo intacta la compatibilidad en descenso.
Requisitos no funcionales
Los requisitos, los cuales no están relacionados con aspectos funcionales del software, están en esta
categoría. Son características del software implícitas o esperadas, asumidas por los usuarios.
• Seguridad
• Acceso
• Almacenaje
• Configuración
• Actuación
• Coste
• Interoperabilidad
• Flexibilidad
• Recuperación de desastre
• Accesibilidad
Los requisitos se categorizan de forma lógica como
• Fácil de manejar
• rápido en responder
• efectivo tratando errores operacionales
• aportando interfaces de usuario simples y consistentes
La aceptación del usuario mayormente depende de cómo éste pueda usar el software. La UI es el único
camino para percibir el sistema por parte de los usuarios. Un sistema software de buena actuación
también debe estar equipado con interfaces de usuario atractivas, claras, consistentes y receptivas.
Herramientas CASE para la ingeniería de requisitos.
A medida que pasa el tiempo se logra entender que el empleo del software es una buena
opción para agilizar y sistematizar las tareas en el desarrollo de procesos. El desarrollo de
software no es la excepción; en este caso dichas herramientas se han denominado CASE
(Ingeniería De Software Asistida Por Computador). Estas incluyen un conjunto de programas
que facilitan la optimización de un producto ofreciendo apoyo permanente a los analistas,
ingenieros de software y desarrolladores. CASE es la aplicación de métodos y técnicas que
dan utilidades a los programas, por medio de otros, procedimientos y su respectiva
documentación.
IRQA 4.
Herramientas CASE de ingeniería de requisitos, diseñada para soportar las actividades
realizadas en el proceso de especificación de sistemas. Esta facilita y formaliza la
comunicación entre el cliente, el proveedor y los distintos miembros del equipo de desarrollo.
Facilita la captura, organización y análisis de las condiciones, así como la especificación de la
solución mediante el apoyo metodológico adaptable a cada cliente.
Esta herramienta propone un modelo de requisitos para capturar los aspectos funcionales del
sistema; básicamente, mediante tres técnicas complementarias entre sí: la definición de la
Misión del Sistema, la construcción del Árbol de Refinamiento de Funciones y el desarrollo del
Modelo de Casos de Uso. Además, se introduce un Proceso de Análisis que permite traducir el
Modelo de Requisitos en el Modelo Conceptual, manteniendo la trazabilidad entre ambos y
propiciando una representación de la información en el segundo prototipo.
RETO
Herramienta de apoyo al proceso de ingeniería de software en pequeñas empresas. Se creó
gracias a la expansión que tuvo el mercado y a la generación de grandes y pequeñas
empresas, las cuales requieren un instrumento para el desarrollo de sus proyectos. Ofrece
recursos importantes tales como: Administración de requisitos, administración de casos de
uso, administración de casos de prueba y error, planeamiento de liberaciones, administración
de implementaciones, control de dependencia entre Implementaciones, matriz de
rastreabilidad y rastreabilidad de los requisitos
CONTROLA
Herramienta libre para la gestión de requisitos, cuyas principales características son: trabaja
en arquitectura cliente/servidor, desarrollada bajo Java; la versión 1.3 trae un módulo para
manejar la trazabilidad y lo introduce para el control de cambios; así mismo, genera la
documentación de los requisitos tratados.
JEREMIA
Esta herramienta está basada en XML, realmente consta de un conjunto de aplicaciones para
el usuario final, ayudando a los analistas de sistemas en la recopilación y categorización de
hechos en un documento de especificación de requisitos. Lo curioso es que tiene un cliente
para palm (PDA), el cual se utiliza para recopilar los hechos en el lugar donde está ubicado el
cliente mientras que la aplicación de escritorio recibe la información, edita y perfecciona.
Ambas aplicaciones permiten al usuario introducir, modificar y visualizar los datos que
componen un documento de especificación de requisitos.
Herramienta CASE de Ingeniería de Requisitos, diseñada
para soportar las actividades realizadas en el proceso de
especificación de sistemas. Ésta facilita y formaliza la
comunicación entre el cliente, el proveedor y los distintos
IRQA 43 miembros del equipo de desarrollo. Facilita la captura,
organización y análisis de las condiciones, así como la
especificación de la solución mediante el apoyo
metodológico adaptablea cada cliente.
de riquisitos