requerimientos de software -...
Embed Size (px)
TRANSCRIPT

1
www.salesianorg.edu.ar/rqs
UNPA UARG 2008
Ingeniería de Requerimientos
Requerimientos de SoftwareRequerimientos de Software
www.salesianorg.edu.ar/rqs
Contenido
Introducción1
Definiciones2
Niveles y Clasificación3
ERS4
www.salesianorg.edu.ar/rqs
Sistemas
�Conjunto de componentes interrelacionados.� Subsistemas.
� Desarrollo en paralelo.
� Debe hacerse revisión del trabajo
� Requiere de una Ingeniería de Software

2
www.salesianorg.edu.ar/rqs
Evolución de los sistemas
�Los sistemas tienen una larga vida, deben mantenerse.
1
Elaboración.Construcción.Puesta en Funcionamiento.
2
Generación de Información.Mantenimiento.Modificaciones:
Errores en los requerimientos.Nuevos requerimientos.Cambios en el hardware.Reorganización.
3
Muerte.Retirada del producto.Datos.Capacitación.Reutilización.
www.salesianorg.edu.ar/rqs
Procesos Organizacionales
�Procesos:
Adquisición del Sistema
Proceso de Desarrollo
Proceso Operativo
www.salesianorg.edu.ar/rqs
Adquisición
�¿Compramos o desarrollamos?
desarrollamos- Elegir Proveedor.-Negociar Contrato-Establecer contrato de desarrollo.
Compramos- Adaptar Requerimientos-Elegir Sistema-Emitir Peticiones de oferta-Elegir Proveedor
?

3
www.salesianorg.edu.ar/rqs
Ingeniería de Requerimientos
�Trata de establecer lo que el sistema debe hacer, sus propiedades emergentes y sus restricciones en su funcionamiento y el proceso de desarrollo.
www.salesianorg.edu.ar/rqs
Ingeniería de Requerimientos
COMUNICACIÓN
Proceso de comunicaciónTécnico e intelectual
Influyen:-Preferencias-Prejuicios-Aversiones- Cuestiones políticas y organizacionales
Clientes y usuarios Desarrolladores
Principal Problema:Ingeniería de requerimientos
www.salesianorg.edu.ar/rqs
Ingeniería de Requerimientos
Es un PROCESOEs un PROCESO
DescubrirDescubrir AnalizarAnalizar DocumentarDocumentar VerificarVerificar

4
www.salesianorg.edu.ar/rqs
Requerimientos
� Para un sistema: es la descripción de los servicios proporcionados y sus restricciones operativas.
� Para el cliente: refleja una necesidad de un sistema que les ayude a resolver algún problema.
www.salesianorg.edu.ar/rqs
Niveles de descripción
�Desde una simple declaración hasta una declaración detallada.
� Dos niveles de abstracción
www.salesianorg.edu.ar/rqs
Niveles de descripción
Declaraciones enLenguaje Natural y
Diagramas
Estabecen con detalle las funciones y
restricciones operativas.Contrato.
Requerimientos de usuario
Requerimientos de sistema
ClientesUsuarios
Analistas de sistemas
DesarrolladoresUsuarios
Analistas de sistemas
Arquitectos de sistemas
Ambas descripciones son necesarias

5
www.salesianorg.edu.ar/rqs
Ejemplo:
�Ejemplo:� RU: El sistema controlará los datos
ingresados por los telefonistas.
� RS: El sistema deberá controlar:• El nro de cliente ingresado corresponde a
un cliente de la empresa y que todos los datos solicitados en el formulario del cliente sean ingresados correctamente.
www.salesianorg.edu.ar/rqs
Clasificación de los requerimientos
�Los clasificamos en:� Funcionales
� No Funcionales
� De dominio
www.salesianorg.edu.ar/rqs
Requerimientos Funcionales
�Son declaraciones de los servicios que proveerá el sistema, de la manera en que este reaccionará a entradas particulares y de cómo se comportará en situaciones particulares.� El usuario deberá tener la posibilidad de
buscar un producto en la base de datos o seleccionar un subconjunto de productos.

6
www.salesianorg.edu.ar/rqs
Requerimientos Funcionales
�Son dependientes del software a desarrollar.
�Son más específicos que los requerimientos de usuario.
�Deben ser:� Completos.
� Consistentes.
www.salesianorg.edu.ar/rqs
Requerimientos No Funcionales
�Son restricciones de los servicios o funciones ofrecidas por el sistema.� El sistema utilizará el protocolo IP para
comunicarse entre las sucursales.
� El sistema utilizará el lenguaje de consulta SQL de Oracle.
� El sistema responderá las consultas de usuarios en no más de 5 segundos.
www.salesianorg.edu.ar/rqs
Requerimientos No Funcionales
� Requerimientos del producto:
Estos especifican el comportamiento del producto.(Eficiencia, portabilidad, usabilidad).
� Requerimientos Organizacionales:
Derivan de las políticas y procedimientos existentes en la organización del cliente y en la del desarrollador. (estándares de calidad, lenguaje de programación, documentación).
� Requerimientos externos:
Cubre los requerimientos que se derivan de los factores externos al sistema y de su proceso de desarrollo. (legales, éticos).

7
www.salesianorg.edu.ar/rqs
Requerimientos No Funcionales
�Son difíciles de verificar.�Se deben expresar de maneracuantitativa, utilizando métricas quese puedan probar de maneraobjetiva.
�No existen métricas para todos losrequerimientos No-Funcionales.� Ej: Mantenimiento.
www.salesianorg.edu.ar/rqs
Requerimientos de dominio
�Requerimientos que provienendel dominio de aplicación delsistema y reflejan lascaracterísticas de ese dominio.� Facturación con discriminación de
I.V.A. según sea la condición tributaria del cliente y de los productos.
www.salesianorg.edu.ar/rqs
Requerimientos
�La clasificación no es una tarea simple.

8
www.salesianorg.edu.ar/rqs
Ejemplos:
� Con esta nueva plataforma estimamos llegar a 50.000 nuevos socios registrados.
� Los clientes de la empresa exigen que se cumplan las normas I500.
� El cliente requiere una ayuda en linea.� Para la especificación de los requerimientos deberá utilizarse el estandar IEEE 830.
� El sistema debe emitir el comprobante “Mercadería Entregada” cuando se despacha la mercadería.
� A cada cliente se le asignará un único número de cliente.
www.salesianorg.edu.ar/rqs
Ejemplos:
�El acceso será controlado con un nombre de usuario y una contraseña. El nombre de usuario será único para cada empleado y la contraseña es de 8 caracteres, el administrador activará la cuenta, luego que el usuario se registre. El administrador también le asignará los permisos de accesos establecidos por la gerencia.
www.salesianorg.edu.ar/rqs
Problemas de los requerimientos
�No son siempre obvios.�Tienen muchas fuentes.�No siempre es facil de expresarlos con palabras.
�Distintos niveles de detalle.�La cantidad de req. puede ser inmanegable.
�Están relacionados.�Hay muchos interesados.�Sensibles al tiempo.

9
Requerimientos de usuario
�Desciben los requerimientos funcionales y no funcionales de tal forma que sean comprensibles por los usuarios del sistema que no posean un conocimiento técnico detallado.
�Expresan el comportamiento externo�Utilización de un lenguaje natural.
www.salesianorg.edu.ar/rqs
Requerimientos de usuario
�Inconvenientes de expresar en lenguaje natural:� Falta de claridad.
� Confusión de requerimientos: No se
distinguen claramente los tipos de requerimientos.
� Conjunción de requerimientos: Requerimientos diferentes se pueden expresar en forma conjunta en un único
requerimiento.
www.salesianorg.edu.ar/rqs
Requerimientos de usuario
�Recomendaciones� Inventar un formato estandar y asegurar que
todos los requerimientos se ajusten al formato.
� Utilizar el lenguaje en forma consistente: distinguir entre los requerimientos que son deseados (futuro condicional) y los
obligatorios (futuro simple).
� Evitar lenguaje técnico.
� Resaltar textos. (negrita, cursiva, color).
www.salesianorg.edu.ar/rqs

10
Requerimientos del sistema
�Versiones extendidas de los RU. Agregan detalle y explican como el sistema debe proporcionar los requerimientos de usuario.
�Los Ing de Soft. Los utilizan como punto de partida para el diseño.
�Solo deben describir el comportamiento externo del sistema y sus restricciones operativas.
�No hará Diseño ni Implementación.
www.salesianorg.edu.ar/rqs
Requerimientos del sistema
�Se pueden expresar en lenguaje natural:� La comprensión del requerimiento dependerá
que los lectores y redactores manejen el mismo lenguaje.
� Es demasiado flexible. Puede decir lo mismo de manera diferente.
� Es complejo relacionar los requerimientos. Un cambio implicará la lectura y análisis de todos los requerimientos.
www.salesianorg.edu.ar/rqs
Requerimientos del sistema
�Herramientas:� Lenguaje natural estructurado
� Lenguaje de descripción de diseño (pseudocódigo).
� Notaciones graficas.
� Especificaciones matemáticas.
www.salesianorg.edu.ar/rqs

11
El documento final
www.salesianorg.edu.ar/rqs
La Especificación de Requerimientos de Software (SRS) es la declaración oficial
de qué deben implementar los desarrolladores.Estructurado.
Diferentes lectores.Estandarizado: IEEE 830-1998
RU RSERSSRS
IEEE
�Introducción:
� Propósito del documento
� Alcance del producto
� Definiciones
� Referencias
�Descripción General
� Perspectivas del producto
� Funciones del producto
� Características del usuario
� Restricciones
www.salesianorg.edu.ar/rqs
IEEE
�Requerimientos específicos
� Funcionales
� No funcionales
� De dominio
www.salesianorg.edu.ar/rqs
Es la parte más importante.No define una estructura.
Es muy general, debe adaptarse.Existen otros estándares.

12
www.salesianorg.edu.ar/rqs
UNPA UARG 2008