Está en la página 1de 24

Obtencion de Requerimientos

 Extraer lo que el cliente


requiere de un Sistema de
Software.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 1


Tareas en la Obtencion de Requerimientos

 Introducción a la Noción de Ingeniería de


Requerimientos.
 Explicación de los diferentes niveles de detalle de
requerimientos que se necesiten.
 Describir como deben ser organizados los
documentos de un Sistema de Requerimientos.
 Describir la validación del Proceso de
Requerimientos.
 Explicar porque los Requerimientos se involucran
durante el tiempo de vida de un sistema.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 2
Tareas en la Obtencion de Requerimientos
 Comprender el problema que se va a resolver, para lo cual es
necesario estudiar el dominio o entorno en el que el sistema va a
operar.
 Buscar y recolectar información acerca del sistema a desarrollar, de
manuales de operación y mantenimiento, de manuales
organizacionales y políticas de operación.
 Definir los límites y restricciones del sistema para determinar con
precisión que es lo que el sistema va a hacer y también especificar lo
que no va a hacer.
 Identificar a las personas o usuarios interesados en el sistema, ya
que ellos conocen el medio ambiente en que operará el sistema y
pueden ayudar describiendo sus necesidades.
 Recolectar y clasificar requerimientos, los desarrolladores pueden
iniciar definiendo un bosquejo general del sistema, su funcionamiento
básico y estableciendo su alcance.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 3
Proceso de Obtencion de Requerimientos

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 4


Comprension del Problema

 Que se quiere hacer.


 Que problema se quiere resolver.
 Para que se quiere hacer el sistema.
 Problemas:
• El cliente no siempre define claramente el problema.
• El analista de requerimientos y los desarrolladores no
comprenden la naturaleza del problema.
• El analista y los desarrolladores entienden el problema pero no
saben como llevarlo a cabo.
• El problema es muy amplio, vago, poco factible, o muy volátil.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 5
Comprensión del dominio de la aplicación.
 Ambiente operacional. Permite definir el ambiente sobre el cual el sistema estará
operando y todos sus componentes.
 Sistemas de hardware. Estos sistemas comprenden, los sistemas de cómputo, las
redes utilizadas y sus protocolos, así como cualquier otros sistemas eléctricos y
mecánicos.
 Sistemas de Software. Estos sistemas comprenden los sistemas operativos, bases de
datos, lenguajes, sistemas de manejo de archivos, software de aplicación, sistemas de
seguridad, entre otros.
 Interfaces Hombre-Maquina. Estos sistemas son aquellos con los que los usuarios
tendrán contacto directo para llevar a cabo sus labores.
 Conexiones externas. Estos sistemas son aquellos que provienen del exterior del
sistema y que reciben datos del sistema o a quienes el sistema envía datos.
 Procedimientos operacionales. Estos procedimientos definen las funciones que
realiza el sistema actual.
 Capacidad del Sistema Actual. Este aspecto permite identificar cual es la
capacidad de procesamiento y de almacenamiento requeridos por el sistema.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 6
Comprensión de las necesidades de los clientes y
usuarios.
Las siguientes actividades ayudan a comprender las
necesidades del cliente y los usuarios:

 Identificar las tareas o funciones que describen las


necesidades del cliente (identificar los casos de uso).
 Identificar los eventos del sistema y sus respuestas.
 Observar a los usuarios en sus labores.
 Observar reportes de problemas de los usuarios del
sistema actual.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 7


Requerimientos del negocio
 Antecedentes. En los antecedentes se resumen las razones y el contexto del
nuevo producto. Proveen una descripción general de la historia o la situación
que llevó a la decisión de construir el producto o sistema.
 Oportunidades de negocio. Para un producto comercial, describen la
oportunidad de mercado que existe y el mercado en el cual el producto
estará compitiendo.
 Visión del producto. Es una descripción general de lo que se persigue con
la construcción del software y de los beneficios que se esperan.
 Alcances del proyecto a través de los requerimientos del negocio. Los
alcances del proyecto permiten al cliente y a los desarrolladores, identificar
las implicaciones del desarrollo como son, el tiempo de construcción, los
costos y las personas involucradas en desarrollo (por parte del cliente y por
parte de los desarrolladores).

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 8


Requerimientos del negocio
 Comprensión del negocio. No es posible llevar a cabo ningún proyecto si no se
conoce el negocio que la organización del cliente lleva a cabo. En la comprensión
del negocio es necesario conocer:
• La estructura organizacional.
• Los procesos del negocio.
• Los sistemas existentes, y
• El personal clave relacionado con el proyecto.
 Riesgos del negocio. En este aspecto, los riesgos definen los problemas que se
contemplan dentro del desarrollo del proyecto; una vez que el comienzo de éste ha
sido ha sido aprobado.
• la habilidad de poder controlar y administrar efectivamente el desarrollo del
proyecto,
• la competencia del mercado,
• el nivel de aceptación del usuario,
• los posibles problemas con la implementación y operación del sistema, y
• los posibles impactos
Mejia-Alvarez, 2009
negativos en la organización.
Introduccion a los Requerimientos Diapositiva 9
Búsqueda y Recolección de Información
 Información sobre el sistema actual. Esta información provee detalles sobre el
sistema que se quiere remplazar y que actualmente está en funcionamiento. Si se
trata de un producto a desarrollar de uso genérico, ésta información deberá ser
aquella que describe los productos similares actualmente en el mercado, contra
quienes el producto tendrá que competir.
 Necesidades de los clientes y usuarios. La información recolectada anteriormente,
derivada de las entrevistas con los clientes, usuarios y con los interesados en el
sistema, debe documentarse.
 Estándares organizacionales. Esta información comprende todos aquellos
manuales de procedimientos que la organización sigue en sus procesos.
 Regulaciones Nacionales e Internacionales. Esta información es aquella que
provea estándares o normas para reglamentar al sistema o a los productos de
software a construir. Usualmente todo país cuenta con un organismo de gobierno que
regula las actividades de las organizaciones y que provee reglas de competencia y de
calidad.
 Información sobre el dominio de la aplicación. Esta información comprende toda
aquella información que permita descubrir el dominio.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 10
Definición de Límites y Restricciones

Diagrama de Contexto de un Sistema de Inscripciones.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 11


Definición de los interesados en el sistema
Los interesados deben clasificarse de acuerdo a su actividad y a su perfil.
 Clientes: Estos normalmente son quienes contratan, financian o autorizan el
desarrollo del proyecto.
 Usuarios: Estos son aquellos que terminarán operando el software requerido,
después de que el sistema esté completamente desarrollado.
 Ingenieros de Desarrollo de Software: Son todos aquellos involucrados en el
desarrollo del software, en cualquiera de sus etapas (diseño, implementación,
pruebas o mantenimiento).
 Ingenieros del cliente. Son todos aquellos especialistas que asesoran o trabajan
dentro de la organización del cliente y que ayudan a especificar los detalles técnicos
de la aplicación a desarrollar.
 Administradores o jefes del proyecto de software: Son aquellos que dirigen y/o
administran el proyecto de software.
 Contratistas externos. Son aquellos desarrolladores externos a quienes se les
contrata para realizar una parte del sistema.
 Reguladores externos: es todo aquel personal que indirectamente verifica que todo
reglamento
Mejia-Alvarez, o ley que aplique
2009 al desarrollo
Introduccion del proyecto se cumpla. Diapositiva 12
a los Requerimientos
Definición de los interesados en el sistema
El perfil de los interesados en el sistema debe incluir la siguiente información:
 El valor o beneficio que recibirá el interesado del producto o del sistema y la forma
en que el producto satisfacerá al interesado. Los beneficios que podría obtener el
interesado podrían ser:
• Mejoras en su productividad.
• Reducción de trabajo redundante.
• Ahorro de costos.
• Mejoras en el proceso del negocio.
• Automatización de tareas que previamente se realizaban de forma manual.
• Aprendizaje de nuevas tareas.
• Cumplimiento de estándares o normas.
• Mejoras en la calidad con respecto a otros productos o sistemas.
 Su disposición o actitud hacia el sistema.
 La forma en como el sistema afectará a su trabajo en la organización.
 Su rol o función en la organización.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 13
Definición de los interesados en el sistema
Además de clasificar a los interesados en el sistema, es necesario proveer detalles acerca
de los tipos de usuarios que utilizaran directamente el sistema. A los usuarios de sistema
de software se les puede clasificar de acuerdo a los siguientes aspectos:

 La frecuencia con la que usan el sistema.


 Las funciones que usan del sistema y su frecuencia.
 La experiencia en el dominio de la aplicación y su experiencia con otros sistemas
similares.
 El tipo de uso que le dan al sistema (operación, administración, mantenimiento,
supervisión).
 Las tareas que desempeñan en soporte de los procesos de la organización.
 Sus privilegios de acceso o niveles de seguridad (tales como usuario invitado,
administrador o usuario de nivel interno).
 Tipo de usuarios necesario para operar el sistema (persona, grupo de personas, robot,
o otra computadora).
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 14
Roles y Actividades

Rol Actividades
Analista de Requerimientos, Experto Este personal estará a cargo de entender
del dominio, usuario el problema y su definición.

Analista de requerimientos, usuario Están a cargo de especificar a detalle


los requerimientos.

Ingeniero de desarrollo de software, Están a cargo de seleccionar posibles


administrador del proyecto prototipos del sistema.

Ingeniero de requerimientos, Ingeniero Estarán a cargo de desarrollar el sistema


de desarrollo de software o prototipo.

Usuario, experto del dominio, analista Estarán a cargo de evaluar el sistema


de requerimiento e Ingeniero de final o prototipo.
Desarrollo
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 15
Recolección de Requerimientos
De forma general los requerimientos provienen de las siguientes fuentes:

Los interesados en el sistema. Todos los interesados en el sistema, principalmente el


cliente y los usuario son quienes mas información deben proporcionar sobre los
requerimientos.

El dominio de la aplicación. El dominio de la aplicación es una fuente de información


que permite ubicar el contexto del desarrollo. Permite obtener información acerca de las
características de funcionamiento del sistema de forma general, y permite establecer sus
restricciones.

La organización. No puede validarse la información de los requerimientos a no ser que


esta esté de acuerdo a los estándares utilizados en la organización. De hecho la
organización también provee algunos de los requerimientos funcionales y principalmente
los no-funcionales, por ejemplo, los requerimientos de calidad, confiabilidad y seguridad
del sistema.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 16


Fuentes de Obtencion de Requerimientos
Fuentes potenciales y las formas de obtención de
requerimientos.

• Entrevistas y discusiones con clientes y usuarios.


• Documentos que describen sistemas actuales o productos de la
competencia.
• Reportes de problemas técnicos del sistema actual.
• Estudio de la organización ó cuestionarios de usuarios.
• Observación de los usuarios futuros y de su medio ambiente.
• Análisis de los escenarios de las tareas del usuario.
• Análisis de Eventos y Respuestas.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 17


Clasificacion de Requerimientos

Requerimientos

del negocio
Ideas y Casos de uso

solucioness y escenarios

Definiciones Reglas del

de datos negocio

Restricciones Requerimientos

funcionales
Requerimientos Atributos de
y no-funcionales
de interfaces Calidad

externas

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 18


Clasificación de Requerimientos
• Requerimientos de negocio: Todo lo que describa beneficios de
mercado, financieros o del negocio para los clientes o su
organización, y que sean obtenidos del producto de software.
• Casos de uso y escenarios: Los casos de uso son descripciones
generales de metas del cliente o tareas del negocio que los usuarios
deben realizar. Un patrón único del caso de uso se conoce como
escenario.
• Reglas del negocio: Las reglas de negocio definen hechos,
restricciones, acciones que habilitan funciones, formulas de
cómputo o inferencias derivadas de actividades de la organización.
• Requerimientos funcionales: Los requerimientos funcionales
describen el funcionamiento que el sistema observará bajo ciertas
condiciones y las acciones que permitirá el sistema llevar a cabo a
los usuarios.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 19


Clasificación de Requerimientos
• Atributos de calidad: Los atributos de calidad son requerimientos no-funcionales,
los cuales indican la forma en que el sistema debe realizar alguna actividad.
• Requerimientos de interfaces externas: Los requerimientos de esta clase definen
conexiones entre el sistema y el mundo externo. Estas interfaces pueden ser interfaces
de usuarios, interfaces de hardware o software o redes de conexión.
• Restricciones: Las restricciones de diseño e implementación restringen las opciones
del desarrollador.
• Definiciones de datos: Las definiciones de datos permiten identificar formato de los
datos o archivos, rango de valores permitidos, valores por defecto, o estructura la base
de datos.
• Ideas de solución: Mucho de lo que los clientes presentan como requerimientos
podría considerarse mas bien como ideas de solución. Algún cliente que describe como
debería comportase el sistema ante el operador, tal vez solo está describiendo sus ideas
sobre posibles soluciones. Las ideas de solución podrían derivar en requerimientos, si
estas son validadas y son factibles de implementar, pero en otras ocasiones estas solo
podrían ser alternativas de diseño.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 20


Ejemplos de Requerimientos

Requerimientos de • Incrementa el porcentaje del mercado en 30 %.


negocio • Ahorra 20% en costos de producción por la automatización
instalada.
• Ahorra 40% en costos de mantenimiento.
Casos de uso y • Yo necesito imprimir una etiqueta de correo para el
escenarios paquete.
• Yo necesito administrar una cola de reactivos químicos
que esperan ser analizados.
• Yo necesito calibrar las maquinas para control numérico.
Reglas del • Debe de seguir el estándar de acuerdo con alguna ley o
negocio política de la organización.
• El formato del saldo de contabilidad esta definido en los
manuales de la organización.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 21


Ejemplo de Requerimientos

Requerimientos • Si el voltaje rebasa los 20 v. enciende la alarma amarilla.


funcionales • El sistema envía un e-mail de confirmación cuando recibe
cualquier e-mail.
• El sistema debe ordenar los productos del inventario en
orden alfabético.
Requerimientos de • Las señales de voltaje se leen de los convertidores
interfaces externas analógico-digital.
• Los mensajes se envían a través de la Internet.
• El software debe controlar el tablero de diagramas
eléctricos.
• Los archivos recibidos electrónicamente deben leerse del
disco externo
• El usuario debe poder ver paginas de web amigables.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 22


Ejemplos de Requerimientos de Calidad
Propiedad Medida

Velocidad Transacciones por segundo


Tiempo de respuesta a eventos
Tamaño Numero de líneas de código
Numero de Bytes de Memoria disponible
Facilidad de uso Tiempo de entrenamiento
Numero de ayudas
Confiabilidad Errores permitidos por unidad de tiempo
Media de tiempo por fallo
Disponibilidad en tiempo
Robustes Tiempo para restablecer despues de fallo.
Porcentaje de fallos que causan caida
Portabilidad Facilidad de transportar a otro S.O o
lenguaje.
Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 23
Ejemplos de Requerimientos
Restricciones • Los archivos recibidos no deben exceder los 10 Mbytes.
• La Base de Datos debe manejar archivos en formato
relacional.
• El envío de paquetes en la red, debe de usar encriptación
de 128 Bits.
Definiciones de datos • Los números enteros capturados no deben sobre pasar el
valor de 10,000.
• El numero de asientos inicial a vender por la aerolínea
debe ser 400.
• El valor de temperatura limite es de 40 grados centígrados.

Ideas de solución Un cliente podría indicar que para proporcionar seguridad al


sistema ante ataques externos, este debe pedir un pasword, o
podría construirse un “firewall” o hacer que los datos usen
encriptación.

Mejia-Alvarez, 2009 Introduccion a los Requerimientos Diapositiva 24

También podría gustarte