Identificación de requisitos de software

 

Principios de Especificación

No funcionales

Incluyen restricciones de tiempo, el tipo de proceso de desarrollo a utilizar, fiabilidad, tiempo de respuesta, capacidad de almacenamiento.

Una especificación debe abarcar el entorno en el que el sistema opera.

Especificación de los requisitos del software

Los requerimientos funcionales describen una interacción entre el sistema y su ambiente, describen cómo debe comportarse el sistema ante determinado estímulo.

En algunos casos, también pueden declarar explícitamente lo que el sistema no debe hacer.

Análisis de requerimientos

*Cruce de referencias automatizado

*Modelos automatizados para poner en ejecución funciones

*Prototipos

Funcionales

Requerimientos del Producto

Se derivan de factores externos al sistema y de sus procesos de desarrollo.

Especifican el comportamiento del producto.

Requerimientos Organizacionales

Derivan de políticas y procedimientos existentes en la organización del cliente y del desarrollador.

Es un documento que define, de forma completa, precisa y verificable, los requisitos, el diseño y el comportamiento u otras características de un sistema.

Los requerimientos funcionales de un sistema describen lo que el sistema debe hacer.

Identificar el cliente

*Lectura

*Cruce de referencias manual

*Entrevistas

*Revisiones

*Listas de comprobación

*Modelos manuales para chequeo de funciones y relaciones

*Escenarios

*Pruebas matemáticas

Debe ser modificable.

¿Qué es el anális de requerimientos?

Es una característica del sistema o una descripción de algo que el sistema es capaz de hacer con el objeto de satisfacer el propósito del sistema.

“La carencia de buenos requisitos ha sido la causa del fracaso de proyectos con presupuestos de millones de dólares, ha impedido el desarrollo productivo, y ha sido el mayor contribuyente de los costos elevados del mantenimiento del software”

(Dr. Raymond Yeh in the forward to System and Software Requirements Engineering, IEEE Computer Society Press Tutorial, Editors, M. Dorfman, and R.H Thayer, 1990)

Revisión de la especificación

Análisis de requerimientos

Requerimientos del cliente:

Se documenta los deseos y necesidades del cliente y se expresa en lenguaje claro para él.

Revisión con el cliente

Identificación de requerimientos para el software

Inspeccionar los requerimientos del cliente

Construir los requerimientos del desarrollador

Se determina si la especificación es consistente con la definición de los requerimientos.

Requerimientos

  • Expresarse de modo adecuado
  • Ser de acceso sencillo
  • Numerarse
  • Acompañarse con pruebas que lo verifiquen
  • Tomarse en cuenta en el diseño
  • Tomarse en cuenta en el código
  • Probarse aislado
  • Probarse junto con otros requerimientos
  • Validarse con las pruebas después de construir la aplicación

La definición de requerimientos es un listado completo de todas las cosas que el cliente espera que haga el sistema propuesto.

Elementos de la ERS (IEEE Std 830)

Si el requerimiento es sencillo e independiente

Si el requerimiento incluye elementos de proceso, cada uno con entradas y salidas

El análisis de requerimietos permite especificar las características operacionales del software, indicar la interfaz del software con otros elementos del sistema y establecer las restricciones que debe cumplir el software.

Proceso de análisis

Escribir los requerimientos del cliente en forma de documento estándar

(Con la aprobación del cliente)

Requerimientos del desarrollador:

Se documentan los requerimientos de manera específica y estructurada.

No funcionales

Técnicas de validación de requerimientos:

Maneras de expresar los requerimientos de los clientes

Tres categorías de requerimientos:

Técnicas manuales

Es parte de los estándares que es necesario cubrir cuando se pretende cumplir con las normas de calidad, esta estructura se respeta en la mayoría de las especificaciones de requerimientos en cualquier parte del mundo cuando se elaboran sistemas de software a nivel industrial.

Técnicas automatizadas

¿Qué sucede en la revisión de requerimientos?

Estructura:

1. Introducción

1.1 Propósito

1.2 Alcance

1.3 Definiciones, acrónimos y abreviaciones

1.4 Referencias

1.5 Descripción

2. Descripción general

2.1 Perspectiva del producto

2.2 Funciones del producto

2.3 Características del usuario

2.4 Limitaciones

2.5 Supuestos y dependencias

3. Requerimientos específicos

Apéndice

Índice

  • Se revisan las metas declaradas y los objetivos del sistema.
  • Se comparan los requerimientos con las metas y objetivos para verificar que todos los requerimientos son necesarios.
  • Se describe el ambiente en el cual debe operar el sistema.
  • Se evalúa y documenta todo riesgo implicado en el desarrollo o en el funcionamiento real del sistema.
  • Se habla sobre las pruebas del sistema.

IEEE 830 propone 8 plantillas para los requerimientos específicos

Si los requerimientos incluye estados en los que puede estar la aplicación

  • Se expresa con oraciones claras dentro de la sección adecuada de la especificación de requerimientos de software.

1.- Plantilla de ERS organizada por el modo (versión 1).

2.- Plantilla de SRS organizada por el modo (versión 2).

3.- Plantilla de SRS organizada por la clase del usuario.

4.- Plantilla de SRS organizada por el objeto.

5.- Plantilla de SRS organizada por el rasgo o característica.

6.- Plantilla de SRS organizada por el estímulo.

7.- Plantilla de SRS organizada por la jerarquía funcional.

8.- Plantilla de SRS con organización múltiple.

Si el requerimiento es una interacción entre el usuario y la aplicación

Flujo de datos

Caso de uso:

  • Requerimientos que deben ser absolutamente satisfechos

Separar funcionalidad de implementación.

Entrevistar representantes del cliente

  • Requerimientos que son muy deseables pero no indispensables
  • Requerimientos que son posibles, pero que podrían eliminarse

Requerimientos no funcionales

Requerimientos funcionales

Requerimientos Externos

Los requerimientos no funcionales ponen límites y restricciones al sistema.

¿Qué es un requerimiento?

El análisis de requerimientos proporciona una vía para que los clientes y lo desarrolladores lleguen a un acuerdo sobre lo que debe hacer el sistema. La especificación, producto de este análisis proporciona las pautas a seguir a los diseñadores del sistema.

Características de los requerimientos

Comentarios

Entradas populares de este blog

Metodologías para análisis de riesgos

Metodología OCTAVE