Ingenieria De Requisitos
Enviado por karlitoz04 • 12 de Mayo de 2013 • 2.341 Palabras (10 Páginas) • 384 Visitas
LA INGENIERÍA DE REQUERIMIENTOS APLICADA AL DESARROLLO DE SISTEMA DE INFORMACIÓN
Beatriz Ayala, Claudia Marcela Ramírez, Lina María Ocampo
Resumen. El proceso de la Ingeniería de Requerimientos sirve para recopilar la información necesaria para establecer la funcionalidad que se quiere alcanzar con el sistema. Para ello, se debe de contar con buenos métodos y técnicas para hacerlo, además de una comunicación fluida y constante con el cliente, ya que los requerimientos deben reflejar las necesidades reales que se deben satisfacer.
Con la realización de este artículo se trata de dar un panorama general sobre los conceptos y características de la Ingeniería de Requerimientos, resaltando la utilización de técnicas como la especificación, la lluvia de ideas y casos de uso, que ayudan a definir requerimientos de una manera concisa y real.
Palabras claves: ingeniería de requerimientos, requerimiento
Abstract. The process of requirements engineering is used to collect the required information to establish the functionality that it want to achieve with the system. It necessary to have appropriate methods and techniques to do so, in addition to have a fluid and constant communication with the customer, due to the requirements would reflect the real needs that are necessary to fulfill.
This article is a general view about Requirements Engineering, highlighting the use of techniques such as specification, brainstorming and use that help to define concise and real requirements.
Keywords: Requirements Engineering, Requirements
1 INTRODUCCIÓN
Con el paso de los años se ha podido constatar que los requerimientos o requisitos son esenciales en un proyecto de desarrollo de software, ya que es el mecanismo que permite entender lo que el cliente quiere, analizar sus necesidades, evaluar la factibilidad, especificar las necesidades de manera no ambigua, validarlas, y administrar estos requerimientos conforme evoluciona el desarrollo del proyecto.
Gran número de los proyectos de software fracasan por no realizar una adecuada definición, especificación, y administración de los requerimientos. La administración inadecuada puede desencadenar problemas como la falta de participación del usuario, requerimientos incompletos y una rastreabilidad errada de los mismos.
La Ingeniería de Requerimientos cumple un papel primordial en el proceso de producción de software, ya que se enfoca en 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, minimizando problemas originados por la mala gestión de los requerimientos en el desarrollo de sistemas.
2 INGENIERIA DE REQUERIMIENTOS
“La Ingeniería de requerimientos se entiende como el proceso de descubrimiento y comunicación de las necesidades de clientes y usuarios y la gestión de los cambios de dichas necesidades” . La ingeniería de requerimientos del software es un proceso de búsqueda, refinamiento, modelado y especificación donde se toman como base requisitos de datos, flujo de información y control, y de comportamiento operativo.
Como menciona Goguen, “uno de los aspectos más importantes de la ingeniería de requerimientos es la comunicación, característica ésta que vuelve el proceso complejo por la alta presencia del factor humano que contiene y es la responsable de que la disciplina contenga aspectos sociales y culturales y no sólo de índole técnica” .
“Además, la Ingeniería de requerimientos debe ser considerada como un proceso de construcción de una especificación de requisitos en el que se avanza desde unas especificaciones iníciales, que no poseen las características oportunas, hasta especificaciones finales completas, formales y acordadas entre todas las partes” .
Antes de describir los aspectos referentes a la ingeniería de requerimientos es importante entender lo que es un requerimiento, su clasificación y sus características:
2.1 REQUERIMIENTO
Según IEEE un “Requerimiento” es:
1. “Una condición o capacidad que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. (Std 610.12-1900, IEEE: 62). Por extensión el término requisito se aplica a las condiciones “que debe cumplir o poseer un sistema o uno de sus componentes para satisfacer un contrato, una norma o una especialización”
2. “Una condición o capacidad que debe estar presente en un sistema o componentes de sistema para satisfacer un contrato, estándar, especificación u otro documento formal”. (Std 610.12-1900, IEEE: 62)
La definición de los requerimientos debe ser el fruto del trabajo conjunto de las partes involucradas en el desarrollo: los suministradores, los desarrolladores de software (analistas) y los clientes y usuarios (Los clientes y los usuarios, a veces no son la misma persona). Esto se debe a que ni el desarrollador ni el cliente pueden redactar la especificación de requerimientos de software por si solos, ya que: El cliente no suele entender el proceso de diseño y desarrollo del software o los analistas, normalmente, no suelen entender completamente el problema del cliente, debido a que no dominan su área de trabajo.
2.2 TIPOS DE REQUERIMIENTOS
Estos pueden dividirse en 2 categorías: requerimientos funcionales y requerimientos no funcionales.
Los requerimientos funcionales: son los que definen las funciones que el sistema será capaz de realizar, describen las transformaciones que el sistema realiza sobre las entradas para producir salidas. Es importante que se describa el ¿Qué? y no el ¿Cómo? se deben hacer esas transformaciones. Estos requerimientos al tiempo que avanza el proyecto de software se convierten en los algoritmos, la lógica y gran parte del código del sistema.
Los requerimientos no funcionales: son características que de una u otra forma puedan limitar el sistema, por ejemplo, el rendimiento (en tiempo y espacio), interfaces de usuario, fiabilidad (robustez del sistema, disponibilidad de equipo), mantenimiento, seguridad, portabilidad, etc.
2.3 CARACTERÍSTICAS DE UN REQUERIMIENTO
Según las IEEE 1998 las características deseables serían:
─ No ambigua
─ Completa
─ Fácil de verificar
─ Consistente
─ Clasificada por importancia o estabilidad Fácil de modificar
─ Fácil identificación del origen y de las consecuencias de cada requerimiento
─ De fácil utilización en la fase de desarrollo y mantenimiento
2.4 IMPORTANCIA DE LA DEFINICION
...