Importancia de la ingeniería de requerimientos dentro del ciclo de desarrollo de software
Lie. Caridad Racero Borrell,
Téc. en Telemática, Gerencia de Sistemas Informáticos, Dirección de Desarrollo y Asuntos Regulatorios (DDAR), ETECSA caridad. râ[email protected] n la actualidad un número creciente de herramientas automatizadas han surgido para ayudar a definir y aplicar un proceso dedesarrollo de software efectivo. Hoy día la economía global depende más de sistemas automatizados que en épocas pasadas; esto ha llevado a los equipos de desarrollo a enfrentarse con una nueva década de procesos y estándares de cal idad. A pesar de los avances de la tecnología, aún existen procesos de producciones informales, parciales y, en algunos casos, no confiables. La Ingeniería de Requerimientos(IR) es definida como: «La disciplina para desarrollar una especificación completa, consistente y no ambigua, la cual servirá como base para acuerdos comunes entre todas las partes involucradas y en donde se describen las funciones que realizará el sistema»‘. «El proceso por el cual se transforman los requerimientos declarados por los clientes, ya sean hablados o
E
escritos, a especificacionesprecisas, Estudios realizados muestran que no ambiguas, consistentes y com- más del 53 % de los proyectos de pletas del comportamiento del sistema, software fracasan por no realizarse incluyendo funciones, interfaces, un estudio previo de requisitos. rendimiento y limitaciones'». Otros factores como la falta de par»Un enfoque sistémico para reco- ticipación del usuario, los requerilectar,organizar y documentar los mientos incompletos y el cambio a los requerimientos del sistema; es tam- requerimientos, ocupan sitiales altos bién el proceso que establece y en los motivos de fracasos. mantiene acuerdos sobre los cam¿Qué son los requerimientos? Exisbios de requerimientos, entre los ten múltiples definiciones para requeclientes y el equipo del proyecto»^ rimiento, a continuación se presentaEn todas las definiciones se destaca la que aparece en el glosario de la como un proceso que comprende ÍEEE: todas las actividades para crear y man1. Una condición o necesidad de tener los requerimientos de un sistema un usuario para resolver un probley cumple un papel primordial en el ma o alcanzar un objetivo. proceso de producción de soñware, 2. Una condición o capacidad que pues enfoca un áreafundamental: la debe estar presente en un sistema o defínición de lo que se desea producir. componentes de sistema para satisSu tarea principal consiste en la facer un contrato, estándar, especigeneración de especificaciones co- ficación u otro documento formal. rrectas que describan con claridad, sin 3.Una representación documentada ambigüedades, en forma consistente y de una condición ocapacidad como compacta, el comportamiento del sis- en 1 ó 2. Se dividen en funcionales y tema; de esta manera, pretende mini- no funcionales. mizarse los problemas relacionados Funcionales: condición o capacicon el desarrollo de sistemas. dad de un sistema requerida por el
52 Tom ReWsta Técnica de la Empresa de Telecomunicadones de Cuba S.A.
usuario para resolver un problema o alcanzar unobjetivo. No funcionales: condición o capacidad que debe poseer un sistema para satisfacer un contrato, un estándar, una especificación u otro documento formalmente impuesto. Son propiedades que debe tener el sistema. • Usabilidad: la interíaz de usuario deberá ser familiar a los usuarios que han utilizado otras aplicaciones Web o aplicaciones de escritorio de Windows. •Seguridad: el acceso se realizará através de nombres de usuario y contraseñas, dejar huellas de confirmación de operaciones. • Desempeño y escaiabilidad: el sistema deberá ser fácilmente adaptable a cualquier cambio en el entorno de trabajo. Es la capacidad del sistema de cambiar su tamaño o configuración para adaptarse a las circunstancias cambiantes. • Mantenimiento y actualización: entrega de nuevas versiones del producto a…