Requerimientos
Fundamentos de Ingeniería de Software
Generalidades
• Los requerimientos son el primer acercamiento a la idea
compartida que construyen continuamente todos los roles
involucrados en el proceso de software, sobre lo que debe SER el
producto a construir.
• Los requerimientos tienen que ver con:
–
–
–
–
Elicitación
Análisis
Especificación
Validación
• Los requerimientos son laparte fundamental de un proceso de
software, por lo tanto, se debe invertir esfuerzo considerable para
trabajar con ellos.
• Los Requerimientos DIRIGEN EL PROCESO DE DESARROLLO.
Fundamentos de Ingeniería de Software
Propósito de la disciplina de
requerimientos software
•
Establecer y mantener acuerdos con los clientes y otros involucrados
(stakeholders), sobre lo que el software debería hacer.•
Proporcionar a los desarrolladores un mayor entendimiento de las
necesidades, deseos y restricciones de los usuarios.
•
Definir las fronteras del software, es decir, delimitar el alcance.
•
Proporcionar una base para la planificación técnica del proceso
•
Proporcionar una base para la estimación de costos y tiempos para
desarrollar el software.
•
Definir esquemas de interfase de usuariopara el software, enfocándose en
las necesidades y metas de los usuarios.
Fundamentos de Ingeniería de Software
Fundamentos
Aspectos conceptuales clave para el proceso de
requerimientos software
Fundamentos de Ingeniería de Software
Concepto: Requerimiento Software
• Un requerimiento software expresa una propiedad que debe
ser exhibida por un software para resolver un problema del
mundo real.• Los requerimientos software resultan en una compleja
combinación entre necesidades y deseos de diferentes tipos
de personas (a diferentes niveles de organización) y
situaciones (restricciones) particulares del entorno en el
que operará el software
Fundamentos de Ingeniería de Software
Los Involucrados - Stakeholders
• Son todas aquellas personas que tienen un interés directo en el
desarrollodel software, entre otros se pueden identificar a:
–
–
–
–
–
–
–
–
–
Clientes
Usuarios
Analistas de requerimientos
Desarrolladores
Testers
Escritores de documentación.
Gerentes de proyecto.
Asesores legales.
Ventas, mercadeo, soporte técnico, mesa de ayuda y
demás personas que tendrán que trabajar con el
producto y sus clientes.
Fundamentos de Ingeniería de Software
Tipos de Requerimientos
•Requerimientos Funcionales (RF)
– Representan las funciones que el software está en capacidad
de ejecutar.
– Describen una característica del software, que soporta la
realización de operaciones del negocio por parte de un actor.
– Por ejemplo: el Software debe almacenar los datos (nombre,
código, dirección y teléfono) de los clientes o usuarios.
– Responden a la pregunta ¿Qué debe hacer el software?• Requerimientos No Funcionales (RNF)
– Describen características del software que soportan cómo son
llevadas a cabo las operaciones en este
– Por ejemplo: la aplicación Web debe soportar 10 usuarios
concurrentes
Fundamentos de Ingeniería de Software
Modelo FURPS+
• Según el modelo FURPS+ los requerimientos pueden clasificarse
en:
– F Funcionalidad (RF): especifica acciones que el softwaredebe estar
en capacidad de ejecutar, sin tener en cuenta cualquier tipo de
restricción física.
– U Usabilidad (RNF): tiene en cuenta aspectos asociados a la facilidad
de uso del software, tales como: factores humanos, estética,
consistencia de la interfase de usuario, ayuda online y sensitiva del
contexto, asistentes y agentes, documentación para el usuario y
materiales de entrenamientoFundamentos de Ingeniería de Software
Modelo FURPS+ continuación
–R Fiabilidad (realiability)(RNF): especifica el
comportamiento del software ante fallos, debe incluir
entre otros: frecuencia y severidad de los daños,
recuperabilidad ante fallos, predictibilidad de los fallos.
–P Rendimiento (Performance) (RNF): impone
condiciones para la ejecución de los RF, por ejemplo
para una acción dada, se...
Regístrate para leer el documento completo.