You are on page 1of 27

Requerimientos de

Software

Ingeniera de Requerimientos

Se define como el proceso de establecer los servicios


que el consumidor requiere de un sistema y las
restricciones sobre las cuales debe funcionar y ser
desarrollado. Sommerville.
Es una de las etapas ms crticas del proceso de
software, determina que se va realizar.
Mas del 30% de los proyectos de software que fracasan
lo realizan por causa de los requerimientos.

Tipos de Especificacin

Requerimientos de Usuarios: Estn definidos en


lenguaje natural que esbozan los servicios y
restricciones del sistema. Escrito para consumidores.
Requerimientos del Sistema: Estn definidos de una
manera estructurada, y adems de los servicios y
restricciones del sistema, da nociones concisas de cmo
debera ser implementado.

Lectores de Requerimientos

Requerimientos de Usuarios
Administradores Clientes.
Usuarios Finales del Sistema.
Administradores Contratistas
Requerimientos de Sistema
Arquitectos del sistema.
Desarrolladores del Software.
Usuarios Finales del sistema

Tipos de Requerimientos

Requerimientos Funcionales: Definicin de los


servicios que un sistema debe proveer, sus
comportamientos a las diferentes entradas y situaciones.
Requerimientos No Funcionales: Restricciones
aplicadas sobre las funcionalidades del sistema como:
restricciones de tiempo, sobre el proceso de desarrollo,
recursos, dominio del negocio.

Requerimientos Funcionales

Describe las funcionalidades y servicios del sistema.


Ejemplos
El sistema deber almacenar la informacin personal de
los pacientes.
El sistema deber poder desplegar la historia clnica en
cualquiera de los nodos de acceso.

El sistema deber registrar cualquier


modificacin sobre una historia clnica

acceso

Requerimientos Ambiguos

Muchos problemas relacionados con requerimientos


estn asociados a la diferentes interpretacin que se le
pueden dar a los mismos.
La ambigedad puede ser usada para sacar partido de
las diversas situaciones
Un desarrollador pude tomar la interpretacin ms
simple (Por presin de tiempo).

Un cliente puede tomar la interpretacin ms


compleja (Para obtener ms por su inversin).

Caractersticas Deseadas
Para evitar problemas, se espera que una especificacin
de requerimientos de tener las siguientes
caractersticas: (IEEE- 830)

Correcto: Lo que se especifica es lo que se quiere


Completo: Todas las necesidades deben estar
reflejadas.
Consistente: No debe existir contradiccin entre
requerimientos.
Comprobable: Se debe poder determinar si se cumple
o no.

Requerimientos no
Funcionales
Definen las propiedades y restricciones del sistema a
construir o sobre el proceso que lo construir

Los requerimientos no funcionales, suelen ser mas


crticos que los funcionales, dado que su incumplimiento
puede hacer intil el sistema.
Estos estn clasificados segn el tipo de restriccin que
se quiera implementar.

Clasificacin
Requerimientos no Funcionales
Requerimientos del Producto: Requerimientos que
especifican que el producto deba comportarse de
una determinada manera.

Requerimientos Organizacionales : Requerimientos


que surgen de polticas y procedimientos del
organizacin (Creadora o Usuaria).
Requerimientos Externos : Requerimientos surgidos
por factores externos al proyecto de desarrollo como
tal.

Clasificacin

Factores

Claves de la Comunicacin
Requerimientos no Funcionales

Tamao del Grupo: Entre ms grande sea el grupo,


se dificultara ms la comunicacin. (Recomendado 4
a 7 Personas).
Estructura del Grupo: Los grupos informales facilitan la
comunicacin.
Composicin del grupo: Las comunicacin es mejor en
un grupo diverso.
Espacio Fsico: Una correcta organizacin del espacio
pude beneficiar la comunicacin.

Ejemplos
Requerimientos del producto:
La interfaz debe ser implementada en HTML puro (Sin
applets, Javascript, o frames).
Requerimientos Organizacionales:
El proceso de desarrollo debe estar conforme con el
SGC de la corporacin.
Requerimientos Externos:
La informacin mdica de un paciente, no debe estar
al alcance del pblico general.

Medicin de
Requerimientos
Algunos requerimientos son difciles de verificar,
principalmente los no funcionales.
Se debe determinar en lo posible crear mtricas que
permitan verificar el requerimiento
Ejemplo
La interfaz debe ser de fcil uso (Poco Verificable) La
interfaz debe estar diseada para que pueda ser usada
despus de dos horas de capacitacin, despus de lo
cual la media de errores no exceder de dos por da

Medidas de Requerimientos
Rapidez: Transacciones procesadas por minuto, Tiempo
de respuesta al usuario y a eventos, tiempo de
actualizacin de la pantalla
Tamao: Cantidad de Memoria o Disco duro requerido.
Facilidad de Uso: Tiempo de Formacin requerido,
Cantidad de mensajes y documentacin de ayuda,
efectividad de los usuarios.

Medidas de Requerimientos
Fiabilidad: Tiempo medio entre fallos. Porcentaje de
disponibilidad.
Robustez: Tiempo de reinicio despus de fallo, nmero
de eventos que producen fallos, Probabilidad de
corrupcin de datos despus de fallos

Interaccin entre querimientos


En sistema complejo es comn encontrar conflictos
entre requerimientos no funcionales
Ejemplo:
El sistema debe maximizar la cantidad de usuario que
pueden acceder al sistema.
El sistema minimizar los recursos requeridos para su
funcionamiento.
No se puede cumplir a cabalidad
requerimientos, Cul es mas critico?

con

los

Requerimientos de usuario
Los requerimientos se especifican en un lenguaje
entendible por los usuarios del sistema que no tienen
conocimientos tcnicos
Generalmente se expresan usando lenguaje natural,
tablas y diagramas que todos puedan entender.
Son suficientes para que los usuarios entiendan o sepan
que esperar del sistema en desarrollo.

Problemas de los
Requerimientos de usuario
Para hacer un documento fcil de leer, se eliminan
detalles que deterioran el detalle y la precisin de los
requerimientos.
No hay una completa divisin entre requerimientos
funcionales y no funcionales.
Muchos requerimientos tienen de ser expresados juntos.

Tips para Requerimientos de usuario


Construir un formato estndar para expresar todos los
requerimientos.

Use el lenguaje de una manera consistente, que


permitan diferenciar claramente entre requerimientos
obligatorios y requerimientos deseables.
Resaltar aspectos importante del requerimientos (Con
negrilla, subrayado, etc).
Evitar en lo posible la jerga informtica.

Requerimientos del Sistema


Los requerimientos del sistema proveen una definicin
mucho mas completa y detallada, de tal manera que
sirva como un esbozo inicial de la aplicacin.

No se limita a especificar qu debe hacer el sistema,


sino que adems debe especificar cmo lo debe hacer.

Datos Bsicos de un
Requerimiento de Sistema

Funcin
Descripcin
Entradas

Fuente de la Entradas
Salidas
Destino de las Salidas
Datos Bsicos de un
Requerimiento de Sistema
. Accin
Requisito
Precondicin, Post condicin
Efectos Colaterales

Contenido

del

documento

segn la Norma
IEEE 830-1998

Lecturas recomendadas

Ingeniera de Software, Ian Sommerville. 7th Edicin.


( Capitulo 6).
Norma IEEE-830/1998

You might also like