Está en la página 1de 28

Requerimientos de Software

Dra. Marva Anglica Mora Lumbreras 29/01/2011


Ingeniera de Software 1

Requerimientos de Software

Para el xito en el desarrollo de software es esencial una comprensin total de los requisitos de software.
Los requisitos de software expresan las necesidades y restricciones que debe satisfacer un producto para contribuir a la solucin de un problema real.

2/14/2011

Ingeniera de Software

Requerimientos de Software

No importa lo bien diseado o codificado que este un programa si no se ha analizado correctamente defraudara al usuario y frustrara al desarrollador.

2/14/2011

Ingeniera de Software

Requerimientos de Software

Estudios realizados muestran que ms del 53% de los proyectos de software fracasan por no realizar un estudio previo de requisitos. Otros factores como falta de participacin del usuario, requerimientos incompletos y el cambio a los requerimientos, tambin ocupan sitios altos en los motivos de fracasos.

2/14/2011

Ingeniera de Software

Agenda
1. 2. 3. 4. 5. 6. 7. Requerimientos de software Caractersticas de un buen requisito Requerimientos Funcionales y No funcionales Tipos de requerimientos de software (FURPS+) Especificacin de requerimientos Casos de Uso Diagramas de casos de uso en UML

2/14/2011

Requerimientos de software

Requisito de software

Definicin de Requisito de Software: es una condicin o capacidad que debe ser conocida o poseda por un sistema para satisfacer un contrato, estndar, especificacin u otro documento impuesto formalmente.* Objetivo: Declarar o enunciar Que se desea, Que se debe lograr o llevar acabo en forma clara, concisa y verificable. Enfoque: En el QUE no en el COMO!

*IEEE Standard 729

2/14/2011

Adquisicin de Requisitos

Caractersticas de un buen requisito


Necesario No ambiguo Completo Verificable Consistente Mantenible /Modificable

2/14/2011

Adquisicin de Requisitos

Ejemplo de cmo documentar un requisito.


R001-0001 El sistema UAT deber desplegar listas de alumnos. Description: El sistema UAT deber desplegar la lista de alumnos por curso cuando el profesor pulse el botn Listas de alumnos en el men cursos. Inputs: Clave del Grupo

2/14/2011

Adquisicin de Requisitos

Ejemplo de cmo documentar un requisito.


Processing: 1.- Pulsar boton Listas de alumnos en el men cursos. 2.- Capturar la clave del grupo 3.- Desplegar la lista de alumnos.
Outputs: Lista de alumnos, mensaje No existe el Grupo, Listas no capturadas.

2/14/2011

Adquisicin de Requisitos

Tipos de requisitos

Funcionales No-Funcionales.

10

2/14/2011

Adquisicin de Requisitos

Tipos de requisitos

Los requerimientos funcionales definen las funciones que el sistema ser capaz de realizar. Describen las transformaciones que el sistema realiza sobre las entradas para producir salidas. Los requerimientos no funcionales tienen que ver con caractersticas que de una u otra forma puedan limitar el sistema, como por ejemplo, el rendimiento, seguridad, portabilidad, estndares, etc.

11

2/14/2011

Adquisicin de Requisitos

Que es la administracin de requerimientos?

Proceso mediante el cual se establece un entendimiento comn entre el cliente y el equipo de desarrollo acerca de los requerimientos.

12

06 Jun 2005

Administracin de Requisitos

La administracin de requerimientos incluye:


Recopilacin (adquisicin) Documentacin (especificacin de requisitos) Validacin Seguimiento Mantenimiento Mantener los planes y productos consistentes con los requerimientos.

13

06 Jun 2005

Administracin de Requisitos

Especialista en requisitos
Debe tener conocimiento y experiencia en
Cuantificar Negociar Clasificar Priorizar Modelar Documentar y Validar requisitos de software.

14

2/14/2011

Adquisicin de Requisitos

FURPS+

Los requisitos pueden ser funcionales o no funcionales Sin embargo esta agrupacin no es suficientemente til, por lo que utilizaremos los requisitos de soporte FURPS+

15

06 Jun 2005

Administracin de Requisitos

Modelo FURPS+ = Functionality, Usability, Reliability, Performance, Supportability. + = Restricciones de diseo, restricciones de implementacin, restricciones de interfase, restricciones fsicas.
FURPS+ (Funcionalidad, Usabilidad, Confiabilidad,
Desempeo, Mantenibilidad).

FURPS+
16 06 Jun 2005 Administracin de Requisitos

Ejemplos de requerimientos

Requisitos de usabilidad: La facilidad de uso o usabilidad incluye aquellos atributos que facilitan la interaccin de un usuario con el sistema. Ejemplos El sistema deber tener ayuda
en lnea, mapas de sitio, etc.

Requisitos de confiabilidad: Esta categora agrupa los requisitos que tienen que ver con la solidez del sistema durante su ejecucin. Ejemplo Frecuencia de fallas, porcentaje de

tiempo que el sistema debe estar funcionando, capacidad de recuperacin de fallas.

Requisitos de rendimiento: Requisitos que se refieren a la velocidad del sistema y su eficiencia en el uso de los recursos. Tpicamente se definen en trminos de tiempo de respuesta y
carga de usuarios concurrente que puede ser soportada.

17

06 Jun 2005

Administracin de Requisitos

Ejemplos de requerimientos

Requisitos de soporte: Se incluyen los requisitos de instalacin y configuracin as como requisitos para el mantenimiento y operacin del sistema. Restricciones de diseo y construccin: Necesidades impuestas por el cliente. Limitan las posibilidades para disear un sistema. Por ejemplo, puede ser necesario tener que utilizar una base de datos relacional de cierta empresa. Restricciones fsicas: Se refiere a restricciones de principalmente de hardware. , por ejemplo que sea de cierta capacidad de almacenamiento, memoria, tamao, peso, etc.

18

06 Jun 2005

Administracin de Requisitos

Problema tpicos
Mas requerimientos de los necesarios solicitados Cambios constantes en los requerimientos El cliente no tiene claro lo que necesita Falta de comunicacin entre los clientes y desarrolladores No tomar en cuenta los usuarios o falta de participacin de ellos.

19

06 Jun 2005

Administracin de Requisitos

Requerimientos preliminares

Son los requerimientos previos y se obtienen antes de realizarse el proyecto


Para obtener los requerimientos preliminares se necesita: Reunirse con el cliente para determinarlos Analizarlos y documentarlos

20

06 Jun 2005

Administracin de Requisitos

Requerimientos preliminares

El propsito es establecer un entendimiento bsico para determinar costo y duracin del proyecto. Se debe obtener una lista preliminar de requerimientos, que es la base de la cual parte el proyecto. Esta lista sirve para elaborar una propuesta formal al cliente.

21

06 Jun 2005

Administracin de Requisitos

Entrevistas

Preparacin de las entrevistas Lugar Fecha Participantes Agenda La entrevista Utilizar cuestionarios Anotar todo! Se puede utilizar los casos de uso Minutas Preparar minutas que resuman la entrevista y documenten los acuerdos realizados en la entrevista.

22

06 Jun 2005

Administracin de Requisitos

El resultado de esta primera etapa es una matriz de requerimientos Matriz donde se plasman y controlan los requerimientos y su estado a lo largo del proyecto Se pueden incluir los siguientes datos para cada requerimientos
Numero Fecha (Adquisicin, Vencimiento) Tipo (Funcional o NoFuncional) Descripcin Responsable

Matriz de requerimientos
06 Jun 2005 Administracin de Requisitos 23

Ejemplo de una matriz de requerimientos


Requirements Tracking Matrix (REQTM)
Project Name: Project ID:
Req ID
RE-001 RE-002

Description

Responsible

Receive Date

Planned Start Date

Planned Actual Start Actual End End Date Date Date

24

06 Jun 2005

Administracin de Requisitos

La importancia de documentar

Cuando los requerimientos se documentan es mas fcil: Entenderlos Discutirlos Revisarlos Corregirlos Comunicarlos Acordarlos Controlarlos Validarlos con los clientes.
Administracin de Requisitos

25

06 Jun 2005

Riesgos por no documentar


No se entiende el problema No se estima adecuadamente el proyecto Se gasta mas tiempo en comunicar los requerimientos Fricciones con el cliente pues los cambios son consecuencia de la falta de su documentacin Se puede traducir en retrasos por entender mal los requerimientos

26

06 Jun 2005

Administracin de Requisitos

Especificacin de requerimientos

Documento donde se establecen los acuerdos relacionados con el objetivo y requerimientos del proyecto a desarrollar. La especificacin de requerimientos (ERS) o Software Requirements Specification (SRS), incluye:
1. Pagina de Presentacin 2. Hoja de Revisiones 3. Hoja de Aprobacin 4. Contenido 5. Introduccin SRS

27

06 Jun 2005

Administracin de Requisitos

Especificacin de requerimientos
Continua (ERS)
6. Overview Project 1. Objetivo del proyecto 7. Resumen de los requisitos (clasificados) 8. Descripcin de cada requisito o el modelado y especificacin de los Casos de Uso. 9. Matriz de seguimiento de requisitos* 10.Apndices

28

06 Jun 2005

Administracin de Requisitos