Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Requerimientos de
Software
LinkendIn aquí.
Twitter: @jvinuezam1
jvinuezam@unemi.edu.ec
Orcid: aquí.
2
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
Clase anterior…
RQ
Funcionales & Diseño de
No software
Funcionales
conclusión
desarrollo
feedback
objetivo
índice
inicio
Alcance,
Documento
objetivos, Formal Prototipo
restricciones
(escrito)
3
TEMA 1: Documentación básica de
requisitos
conclusión
desarrollo
feedback
objetivo
índice
inicio
4
conclusión
desarrollo
objetivo
feeback
índice
inicio
5
Términos: “ERS”
Qué son las siglas ERS? Para que nos sirve el ERS?
conclusión
desarrollo
feedback
objetivo
índice
Este enfoque formal (ERS) es
inicio
Especificación de requerimiento de
software adecuado para sistemas
empresariales donde los
requerimientos son inestables. Sin
embargo, aún resulta útil escribir un
breve documento de apoyo que
defina los requerimientos de la
empresa y los requerimientos de
confiabilidad para el sistema…
6
conclusión
feeback
Documento de
requerimiento de software (ERS)
desarrollo
inicio
índice
7
objetivo
Especificación de requerimiento de software
desarrollo
como el Departamento de Defensa
objetivo
feeback
índice
inicio
estadounidense y el Institute of
Electrical and Electronic
Engineers (IEEE), definieron
estándares para los documentos
de requerimientos. Descarga formato aquí
Fuente: Página especificación estándar
8
Especificación de requerimiento de software
desarrollo
objetivo
feeback
índice
inicio
A veces se denomina documento de requisitos empresariales (BRD),
especificación funcional, especificación de producto, especificación de
sistema o simplemente documento de requisitos. Debido a que
"especificación de requisitos de software" es un término estándar de la
industria, así lo llamaremos aquí (ISO / IEC / IEEE 2011).
9
Especificación de requerimiento de software
Importante:
Los requisitos entregables a menudo no pueden satisfacer las
necesidades de todos los públicos.
conclusión
desarrollo
Algunas personas necesitan conocer solo los objetivos del negocio,
objetivo
feeback
índice
inicio
otras solo quieren una visión general de alto nivel, otras quieren ver
solo la perspectiva del usuario y otras necesitan todos los detalles.
No espere que todos sus representantes de usuarios lean el SRS
detallado, y no espere que los desarrolladores aprendan todo lo que
necesitan de un conjunto de casos de uso o historias de usuarios.
10
conclusión
desarrollo
objetivo
feeback
índice
inicio
Audiencias del Documento de
requerimiento de software (ERS)
11
Ejemplos: Usuarios de un documento RQ
Grupos de interés (Stakeholders)
Clientes
El departamento de marketing y
el personal de ventas necesitan Ingenieros de prueba
saber qué producto pueden
esperar recibir.
del sistema
Los probadores lo usan para
conclusión
desarrollo
objetivo
feeback
índice
inicio
Administradores procedimientos de prueba….
12
Ejemplos: Usuarios de un documento RQ
Grupos de interés (Stakeholders)
Redactores
Los redactores de
documentación basan los
manuales de usuario y las
pantallas de ayuda en el SRS y el
diseño de la interfaz de usuario.
conclusión
desarrollo
Personal de
objetivo
feeback
índice
inicio
capacitación Subcontratistas
utiliza el SRS y la documentación Los subcontratistas basan su
del usuario para desarrollar trabajo en, y pueden ser
materiales educativos… legalmente obligados a, los
requisitos especificados….
Personal Legal
se asegura de que los requisitos
cumplan con las leyes y
regulaciones aplicables…
13
Especificación de RQ
Para pensar…
conclusión
desarrollo
objetivo
Si una capacidad o calidad
feeback
índice
inicio
deseada no aparece en algún
lugar del acuerdo de requisitos,
nadie debería esperar que aparezca en el
producto.
14
Cuántas especificaciones?
desarrollo
objetivo
feeback
índice
inicio
Fuente: Software Requeriments, Third Edition, Microsoft (Karl Wiegers & Joy Beatyy, 2013)
15
Organizar y escribir el ERS
Sugerencias de legibilidad
desarrollo
Etiquetas y secciones de estilo, subsecciones y requisitos
objetivo
feeback
índice
inicio
individuales consistentemente.
16
Organizar y escribir el ERS
Sugerencias de legibilidad
desarrollo
otras ubicaciones dentro de un documento.
objetivo
feeback
índice
inicio
Si está utilizando documentos, defina hipervínculos para permitir
al lector saltar a secciones relacionadas en el SRS o en otros
archivos.
Si está almacenando requisitos en una herramienta, use enlaces
para permitir que el lector navegue a la información relacionada.
17
Etiquetado de requisitos
desarrollo
Permite reutilizar los requisitos en múltiples proyectos.
objetivo
feeback
índice
inicio
Requisitos identificados de forma única facilitan la colaboración
entre los miembros del equipo cuando discuten los requisitos,
como en una reunión de revisión por pares.
18
Secuencia de números
desarrollo
objetivo
feeback
índice
inicio
Un número no se reutiliza si se elimina un requisito, por lo que
no tiene que preocuparse de que un lector confunda el FR-26
original con un nuevo FR-26.
19
Numeración jerárquica
desarrollo
objetivo
feeback
índice
inicio
Un número no se reutiliza si se elimina un requisito, por lo que
no tiene que preocuparse de que un lector confunda el FR-26
original con un nuevo FR-26.
20
Etiquetas textuales jerárquicas
El consultor Tom Gilb (1988) sugiere un esquema de etiquetado
jerárquico basado en texto para etiquetar los requisitos
individuales.
desarrollo
objetivo
feeback
índice
inicio
requisito podría estar etiquetado como:
Print.ConfirmCopies.
21
conclusión
feeback Etiquetas textuales jerárquicas
desarrollo
inicio
índice
22
objetivo
Interfaces de usuario
La incorporación de diseños
de interfaz de usuario en el
SRS tiene ventajas y
desventajas. En el lado
conclusión
desarrollo
positivo, explorar posibles
objetivo
feeback
índice
inicio
interfaces de usuario con
prototipos en papel,
maquetas de trabajo,
estructuras alámbricas o
herramientas de simulación
hace que los requisitos sean
tangibles tanto para los
usuarios como para los
desarrolladores.
23
conclusión
desarrollo
feedback
objetivo
índice
inicio
Plantilla especificación de
requerimiento de software (ERS)
24
Plantilla ERS
conclusión
desarrollo
objetivo
feeback
índice
inicio
Fuente: Estándar del IEEE para documentos de requerimientos (IEEE, 1998)
25
Ejemplo ERS
conclusión
desarrollo
objetivo
feeback
índice
inicio
Fuente: Estándar del IEEE para documentos de requerimientos (IEEE, 1998)
26
El resultado del desarrollo de requisitos es un acuerdo documentado entre las partes
conclusión
desarrollo
feedback
interesadas sobre el producto a construir. Como viste en capítulos anteriores, el
objetivo
índice
inicio
documento de visión y alcance contiene los requisitos comerciales, y los requisitos
del usuario se pueden capturar en forma de casos de uso o historias de usuarios.
Los requisitos funcionales y no funcionales del producto a menudo se almacenan en
una especificación de requisitos de software, o SRS, que se entrega a aquellos que
deben diseñar, construir y verificar la solución. El registro de los requisitos de manera
organizada que las partes interesadas clave del proyecto pueden revisar ayuda a
garantizar que sepan lo que están aceptando.
27
Bibliografía Básica
bibliografía
conclusión
desarrollo
feedback
objetivo
índice
inicio
Bibliografía Complementaria
28
Ingeniería de
Requerimientos de
Software
LinkendIn aquí.
Twitter: @jvinuezam1
jvinuezam@unemi.edu.ec
Orcid: aquí.
2
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
Clase anterior…
RQ
Funcionales & Diseño de
No software
Funcionales
conclusión
desarrollo
feedback
objetivo
índice
inicio
Alcance,
Documento
objetivos, Formal Prototipo
restricciones
(escrito)
3
TEMA 2: Técnica de especificación de
requisitos de software
conclusión
desarrollo
feedback
objetivo
índice
inicio
4
Especificar técnicas de especificación de
requerimientos de software concebidos en
conclusión
desarrollo
objetivo
feeback
índice
inicio
5
Términos: “DFD”
Qué son las siglas DFD? Para que nos sirve el DFD?
conclusión
desarrollo
feedback
objetivo
índice
Ilustra visualmente el límite de
inicio
Diagrama de flujo de datos, es una
herramienta para establecer alcance del sistema, identifica
claramente el alcance y límite entre el entidades externas (terminadores)
sistema que se está desarrollando lo fuera del sistema que interactúan
demás en el universo. con el de alguna manera…
6
conclusión
desarrollo
objetivo
feeback
índice
inicio
Técnica de especificación de
requerimiento de software
7
Diagrama de Contexto (DFD)
Diagrama de contexto?
desarrollo
software, hardware y
objetivo
feeback
índice
inicio
componentes humanos.
Las entidades externas en los
rectángulos pueden
representar clases de
usuarios (Chemist, Buyer),
organizaciones (Health and
Safety Department), otros
sistemas (Training Database)
o dispositivos de hardware
(Bar Code Reader).
Mapa ecosistema?
Un mapa de ecosistemas
muestra todos los sistemas
relacionados con el sistema
conclusión
desarrollo
de interés que interactúan
objetivo
feeback
índice
inicio
entre sí y la naturaleza de
esas interacciones (Beatty y
Chen 2012).
Un mapa de ecosistema
representa el alcance al
mostrar todos los sistemas
que se interconectan y que,
por lo tanto, es posible que
deban modificarse para
adaptarse a su nuevo
sistema.
Figura 5-6: Mapa de ecosistema parcial del Sistema de seguimiento de
productos químicos, pág. 94.
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS
(Third Edition). Microsfot Corporation.
9
Árbol de características
Un árbol de características
es una descripción visual de
las características del
producto organizadas en
conclusión
grupos lógicos,
desarrollo
objetivo
feeback
subdividiendo
índice
inicio
jerárquicamente cada
característica en niveles
adicionales de detalle
(Beatty y Chen 2012).
El árbol de características
proporciona una vista
concisa de todas las
características planificadas
para un proyecto, lo que lo
convierte en un modelo ideal
Figura 5-8: Árbol de características parcial del Sistema de seguimiento de para mostrar a los ejecutivos
productos químicos, pág. 95. que desean echar un vistazo
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS rápido al alcance del
(Third Edition). Microsfot Corporation. proyecto.
10
Lista de eventos
un comportamiento en el
desarrollo
objetivo
feeback
índice
inicio
describe el límite del alcance
del sistema al nombrar
posibles eventos comerciales
activados por los usuarios,
eventos activados por el
tiempo (temporales) o
eventos de señal recibidos de
componentes externos,
Figura 5-9: Lista de eventos parcial del Sistema de seguimiento de como dispositivos de
productos químicos, pág. 96. hardware.
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS
(Third Edition). Microsfot Corporation.
11
Resumen
Observe cómo la lista de eventos complementa el diagrama de contexto y el mapa del ecosistema. El
diagrama de contexto y el mapa del ecosistema describen colectivamente los actores y sistemas
externos involucrados, mientras que la lista de eventos identifica lo que esos actores y sistemas
podrían hacer para desencadenar el comportamiento en el sistema que se especifica. Puede comparar
la lista de eventos con el diagrama de contexto y el mapa del ecosistema para verificar que sea correcta
y esté completa, de la siguiente manera:
conclusión
desarrollo
objetivo
feeback
índice
■■ Considere si cada entidad externa en el diagrama de contexto es la fuente de algún evento:
inicio
"¿Alguna acción de los químicos desencadena un comportamiento en el sistema de seguimiento
químico?"
■■ Considere si algún sistema en el mapa del ecosistema conduce a eventos para su sistema.
■■ Para cada evento, considere si tiene entidades externas correspondientes en el diagrama de
contexto o sistemas en el mapa del ecosistema: "Si se puede recibir un contenedor químico de un
proveedor, ¿aparece el proveedor en el diagrama de contexto y / o mapa del ecosistema?“
Si encuentra una desconexión, considere si al modelo le falta un elemento. En este caso, el proveedor no
apareció en el diagrama de contexto porque el sistema de seguimiento de productos químicos no
interactúa directamente con los proveedores. Sin embargo, Vendor está incluido en el mapa del
ecosistema.
12
conclusión
feeback
desarrollo
inicio
índice
13
objetivo
Diagrama de Flujo de Datos (DFD)
desarrollo
objetivo
feeback
índice
inicio
Es una técnica de modelización, que
nos muestra un sistema como una red
de procesos conectados entre ellos
por flujos y almacenamiento de
datos.
Nota: Los diagramas de flujo de datos fueron propuestos por Larry Constantine, el
desarrollador original del diseño estructurado, basado en el modelo de computación
de Martin y Estrin: "flujo gráfico de datos".
14
DFD: Conceptualización
desarrollo
objetivo
feeback
índice
inicio
del sistema).
Las transformaciones a las que son sometidos los
datos (procesos internos).
Los lugares en los que se almacenan los datos dentro
del sistema (repositorios de datos, base de datos); y,
Los canales (flujos) por donde circulan los datos.
15
DFD: Componentes
1. Proceso
conclusión
desarrollo
objetivo
feeback
índice
inicio
2. Flujo
3. Almacén
4. Terminador
16
DFD: Características
desarrollo
objetivo
feeback
índice
inicio
Existen procesos que transforman entradas.
17
DFD: Proceso
desarrollo
objetivo
feeback
índice
inicio
rectángulo de proceso (Ver ilustración). Los sinónimos comunes
son burbuja, función o transformación.
18
DFD: Flujo de datos
desarrollo
objetivo
feeback
índice
inicio
elegirse de forma que sea lo más útil posible a los usuarios que
revisen el DFD. Se representa gráficamente por medio de una
flecha que entra o sale de un proceso. El sentido de la flecha indica
la dirección del flujo.
19
DFD: Almacén
desarrollo
objetivo
feeback
índice
inicio
descriptivo para el usuario, que identifique los paquetes de datos
que contiene. Implica escritura, actualización o borrado de datos.
Implica lectura o recuperación de información almacenada.
20
DFD: Terminador
desarrollo
objetivo
feeback
índice
inicio
terminador. El analista no puede cambiar ni los contenidos ni la
forma de trabajo de un terminador. El terminador se representa
gráficamente como un rectángulo.
21
Niveles DFD
desarrollo
objetivo
feeback
índice
inicio
Nivel 2: Diagrama de detalle o expansión.
22
Niveles de DFD: Características
desarrollo
objetivo
feeback
índice
inicio
este nivel los procesos no pueden interrelacionarse directamente, sino
que entre ellos siempre debe existir algún almacenamiento o entidad
externa que los una.
23
Niveles de DFD: Pasos para su construcción
desarrollo
objetivo
feeback
índice
inicio
Las líneas deben ser verticales u horizontales, nunca diagonales.
No cruzar las líneas de flujo empleando los conectores adecuados sin hacer
uso excesivo de ellos.
No fraccionar el diagrama con el uso excesivo de conectores.
Las líneas de flujo deben de entrar a un símbolo pro la parte superior y/o
izquierda y salir de él por la parte inferior y/o derecha.
Evitar que el diagrama sobrepase una página; de no ser posible, enumerar y
emplear los conectores correspondientes.
Comentar al margen únicamente cuando sea necesario.
24
conclusión
feeback
desarrollo
inicio
índice
25
objetivo
Esquema DFD: Diagrama de contexto
Proceso
Flujo
conclusión
desarrollo
objetivo
feeback
índice
inicio
Entidad
26
Esquema DFD: Diagrama de contexto
Se configura el diagrama de
contexto centrándose en los flujos
de datos de entrada y salida de las
entidades externas al proceso 0. Se
ha realizado una abstracción de
todos los informes que necesita la
dirección del videoclub (D.V) en el
conclusión
desarrollo
objetivo
feeback
índice
inicio
simplificar el diagrama. La D.V
determina los pedidos de películas a
realizar a los proveedores mediante
el flujo de Datos de Pedido y
finalmente lo genera al proveedor
mediante el flujo Pedido. Este flujo
existe, ya que el sistema se encarga
de generar dicho pedido. Si lo
comunica la D.V al proveedor
directamente, este flujo no habría
que incluirlo. De forma similar
ocurriría con el flujo Pago.
27
Esquema DFD: Nivel 0
Almacén
Sub-proceso (Físico-digital)
conclusión
desarrollo
objetivo
feeback
Flujo entrada
índice
inicio
Flujo salida
28
Esquema DFD: Nivel 0
desarrollo
objetivo
feeback
índice
inicio
ambos procesos es el almacén
Películas que tiene todos los datos
de las películas del videoclub, así
como sus ejemplares. También se
puede considerar la gestión de
bonos que se ocupa de generar el
almacén BONOS a partir de la
información proporcionada por la
dirección del videoclub.
29
Esquema DFD: Nivel 1
Almacén
Sub-proceso (Físico-digital)
conclusión
desarrollo
objetivo
feeback
índice
inicio
Flujo salida
Flujo entrada
30
Esquema DFD: Nivel 1
desarrollo
objetivo
feeback
índice
inicio
procurando no solapar
funcionalidades entre los
diferentes procesos (vemos que el
resultado lo constituyen procesos
independientes, pero todos
relacionados con los clientes).
31
Esquema DFD: Nivel 1.1
Almacén
Sub-proceso (Físico-digital)
conclusión
desarrollo
objetivo
feeback
índice
inicio
Flujo entrada
Flujo salida
32
Esquema DFD: Nivel 1.1
desarrollo
crédito, en cuyo caso acepta el alquiler y lo
objetivo
feeback
índice
inicio
almacena en ALQUILERES. A continuación
genera el comprobante, y para ello, debe
consultar la información de las películas
del almacén PELÍCULAS. Para generar la
información de los demás procesos, se puede
comprobar que sólo es necesaria la consulta del
almacén ALQUILERES, que es donde tenemos
almacenados los alquileres efectuados.
33
Ejercicio
Instrucciones:
Modelizar el sistema de información “Empresa de ventas de productos de limpieza"
utilizando la técnica de los diagramas de flujo de dato s (DFD). Obtener diagrama de
contexto, diagrama de nivel 1 y diagrama de nivel 2.
Caso:
conclusión
desarrollo
objetivo
feeback
índice
inicio
A partir del informe que envía el departamento de estudio de mercado de la empresa, se
contacta telefónicamente con los posibles clientes y se concierta con ellos una cita en la
empresa para ofertarles algún producto. Al contactar telefónicamente con ellos se les
toman sus datos personales para posteriormente realizar mailings de ofertas. También se
guardan los datos referentes a la cita. Para todas las citas concertadas se debe de realizar
un control de acceso de las visitas que básicamente consiste en: solicitar la identificación de
cualquier persona que acceda al recinto. No se permitirá entrar a ninguna persona que no
tenga cita previa. A las personas que tengan cita concertada se les entregará una tarjeta de
entrada, la cual deberán entregar a la salida firmada por el empleado al que han visitado.
Semanalmente los empleados de la empresa generan un informe detallado a partir de los
resultados obtenidos en las visitas realizadas que se envía al departamento de marketing
(para ello, primero se clasifican los resultados de las visitas por perfiles de empresa).
34
Ejercicio
Instrucciones:
Modelizar el sistema de información “Sistema de Servicios al Cliente en un Restaurante“
utilizando la técnica de los diagramas de flujo de dato s (DFD). Obtener diagrama de
contexto, diagrama de nivel contextual de nivel 0.
Caso:
conclusión
desarrollo
objetivo
feeback
índice
inicio
virtual (inventario), un cliente solicita su orden de comida o pedido específico, se genera la
orden para cocina para el inicio de la preparación del platillo, actualiza la orden de
inventario, almacena los datos de la transacción; se procesa la información y se emite
factura al cliente. El sistema deberá generar reportes de los pedidos del inventario
disponible y de los datos de las transacciones generadas, información que será de utilidad
para el administrador del negocio. El administrador a través del sistema por podrá gestionar
una orden de inventario mediante repositorio del inventario de pedidos para obtener el
stock del inventario y requerir orden de comprar al proveedor.
35
conclusión
feeback Solución
desarrollo
inicio
índice
36
objetivo
conclusión
desarrollo
feedback
objetivo
El modelo de diagrama DFD pueden ser usados para representar el alcance del
índice
inicio
proyecto en varias vías, usted no necesita crear todos los modelos, considerar cuales
brindan la información más útil para cada proyecto. Herramienta tales como:
diagrama de contexto (DFD), mapa de ecosistema, árbol de características y lista de
eventos son para fomentar una comunicación clara y precisa entre los interesados en
el proyecto.
37
Bibliografía Básica
bibliografía
conclusión
desarrollo
feedback
PEARSON EDUCACION, (2 Ejemplares disponibles en Biblioteca)
objetivo
índice
4. KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS (Third Edition).
inicio
Microsfot Corporation
Bibliografía Complementaria
38
Ingeniería de
Requerimientos de
Software
LinkendIn aquí.
Twitter: @jvinuezam1
jvinuezam@unemi.edu.ec
Orcid: aquí.
2
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
desarrollo
feedback
objetivo
2. Mapa Ecosistema
Técnica de
índice
inicio
3. Árbol de características
Un árbol de características es una descripción visual
de las características del producto organizadas en
grupos lógicos, subdividiendo jerárquicamente cada
característica en niveles adicionales de detalle
(Beatty y Chen 2012).
4. Lista de Eventos
Una lista de eventos identifica eventos externos que
podrían desencadenar un comportamiento en el
sistema.
3
Diagrama de Contexto (DFD)
Diagrama de contexto?
desarrollo
software, hardware y
objetivo
feeback
índice
inicio
componentes humanos.
Las entidades externas en los
rectángulos pueden
representar clases de
usuarios (Chemist, Buyer),
organizaciones (Health and
Safety Department), otros
sistemas (Training Database)
o dispositivos de hardware
(Bar Code Reader).
Mapa ecosistema?
Un mapa de ecosistemas
muestra todos los sistemas
relacionados con el sistema
conclusión
desarrollo
de interés que interactúan
objetivo
feeback
índice
inicio
entre sí y la naturaleza de
esas interacciones (Beatty y
Chen 2012).
Un mapa de ecosistema
representa el alcance al
mostrar todos los sistemas
que se interconectan y que,
por lo tanto, es posible que
deban modificarse para
adaptarse a su nuevo
sistema.
Figura 5-6: Mapa de ecosistema parcial del Sistema de seguimiento de
productos químicos, pág. 94.
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS
(Third Edition). Microsfot Corporation.
5
Árbol de características
Un árbol de características
es una descripción visual de
las características del
producto organizadas en
conclusión
grupos lógicos,
desarrollo
objetivo
feeback
subdividiendo
índice
inicio
jerárquicamente cada
característica en niveles
adicionales de detalle
(Beatty y Chen 2012).
El árbol de características
proporciona una vista
concisa de todas las
características planificadas
para un proyecto, lo que lo
convierte en un modelo ideal
Figura 5-8: Árbol de características parcial del Sistema de seguimiento de para mostrar a los ejecutivos
productos químicos, pág. 95. que desean echar un vistazo
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS rápido al alcance del
(Third Edition). Microsfot Corporation. proyecto.
6
Lista de eventos
un comportamiento en el
desarrollo
objetivo
feeback
índice
inicio
describe el límite del alcance
del sistema al nombrar
posibles eventos comerciales
activados por los usuarios,
eventos activados por el
tiempo (temporales) o
eventos de señal recibidos de
componentes externos,
Figura 5-9: Lista de eventos parcial del Sistema de seguimiento de como dispositivos de
productos químicos, pág. 96. hardware.
Fuente: KARL WIEGERS & JOY BEATYY (2013). SOFTWARE REQUERIMENTS
(Third Edition). Microsfot Corporation.
7
TEMA 3: Análisis y Negociación
conclusión
desarrollo
feedback
objetivo
índice
inicio
8
Analizar los requerimientos de software
conclusión
desarrollo
objetivo
concebidos en las etapas de obtención de
feeback
índice
inicio
9
Términos: “Priorización de requerimientos,
Soporte Decisiones, Compensaciones”
conclusión
desarrollo
feedback
objetivo
índice
Qué es priorización? Quiénes toman las prioridades?
inicio
La priorización es un paso crucial para La priorización de las decisiones son
lograr buenas decisiones con respecto tomadas por los interesados,
a la planificación de productos para incluidos los usuarios,
lanzamientos únicos y múltiples… administradores, desarrolladores o sus
representantes…
objetivo
lo hacemos. No tener más de un par de opciones
índice
inicio
para considerar, como qué marca de mostaza
comprar, o si tomar este bus o el siguiente.
11
Priorizar entre varias alternativas…
objetivo
debe tenerse en cuenta. Por ejemplo, al comprar
índice
inicio
un automóvil nuevo, es relativamente
fácil hacer una elección basada solo en la
velocidad (solo se necesita evaluar
qué coche es el más rápido). Al considerar
múltiples aspectos, como: precio, seguridad,
comodidad, o carga de equipaje, la elección se
vuelve mucho más difícil…
12
Priorizar entre varias alternativas…
objetivo
importante cuando otros aspectos
índice
inicio
(p. Ej. precio) se tienen en cuenta. Necesitamos
desarrollar la funcionalidad que más desea
los clientes, así como los menos riesgosos, menos
costosos, etc.
La priorización ayuda a hacer frente a estos
complejos problemas de decisión…
13
conclusión
feedback
Reuniones de Negociación
desarrollo
inicio
índice
14
objetivo
Priorización & Negociación
desarrollo
objetivo
feeback
índice
inicio
La negociación no es un concurso o un
juego. Funciona mejor cuando las dos
partes ganan. Hay muchas circunstancias en
las que usted y otros participantes deben
negociar: funciones y características,
prioridades y fechas de entrega. La
negociación demandará el compromiso de
todas las partes.
15
Priorización & Negociación
En lugar de una sola actividad de comunicación con el cliente, se
definen las actividades siguientes:
01
conclusión
desarrollo
Identificación de los participantes clave del
objetivo
feeback
sistema o subsistema
índice
inicio
02
Determinación de las “condiciones para
ganar” de los participantes
03
Negociación de las condiciones para ganar de
los participantes. Ganar-ganar para todos.
Boehm, B., “Using the WINWIN Spiral Model: A Case Study”, Computer, vol. 31, núm. 7, julio 1998 pp. 33-44.
16
Arte de la negociación
desarrollo
objetivo
feeback
índice
inicio
Decidir qué es lo que le gustaría lograr; qué quiere
obtener la otra parte y cómo hacer para que ocurran las
dos cosas.
Escuchar activamente
No trabaje en la formulación de su respuesta mientras la
otra parte esté hablando. Escúchela.
Centrarse en los
intereses de la otra parte
Si quiere evitar conflictos, no adopte posiciones
inamovibles.
17
Arte de la negociación
desarrollo
objetivo
feeback
Sea creativo
índice
inicio
Si están empantanados, no tenga miedo de pensar
fuera de los moldes.
18
conclusión
feedback
El proceso de priorizar
desarrollo
inicio
índice
19
objetivo
Proceso de priorización
El proceso de priorizar los requisitos proporciona apoyo para lo siguiente actividades:
Para qué?
• Para que las partes interesadas decidan sobre los requisitos
básicos del sistema.
conclusión
desarrollo
• Para planificar y seleccionar un conjunto óptimo ordenado de
objetivo
feeback
índice
requisitos de software para la implementación en
inicio
lanzamientos sucesivos.
• Para compensar el alcance del proyecto deseado con
restricciones a veces conflictivas como: cronograma,
presupuesto, recursos, tiempo de comercialización y calidad.
• Para equilibrar el beneficio comercial de cada requisito con su
costo.
• Para equilibrar las implicaciones de los requisitos en la
arquitectura del software y la futura evolución del producto y
su coste asociado.
20
Proceso de priorización
El proceso de priorizar los requisitos proporciona apoyo para lo siguiente actividades:
Para qué?
• Para seleccionar solo un subconjunto de los requisitos y aún
así producir un sistema que satisfacer al (los) cliente(s).
conclusión
desarrollo
objetivo
feeback
índice
inicio
• Para obtener una ventaja técnica y optimizar la oportunidad de
mercado.
• Para minimizar la repetición de trabajos y el deslizamiento del
programa (estabilidad del plan).
• Para manejar requisitos contradictorios, enfocar el proceso de
negociación y resolver desacuerdos entre las partes
interesadas.
• Para establecer la importancia relativa de cada requisito para
proporcionar la mayor valor al menor costo.
21
Priorizar, proceso estratégico…
desarrollo
objetivo
feeback
índice
inicio
impulsora durante la planificación del proyecto.
Ruhe et. al. resume esto como: "El desafío es seleccionar los requisitos
"correctos" de un superconjunto dado de requisitos candidatos de
modo que todos los diferentes intereses clave, limitaciones técnicas y
preferencias de las partes interesadas críticas se cumplen y el valor
comercial general del producto se maximiza”
22
Rectificar decisiones…
desarrollo
objetivo
feeback
índice
inicio
Frederick P. Brooks lo expresa con las siguientes palabras: “El La parte
más difícil de la construcción de un sistema de software es decidir con
precisión qué construir. […] Ninguna otra parte del trabajo paraliza
tanto el sistema resultante si se hace incorrecto. Ninguna otra parte es
más difícil de rectificar más adelante ”
23
Resumen
desarrollo
objetivo
feeback
índice
inicio
Además de los beneficios obvios presentados anteriormente, la
priorización de requisitos puede tiene otros beneficios. Por ejemplo,
es posible encontrar defectos en los requisitos (p. Ej. requisitos mal
juzgados, incorrectos y ambiguos), debido que los requisitos se
analizan desde una perspectiva diferente a la tomada durante las
revisiones de los requisitos.
24
conclusión
feedback
Aspectos de priorización
desarrollo
inicio
índice
25
objetivo
Aspectos de priorización
desarrollo
objetivo
feeback
índice
inicio
Importancia Penalización Costo Tiempo Riesgo
26
Aspectos de priorización
desarrollo
extremadamente concepto multifacético,
objetivo
feeback
índice
inicio
debido que depende en gran medida de qué
perspectiva la parte interesada tiene. La
importancia podría ser, por ejemplo: la urgencia
de la implementación, importancia de un
requisito para la arquitectura del producto,
Importancia importancia estratégica para la empresa, etc. En
consecuencia, es fundamental especificar qué
tipo de importancia las partes interesadas
deben priorizar en cada caso.
27
Aspectos de priorización
desarrollo
Por ejemplo, no cumplir con un estándar podría
objetivo
feeback
índice
inicio
incurrir en una alta penalización incluso si es de
poca importancia para el cliente
(es decir, el cliente no se emociona si se cumple
el requisito).
Penalización Lo mismo ocurre con los requisitos implícitos
que los usuarios dan por sentado y cuya
ausencia podría hacer que el producto no sea
adecuado para el mercado.
28
Aspectos de priorización
desarrollo
reutilizar el código existente, la cantidad de
objetivo
feeback
índice
inicio
pruebas y documentación necesarias, etc.
El costo a menudo se expresa en términos de
horas de personal (esfuerzo) debido que el
costo principal en software, el desarrollo suele
Costo estar relacionado principalmente con el número
de horas dedicadas. Costo (como
así como el tiempo, podría priorizarse utilizando
simplemente estimando el costo real en un
valor absoluto o escala normalizada.
29
Aspectos de priorización
desarrollo
objetivo
relacionado al número de horas del personal.
feeback
índice
inicio
Sin embargo, el tiempo (es decir, el tiempo de
entrega) está influenciado por muchos
otros factores como: el grado de paralelismo en
Tiempo el desarrollo, las necesidades de formación, la
necesidad de desarrollar infraestructura de
apoyo, estándares industriales completos.
30
Aspectos de priorización
Cada proyecto conlleva cierto riesgo. En gestión de
proyectos, gestión de riesgos se utiliza para hacer
frente tanto a riesgos internos (técnicos y de
mercado) como externos riesgos (regulaciones,
proveedores). Se deben considerar tanto la
conclusión
desarrollo
probabilidad como el impacto al determinar el
objetivo
feeback
índice
inicio
nivel de riesgo de un artículo o actividad.
Gestión de riesgos también se puede utilizar al
planificar los requisitos en productos y versiones
identificando riesgos que probablemente causen
dificultades durante el desarrollo. Tal los riesgos
Riesgo podrían incluir, por ejemplo: riesgos de
rendimiento, riesgos de proceso, riesgos de
programación. Basado en la probabilidad de riesgo
estimada y el impacto del riesgo para cada
requisito, es posible calcular el nivel de riesgo de un
proyecto.
31
Otros aspectos de priorización
La volatilidad de los requisitos se considera un
factor de riesgo y a veces se maneja como
parte del aspecto del riesgo. Las razones de la
volatilidad de los requisitos varían, por ejemplo: el
mercado cambia, los requisitos comerciales
conclusión
desarrollo
cambian, los cambios legislativos ocurren, los
objetivo
feeback
índice
inicio
usuarios cambian o los requisitos se vuelven más
claros durante el ciclo de vida del software.
Independientemente del motivo, los requisitos
volátiles afectan la estabilidad y planificación de un
proyecto, y presumiblemente aumentar los costos
Volatilidad debido que los cambios durante el desarrollo
aumentar el costo de un proyecto.
Ejemplos de otros aspectos son: beneficio
financiero, beneficio estratégico, competidores,
competencia / recursos, tema de lanzamiento,
capacidad de venta, etc.
32
conclusión
feedback
desarrollo
inicio
índice
33
objetivo
Escalas de medición…
desarrollo
priorizar.
objetivo
feeback
índice
inicio
La priorización puede ser hecho con varias escalas y tipos de medición:
34
Proceso de Jerarquía Analítica (AHP)
desarrollo
implica cuatro pasos. (Ver más detalle.)
objetivo
feeback
índice
inicio
Asumiremos aquí que desea evaluar los requisitos de los
candidatos utilizando el criterio de valor.
35
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
relativo. Inserte los requisitos n en el filas y columnas de una
objetivo
feeback
índice
inicio
matriz de orden n (en este caso tenemos una matriz de 4 x 4).
36
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
ejemplo) inserte su determinada intensidad relativa de valor
objetivo
feeback
índice
inicio
en la posición (Req1, Req2) donde la fila de Req1 cumple la
columna de Req2. En la posición (Req2, Req1) inserte el valor
recíproco, y en todas las posiciones de la diagonal principal
inserte un "1". Continúe realizando comparaciones por pares
de Req1 – Req3, Req1 – Req4, Req2 – Req3, y así
sucesivamente. Para una matriz de orden n, n*(n-1)/2
se requieren comparaciones. Por tanto, en este ejemplo, seis
pares se requieren comparaciones; podrían verse así:
37
conclusión
feeback Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
inicio
índice
38
objetivo
conclusión
feeback Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
inicio
índice
39
objetivo
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
normalizadas.1 Primero, calcule la suma de las n columnas en
objetivo
feeback
índice
inicio
la matriz de comparación. A continuación, divida cada
elemento de la matriz por la suma de los columna de la que es
miembro el elemento, y calcular las sumas de cada fila:
40
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
objetivo
feeback
índice
inicio
Matriz de
prioridades
41
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
objetivo
feeback
índice
inicio
Req1 contiene el 26 por ciento del valor total de los requisitos,
Req2 contiene el 50 por ciento,
Req3 contiene un 9 por ciento y
Req4 contiene 16 por ciento.
42
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
comparación. Cuanto más cerca esté el valor de n (el número
objetivo
feeback
índice
inicio
de requisitos), menores serán los errores de juicio y, por tanto,
más coherente será el resultado. Para estimar, primero
multiplica la matriz de comparación por el vector de prioridad:
43
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
objetivo
feeback
índice
inicio
44
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
objetivo
feeback
índice
inicio
Ahora se puede calcular el índice de consistencia:
desarrollo
consistencia (CR), que define la precisión de las
objetivo
feeback
índice
inicio
comparaciones por pares. El RI para matrices de orden n se da
a continuación. La primera fila muestra el orden de la matriz,
y el segundo el valor RI correspondiente.
46
Proceso de Jerarquía Analítica (AHP) Pasos
desarrollo
objetivo
feeback
índice
inicio
Como regla general, una relación de consistencia de 0.10
o menos se considera aceptable. Esto significa que
nuestro resultado aquí es mayor que ideal. En la práctica,
sin embargo, se producen con frecuencia relaciones de
consistencia superiores a 0,10.
47
Cumulative Voting, the 100-Dollar Test
desarrollo
objetivo
feeback
índice
inicio
requerimiento. Regnell et. al. enfrentó este problema cuando había 17
grupos de requisitos para priorizar. En el estudio, utilizaron un
cantidad ficticia de $ 100,000 para tener más libertad en las priorizaciones.
Los sujetos del estudio fueron positivos sobre la técnica, lo que indica la
posibilidad utilizar cantidades distintas de 100 unidades (por ejemplo,
1.000, 10.000 o 1.000.000). Otro posible problema con la prueba de 100
dólares (especialmente cuando hay muchos requisitos) es que la persona
que realiza la priorización calcula mal y los puntos no suman 100. Esto se
puede prevenir usando una herramienta que mantiene recuento de
cuántos puntos se han utilizado.
48
Asignación numérica (agrupación)
desarrollo
objetivo
feeback
índice
inicio
(por ejemplo, crítico, estándar, opcional), para una clasificación confiable.
49
Asignación numérica (agrupación)
desarrollo
objetivo
feeback
requisitos en cada grupo. (por ejemplo, no menos del 25% de los requisitos
índice
inicio
en cada grupo). Sin embargo,
Un problema con este enfoque es que la utilidad de las prioridades
disminuye porque las partes interesadas se ven obligadas a dividir los
requisitos en ciertos grupos. Sin embargo, no hay evidencia empírica de
buenos o malos resultados con tales restricciones. existe. El resultado de la
asignación numérica son requisitos priorizados en un ordinal escala. Sin
embargo, los requisitos en cada grupo tienen la misma prioridad, que
significa que cada requisito no tiene una prioridad única.
50
Ranking
desarrollo
objetivo
feeback
índice
inicio
numérica) pero no es posible ver la diferencia relativa entre los elementos
clasificados (como en AHP o la prueba de los 100 dólares). La lista de
requisitos clasificados se puede obtener en un variedad de formas, como
por ejemplo mediante el uso de la clasificación de burbujas o los
algoritmos de árbol de búsqueda binaria.
51
Diez requisitos principales (Top-Ten)
En el enfoque de los diez requisitos principales, las partes interesadas
eligen sus diez requisitos principales (de un conjunto mayor) sin asignar
una orden interno entre los requisitos. Esto hace que el enfoque sea
especialmente adecuado para múltiples partes interesadas de
igual importancia. La razón para no priorizar más es que podría crear
conclusión
desarrollo
conflicto innecesario cuando algunas partes interesadas obtienen apoyo
objetivo
feeback
índice
inicio
para su máxima prioridad y otros solo por su tercera prioridad. Se podría
suponer que podrían surgir conflictos de todos modos si, por ejemplo, un
cliente obtiene tres requisitos de los diez primeros en el producto
mientras que otro obtiene seis requisitos de los diez primeros en el
producto. De todos modos, eso Es importante no solo tomar un promedio
de todas las partes interesadas, ya que podría conducir a algunas partes
interesadas que no obtienen ninguno de sus principales requisitos. En
cambio, es crucial que se cumplan algunos requisitos esenciales para cada
parte interesada. Esta obviamente, podría resultar en una situación que no
satisfaga a todos los clientes en lugar de satisfacer unos pocos clientes por
completo. El principal desafío de esta técnica es equilibrar estos asuntos.
52
¿Qué técnica de priorización elegir?
desarrollo
objetivo
feeback
índice
inicio
Prueba de 100 Ratio Bien Compleja
dólares
Ranking Ordinal Media Fácil
Asignación Ordinal Gruesa Muy Fácil
numérica
Top-Ten - Extremadamen Extremadamen
te gruesa te Fácil.
53
¿Qué técnica de priorización elegir?
desarrollo
objetivo
feeback
índice
inicio
más tiempo, la técnica más simple posible asegura decisiones
rentables. La compensación es decidir exactamente cómo
“Rápido y sucio” el enfoque puede ser sin dejar que la calidad
de las decisiones sufrir.
Cabe destacar también que existen varias herramientas
comerciales que facilitan el uso de técnicas más sofisticadas
(por ejemplo, AHP) y que es posible construir herramientas
sencillas hechas en casa (por ejemplo, en hojas de cálculo)
para facilitar el uso de diferentes técnicas de priorización.
54
conclusión
desarrollo
feedback
objetivo
índice
inicio
Partes involucradas en el proceso de
priorización
55
Diferencias entre desarrollo
impulsado por el mercado y desarrollado a medida
desarrollo
objetivo
mundo entero servir como clientes potenciales en el
feeback
índice
inicio
desarrollo impulsado por el mercado. Esquemas de la tabla
algunas de las diferencias entre el desarrollo impulsado por el
mercado y el desarrollo a medida que afecta priorización de
requisitos.
56
Diferencias entre desarrollo
impulsado por el mercado y desarrollado a medida
Faceta Desarrollo a medida Desarrollo impulsado
por el mercado
Grupo de interés Organización del cliente Organización en
principal desarrollo
conclusión
desarrollo
objetivo
feeback
índice
inicio
identificables que no existan hasta
que el producto este en
el mercado
Distancia a los usuarios Generalmente pequeña Generalmente grande
Concepción de Obtenido, analizado, Inventado (por atracción
requisitos validado del mercado o empuje
tecnológico)
Ciclo de vida Una versión, luego Varios lanzamientos
mantenimiento siempre que exista
demanda del mercado
57
Diferencias entre desarrollo
impulsado por el mercado y desarrollado a medida
Faceta Desarrollo a medida Desarrollo impulsado
por el mercado
Problemas específicos Obtención, modelado y Flujo constante de
ERS validación, resolución de requisitos, priorización,
conclusión
desarrollo
conflictos estimación de costos,
objetivo
feeback
índice
inicio
planificación de
lanzamiento.
Objetivo principal Cumplimiento de las Tiempo de
especificaciones comercialización
Medidas de éxito Satisfacción, aceptación Ventas, cuotas de
mercado
58
conclusión
feedback
Ejemplo de priorización
desarrollo
inicio
índice
59
objetivo
Aspectos a priorizar
Para ilustrar los diferentes aspectos, técnicas de priorización,
compensaciones entre partes interesadas, y combinaciones de técnicas
y aspectos de priorización, un ejemplo de una situación de priorización.
El método utilizado en este ejemplo está influenciado por un modelo
propuesto por Wiegers pero está diseñado para ajustarse a este
conclusión
desarrollo
ejemplo. Los ejemplo analiza 15 requisitos (R1-R15) en una situación con
objetivo
feeback
índice
inicio
tres clientes conocidos (ver 4.5.2). El análisis es bastante sofisticado para
mostrar diferentes problemas en priorización pero aún simple con una
pequeña cantidad de requisitos. Mientras que muchos más requisitos
son comunes en la industria, es más fácil ilustrar cómo las técnicas
trabajar en un ejemplo más pequeño. Cada uno de los 15 requisitos se
prioriza según a los diferentes aspectos. Ver Tabla a continuación
presenta los aspectos que se utilizan en el ejemplo junto con el método
que se utiliza para priorizar el aspecto y desde qué perspectiva se
prioriza.
60
Aspectos a priorizar
desarrollo
objetivo
feeback
índice
inicio
producto
Costo 100-Dollar Desarrolladores
Tiempo Asignación numérica Administrador de
Proyecto
Riesgo Asignación numérica Especialista en
requerimientos
Volatilidad Ranking Especialista en
requerimientos
61
Ejemplo: Priorización
Para que las priorizaciones sean más efectivas, los requisitos se refinan
aún más. Primero, los requisitos R1 y R2 son requisitos absolutamente
necesarios para hacer que el sistema funcione en absoluto. Por tanto, no
son priorizados por los clientes sino se estiman en términos de costo,
riesgo, etc., ya que R1 y R2 influyen estas variables no importa qué. Esta
conclusión
desarrollo
es una forma de utilizar el enfoque de clasificación de requisitos
objetivo
feeback
índice
inicio
presentado. Además, se han establecido dos grupos de requisitos
identificados como de alto nivel de dependencia (deben implementarse
juntos) y, por lo tanto, deben priorizarse juntos. Los requisitos R3, R4 y
R5 están agrupados juntos como R345, y los requisitos R6 y R7 se
agrupan en R67.
62
Ejemplo:
Tabla - Priorización de resultados de importancia estratégica y para el cliente.
Prioridad, P (RX) = RPC1 × WC1 + RPC2 × WC2 + RPC3 × WC3 + RPPM × WPM,
donde RP es la prioridad del requisito, y W es el peso de la parte interesada
conclusión
desarrollo
objetivo
feeback
índice
inicio
63
Ejemplo:
Tabla - Descending priority list based on importance and penalty (IP). IP(RX) = RPI
× WI + RPP × WP, where RP is the requirement priority, and W is the weight of
Importance (I) and Penalty (P)
conclusión
desarrollo
objetivo
feeback
índice
inicio
64
Criterio de selección
Requerimientos seleccionados basado en el índice de prioridad y costo.
conclusión
desarrollo
objetivo
feeback
índice
inicio
La tabla muestra que logramos ajustarnos a las restricciones de costos, pero no
pudimos satisfacer la restricción de riesgo. Como resultado, el proyecto se vuelve
demasiado riesgoso. En cambio, otro se adopta un enfoque para encontrar una
colección adecuada de requisitos. En este enfoque, tomamos en consideración la
relación IP / Costo. Esto muestra qué requisitos proporcionar la mayor parte de la
propiedad intelectual al menor costo. En este caso, intentamos establecer un límite
de solo seleccionar requisitos que tengan una relación IP / costo superior a 1.0.
65
Criterio de selección
Requisitos seleccionados basados en el costo y la relación IP / costo.
conclusión
desarrollo
objetivo
feeback
índice
inicio
La tabla muestra que las restricciones de costos aún se cumplen (incluso nueve por
ciento menos costo) al tiempo que satisface la restricción de riesgo. Comparación
de tablas anterior y esta muestra que el valor de IP de la segunda solución
candidata es mayor que indica que los clientes están más satisfechos con el
producto y la relación IP / costo es casi el doble. La segunda solución candidata
satisface el 91 por ciento (2,73 / 3) del aspecto IP, en comparación con el 83 por
ciento en la primera solución candidata. El hecho que la segunda alternativa cuesta
menos y es menos arriesgada también favorece esta elección.
66
[Actividad: Tarea ]
A partir de la siguiente actividad, Tarea N° 4 : Práctica, caracterizar escenarios y
casos de uso, permite profundizar en obtener y analizar información relacionada
al modelo de negocio previo al desarrollo de un sistema mediante la aplicación de
conclusión
desarrollo
objetivo
feeback
ingeniería de requerimientos, adquisición y análisis de requerimiento en el
índice
inicio
contexto de la ingeniería de software.
Instrucciones:
Descarga la guía de Recurso de Aprendizaje Tarea aquí.
Actividad: Evaluable
67
Este capítulo ha presentado una serie de técnicas, aspectos y
otras cuestiones que debe tenerse en cuenta al realizar las
conclusión
priorizaciones. Estas diferentes partes juntas Formar una base
desarrollo
feedback
objetivo
para priorizar sistemáticamente los requisitos durante el
índice
inicio
desarrollo de software. El resultado de las priorizaciones sugiere
qué requisitos deben implementado y en qué versión. Por tanto,
las técnicas podrán ser valiosas ayudar a las empresas a
comprender qué es importante y qué no para un proyecto o un
producto. Como ocurre con todos los métodos de evaluación, los
resultados deben interpretarse y posiblemente ajustado por
tomadores de decisiones informados en lugar de simplemente
aceptado como decisión final.
Fuente: Aybüke Aurum · Claes Wohlin
68
Bibliografía Básica
bibliografía
conclusión
2. PRESSMAN, ROGER S. (2010). INGENIERÍA DEL SOFTWARE. MEXICO: MCGRAW-HILL.
desarrollo
feedback
objetivo
3. SOMMERVILLE, IAN. (2011). INGENIERÍA DE SOFTWARE. : PEARSON EDUCACIÓN DE
índice
inicio
MÉXICO.
Bibliografía Complementaria
69
Ingeniería de
Requerimientos de
Software
LinkendIn aquí.
Twitter: @jvinuezam1
jvinuezam@unemi.edu.ec
Orcid: aquí.
2
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
Clase anterior…
Aspectos de priorización
conclusión
desarrollo
feedback
objetivo
índice
inicio
3
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
Clase anterior…
desarrollo
feedback
objetivo
índice
inicio
4
Twitter: @jvinuezam1 jvinuezam@unemi.edu.ec
Clase anterior…
RQ
Funcionales & Diseño de
No software
Funcionales
conclusión
desarrollo
feedback
objetivo
índice
inicio
Alcance,
Documento
objetivos, Formal Prototipo
restricciones
(escrito)
5
TEMA 4: Documentación de Especificación
de requerimientos (ERS)
conclusión
desarrollo
feedback
objetivo
índice
inicio
6
Documentar la especificación de los
requerimientos de software concebidos en las
conclusión
desarrollo
objetivo
feeback
índice
inicio
7
Términos: “ERS”
Qué son las siglas ERS? Para que nos sirve el ERS?
conclusión
desarrollo
feedback
objetivo
índice
Este enfoque formal (ERS) es
inicio
Especificación de requerimiento de
software adecuado para sistemas
empresariales donde los
requerimientos son inestables. Sin
embargo, aún resulta útil escribir un
breve documento de apoyo que
defina los requerimientos de la
empresa y los requerimientos de
confiabilidad para el sistema…
8
conclusión
feeback
Documento de
requerimiento de software (ERS)
desarrollo
inicio
índice
9
objetivo
Especificación de requerimiento de software
desarrollo
como el Departamento de Defensa
objetivo
feeback
índice
inicio
estadounidense y el Institute of
Electrical and Electronic
Engineers (IEEE), definieron
estándares para los documentos
de requerimientos. Descarga formato aquí
Fuente: Página especificación estándar
10
Especificación de requerimiento de software
desarrollo
objetivo
feeback
índice
inicio
A veces se denomina documento de requisitos empresariales (BRD),
especificación funcional, especificación de producto, especificación de
sistema o simplemente documento de requisitos. Debido a que
"especificación de requisitos de software" es un término estándar de la
industria, así lo llamaremos aquí (ISO / IEC / IEEE 2011).
11
Especificación de requerimiento de software
Importante:
Los requisitos entregables a menudo no pueden satisfacer las
necesidades de todos los públicos.
conclusión
desarrollo
Algunas personas necesitan conocer solo los objetivos del negocio,
objetivo
feeback
índice
inicio
otras solo quieren una visión general de alto nivel, otras quieren ver
solo la perspectiva del usuario y otras necesitan todos los detalles.
No espere que todos sus representantes de usuarios lean el SRS
detallado, y no espere que los desarrolladores aprendan todo lo que
necesitan de un conjunto de casos de uso o historias de usuarios.
12
Estructura del ERS IEEE Std. 830-1998
2. 3.
1. 4.
Introducción Descripción Requisitos
Apéndices
General Específicos
conclusión
desarrollo
objetivo
2.1 Perspectiva del
feeback
3.1 Interfaces
índice
1.1 Propósito
inicio
Producto Externas
13
Estructura del ERS IEEE Std. 830-1998
1.1 Propósito
desarrollo
objetivo
feeback
índice
1.2 Ámbito del Sistema
inicio
• Se podrá dar un nombre al futuro sistema (p.ej. MiSistema)
• Se explicará lo que el sistema hará y lo que no hará.
• Se describirán los beneficios, objetivos y metas que se espera
alcanzar con el futuro sistema.
• Se referenciarán todos aquellos documentos de nivel superior
(p.e. en Ingeniería de Sistemas, que incluyen Hardware y
Software, deberá mantenerse la consistencia con el documento
de especificación de requisitos globales del sistema, si existe).
14
Estructura del ERS IEEE Std. 830-1998
desarrollo
objetivo
feeback
índice
inicio
1.4 Referencias
15
Estructura del ERS IEEE Std. 830-1998
2. Descripción General
desarrollo
objetivo
feeback
índice
inicio
producto, funciones del producto, características de los usuarios, restricciones,
factores que se asumen y futuros requisitos.
• Esta subsección debe relacionar el futuro sistema (producto software) con otros
productos. Si el producto es totalmente independiente de otros productos,
también debe especificarse aquí. Si la ERS define un producto que es parte de un
sistema mayor, esta subsección relacionará los requisitos del sistema mayor con
la funcionalidad del producto descrito en la ERS, y se identificarán las interfaces
entre el producto mayor y el producto aquí descrito.
• Se recomienda utilizar diagramas de bloques.
16
Estructura del ERS IEEE Std. 830-1998
desarrollo
objetivo
feeback
índice
inicio
enorme detalle que cada una de estas funciones requiere.
• Las funciones deberán mostrarse de forma organizada, y pueden
utilizarse gráficos, siempre y cuando dichos gráficos reflejen las
relaciones entre funciones y no el diseño del sistema.
17
Estructura del ERS IEEE Std. 830-1998
2.4 Restricciones
desarrollo
objetivo
feeback
índice
inicio
2.5 Suposiciones y Dependencias
• Esta subsección de la ERS describirá aquellos factores que, si cambian, pueden afectar a
los requisitos. Por ejemplo, los requisitos pueden presuponer una cierta organización
de ciertas unidades de la empresa, o pueden presuponer que el sistema correrá sobre
cierto sistema operativo. Si cambian dichos detalles en la organización de la empresa, o
si cambian ciertos detalles técnicos, como el sistema operativo, puede ser necesario
revisar y cambiar los requisitos.
18
Estructura del ERS IEEE Std. 830-1998
3. Requisitos Específicos
desarrollo
planificar y realizar las pruebas que demuestren si el sistema
objetivo
feeback
índice
inicio
describirá comportamientos externos del sistema, perceptibles por
parte de los usuarios, operadores y otros sistemas. Esta es la
sección más larga e importante de la ERS. Deberán aplicarse los
siguientes principios:
• El documento deberá ser perfectamente legible por personas de
muy distintas formaciones e intereses.
• Deberán referenciarse aquellos documentos relevantes que
poseen alguna incongruencia sobre los requisitos.
• Todo requisito deberá ser unívocamente identificable mediante
algún código o sistema de numeración adecuado.
19
Estructura del ERS IEEE Std. 830-1998
3. Requisitos Específicos
desarrollo
objetivo
feeback
índice
inicio
que poseen alguna influencia sobre los requisitos.
• Todo requisito debera ser unívocamente identificable
mediante algún código o sistema de numeración
adecuado.
• Lo ideal, aunque en la practica no siempre realizable, es
que los requisitos posean las siguientes características:
Corrección, No ambiguos, Completos, Consistentes,
Clasificados, Verificables, Modificables, Trazables.
20
Estructura del ERS IEEE Std. 830-1998
desarrollo
software) e interfaces de comunicaciones.
objetivo
feeback
índice
inicio
3.2 Funciones
21
Estructura del ERS IEEE Std. 830-1998
3.2 Funciones
desarrollo
objetivo
feeback
índice
inicio
• En paralelo con los DFDs propuestos por el
análisis estructurado.
• Estándar de IEEE 830, en sus últimas versiones, ya
permite organizar esta subsección de múltiples
formas, y sugiere, entre otras, las siguientes: por
tipos de usuarios, por objetos, por objetivos, por
estímulos, por jerarquía funcional.
22
Estructura del ERS IEEE Std. 830-1998
3.2 Funciones
desarrollo
afecten o tengan mayor relación con sus tareas.
objetivo
feeback
índice
inicio
• Por objetos: Los objetos son entidades del mundo real que
serán reflejadas en el sistema. Para cada objeto, se detallarán
sus atributos y sus funciones. Los objetos pueden agruparse en
clases. Esta organización de la ERS no quiere decir que el diseño
del sistema siga el paradigma de Orientación a Objetos.
• Por objetivos: Un objetivo es un servicio que se desea que
ofrezca el sistema y que requiere una determinada entrada para
obtener su resultado. Para cada objetivo o sub-objetivo que se
persiga con el sistema, se detallarán las funciones que permitan
llevarlo a cabo.
23
Estructura del ERS IEEE Std. 830-1998
3.2 Funciones
desarrollo
• Por jerarquía funcional: Si ninguna de las anteriores
objetivo
feeback
índice
inicio
alternativas resulta de ayuda, la funcionalidad del sistema
se especificará como una jerarquía de funciones que
comparten entradas, salidas o datos internos. Se detallarán
las funciones (entrada, proceso, salida) y las sub-funciones
del sistema. Esto no implica que el diseño del sistema deba
realizarse según el paradigma de Diseño Estructurado.
24
Estructura del ERS IEEE Std. 830-1998
desarrollo
• También, si es necesario, se especificarán lo requisitos de datos, es decir,
objetivo
feeback
índice
inicio
aquellos requisitos que afecten a la información que se guardará en la base
de datos. Por ejemplo, la frecuencia de uso, las capacidades de acceso y la
cantidad de registros que se espera almacenar (decenas, cientos, miles o
millones).
25
Estructura del ERS IEEE Std. 830-1998
desarrollo
objetivo
feeback
índice
inicio
4. Apéndices
26
conclusión
desarrollo
objetivo
feeback
índice
inicio
Audiencias del Documento de
requerimiento de software (ERS)
27
Ejemplos: Usuarios de un documento RQ
Grupos de interés (Stakeholders)
Clientes
El departamento de marketing y
el personal de ventas necesitan Ingenieros de prueba
saber qué producto pueden
esperar recibir.
del sistema
Los probadores lo usan para
conclusión
desarrollo
objetivo
feeback
índice
inicio
Administradores procedimientos de prueba….
28
Ejemplos: Usuarios de un documento RQ
Grupos de interés (Stakeholders)
Redactores
Los redactores de
documentación basan los
manuales de usuario y las
pantallas de ayuda en el SRS y el
diseño de la interfaz de usuario.
conclusión
desarrollo
Personal de
objetivo
feeback
índice
inicio
capacitación Subcontratistas
utiliza el SRS y la documentación Los subcontratistas basan su
del usuario para desarrollar trabajo en, y pueden ser
materiales educativos… legalmente obligados a, los
requisitos especificados….
Personal Legal
se asegura de que los requisitos
cumplan con las leyes y
regulaciones aplicables…
29
Especificación de RQ
Para pensar…
conclusión
desarrollo
objetivo
Si una capacidad o calidad
feeback
índice
inicio
deseada no aparece en algún
lugar del acuerdo de requisitos,
nadie debería esperar que aparezca en el
producto.
30
Organizar y escribir el ERS
Sugerencias de legibilidad
desarrollo
Etiquetas y secciones de estilo, subsecciones y requisitos
objetivo
feeback
índice
inicio
individuales consistentemente.
31
Organizar y escribir el ERS
Sugerencias de legibilidad
desarrollo
otras ubicaciones dentro de un documento.
objetivo
feeback
índice
inicio
Si está utilizando documentos, defina hipervínculos para permitir
al lector saltar a secciones relacionadas en el SRS o en otros
archivos.
Si está almacenando requisitos en una herramienta, use enlaces
para permitir que el lector navegue a la información relacionada.
32
Etiquetado de requisitos
desarrollo
Permite reutilizar los requisitos en múltiples proyectos.
objetivo
feeback
índice
inicio
Requisitos identificados de forma única facilitan la colaboración
entre los miembros del equipo cuando discuten los requisitos,
como en una reunión de revisión por pares.
33
Secuencia de números
desarrollo
objetivo
feeback
índice
inicio
Un número no se reutiliza si se elimina un requisito, por lo que
no tiene que preocuparse de que un lector confunda el FR-26
original con un nuevo FR-26.
34
Numeración jerárquica
desarrollo
objetivo
feeback
índice
inicio
Un número no se reutiliza si se elimina un requisito, por lo que
no tiene que preocuparse de que un lector confunda el FR-26
original con un nuevo FR-26.
35
Etiquetas textuales jerárquicas
El consultor Tom Gilb (1988) sugiere un esquema de etiquetado
jerárquico basado en texto para etiquetar los requisitos
individuales.
desarrollo
objetivo
feeback
índice
inicio
requisito podría estar etiquetado como:
Print.ConfirmCopies.
36
conclusión
feeback Etiquetas textuales jerárquicas
desarrollo
inicio
índice
37
objetivo
Interfaces de usuario
La incorporación de diseños
de interfaz de usuario en el
SRS tiene ventajas y
desventajas. En el lado
conclusión
desarrollo
positivo, explorar posibles
objetivo
feeback
índice
inicio
interfaces de usuario con
prototipos en papel,
maquetas de trabajo,
estructuras alámbricas o
herramientas de simulación
hace que los requisitos sean
tangibles tanto para los
usuarios como para los
desarrolladores.
38
conclusión
desarrollo
feedback
objetivo
índice
inicio
Plantilla especificación de
requerimiento de software (ERS)
39
Plantilla ERS
conclusión
desarrollo
objetivo
feeback
índice
inicio
Fuente: Estándar del IEEE para documentos de requerimientos (IEEE, 1998)
40
Ejemplo ERS
conclusión
desarrollo
objetivo
feeback
índice
inicio
Fuente: Estándar del IEEE para documentos de requerimientos (IEEE, 1998)
41
El resultado del desarrollo de requisitos es un acuerdo documentado entre las partes
conclusión
desarrollo
feedback
interesadas sobre el producto a construir. Como viste en capítulos anteriores, el
objetivo
índice
inicio
documento de visión y alcance contiene los requisitos comerciales, y los requisitos
del usuario se pueden capturar en forma de casos de uso o historias de usuarios.
Los requisitos funcionales y no funcionales del producto a menudo se almacenan en
una especificación de requisitos de software, o SRS, que se entrega a aquellos que
deben diseñar, construir y verificar la solución. El registro de los requisitos de manera
organizada que las partes interesadas clave del proyecto pueden revisar ayuda a
garantizar que sepan lo que están aceptando.
42
Bibliografía Básica
bibliografía
conclusión
desarrollo
feedback
objetivo
índice
inicio
Bibliografía Complementaria
43