SlideShare uma empresa Scribd logo
1 de 68
1
Ingeniería de Requisitos
Tema 3: Administración de
Requisitos
(Dr. Ricardo Quintero)
Temas
 Principios y prácticas de
Administración de Requisitos
 Administrando los Cambios de
Requisitos
 Trazabilidad de Requisitos
2
Introducción
 Una vez revisados y aprobados los
requisitos, estos constituyen la línea base
para el esfuerzo de desarrollo: un acuerdo
entre el grupo de desarrollo y los clientes.
 La Administración de Requisitos incluye
todas las actividades que mantienen la
integridad, exactitud y actualidad del
acuerdo de requisitos conforme el
proyecto progresa.
3
Actividades de Administración de
Requisitos
4
Actividades de Administración de
Requisitos
 Las actividades incluyen:
 Controlar los cambios a la línea base de
requisitos.
 Mantener los planes del proyecto
actualizados con los requisitos.
 Controlar las versiones tanto de los requisitos
individuales como de los documentos de
requisitos.
 Monitorear los enlaces lógicos entre
requisitos individuales y otros productos de
trabajo del proyecto.
5
Los cambios en requisitos
 Un equipo de desarrollo que acepta
nuevos cambios propuestos a requisitos
podría no ser capaz de cumplir con
los compromisos de tiempo y calidad.
 El líder del proyecto debe negociar
los cambios con estos compromisos
con los administradores, clientes y
stakeholders afectados.
6
Los cambios en requisitos
 El proyecto puede responder a nuevos
requisitos o cambios en varias formas:
 Diferir requisitos de baja prioridad
 Obtener nuevo personal
 Forzar trabajo extra, preferiblemente con pago,
por un periodo breve de tiempo
 Extender la calendarización para acomodar la
nueva funcionalidad
 Sacrificar la calidad con la presión de terminar en
la fecha comprometida (suele ser la reacción por
defecto).
7
La Línea Base de Requisitos
 Es el conjunto de RF y RNF que
el equipo de desarrollo se ha
comprometido implementar en un
release específico.
 La LB da a los stakeholders un
entendimiento compartido de las
capacidades y propiedades que
esperan ver en el release.
8
La Línea Base de Requisitos
 En el momento en que se establece
la LB ésta se debe colocar bajo el
Control de Cambios.
 Cambios posteriores se deberán
realizar sólo a través del Proceso de
Control de Cambios definido.
 Los requisitos que están en la línea
base se deben distinguir de
cualquier otro que no lo esté
(draft).
9
Control de Versiones de
Requisitos
 Lee la siguiente Historia.
 ¿Has tenido alguna experiencia
similar? Comenta con el grupo.
10
Control de Versiones de
Requisitos
 El Control de Versiones es un
aspecto esencial de la
Administración de la
especificación de Requisitos y
otros documentos del proyecto.
 Cada versión de los documentos
de requisitos deben identificarse
de forma única.
11
Control de Versiones de
Requisitos
 Cada miembro del equipo debe ser capaz
de acceder a la versión actual de los
requisitos y los cambios se deben
documentar y comunicar a todos los
afectados.
 Para minimizar confusión, conflictos o
errores de comunicación, permita que sólo
individuos designados actualicen los
requisitos y asegúrate de cambiar el
identificador de versión cada vez que un
requisito cambie.
12
Control de Versiones de
Requisitos
 Cada versión de los documentos de requisitos
deben incluir una historia de revisiones que
identifique los cambios hechos, la fecha del cambio,
el individuo que hizo el cambio y la razón del
cambio.
 Un posible esquema de numeración (manual):
 Version 1.0 draft 1
 Version 1.0 draft 2
 Version 1.0 draft x
 Version 1.0 aprobada
 Version 2.0 draft 1
 Se puede utilizar una herramienta también
(tipo CVS o SVN).
13
Atributos de Requisitos
 Piensa en cada requisito como un objeto
con propiedades que se distingue de
otros requisitos.
 Además de su descripción textual debería
contar con atributos asociados con el.
 Los atributos establecen el contexto y
trasfondo del requisito más allá de la
descripción de la funcionalidad esperada.
14
Atributos de Requisitos
 Considera, por ejemplo:
 Fecha de creación del requisito
 Número de versión actual
 Autor que escribió el requisito
 Persona responsable de asegurar que el requisito
se satisfizo.
 Persona propietaria del requisito o una lista de
stakeholders
 Status del requisito
 Origen o fuente del requisito
 Justificación del requisito
15
Atributos de Requisitos
 Considera, por ejemplo:
 Subsistema (o subsistemas) a los cuales se
asigna el requisito
 Número de release al cual se asigna el requisito
 Método de verificación a utilizar o criterio de
aceptación
 Prioridad de implementación
 Estabilidad (un indicador de que tan probable es
de que cambie el requisito en el futuro)
 Selecciona el subconjunto más pequeño
de atributos que ayude a manejar los
requisitos lo mejor posible.
16
Monitoreando el Status de los
Requisitos
“¿Cómo vas con ese subsistema, Jackie?
Preguntó Dave”
“Muy bien, Dave. Llevo hecho un 90%”
“Pero, ¿No ere ese tu avance hace un par de
semanas? Pregunt desconcertado Dave”
“Así pensaba, pero ahora estoy seguro de que
he hecho un 90%”
17
Hay una tendencia común entre los
desarrolladores a ser muy optimistas
en los progresos logrados
Monitoreando el Status de los
Requisitos
 Monitorear el Status de cada RF a lo
largo del proyecto ofrece una
valoración más exacta del avance
del proyecto.
 Monitorea el Status de cada RF
contra lo que se espera sea
“completo”.
18
Status sugeridos
19
Status Definición
Propuesto El requisito ha sido solicitado por una fuente
autorizada
Aprobado El requisito ha sido analizado, se ha estimado
su impacto y se ha asignado a la línea base.
Los stakeholders clave han acordado
incorporar el requisito, y el grupo de
desarrollo se ha comprometido a
implementarlo
Implementado El código que implementa el requisito se ha
diseñado, escrito y probado. El requisito se ha
trazado a los elementos pertinentes de diseño
y código
Status sugeridos
20
Status Definición
Verificado El funcionamiento correcto del requisito
implementado se ha confirmado en el
producto integrado. El requisito se ha trazado
a los casos de prueba pertinentes. El requisito
se considera ahora completo
Borrado Un requisito aprobado se ha removido de la
línea base. Incluya una explicación de porqué
y quién tomó la decisión de eliminarlo
Rechazado El requisito fue propuesto pero no se planeó
su implementación en cualquier release
próximo. Incluya una explicación de porqué y
quién tomó la decisión de rechazarlo
Temas
 Principios y prácticas de
Administración de Requisitos
 Administrando los Cambios de
Requisitos
 Trazabilidad de Requisitos
21
Introducción
 Lea la siguiente Historia.
 ¿Ha vivido usted alguna experiencia
semejante? Comente
22
Introducción
 Muchos desarrolladores se han
encontrado en situaciones en las
que un cambio aparentemente
simple resulta más complicado
de lo esperado.
 Son casos en los que los cambios se
introducen “por la puerta
trasera” sin ser aprobados por los
stakeholders.
23
Introducción
 Una organización seria debería
asegurar que:
 Los cambios propuestos a requisitos
se evalúen cuidadosamente antes
de comprometerse a ellos.
 Los individuos apropiados toman
decisiones de negocio informadas
sobre las solicitudes de cambio.
 Los cambios aprobados se
comunican a todos los participantes
afectados.
24
Introducción
 A menos que los stakeholders del proyecto
manejen los cambios durante el desarrollo,
ellos no sabrán realmente que se les
entregará y esto conducirá a un “vacío de
expectativas”.
 Entre más cerca se esté de la fecha de
entrega, más se deben resistir los
cambios al release, porque las
consecuencias son más severas.
25
Introducción
 Los cambios propuestos deben incluirse
en el DERS para mantenerlo actualizado
conforme el producto evoluciona.
 Cuando se necesita hacer un cambio, inicia
al nivel de abstracción más alto que el
cambio toca y traza en cascada el
impacto del cambio a través de los
componentes relacionados.
 Ej.- Un cambio podría afectar al CU
y sus RF, pero no a un RN.
26
Gestión del Desplazamiento del
Alcance (Scope creep)
 El Desplazamiento del Alcance
(Scope creeping) se presenta cuando
surge nueva funcionalidad y
modificaciones significativas después
que se han “basificado” (line-based) los
requisitos del proyecto.
 El problema no es la aparición de
nuevos requisitos (algo normal). El
problema es la falta de control en el
crecimiento.
27
Gestión del Desplazamiento del
Alcance (Scope creep)
 El primer paso en manejar el Scope
creep es documentar la visión, alcance y
limitaciones del nuevo sistema, como
parte de los RN. Cada requisito o
característica propuesto se debe evaluar
contra los objetivos del negocio, visión
del producto y alcance del proyecto.
 CLAVE: Según (Weinberg,1995) la
técnica más efectiva para controlar el
SC es ser capaz de decir NO.
28
El Proceso de Control de Cambios
 Un Proceso de Control de
Cambios permite a los líderes de
proyectos tomar decisiones
informadas que provean el valor
mayor al cliente mientras controlan
los costos del ciclo de vida.
29
El Proceso de Control de Cambios
 El proceso permite monitorear
todos los cambios propuestos y
ayuda a asegurar que no se pierdan
o sobrepases.
 Una vez estable (linebased) un
conjunto de requisitos, se debe
seguir este proceso para todos
los cambios propuestos a la
línea base.
30
El Proceso de Control de Cambios
 Un PCC es un mecanismo de filtro
para asegurar que el proyecto
incorpora los cambios más
apropiados.
 El Proceso de Cambios debe ser
bien documentado. Tan simple
como sea posible y, sobre todo,
efectivo.
31
Políticas de Control de Cambios
 Todos los cambios de requisitos deben
seguir el proceso.
 Ningún trabajo de diseño o
implementación, distinto a exploración de
factibilidad, se deberá hacer sobre
cambios no aprobados.
 Una petición de cambios no garantiza que
se hará. La decisión la tomará el Change
Control Board (CCB).
 El contenido de la base de datos de
cambios estará visible a todos los
stakeholders.
32
Políticas de Control de Cambios
 Cada cambio incluye un Análisis de
Impacto.
 Cada cambio de requisito incorporado
deberá trazarse a una petición de cambio
aprobada.
 La justificación detrás de cada petición de
cambio aprobada o rechazada se deberá
registrar.
33
Políticas de Control de Cambios
 En teoría todas las peticiones de
cambios (grandes o pequeñas) deberían
pasar por el PCC.
 En la práctica, el proceso debería incluir un
“Fast-path” para peticiones de cambios
expeditas, de bajo riesgo en un ciclo de
decisión reducido.
34
Plantilla para definición del PCC
 La definición del PCC se puede
describir mediante esta plantilla.
 Adecúe la plantilla a sus
necesidades.
35
El Change Control Board (CCB)
 El CCB es el cuerpo de personas,
una o más, que decide cuales
cambios de requisitos y nuevas
características sugeridas aceptar
para incluir en el producto.
 El CCB también decide cuales
defectos reportados corregir y
cuando corregirlos.
36
El Change Control Board (CCB)
 El CCB revisa y aprueba cambios a
cualquier producto de trabajo “basificado”.
 No debe ser una estructura “burocrática”,
más bien efectiva.
 Un CCB efectivo considerará los
cambios propuestos y tomará las
decisiones basado en el análisis de los
impactos potenciales y beneficios de cada
propuesta.
37
Miembros del CCB
 No todos toman decisión, pero si deben
estar informados (busca grupo reducido):
 Líder de proyecto.
 Analista de sistema.
 Desarrollo.
 Pruebas o QA
 Representantes del cliente
 Documentación de Usuario
 Soporte técnico o Help desk.
 Gestión de Configuración
38
Los cambios no son
gratuitos:Análisis de Impacto
 Debido a que a las personas no les
gusta decir que “no”, es fácil
acumular una gran cantidad de
peticiones de cambios aprobadas
pendientes.
39
Los cambios no son
gratuitos:Análisis de Impacto
 El Análisis de Impacto ofrece un
entendimiento exacto de las
implicaciones de un cambio propuesto.
 Esto ayuda a que el equipo haga
decisiones de negocios informadas
sobre las propuestas a aprobar.
 El análisis examina el cambio propuesto
para identificar los componentes que
podrían crearse, modificarse o
descartarse y estimar el esfuerzo
asociado con la implementación del cambio.
40
Procedimiento del Análisis de
Impacto
 El Jefe del CCB pide a un
desarrollador con experiencia
que realice el Análisis de Impacto
para una propuesta específica de
cambio.
41
Procedimiento del Análisis de
Impacto
 El A. de I. tiene tres aspectos:
1. Entender las posibles implicaciones de
hacer el cambio.
2. Identificar todos los archivos, modelos
y documentos que podrían tener que
ser modificados si el equipo incorpora la
petición de cambio.
3. Identificar las tareas requeridas
para implementar el cambio y estimar
el esfuerzo necesario para completar las
tareas.
42
Checklist y Procedimientos para
ayudar a el A. de I.
 Estas listas pueden ayudar al
Analista de Impacto a entender las
implicaciones del cambio
propuesto.
 Este procedimiento puede ayudar a
evaluar el impacto de un cambio
propuesto
43
Temas
 Principios y prácticas de
Administración de Requisitos
 Administrando los Cambios de
Requisitos
 Trazabilidad de Requisitos
44
Introducción
 Lea esta Historia.
 Comente la importancia de la
trazabilidad en el proceso de
Análisis de Impacto en los Cambios
de Requisitos.
45
Introducción
 El Análisis de Impacto es mucho
más fácil si se tiene un mapa que
muestre donde fue
implementado en software cada
requisito o regla de negocio.
 El Trazado de Requisitos
documenta las dependencias y
enlaces lógicos entre requisitos
individuales y otros elementos
del sistema.
46
Introducción
 La información de Trazabilidad
facilita el Análisis de Impacto
ayudando a identificar todos los
productos de trabajo que
tendrían que modificarse para
implementar el cambio propuesto
de requisitos.
47
Trazando los requisitos
 Los Enlaces de Trazabilidad permiten
seguir la vida del requisito tanto hacia
adelante como hacia atrás: del origen
a la implementación.
 Para permitir la trazabilidad, cada
requisito deberá ser etiquetado de
forma única y persistente de tal
forma que pueda referenciarse sin
ambigüedad a lo largo del proyecto.
48
Trazando los requisitos
 Escriba los requisitos en estilo de grano
fino, en lugar de crear párrafos grandes
(con muchos RF que conduzcan a una
explosión de elementos de diseño y
código).
49
Tipos de enlaces de requisitos
50
Algunas implicaciones de estos
enlaces
 Los Casos de Prueba se derivan
–se trazan- a requisitos
individuales.
 Si un “tester” detecta funcionalidad
no esperada sin un requisito
correspondiente, pudiera entonces:
 El Analista agregar esta funcionalidad
legítima
 O podrían ser código “Gold Plating”.
51
Algunas implicaciones de estos
enlaces
 Los enlaces de Trazabilidad ayudan a
seguir la pista del antecesor,
interconexión y dependencia entre
requisitos individuales.
 Esto ayuda a revelar la propagación
resultante de un cambio cuando un
requisito se borra o modifica.
 Si existe trazabilidad entre el requisito y
una unidad de trabajo, esas tareas se
verán afectadas cuando el requisito se
cambie o borre.
52
Algunos posibles enlaces de trazabilidad de
requisitos
53
Motivaciones para la Trazabilidad
de Requisitos
 La Trazabilidad de Requisitos es una
tarea manual intensa que requiere
compromiso organizacional.
 Mantener la información actualizada de
los enlaces conforme se desarrolla y
mantiene el sistema demanda disciplina.
 Si la información de trazabilidad se torna
obsoleta, lo más probable es que nunca se
reconstruirá.
54
Motivaciones para la Trazabilidad
de Requisitos
 Beneficios de implementar trazabilidad de
requisitos:
 Certificación: demostrar que los requisitos
fueron implementados (lo cual no garantiza que
fueron implementados correctamente).
 Análisis de Impacto de Cambios: sin
Trazabilidad lo más probable es que se pase por
alto elementos de sistema afectados por cambios
en requisitos.
 Mantenimiento: se facilita la elaboración de
cambios correctos y completos durante el
mantenimiento. Esto, a su vez, mejora la
productividad.
55
Motivaciones para la Trazabilidad
de Requisitos
 Mas Beneficios :
 Monitoreo del Proyecto: permite mantener un
monitoreo exacto del estado de la
implementación de la funcionalidad planeada.
 Reingeniería: registrar las funciones de
sistemas legados que se están reemplazando y
su enlace a los nuevos requisitos y componentes
software.
56
Motivaciones para la Trazabilidad
de Requisitos
 Mas Beneficios :
 Riesgos: cuando un miembro clave del equipo
se va y su conocimiento queda en los enlaces de
trazabilidad.
 Pruebas: cuando una prueba lleva a un
resultado inesperado, los enlaces entre pruebas,
requisitos y código apuntan a las partes del
código que hay examinar para buscar los
defectos.
57
Motivaciones para la Trazabilidad
de Requisitos
 Muchos de los beneficios son a largo plazo,
reduciendo los costos del ciclo de vida
aunque incrementen el costo de desarrollo (por
el esfuerzo de mantener los enlaces).
 La Trazabilidad de Requisitos es una inversión
que pagará dividendos cuando tengas de
extender, modificar o reemplazar el
producto.
 En realidad no es mucho trabajo si
recolectas la información conforma
procede el desarrollo; pero es tediosa y cara
para un sistema completo sin trazabilidad
previa.
58
Matriz de Trazabilidad
 Es la forma más común de
representar enlaces entre
requisitos y otros elementos del
sistema.
59
Ejemplo de Matriz de Trazabilidad
60
RU RF Elemento
de Diseño
Módulo de
Código
Caso de
Prueba
CU-28 Catalog.query.sort Clase
Catalogo
Catalog.sort() Search.7
Search.8
CU-29 Catalog.query.sort Clase
Catalogo
Catalog.sort() Search.12
Search.13
Search.14
Esta información se debe ir incluyendo conforma avanza
el proyecto
Cardinalidad entre enlaces
 Uno a Uno: un elemento de diseño
implementado en un módulo de
código.
 Uno a Muchos: un RF verificado
con múltiples Casos de Prueba
 Muchos a muchos: un CU que
deriva múltiples RF y ciertos RFs a
comunes a varios CU.
61
Variantes entre las Matrices de
Trazabilidad
 Una Matriz de Trazabilidad puede definir
diferentes tipos de enlaces entre
requisitos:
 Requisito-Requisito (del mismo tipo)
 Requisito-Requisito (de tipo distinto)
 Requisito-Caso de Prueba
 Estos tipos de matrices pueden definir
varios tipos de relaciones: “especifica/es
especificada por”, “depende de”, “es padre
de”, “restringe/es restringida por”
62
Matriz de Trazabilidad: CU-RF
63
Req.
Funcionales
Casos de Uso
CU-1 CU-2 CU-2 CU-3
RF-1 <-
RF-2 <-
RF-3 <-
RF-4 <-
RF-5 <-
Responsables de mantener la
trazabilidad-quién tiene la información
64
Tipo de Objeto
Fuente
Tipo de Objeto
Destino
Fuente de
Información
Caso de Uso Requisito Funcional Analista
Requisito Funcional Requisito Funcional Analista
Requisito Funcional Caso de Prueba Ingeniero de
Prueba
Requisito Funcional Elemento de la
Arquitectura
Software
Arquitecto de
Software
Requisito Funcional Otros elementos de
Diseño
Diseñador o
desarrollador
Elemento de Diseño Código Desarrollador
Regla de Negocio Requisito Funcional Analista
Procedimiento para Trazabilidad
de Requisitos
1. Seleccionar las relaciones de
enlace que deseas definir (usa el
diagrama de relaciones posibles)
2. Selecciona el tipo de matriz de
trazabilidad que desea usar: 1 o
más matrices.
3. Identifica las partes del
producto para las cuales deseas
mantener información de
trazabilidad.
65
Procedimiento para Trazabilidad
de Requisitos
4. Modifica tus procesos y checklist para
recordar a los desarrolladores que
actualicen los enlaces después de
implementar un requisito o un cambio
aprobado.
5. Define convencionalismos de
etiquetas que utilizarás para identificar
de forma única todos los elementos del
sistema de tal forma que se puedan
enlazar entre sí.
66
Procedimiento para Trazabilidad
de Requisitos
6. Identifica los individuos que
proveerán la información de enlace y la
persona que coordinará las actividades de
trazabilidad y gestión de datos.
7. Educa al equipo sobre los conceptos e
importancia del trazado de requisitos, los
objetivos de la actividad, donde se
almacenarán los datos de trazabilidad y
las técnicas para definir enlaces.
Asegúrate que todos se comprometan en
sus responsabilidades
67
Procedimiento para Trazabilidad
de Requisitos
8. Conforme avanza el desarrollo, que cada
participante provea la información de
trazabilidad por cada unidad pequeña de
trabajo.
9. Audita periódicamente la información
de trazabilidad para asegurar que está
actualizada.
68

Mais conteúdo relacionado

Mais procurados

Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
Julio Pari
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo
Seba Briones
 
Diseño en-el-nivel-de-componentes
Diseño en-el-nivel-de-componentesDiseño en-el-nivel-de-componentes
Diseño en-el-nivel-de-componentes
AndresRealp1
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
Lu Martinez
 
2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente
Jeremias Morales
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
rogergene
 
Planificación de proyectos de software
Planificación de proyectos de softwarePlanificación de proyectos de software
Planificación de proyectos de software
hrubenleiva21
 

Mais procurados (20)

Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
 
Estilos Arquitectonicos-Capas
Estilos Arquitectonicos-CapasEstilos Arquitectonicos-Capas
Estilos Arquitectonicos-Capas
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo
 
Diseño en-el-nivel-de-componentes
Diseño en-el-nivel-de-componentesDiseño en-el-nivel-de-componentes
Diseño en-el-nivel-de-componentes
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
Mitos de-software.
Mitos de-software.Mitos de-software.
Mitos de-software.
 
Metodologia clasica en cascada
Metodologia clasica en cascadaMetodologia clasica en cascada
Metodologia clasica en cascada
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Arquitectura flujo de datos(filtros y tuberías)
Arquitectura flujo de datos(filtros y tuberías)Arquitectura flujo de datos(filtros y tuberías)
Arquitectura flujo de datos(filtros y tuberías)
 
Iso 25000
Iso 25000Iso 25000
Iso 25000
 
2. cableado estructurado
2. cableado estructurado2. cableado estructurado
2. cableado estructurado
 
2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente
 
Analisis y determinacion de requerimientos
Analisis y determinacion de requerimientosAnalisis y determinacion de requerimientos
Analisis y determinacion de requerimientos
 
Diagrama de actividad
Diagrama de actividadDiagrama de actividad
Diagrama de actividad
 
Proceso del Software
Proceso del Software Proceso del Software
Proceso del Software
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto software
 
Modelos concurrentes
Modelos concurrentesModelos concurrentes
Modelos concurrentes
 
Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
Planificación de proyectos de software
Planificación de proyectos de softwarePlanificación de proyectos de software
Planificación de proyectos de software
 

Destaque

Uml Omg Fundamental Certification 1
Uml Omg Fundamental Certification 1Uml Omg Fundamental Certification 1
Uml Omg Fundamental Certification 1
Ricardo Quintero
 

Destaque (20)

Introduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and RecoveryIntroduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and Recovery
 
Computer Networks Module II
Computer Networks Module IIComputer Networks Module II
Computer Networks Module II
 
Introduction to database-Normalisation
Introduction to database-NormalisationIntroduction to database-Normalisation
Introduction to database-Normalisation
 
Object Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part IIIObject Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part III
 
I BELIEVE I CAN FLY ( version française)
I BELIEVE I CAN FLY ( version française)I BELIEVE I CAN FLY ( version française)
I BELIEVE I CAN FLY ( version française)
 
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
 
NS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt IIINS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt III
 
One thing you can do to increase your charisma
One thing you can do to increase your charismaOne thing you can do to increase your charisma
One thing you can do to increase your charisma
 
Enterprise Architecture for Dummies
Enterprise Architecture for DummiesEnterprise Architecture for Dummies
Enterprise Architecture for Dummies
 
I BELIEVE I CAN FLY
I BELIEVE I CAN FLYI BELIEVE I CAN FLY
I BELIEVE I CAN FLY
 
Database Programming using SQL
Database Programming using SQLDatabase Programming using SQL
Database Programming using SQL
 
01 conceptos de diseño
01 conceptos de diseño01 conceptos de diseño
01 conceptos de diseño
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
 
Ns2: OTCL - PArt II
Ns2: OTCL - PArt IINs2: OTCL - PArt II
Ns2: OTCL - PArt II
 
Introduction to database-ER Model
Introduction to database-ER ModelIntroduction to database-ER Model
Introduction to database-ER Model
 
Ns2: Introduction - Part I
Ns2: Introduction - Part INs2: Introduction - Part I
Ns2: Introduction - Part I
 
Misiones en Honduras Mayo 2012
Misiones en Honduras Mayo 2012Misiones en Honduras Mayo 2012
Misiones en Honduras Mayo 2012
 
Object Oriented Programming using C++ Part I
Object Oriented Programming using C++ Part IObject Oriented Programming using C++ Part I
Object Oriented Programming using C++ Part I
 
Perfiles UML
Perfiles UMLPerfiles UML
Perfiles UML
 
Uml Omg Fundamental Certification 1
Uml Omg Fundamental Certification 1Uml Omg Fundamental Certification 1
Uml Omg Fundamental Certification 1
 

Semelhante a 03 administracion de requisitos

Requerimientos del Software: 8 trampas a evitar
Requerimientos del Software: 8 trampas a evitarRequerimientos del Software: 8 trampas a evitar
Requerimientos del Software: 8 trampas a evitar
Dharma Consulting
 
Ingenieria De Requisitos
Ingenieria De RequisitosIngenieria De Requisitos
Ingenieria De Requisitos
Gonzalo Piedra
 
Eq11 Presentacion Cap3 Hallows Defining The Project
Eq11 Presentacion Cap3 Hallows Defining The ProjectEq11 Presentacion Cap3 Hallows Defining The Project
Eq11 Presentacion Cap3 Hallows Defining The Project
marcos_0887
 
Transicion
TransicionTransicion
Transicion
Newemage
 
Transición
TransiciónTransición
Transición
Newemage
 

Semelhante a 03 administracion de requisitos (20)

Capítulo 6 gestión de cambios
Capítulo 6 gestión  de cambiosCapítulo 6 gestión  de cambios
Capítulo 6 gestión de cambios
 
Metodología Gestión de Requerimientos
Metodología Gestión de RequerimientosMetodología Gestión de Requerimientos
Metodología Gestión de Requerimientos
 
01 fundamentos de ir
01 fundamentos de ir01 fundamentos de ir
01 fundamentos de ir
 
Informe Control de Cambios Análisis BPM
Informe Control de Cambios Análisis BPMInforme Control de Cambios Análisis BPM
Informe Control de Cambios Análisis BPM
 
Requerimientos del Software: 8 trampas a evitar
Requerimientos del Software: 8 trampas a evitarRequerimientos del Software: 8 trampas a evitar
Requerimientos del Software: 8 trampas a evitar
 
Capacitacitación Tester - QA 2
Capacitacitación Tester - QA 2Capacitacitación Tester - QA 2
Capacitacitación Tester - QA 2
 
Metodologia gestion de requerimientos
Metodologia  gestion de requerimientosMetodologia  gestion de requerimientos
Metodologia gestion de requerimientos
 
Ingenieria De Requisitos
Ingenieria De RequisitosIngenieria De Requisitos
Ingenieria De Requisitos
 
Ingenieria De Requisitos
Ingenieria De RequisitosIngenieria De Requisitos
Ingenieria De Requisitos
 
Tema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de RequisitosTema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de Requisitos
 
Ingenieria de Requisitos
Ingenieria de RequisitosIngenieria de Requisitos
Ingenieria de Requisitos
 
Metodo v
Metodo vMetodo v
Metodo v
 
Eq11 Presentacion Cap3 Hallows Defining The Project
Eq11 Presentacion Cap3 Hallows Defining The ProjectEq11 Presentacion Cap3 Hallows Defining The Project
Eq11 Presentacion Cap3 Hallows Defining The Project
 
Lectura 5 . Defining de project
Lectura 5 . Defining de projectLectura 5 . Defining de project
Lectura 5 . Defining de project
 
Transicion
TransicionTransicion
Transicion
 
Transición
TransiciónTransición
Transición
 
SOA ciclo de vida
SOA ciclo de vidaSOA ciclo de vida
SOA ciclo de vida
 
Cesar rivera power point
Cesar rivera power pointCesar rivera power point
Cesar rivera power point
 
Factores de éxito en la captura y gestión de requisitos (Basado en las mejore...
Factores de éxito en la captura y gestión de requisitos (Basado en las mejore...Factores de éxito en la captura y gestión de requisitos (Basado en las mejore...
Factores de éxito en la captura y gestión de requisitos (Basado en las mejore...
 
Mayra romero
Mayra romeroMayra romero
Mayra romero
 

Mais de Ricardo Quintero (17)

Reseña histórica 1942 2012
Reseña histórica 1942 2012Reseña histórica 1942 2012
Reseña histórica 1942 2012
 
02 desarrollo de requisitos
02 desarrollo de requisitos02 desarrollo de requisitos
02 desarrollo de requisitos
 
8 test cases a partir de use cases
8 test cases a partir de use cases8 test cases a partir de use cases
8 test cases a partir de use cases
 
Manual 02
Manual 02Manual 02
Manual 02
 
Manual01
Manual01Manual01
Manual01
 
No Silver Bullet
No Silver BulletNo Silver Bullet
No Silver Bullet
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De Turing
 
Ai 00 Plan De Estudios
Ai 00 Plan De EstudiosAi 00 Plan De Estudios
Ai 00 Plan De Estudios
 
Mente De CampeóN.
Mente De CampeóN.Mente De CampeóN.
Mente De CampeóN.
 
Calendario Arranque
Calendario ArranqueCalendario Arranque
Calendario Arranque
 
Mex Graf
Mex GrafMex Graf
Mex Graf
 
Ministerio de Servicio
Ministerio de ServicioMinisterio de Servicio
Ministerio de Servicio
 
La OracióN De Jabes Vision
La OracióN De Jabes  VisionLa OracióN De Jabes  Vision
La OracióN De Jabes Vision
 
Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5
 
Omg Fundamental Certification 4
Omg Fundamental Certification 4Omg Fundamental Certification 4
Omg Fundamental Certification 4
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3
 
Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2
 

03 administracion de requisitos

  • 1. 1 Ingeniería de Requisitos Tema 3: Administración de Requisitos (Dr. Ricardo Quintero)
  • 2. Temas  Principios y prácticas de Administración de Requisitos  Administrando los Cambios de Requisitos  Trazabilidad de Requisitos 2
  • 3. Introducción  Una vez revisados y aprobados los requisitos, estos constituyen la línea base para el esfuerzo de desarrollo: un acuerdo entre el grupo de desarrollo y los clientes.  La Administración de Requisitos incluye todas las actividades que mantienen la integridad, exactitud y actualidad del acuerdo de requisitos conforme el proyecto progresa. 3
  • 5. Actividades de Administración de Requisitos  Las actividades incluyen:  Controlar los cambios a la línea base de requisitos.  Mantener los planes del proyecto actualizados con los requisitos.  Controlar las versiones tanto de los requisitos individuales como de los documentos de requisitos.  Monitorear los enlaces lógicos entre requisitos individuales y otros productos de trabajo del proyecto. 5
  • 6. Los cambios en requisitos  Un equipo de desarrollo que acepta nuevos cambios propuestos a requisitos podría no ser capaz de cumplir con los compromisos de tiempo y calidad.  El líder del proyecto debe negociar los cambios con estos compromisos con los administradores, clientes y stakeholders afectados. 6
  • 7. Los cambios en requisitos  El proyecto puede responder a nuevos requisitos o cambios en varias formas:  Diferir requisitos de baja prioridad  Obtener nuevo personal  Forzar trabajo extra, preferiblemente con pago, por un periodo breve de tiempo  Extender la calendarización para acomodar la nueva funcionalidad  Sacrificar la calidad con la presión de terminar en la fecha comprometida (suele ser la reacción por defecto). 7
  • 8. La Línea Base de Requisitos  Es el conjunto de RF y RNF que el equipo de desarrollo se ha comprometido implementar en un release específico.  La LB da a los stakeholders un entendimiento compartido de las capacidades y propiedades que esperan ver en el release. 8
  • 9. La Línea Base de Requisitos  En el momento en que se establece la LB ésta se debe colocar bajo el Control de Cambios.  Cambios posteriores se deberán realizar sólo a través del Proceso de Control de Cambios definido.  Los requisitos que están en la línea base se deben distinguir de cualquier otro que no lo esté (draft). 9
  • 10. Control de Versiones de Requisitos  Lee la siguiente Historia.  ¿Has tenido alguna experiencia similar? Comenta con el grupo. 10
  • 11. Control de Versiones de Requisitos  El Control de Versiones es un aspecto esencial de la Administración de la especificación de Requisitos y otros documentos del proyecto.  Cada versión de los documentos de requisitos deben identificarse de forma única. 11
  • 12. Control de Versiones de Requisitos  Cada miembro del equipo debe ser capaz de acceder a la versión actual de los requisitos y los cambios se deben documentar y comunicar a todos los afectados.  Para minimizar confusión, conflictos o errores de comunicación, permita que sólo individuos designados actualicen los requisitos y asegúrate de cambiar el identificador de versión cada vez que un requisito cambie. 12
  • 13. Control de Versiones de Requisitos  Cada versión de los documentos de requisitos deben incluir una historia de revisiones que identifique los cambios hechos, la fecha del cambio, el individuo que hizo el cambio y la razón del cambio.  Un posible esquema de numeración (manual):  Version 1.0 draft 1  Version 1.0 draft 2  Version 1.0 draft x  Version 1.0 aprobada  Version 2.0 draft 1  Se puede utilizar una herramienta también (tipo CVS o SVN). 13
  • 14. Atributos de Requisitos  Piensa en cada requisito como un objeto con propiedades que se distingue de otros requisitos.  Además de su descripción textual debería contar con atributos asociados con el.  Los atributos establecen el contexto y trasfondo del requisito más allá de la descripción de la funcionalidad esperada. 14
  • 15. Atributos de Requisitos  Considera, por ejemplo:  Fecha de creación del requisito  Número de versión actual  Autor que escribió el requisito  Persona responsable de asegurar que el requisito se satisfizo.  Persona propietaria del requisito o una lista de stakeholders  Status del requisito  Origen o fuente del requisito  Justificación del requisito 15
  • 16. Atributos de Requisitos  Considera, por ejemplo:  Subsistema (o subsistemas) a los cuales se asigna el requisito  Número de release al cual se asigna el requisito  Método de verificación a utilizar o criterio de aceptación  Prioridad de implementación  Estabilidad (un indicador de que tan probable es de que cambie el requisito en el futuro)  Selecciona el subconjunto más pequeño de atributos que ayude a manejar los requisitos lo mejor posible. 16
  • 17. Monitoreando el Status de los Requisitos “¿Cómo vas con ese subsistema, Jackie? Preguntó Dave” “Muy bien, Dave. Llevo hecho un 90%” “Pero, ¿No ere ese tu avance hace un par de semanas? Pregunt desconcertado Dave” “Así pensaba, pero ahora estoy seguro de que he hecho un 90%” 17 Hay una tendencia común entre los desarrolladores a ser muy optimistas en los progresos logrados
  • 18. Monitoreando el Status de los Requisitos  Monitorear el Status de cada RF a lo largo del proyecto ofrece una valoración más exacta del avance del proyecto.  Monitorea el Status de cada RF contra lo que se espera sea “completo”. 18
  • 19. Status sugeridos 19 Status Definición Propuesto El requisito ha sido solicitado por una fuente autorizada Aprobado El requisito ha sido analizado, se ha estimado su impacto y se ha asignado a la línea base. Los stakeholders clave han acordado incorporar el requisito, y el grupo de desarrollo se ha comprometido a implementarlo Implementado El código que implementa el requisito se ha diseñado, escrito y probado. El requisito se ha trazado a los elementos pertinentes de diseño y código
  • 20. Status sugeridos 20 Status Definición Verificado El funcionamiento correcto del requisito implementado se ha confirmado en el producto integrado. El requisito se ha trazado a los casos de prueba pertinentes. El requisito se considera ahora completo Borrado Un requisito aprobado se ha removido de la línea base. Incluya una explicación de porqué y quién tomó la decisión de eliminarlo Rechazado El requisito fue propuesto pero no se planeó su implementación en cualquier release próximo. Incluya una explicación de porqué y quién tomó la decisión de rechazarlo
  • 21. Temas  Principios y prácticas de Administración de Requisitos  Administrando los Cambios de Requisitos  Trazabilidad de Requisitos 21
  • 22. Introducción  Lea la siguiente Historia.  ¿Ha vivido usted alguna experiencia semejante? Comente 22
  • 23. Introducción  Muchos desarrolladores se han encontrado en situaciones en las que un cambio aparentemente simple resulta más complicado de lo esperado.  Son casos en los que los cambios se introducen “por la puerta trasera” sin ser aprobados por los stakeholders. 23
  • 24. Introducción  Una organización seria debería asegurar que:  Los cambios propuestos a requisitos se evalúen cuidadosamente antes de comprometerse a ellos.  Los individuos apropiados toman decisiones de negocio informadas sobre las solicitudes de cambio.  Los cambios aprobados se comunican a todos los participantes afectados. 24
  • 25. Introducción  A menos que los stakeholders del proyecto manejen los cambios durante el desarrollo, ellos no sabrán realmente que se les entregará y esto conducirá a un “vacío de expectativas”.  Entre más cerca se esté de la fecha de entrega, más se deben resistir los cambios al release, porque las consecuencias son más severas. 25
  • 26. Introducción  Los cambios propuestos deben incluirse en el DERS para mantenerlo actualizado conforme el producto evoluciona.  Cuando se necesita hacer un cambio, inicia al nivel de abstracción más alto que el cambio toca y traza en cascada el impacto del cambio a través de los componentes relacionados.  Ej.- Un cambio podría afectar al CU y sus RF, pero no a un RN. 26
  • 27. Gestión del Desplazamiento del Alcance (Scope creep)  El Desplazamiento del Alcance (Scope creeping) se presenta cuando surge nueva funcionalidad y modificaciones significativas después que se han “basificado” (line-based) los requisitos del proyecto.  El problema no es la aparición de nuevos requisitos (algo normal). El problema es la falta de control en el crecimiento. 27
  • 28. Gestión del Desplazamiento del Alcance (Scope creep)  El primer paso en manejar el Scope creep es documentar la visión, alcance y limitaciones del nuevo sistema, como parte de los RN. Cada requisito o característica propuesto se debe evaluar contra los objetivos del negocio, visión del producto y alcance del proyecto.  CLAVE: Según (Weinberg,1995) la técnica más efectiva para controlar el SC es ser capaz de decir NO. 28
  • 29. El Proceso de Control de Cambios  Un Proceso de Control de Cambios permite a los líderes de proyectos tomar decisiones informadas que provean el valor mayor al cliente mientras controlan los costos del ciclo de vida. 29
  • 30. El Proceso de Control de Cambios  El proceso permite monitorear todos los cambios propuestos y ayuda a asegurar que no se pierdan o sobrepases.  Una vez estable (linebased) un conjunto de requisitos, se debe seguir este proceso para todos los cambios propuestos a la línea base. 30
  • 31. El Proceso de Control de Cambios  Un PCC es un mecanismo de filtro para asegurar que el proyecto incorpora los cambios más apropiados.  El Proceso de Cambios debe ser bien documentado. Tan simple como sea posible y, sobre todo, efectivo. 31
  • 32. Políticas de Control de Cambios  Todos los cambios de requisitos deben seguir el proceso.  Ningún trabajo de diseño o implementación, distinto a exploración de factibilidad, se deberá hacer sobre cambios no aprobados.  Una petición de cambios no garantiza que se hará. La decisión la tomará el Change Control Board (CCB).  El contenido de la base de datos de cambios estará visible a todos los stakeholders. 32
  • 33. Políticas de Control de Cambios  Cada cambio incluye un Análisis de Impacto.  Cada cambio de requisito incorporado deberá trazarse a una petición de cambio aprobada.  La justificación detrás de cada petición de cambio aprobada o rechazada se deberá registrar. 33
  • 34. Políticas de Control de Cambios  En teoría todas las peticiones de cambios (grandes o pequeñas) deberían pasar por el PCC.  En la práctica, el proceso debería incluir un “Fast-path” para peticiones de cambios expeditas, de bajo riesgo en un ciclo de decisión reducido. 34
  • 35. Plantilla para definición del PCC  La definición del PCC se puede describir mediante esta plantilla.  Adecúe la plantilla a sus necesidades. 35
  • 36. El Change Control Board (CCB)  El CCB es el cuerpo de personas, una o más, que decide cuales cambios de requisitos y nuevas características sugeridas aceptar para incluir en el producto.  El CCB también decide cuales defectos reportados corregir y cuando corregirlos. 36
  • 37. El Change Control Board (CCB)  El CCB revisa y aprueba cambios a cualquier producto de trabajo “basificado”.  No debe ser una estructura “burocrática”, más bien efectiva.  Un CCB efectivo considerará los cambios propuestos y tomará las decisiones basado en el análisis de los impactos potenciales y beneficios de cada propuesta. 37
  • 38. Miembros del CCB  No todos toman decisión, pero si deben estar informados (busca grupo reducido):  Líder de proyecto.  Analista de sistema.  Desarrollo.  Pruebas o QA  Representantes del cliente  Documentación de Usuario  Soporte técnico o Help desk.  Gestión de Configuración 38
  • 39. Los cambios no son gratuitos:Análisis de Impacto  Debido a que a las personas no les gusta decir que “no”, es fácil acumular una gran cantidad de peticiones de cambios aprobadas pendientes. 39
  • 40. Los cambios no son gratuitos:Análisis de Impacto  El Análisis de Impacto ofrece un entendimiento exacto de las implicaciones de un cambio propuesto.  Esto ayuda a que el equipo haga decisiones de negocios informadas sobre las propuestas a aprobar.  El análisis examina el cambio propuesto para identificar los componentes que podrían crearse, modificarse o descartarse y estimar el esfuerzo asociado con la implementación del cambio. 40
  • 41. Procedimiento del Análisis de Impacto  El Jefe del CCB pide a un desarrollador con experiencia que realice el Análisis de Impacto para una propuesta específica de cambio. 41
  • 42. Procedimiento del Análisis de Impacto  El A. de I. tiene tres aspectos: 1. Entender las posibles implicaciones de hacer el cambio. 2. Identificar todos los archivos, modelos y documentos que podrían tener que ser modificados si el equipo incorpora la petición de cambio. 3. Identificar las tareas requeridas para implementar el cambio y estimar el esfuerzo necesario para completar las tareas. 42
  • 43. Checklist y Procedimientos para ayudar a el A. de I.  Estas listas pueden ayudar al Analista de Impacto a entender las implicaciones del cambio propuesto.  Este procedimiento puede ayudar a evaluar el impacto de un cambio propuesto 43
  • 44. Temas  Principios y prácticas de Administración de Requisitos  Administrando los Cambios de Requisitos  Trazabilidad de Requisitos 44
  • 45. Introducción  Lea esta Historia.  Comente la importancia de la trazabilidad en el proceso de Análisis de Impacto en los Cambios de Requisitos. 45
  • 46. Introducción  El Análisis de Impacto es mucho más fácil si se tiene un mapa que muestre donde fue implementado en software cada requisito o regla de negocio.  El Trazado de Requisitos documenta las dependencias y enlaces lógicos entre requisitos individuales y otros elementos del sistema. 46
  • 47. Introducción  La información de Trazabilidad facilita el Análisis de Impacto ayudando a identificar todos los productos de trabajo que tendrían que modificarse para implementar el cambio propuesto de requisitos. 47
  • 48. Trazando los requisitos  Los Enlaces de Trazabilidad permiten seguir la vida del requisito tanto hacia adelante como hacia atrás: del origen a la implementación.  Para permitir la trazabilidad, cada requisito deberá ser etiquetado de forma única y persistente de tal forma que pueda referenciarse sin ambigüedad a lo largo del proyecto. 48
  • 49. Trazando los requisitos  Escriba los requisitos en estilo de grano fino, en lugar de crear párrafos grandes (con muchos RF que conduzcan a una explosión de elementos de diseño y código). 49
  • 50. Tipos de enlaces de requisitos 50
  • 51. Algunas implicaciones de estos enlaces  Los Casos de Prueba se derivan –se trazan- a requisitos individuales.  Si un “tester” detecta funcionalidad no esperada sin un requisito correspondiente, pudiera entonces:  El Analista agregar esta funcionalidad legítima  O podrían ser código “Gold Plating”. 51
  • 52. Algunas implicaciones de estos enlaces  Los enlaces de Trazabilidad ayudan a seguir la pista del antecesor, interconexión y dependencia entre requisitos individuales.  Esto ayuda a revelar la propagación resultante de un cambio cuando un requisito se borra o modifica.  Si existe trazabilidad entre el requisito y una unidad de trabajo, esas tareas se verán afectadas cuando el requisito se cambie o borre. 52
  • 53. Algunos posibles enlaces de trazabilidad de requisitos 53
  • 54. Motivaciones para la Trazabilidad de Requisitos  La Trazabilidad de Requisitos es una tarea manual intensa que requiere compromiso organizacional.  Mantener la información actualizada de los enlaces conforme se desarrolla y mantiene el sistema demanda disciplina.  Si la información de trazabilidad se torna obsoleta, lo más probable es que nunca se reconstruirá. 54
  • 55. Motivaciones para la Trazabilidad de Requisitos  Beneficios de implementar trazabilidad de requisitos:  Certificación: demostrar que los requisitos fueron implementados (lo cual no garantiza que fueron implementados correctamente).  Análisis de Impacto de Cambios: sin Trazabilidad lo más probable es que se pase por alto elementos de sistema afectados por cambios en requisitos.  Mantenimiento: se facilita la elaboración de cambios correctos y completos durante el mantenimiento. Esto, a su vez, mejora la productividad. 55
  • 56. Motivaciones para la Trazabilidad de Requisitos  Mas Beneficios :  Monitoreo del Proyecto: permite mantener un monitoreo exacto del estado de la implementación de la funcionalidad planeada.  Reingeniería: registrar las funciones de sistemas legados que se están reemplazando y su enlace a los nuevos requisitos y componentes software. 56
  • 57. Motivaciones para la Trazabilidad de Requisitos  Mas Beneficios :  Riesgos: cuando un miembro clave del equipo se va y su conocimiento queda en los enlaces de trazabilidad.  Pruebas: cuando una prueba lleva a un resultado inesperado, los enlaces entre pruebas, requisitos y código apuntan a las partes del código que hay examinar para buscar los defectos. 57
  • 58. Motivaciones para la Trazabilidad de Requisitos  Muchos de los beneficios son a largo plazo, reduciendo los costos del ciclo de vida aunque incrementen el costo de desarrollo (por el esfuerzo de mantener los enlaces).  La Trazabilidad de Requisitos es una inversión que pagará dividendos cuando tengas de extender, modificar o reemplazar el producto.  En realidad no es mucho trabajo si recolectas la información conforma procede el desarrollo; pero es tediosa y cara para un sistema completo sin trazabilidad previa. 58
  • 59. Matriz de Trazabilidad  Es la forma más común de representar enlaces entre requisitos y otros elementos del sistema. 59
  • 60. Ejemplo de Matriz de Trazabilidad 60 RU RF Elemento de Diseño Módulo de Código Caso de Prueba CU-28 Catalog.query.sort Clase Catalogo Catalog.sort() Search.7 Search.8 CU-29 Catalog.query.sort Clase Catalogo Catalog.sort() Search.12 Search.13 Search.14 Esta información se debe ir incluyendo conforma avanza el proyecto
  • 61. Cardinalidad entre enlaces  Uno a Uno: un elemento de diseño implementado en un módulo de código.  Uno a Muchos: un RF verificado con múltiples Casos de Prueba  Muchos a muchos: un CU que deriva múltiples RF y ciertos RFs a comunes a varios CU. 61
  • 62. Variantes entre las Matrices de Trazabilidad  Una Matriz de Trazabilidad puede definir diferentes tipos de enlaces entre requisitos:  Requisito-Requisito (del mismo tipo)  Requisito-Requisito (de tipo distinto)  Requisito-Caso de Prueba  Estos tipos de matrices pueden definir varios tipos de relaciones: “especifica/es especificada por”, “depende de”, “es padre de”, “restringe/es restringida por” 62
  • 63. Matriz de Trazabilidad: CU-RF 63 Req. Funcionales Casos de Uso CU-1 CU-2 CU-2 CU-3 RF-1 <- RF-2 <- RF-3 <- RF-4 <- RF-5 <-
  • 64. Responsables de mantener la trazabilidad-quién tiene la información 64 Tipo de Objeto Fuente Tipo de Objeto Destino Fuente de Información Caso de Uso Requisito Funcional Analista Requisito Funcional Requisito Funcional Analista Requisito Funcional Caso de Prueba Ingeniero de Prueba Requisito Funcional Elemento de la Arquitectura Software Arquitecto de Software Requisito Funcional Otros elementos de Diseño Diseñador o desarrollador Elemento de Diseño Código Desarrollador Regla de Negocio Requisito Funcional Analista
  • 65. Procedimiento para Trazabilidad de Requisitos 1. Seleccionar las relaciones de enlace que deseas definir (usa el diagrama de relaciones posibles) 2. Selecciona el tipo de matriz de trazabilidad que desea usar: 1 o más matrices. 3. Identifica las partes del producto para las cuales deseas mantener información de trazabilidad. 65
  • 66. Procedimiento para Trazabilidad de Requisitos 4. Modifica tus procesos y checklist para recordar a los desarrolladores que actualicen los enlaces después de implementar un requisito o un cambio aprobado. 5. Define convencionalismos de etiquetas que utilizarás para identificar de forma única todos los elementos del sistema de tal forma que se puedan enlazar entre sí. 66
  • 67. Procedimiento para Trazabilidad de Requisitos 6. Identifica los individuos que proveerán la información de enlace y la persona que coordinará las actividades de trazabilidad y gestión de datos. 7. Educa al equipo sobre los conceptos e importancia del trazado de requisitos, los objetivos de la actividad, donde se almacenarán los datos de trazabilidad y las técnicas para definir enlaces. Asegúrate que todos se comprometan en sus responsabilidades 67
  • 68. Procedimiento para Trazabilidad de Requisitos 8. Conforme avanza el desarrollo, que cada participante provea la información de trazabilidad por cada unidad pequeña de trabajo. 9. Audita periódicamente la información de trazabilidad para asegurar que está actualizada. 68