plan del proyecto unidad 4 ing. francisco mauro salgado
Post on 12-Jan-2015
5 Views
Preview:
TRANSCRIPT
PLAN DEL PROYECTOPLAN DEL PROYECTO
UNIDAD 4UNIDAD 4
Ing. Francisco Mauro SalgadoIng. Francisco Mauro Salgado
ContenidoContenido• Plan del ProyectoPlan del Proyecto
– 4.14.1 Objetivo de la planeaciónObjetivo de la planeación– 4.2 Programa de actividades.4.2 Programa de actividades.– 4.3 Factores de costos de software.4.3 Factores de costos de software.– 4.4 Métricas de procesos de desarrollo de software.4.4 Métricas de procesos de desarrollo de software.– 4.5 Estimación de los costos4.5 Estimación de los costos– 4.6 Evaluación de riesgos.4.6 Evaluación de riesgos.– 4.7 Plan de aseguramiento de la calidad de software.4.7 Plan de aseguramiento de la calidad de software.– 4.8 Plan del control de la configuración.4.8 Plan del control de la configuración.
4.14.1 Objetivo de la planeación Objetivo de la planeación
Planeación de Proyectos de Planeación de Proyectos de SoftwareSoftwareEl objetivo principal de la planeaciónEl objetivo principal de la planeación
del proyecto es establecer una del proyecto es establecer una estrategia pragmática para controlar,estrategia pragmática para controlar,rastrear y monitorear un proyectorastrear y monitorear un proyectotécnico complejotécnico complejo
¿Por qué?¿Por qué?
¡Para que los resultados finales se ¡Para que los resultados finales se obtengan a tiempo y con calidad!obtengan a tiempo y con calidad!
• Alcance – entender el problema y el trabajo que Alcance – entender el problema y el trabajo que debe ser realizadodebe ser realizado
• Estimación – ¿qué tanto esfuerzo? ¿cuánto Estimación – ¿qué tanto esfuerzo? ¿cuánto tiempo?tiempo?
• Riesgo – ¿qué puede salir mal? ¿cómo evitarlo? Riesgo – ¿qué puede salir mal? ¿cómo evitarlo? ¿qué podemos hacer?¿qué podemos hacer?
• Calendarización – ¿cómo ubicamos los recursos a Calendarización – ¿cómo ubicamos los recursos a través del tiempo? ¿cuáles son los hitos?través del tiempo? ¿cuáles son los hitos?
• Estrategia de Control – ¿cómo controlar la calidad?Estrategia de Control – ¿cómo controlar la calidad?¿cómo controlar el cambio?¿cómo controlar el cambio?
PasosPasos
¡Escríbalo!¡Escríbalo!
PlanPlande de
ProyectoProyectodede
SoftwareSoftware
Alcance delAlcance del ProyectoProyectoEstimacionesEstimacionesRiesgosRiesgosCalendarioCalendarioEstrategia deEstrategia de ControlControl
4.24.2 Programa de actividadesPrograma de actividades
Definir conjuntos de Definir conjuntos de tareastareas• Datos de métricas que indican un área problema no Datos de métricas que indican un área problema no
deben ser considerados “negativos”. Estos datos deben ser considerados “negativos”. Estos datos son meramente un inidicador en la mejora del son meramente un inidicador en la mejora del procesoproceso
• No obsesionarse una simple métrica para exluicr No obsesionarse una simple métrica para exluicr otras métricas importantesotras métricas importantes
Definir una Red de Definir una Red de TareasTareas
I.1Alcance
del Concepto
Las 3 tareas I3 son aplicadas en paralelo a 3 diferentes funciones del concepto
I.2Planeación
del Concepto
I.3aValuación
de RiesgosTécnicos
I.3bValuación
de RiesgosTécnicos
I.3cValuación
de RiesgosTécnicos
Las 3 tareas I5 son aplicadas en paralelo a 3 diferentes funciones del concepto
I.5aImplement.
del Concepto
I.4.Prueba delConcepto
I.5bImplement.
del Concepto
I.5cImplement.
del Concepto
Integrara,b,c
I.6Reacción
delCliente
Utilizar herramientas Utilizar herramientas automatizadasautomatizadas
para generar una gráfica de Ganttpara generar una gráfica de GanttI.1.1 Identificar necesidades y beneficios Reunión con los clientes Identificar necesidades y restr. del proy. Establecer la declaración del producto Hito: Declaración del Producto DefinidaI.1.2 Definir la salida/control/entreada (OCI) Alcance de las funciones de teclado Alcance de las funciones por voz Alcance de los modos de interacción Alcance del documento de diagnóstico Alcance de otras funciones Documentar OCI (outpu, control, input) FTR: Revisar OCI con el cliente Revisar OCI como se requiere Hito: OCI definida (output,control,input)I.1.3 Definir la funcionalidad/comportamiento Definir las funciones de teclado Definir las funicones de entrada por voz Describir los modos de interacción Describir el chequeo de ortografía/redacc. Describir otras funciones del WP FTR: Revisar definición OCI con cliente Revisar como se requiere Hito: Definición de OCI completadaI.1.4 Aislar los elementos de software Hito: Elementos de Software DefinidosI.1.5 Investigar disponibilidad de Sw existente Investigar componentes de edición de texto Investigar componentes de entrada de voz Investigar componentes de adm. de arch. Investigar componentes ortogr./redacción Hito: Identificación de componente reusablesI.1.6 Definir características técnicas Evaluar la entrada por voz Evaluar el chequeo de gramática Hito: Características Técnicas EvaluadasI.1.7 Hacer una estimación rápida del tamañoI.1.8 Crear la Definición del Alcance Revisar el alcance de docs con el cliente Revisar el documento como se requiere Hito: Documento de Alcance completado
semana 1 semana 2 semana 3 semana 4Tareas del Proyecto semana 5
4.34.3 Factores de costos de Factores de costos de desarrollo de software.desarrollo de software.
El Costo del Cambio de El Costo del Cambio de RequerimientosRequerimientos
Definición Desarrollo Después de liberación
1x
1.5-6x
60-100x
Utilización vs. Utilización vs. DeterioroDeterioro
Curva idealizada
cambio
curva actual
Tasa deFallos
Tiempo
Incremento de tasa de fallasdebido a efectos colaterales
¿Por qué se pagan ¿Por qué se pagan las actividades de SQA?las actividades de SQA?
costo para encontrarcosto para encontrary corregir un defectoy corregir un defecto
100100
1010escalaescala
logarítmicalogarítmica
11
Req.Req.DiseñoDiseño
códigocódigopruebaprueba
pruebaspruebasde sistemade sistema
uso enuso encampocampo
0.750.75 1.001.001.501.50
3.003.00
10.0010.00
60.00-100.0060.00-100.00
4.44.4 Métricas de procesos de Métricas de procesos de desarrollo de software.desarrollo de software.
Medición y Medición y MétricaMétrica... recolectar métricas es muy difícil ... ... recolectar métricas es muy difícil ...
consume mucho tiempo ... es muyconsume mucho tiempo ... es muyburocrático ... no probarán nada ...burocrático ... no probarán nada ...
Cualquier cosas que necesitesCualquier cosas que necesitescuantificar debe ser medidocuantificar debe ser medidoy de alguna forma es superiory de alguna forma es superiora no medirlo del todoa no medirlo del todo
Tom GilbTom Gilb
¿Por qué debemos medir?¿Por qué debemos medir?
• SeñalarSeñalar• EvaluarEvaluar• PredecirPredecir• MejorarMejorar
Medidas para el Medidas para el AdministradorAdministrador
mediciónmedición
¿Qué ¿Qué usamos usamos como base?como base?
• • ¿tamaño?¿tamaño? • • ¿función?¿función?
métricas de proyectométricas de proyecto
métricas de procesométricas de procesoprocesoproceso
productoproducto
métricas de productométricas de producto
Métricas de ProcesoMétricas de Proceso• mayor enfoque sobre la calidad lograda mayor enfoque sobre la calidad lograda
como consecuencia del proceso repetible o como consecuencia del proceso repetible o administradoadministrado
• datos de SQA estadísticosdatos de SQA estadísticos– análisis y categorización de erroresanálisis y categorización de errores
• eficiencia en remoción de defectoseficiencia en remoción de defectos– propagación de fase en fasepropagación de fase en fase
• reuso de datosreuso de datos
Métricas de ProyectoMétricas de Proyecto
• Esfuerzo/Tiempo por Tarea de IngSwEsfuerzo/Tiempo por Tarea de IngSw• Errores no cubiertos por hora de revisiónErrores no cubiertos por hora de revisión• Fechas de entrega reales vs programadasFechas de entrega reales vs programadas• Cambios (número) y sus característicasCambios (número) y sus características• Distribución del esfuerzo sobre tareas de Distribución del esfuerzo sobre tareas de
IngSwIngSw
Métricas sobre ProductoMétricas sobre Producto• enfoque en la calidad de los entregablesenfoque en la calidad de los entregables• medidas del modelo de análisismedidas del modelo de análisis• complejidad del diseñocomplejidad del diseño
– complejidad algorítmica internacomplejidad algorítmica interna– complejidad arquitectónicacomplejidad arquitectónica– complejidad del flujo de datoscomplejidad del flujo de datos
• medidas de código (v.g. Halstead)medidas de código (v.g. Halstead)• medidas de la efectividad del procesomedidas de la efectividad del proceso
– v.g. eficiencia en remoción de defectosv.g. eficiencia en remoción de defectos
Lineamientos sobre Lineamientos sobre MétricasMétricas• Utilizar el sentido co´mún y la sensitividad organizacional al Utilizar el sentido co´mún y la sensitividad organizacional al
interpretar los datos de las métricasinterpretar los datos de las métricas• Proveer retroalimentación regular a los individuos y equipos que Proveer retroalimentación regular a los individuos y equipos que
han trabajado en recolectar medidas y métricas.han trabajado en recolectar medidas y métricas.• No utilizar las métricas para amedrentar a los individuosNo utilizar las métricas para amedrentar a los individuos• Trabajar con los practicantes y equipos para establecer metas y Trabajar con los practicantes y equipos para establecer metas y
métricas claras que serán utilizadas para medirlosmétricas claras que serán utilizadas para medirlos• Nunca utilizar las métricas para amenazar a los individuos o Nunca utilizar las métricas para amenazar a los individuos o
equiposequipos
Normalización de las Normalización de las métricasmétricasLos datos normalizados son utilizados para evaluarLos datos normalizados son utilizados para evaluar
el proceso y el producto (pero nunca a los individuos)el proceso y el producto (pero nunca a los individuos)
normalización orientada al tamaño
—Por líneas de código
normalización orientada a la función
—Por puntos función
Métricas típicas orientadas al Métricas típicas orientadas al tamañotamaño
• Errores por KLOC (Miles de Líneas de Código)Errores por KLOC (Miles de Líneas de Código)• Defectos por KLOCDefectos por KLOC• $ por LOC$ por LOC• páginas de documentos por KLOCpáginas de documentos por KLOC• errores / persona-meserrores / persona-mes• LOC / persona-mesLOC / persona-mes• $ / página de documentación$ / página de documentación
Métricas Típicas Orientadas a Métricas Típicas Orientadas a FunciónFunción
• errores por FP (cientos de líneas de código)errores por FP (cientos de líneas de código)• defectos por FPdefectos por FP• $ por FP$ por FP• páginas de documentación por FPpáginas de documentación por FP• determinar el tipo de proyectodeterminar el tipo de proyecto• valorar el grado de rigor requeridovalorar el grado de rigor requerido
– identificar el criterio de adapaciónidentificar el criterio de adapación– calcular el valor de Task Set Selector (TSS)calcular el valor de Task Set Selector (TSS)– interpretar el TSS para determinar el grado de rigorinterpretar el TSS para determinar el grado de rigor
• seleccionar las tareas de ingeniería de softwre apropiadasseleccionar las tareas de ingeniería de softwre apropiadas• FP por persona-mesFP por persona-mes
¿Por qué la preferencia a ¿Por qué la preferencia a FP?FP?
independencia del lenguaje de programación utiliza inmediatamente características contables del “dominio de información” del problema
no “penalizar” implementaciones querequieren menos LOCs que otras (vs. mantenimiento)
facilitan el reuso y favorecen a las iniciativasorientadas a objetos
Calcular Puntos Calcular Puntos FunciónFunciónAnalizar el dominio
de la información de laaplicaciòn y desarrollarel conteo
Pesar cada conteo porevaluación de lacomplejidad
evaluar la influencia defactores globales queafecten la aplicación
Calcular puntosfunción
Establecer el conteo para cada dominio de entrada e interfaces de sistema
Asignar el nivel de complejidad o pesopara cada conteo
Grado de importancia de factores externosFi tales como reuso, concurrencia, SO,...
Grado de influencia: N = Fi
Factor de complejidad: C = (0.65 + 0.01 x N)
Puntos función = (conteo x peso) x C
donde:
Analizar el Dominio de la Analizar el Dominio de la InformaciónInformación
factor de complejidad
puntos función
# de entradas de usuario
# de salidas de usuario # de consultas # de archivos # of interfaces ext.
parámetro de medida
3 4 3 7 5
conteofactor de ponderación
simple prom. complejo
4 5 4 10 7
6 7 6 15 10
= = = = =
conteo-total
X X X X X
Considerar la Considerar la ComplejidadComplejidadLos factores se tasan en una escala
0 (sin importancia) – 5 (muy importante)
comunicaciones de datosfunciones distribuidasconfiguración pesadatasa de transacciónentrada de datos en lìneaeficiencia para el usuario
actualización en líneaprocesamiento complejofacilidad de instalaciónfacilidad operacionalsites múltiplesfacilidad de cambios
Medición de la CalidadMedición de la Calidad
• Corrección – grado en el cual un programa opera Corrección – grado en el cual un programa opera conforme a las especificacionesconforme a las especificaciones
• Mantenibilidad – grado en el que un programa es Mantenibilidad – grado en el que un programa es conveniente al cambioconveniente al cambio
• Integridad – grado en el cual un programa permite Integridad – grado en el cual un programa permite el ataque externoel ataque externo
• Usabilidad – grado en el cual un programa es fácil Usabilidad – grado en el cual un programa es fácil de usarde usar
Eficiencia de Remoción de ErroresEficiencia de Remoción de ErroresDefect Removal EfficiencyDefect Removal Efficiency
DRE = (errores) / (errores + defectos)
donde
errores = problemas encontrados antes de la liberación
defectos = problemas encontrados después de la liberación
4.54.5 Estimación de costosEstimación de costos
Estimación de Estimación de CostosCostos
el alcance del proyecto debe serel alcance del proyecto debe serexplícitamente definidoexplícitamente definidola descomposición de tareas y/ola descomposición de tareas y/ofunciones es necesariafunciones es necesaria
las mediciones(métricas) históricaslas mediciones(métricas) históricasson de gran ayudason de gran ayudaPor lo menos 2 diferentes técnicasPor lo menos 2 diferentes técnicasdebieran utilizarsedebieran utilizarserecordar la falta de certidumbrerecordar la falta de certidumbreinherenteinherente
Técnicas de EstimaciónTécnicas de Estimación
• experiencia de proyectos pasados experiencia de proyectos pasados (similares)(similares)
• técnicas de estimación convencionaltécnicas de estimación convencional– división de tareas y estimación de esfuerzodivisión de tareas y estimación de esfuerzo– estimación de tamaño (v.g. FP)estimación de tamaño (v.g. FP)
• herramientas (v.g., Checkpoint)herramientas (v.g., Checkpoint)
Descomposición FuncionalDescomposición Funcional
DeclaraciónDeclaración
del Alcancedel Alcancerealizarrealizar
un un ““análisisanálisis
gramatical"gramatical"
descomposicióndescomposiciónfuncionalfuncional
Métodos Convencionales:Métodos Convencionales:LOC/FPLOC/FP
• calcular LOC/FP utilizando estimaciones de calcular LOC/FP utilizando estimaciones de valores del dominio de informaciónvalores del dominio de información
• recurrir al esfuerzo histórico de proyectosrecurrir al esfuerzo histórico de proyectos
Ejemplo de Ejemplo de LOCLOC
Funciones
UICF
2DGA
3DGA
DSM
CGDF
PCF
DAM
Totals
LOC estim. $/LOC Costo Effort (months)LOC/pm
2340
5380
6800
3350
4950
2140
8400
33,360
14
20
20
18
22
28
18
315
220
220
240
200
140
300
32,000
107,000
136,000
60,000
109,000
60,000
151,000
655,000
7.4
24.4
30.9
13.9
24.7
15.2
28.0
145.0
Ejemplo Ejemplo FPFP
# entradas de usuario # salidas de usuario # de consultas # de archivos # interfaces externas algoritmos
parámetro de medida
4 5 4 7 7 3
counteo
x x x x x x
conteo total
= = = = = =
peso
factor de complejidad
puntos función
0.25 p-m / FP = 120 p-m
40 25 12 4 4 60
160 125 48 28 28 180
569
.84
478
Estimación basada en Estimación basada en herramientasherramientas
características del proyectocaracterísticas del proyecto
factores de calibraciónfactores de calibración
datos de LOC/FPdatos de LOC/FP
Empirical Estimation Empirical Estimation ModelsModelsForma general:
esfuerzo = coefte_afinación * tamañoexponente
usualmentereferido comopersonas-mesde esfuerzorequerido
constante o númeroderivado basado en la complejidad delproyecto
usualmente LOCpero pueden serFPs
derivadoempíricamente
Lineamientos de EstimaciónLineamientos de Estimación
estimar utilizando por lo menos 2 técnicasestimar utilizando por lo menos 2 técnicas
obtener estimaciones de fuentes independientesobtener estimaciones de fuentes independientes
evitar el sobre-optimismo, asumir las dificultadesevitar el sobre-optimismo, asumir las dificultades
si se ha llegado a una estimación, trabajar sobresi se ha llegado a una estimación, trabajar sobreellaella
ajustarse al personal que hará el trabajo – ajustarse al personal que hará el trabajo – tienen el mayor impactotienen el mayor impacto
Decisión de Decisión de compracompra
sistema X
difícil (0.70)
$380,000$380,000
$450,000$450,000
$275,000$275,000
$310,000$310,000
$490,000$490,000
$210,000$210,000
$400,000$400,000
$350,000$350,000
$500,000$500,000
construir
Outsourcing
reusar
comprar
simple (0.30)
cambios menores(0.40)
cambiosmayores
(0.60)
simple (0.20)
complejo (0.80)
cambios menores(0.70)
cambios mayores(0.30)
sin cambios (0.80)
con cambios (0.40)
CCálculo del Costo Esperadoálculo del Costo Esperado
(RutaProbabilidad)(RutaProbabilidad)ii x (CostoRutaEstim) x (CostoRutaEstim) ii
Por ejemplo, el costo esperado para ‘construir’Por ejemplo, el costo esperado para ‘construir’
costo esperadocosto esperadoconstruirconstruir = 0.30($380K)+0.70($450K) = 0.30($380K)+0.70($450K)
en forma similar,en forma similar,
costo esperado=costo esperado=
= $429 K= $429 K
costo esperadocosto esperadoreuso reuso = $382K = $382K
costo esperadocosto esperadocomprarcomprar = $267K = $267K
costo esperadocosto esperadooutsrc outsrc = $410K = $410K
4.64.6 Evalu Evaluación de Riesgosación de Riesgos
Construir una Tabla de Construir una Tabla de RiesgosRiesgos
RiesgoRiesgo ProbabilidadProbabilidad ImpactoImpacto RMMMRMMM
(Risk(RiskMitigationMitigationMonitoringMonitoring
& & Management)Management)
(Admón.(Admón.y Monitoreoy Monitoreo
de la de la Mitigación deMitigación de
Riesgos)Riesgos)
Construir la Tabla de RiesgosConstruir la Tabla de Riesgos
• Estimar la Estimar la probabilidadprobabilidad de ocurrencia de ocurrencia• Estimar el Estimar el impactimpact sobre el proyecto en una sobre el proyecto en una
escala del 1 al 5, dondeescala del 1 al 5, donde– 1 = bajo impacto sobre el éxito del proyecto1 = bajo impacto sobre el éxito del proyecto– 5 = impacto catastrófico sobre el éxito del 5 = impacto catastrófico sobre el éxito del
proyectoproyecto
• ordenar la tabla por probabilidad e impactoordenar la tabla por probabilidad e impacto
• mitigaciónmitigación– ¿Cómo se puede evitar el riesgo?¿Cómo se puede evitar el riesgo?
• monitoreomonitoreo– ¿Qué factores podemos vigialar que nos permitan ser ¿Qué factores podemos vigialar que nos permitan ser
capaces de determinar si el riesgo es más o menos capaces de determinar si el riesgo es más o menos probable?probable?
• administraciónadministración– ¿con qué planes de contigencia contamos si el riesgo ¿con qué planes de contigencia contamos si el riesgo
se vuelve realidad?se vuelve realidad?
Administración, MonitoreoAdministración, Monitoreoy Mitigación de Riesgosy Mitigación de Riesgos
Riesgos Asociados al Riesgos Asociados al Tamaño del ProductoTamaño del Producto
•• ¿tamaño estimado del proyecto en LOC o FP?¿tamaño estimado del proyecto en LOC o FP?
•• ¿tamaño estimado del proyecto en número de ¿tamaño estimado del proyecto en número de programas, archivos, transacciones?programas, archivos, transacciones?
• • ¿porcentaje de desviación en el tamaño del ¿porcentaje de desviación en el tamaño del producto del promedio de los productos anteriores?producto del promedio de los productos anteriores?
• • ¿tamaño de las bases de datos creadas o utilizadas¿tamaño de las bases de datos creadas o utilizadas por el producto?por el producto?
• • ¿número de usuarios del producto?¿número de usuarios del producto?
• • ¿número de cambios proyectados a los ¿número de cambios proyectados a los requerimientos del proyecto?¿antes de la entrega?requerimientos del proyecto?¿antes de la entrega? ¿después de la entrega?¿después de la entrega?
• • ¿cantidad de software reusado?¿cantidad de software reusado?
Atributos que afectan al riesgo:Atributos que afectan al riesgo:
Riesgos Asociados al Riesgos Asociados al Impacto del NegocioImpacto del Negocio
• • ¿afectación de este producto en las utilidades de la empresa?¿afectación de este producto en las utilidades de la empresa?
• • ¿visibilidad de este producto por la alta gerencia?¿visibilidad de este producto por la alta gerencia?
• • ¿razonabilidad del tiempo de entrega?¿razonabilidad del tiempo de entrega?
• • ¿número de clientes que utilizarán este producto?¿número de clientes que utilizarán este producto?
• • restricciones de interoperabilidadrestricciones de interoperabilidad
• • ¿sofisticación de los usuarios finales?¿sofisticación de los usuarios finales?
• • ¿cantidad y calidad de documentación del producto que debe¿cantidad y calidad de documentación del producto que debe ser producida y enviada al cliente?ser producida y enviada al cliente?
• • restricciones gubernamentalesrestricciones gubernamentales
• • ¿costos de entregar tarde el producto?¿costos de entregar tarde el producto?
• • ¿costos asociados con un producto defectuoso?¿costos asociados con un producto defectuoso?
Atributos que afectan al riesgo:Atributos que afectan al riesgo:
Riesgos Asociados al ClienteRiesgos Asociados al Cliente
• • ¿se ha trabajado con ese cliente en el pasado?¿se ha trabajado con ese cliente en el pasado?
• • ¿el cliente tiene una idea sólida de lo que requiere?¿el cliente tiene una idea sólida de lo que requiere?
• • ¿el cliente está de acuerdo en trabajar contigo?¿el cliente está de acuerdo en trabajar contigo?
• • ¿el cliente participaría en las revisiones?¿el cliente participaría en las revisiones?
• • ¿el cliente es técnicamente sofisticado?¿el cliente es técnicamente sofisticado?
• • ¿el cliente permitiría el poder hacer el trabajo –¿el cliente permitiría el poder hacer el trabajo – esto es, el cliente resistiría observar sobre tus esto es, el cliente resistiría observar sobre tus hombros durante el trabajo técnico detallado?hombros durante el trabajo técnico detallado?
• • ¿el cliente entiende el proceso de ingeniería de¿el cliente entiende el proceso de ingeniería de software?software?
Cuestionamientos que deben ser resueltos:Cuestionamientos que deben ser resueltos:
Riesgos Asociados a la MadurezRiesgos Asociados a la Madurezdel Procesodel Proceso
• • ¿has establecido un framework de proceso común?¿has establecido un framework de proceso común?
• • ¿lo siguen los equipos de proyecto?¿lo siguen los equipos de proyecto?
• • ¿tienes soporte de administración para la ingeniería¿tienes soporte de administración para la ingeniería de software? de software?
• • ¿realizas proactivamente el SQA?¿realizas proactivamente el SQA?
• • ¿realizas las reuniones técnicas formales?¿realizas las reuniones técnicas formales?
• • ¿se utilizan herramientas CASE para el análisis,¿se utilizan herramientas CASE para el análisis, diseño y pruebas?diseño y pruebas?
• • ¿están las herramientas integradas con alguna otra?¿están las herramientas integradas con alguna otra?
• • ¿se han establecido formatos de documentos?¿se han establecido formatos de documentos?
Cuestionamientos que deben ser resueltos:Cuestionamientos que deben ser resueltos:
Riesgos de TecnologíaRiesgos de Tecnología
• • ¿la tecnología es nueva en tu organización?¿la tecnología es nueva en tu organización?
• • ¿se requieren nuevos algoritmos, tecnologías de E/S?¿se requieren nuevos algoritmos, tecnologías de E/S? • • ¿se involucra hardware nuevo o sin probar?¿se involucra hardware nuevo o sin probar?
• • ¿se interfaza la aplicación con un nuevo software?¿se interfaza la aplicación con un nuevo software?
• • ¿se requiere una interfaz de usuario especializada? ¿se requiere una interfaz de usuario especializada?
• • ¿la aplicación es radicalmente diferente?¿la aplicación es radicalmente diferente?
• • ¿estás utilizando nuevos métodos de ingeniería de Sw?¿estás utilizando nuevos métodos de ingeniería de Sw?
• • ¿estás utilizando métodos de desarrollo de software no¿estás utilizando métodos de desarrollo de software no convencionales, tales como métodos formales, convencionales, tales como métodos formales, inteligencia artificial, redes neuronales, etc?inteligencia artificial, redes neuronales, etc?
• • ¿hay restricciones de desempeño significativo?¿hay restricciones de desempeño significativo?
• • ¿existe la duda si la funcionalidad requerida es ¿existe la duda si la funcionalidad requerida es realizable?realizable?
Cuestiones que deben ser resueltas:Cuestiones que deben ser resueltas:
Riesgos Asociados a las PersonasRiesgos Asociados a las Personas
• • ¿está disponible el mejor personal?¿está disponible el mejor personal?• • ¿el staff tiene las habilidades adecuadas?¿el staff tiene las habilidades adecuadas?• • ¿hay suficiente personal disponible?¿hay suficiente personal disponible?• • ¿existe el compromiso completo?¿existe el compromiso completo?• • ¿habrá gente que trabaje parcialmente? ¿habrá gente que trabaje parcialmente?
• • ¿el staff tiene las expectativas adecuadas?¿el staff tiene las expectativas adecuadas?• • ¿el staff tiene el suficiente entrenamiento?¿el staff tiene el suficiente entrenamiento?
• • ¿podría la respuesta del staff ser baja?¿podría la respuesta del staff ser baja?
Cuestionamientos que deben ser resueltos:Cuestionamientos que deben ser resueltos:
Projecto:Projecto: Software Incrustado para el Sistema XYZ Software Incrustado para el Sistema XYZTipo de RiesgoTipo de Riesgo:: Riesgo de Calendarización Riesgo de CalendarizaciónPrioridad (1 bajo ... 5 critico):Prioridad (1 bajo ... 5 critico): 4 4Factor de Riesgo:Factor de Riesgo: El término del proyecto dependerá de las El término del proyecto dependerá de laspruebas, las cuales requieren de componentes de hardware quepruebas, las cuales requieren de componentes de hardware queestán bajo desarrollo. Los componentes de hardware puedenestán bajo desarrollo. Los componentes de hardware puedenser entregados tarde.ser entregados tarde.Probabilidad:Probabilidad: 60 % 60 %Impacto: Impacto: El término de proyecto puede retrasarse por cada día que El término de proyecto puede retrasarse por cada día queel hardware no esté disponible para uso de las pruebas de softwareel hardware no esté disponible para uso de las pruebas de softwareTécnica de monitoreo:Técnica de monitoreo: Revisiones de hitos calendarizados con el grupo de hardwareRevisiones de hitos calendarizados con el grupo de hardwarePlan de Contingencia:Plan de Contingencia: Modificación de la estrategia de pruebas para soportar el Modificación de la estrategia de pruebas para soportar el retraso usando simulación de softwareretraso usando simulación de softwareRecursos Estimados: 6 personas-mes a partir del 7/Mar/2002Recursos Estimados: 6 personas-mes a partir del 7/Mar/2002
Registro de la Información de RiesgoRegistro de la Información de Riesgo
4.74.7 Plan de Plan de Aseguramiento de la Aseguramiento de la Calidad del SoftwareCalidad del Software
Aseguramiento de la Calidad del Aseguramiento de la Calidad del SoftwareSoftware
Software Quality AssuranceSoftware Quality AssuranceRevisiones
TécniasFormales
SQASQA
Planeacióny
Revisión dePruebasMétrica
Análisisy
Reporteo
Definicióny
Estándaresde Proceso
Plan de Aseguramiento de Plan de Aseguramiento de CalidadCalidadEl objetivo principal es El objetivo principal es establecer los establecer los
lineamientos para implementar el Aseguramiento lineamientos para implementar el Aseguramiento de Calidad de Software en el ciclo de vida para de Calidad de Software en el ciclo de vida para cada elemento del software.cada elemento del software.Proporcionar un método para asignar el Nivel de Proporcionar un método para asignar el Nivel de Calidad al software controlado por el planCalidad al software controlado por el plan..
Contenido de un Programa de Aseguramiento de Calidad Contenido de un Programa de Aseguramiento de Calidad de Softwarede Software
(IEEE Std. 730)(IEEE Std. 730)
1.1. PropPropóósito. Esta seccisito. Esta seccióón especifica la intencin especifica la intencióón y alcance del Programa de n y alcance del Programa de Aseguramiento de Calidad. Establece la porciAseguramiento de Calidad. Establece la porcióón del Ciclo de Vida de Software n del Ciclo de Vida de Software cubierto por el programa para cada elemento de software.cubierto por el programa para cada elemento de software.2.2. Documentos de Referencia. Lista completa de documentos referenciados Documentos de Referencia. Lista completa de documentos referenciados en el texto del Programa.en el texto del Programa.3.3. AdministraciAdministracióón. Describe la organizacin. Describe la organizacióón, tareas y responsabilidades.n, tareas y responsabilidades.4.4. DocumentaciDocumentacióón. Se identifican los documentos para el desarrollo, n. Se identifican los documentos para el desarrollo, verificaciverificacióón y validacin y validacióón, uso y mantenimiento de el software. Esto incluirn, uso y mantenimiento de el software. Esto incluiráá los los criterios e identificacicriterios e identificacióón de las revisiones o auditorias.n de las revisiones o auditorias.5.5. Normas, prNormas, práácticas, convenios y medidas. Aqucticas, convenios y medidas. Aquíí se identifican los se identifican los reuqerimientos mandatorios, practicas recomendadasguias aceptadas y reuqerimientos mandatorios, practicas recomendadasguias aceptadas y sistemas de medida que se emplearsistemas de medida que se emplearáán por todos los relacionados con el n por todos los relacionados con el proyecto, incluyendo a vendedores.proyecto, incluyendo a vendedores.6.6. Revisiones y Auditorias. AquRevisiones y Auditorias. Aquíí se definir se definiráán las revisiones y auditorias n las revisiones y auditorias ttéécnicas y administrativas que sercnicas y administrativas que seráán llevadas a cabo conforme a los n llevadas a cabo conforme a los procedimientos existentes.procedimientos existentes.7.7. Pruebas. Pruebas.
REQUISITOS DOCUMENTALES DE ACUERDO AL NIVEL DEREQUISITOS DOCUMENTALES DE ACUERDO AL NIVEL DE C CALIDADALIDAD Documentación
NIVEL DE CALIDAD
A B C D Clasificación del software
R R R R
Especificación de Requerimientos de Software
R R R R
Descripción de Diseño de Software
R S S S
Código Fuente y Documentación del Programa
S S S S
Plan de Verificación y Validación de Software
R R S S
Reporte de Verificación y Validación
R R S S
Documentación para el Usuario
R R R R
Plan de Administración de la Configuración
R R R R
R - RequeridoS - Sugerido (Justificar sino se proporciona)
RETENCIÓN DE REGISTROS
LUGAR NIVEL DE CALIDAD
“A” “B” “C” “D”
Bóveda de Documentos
X X X X
Archivo Teleinformática y Planeación
X
TIEMPO
Vida de la Planta X X
Vida de uso del software Aplicación
X X
4.84.8 Administración de la Administración de la Configuración del SoftwareConfiguración del Software
¿Cuáles son estos Cambios?¿Cuáles son estos Cambios?
datosdatos
otrosotrosdocuementosdocuementos
códigocódigoPruebaPrueba
Plan dePlan deProyectoProyecto
Cambios en losCambios en losrequerimientos de negociorequerimientos de negocio
modelos de Swmodelos de Sw
Cambios en losCambios en losrequerimientos técnicosrequerimientos técnicos
Cambios en losCambios en losrequerimientos del usuariorequerimientos del usuario
Configuración deConfiguración deSoftwareSoftware
programasprogramas documentosdocumentos
datosdatosLas piezasLas piezas
Proceso de Control de Cambios—IProceso de Control de Cambios—I
requerimiento del cambio del usuariorequerimiento del cambio del usuario
el desarrollador evalúael desarrollador evalúa
reporte de cambio es generadoreporte de cambio es generado
la autoridad de control de cambios decidela autoridad de control de cambios decide
el requerimiento es encoladoel requerimiento es encoladopara la acciónpara la acción el requerimiento de el requerimiento de
cambio es denegado.cambio es denegado.Se informa al UsuarioSe informa al Usuario
la necesidad del cambios es reconocidala necesidad del cambios es reconocida
Proceso de Control de Cambios—IIProceso de Control de Cambios—II
Proceso de Control de Cambios-IIProceso de Control de Cambios-II
asignar personal a los SCIsasignar personal a los SCIs
checar salida a los SCIschecar salida a los SCIs
realizar los cambiosrealizar los cambios
revisar/auditar los cambiosrevisar/auditar los cambios
establecer una “línea de fondo” para pruebasestablecer una “línea de fondo” para pruebas
Proceso de Control de Cambios—IIIProceso de Control de Cambios—III
Proceso de Control de Cambios-IIIProceso de Control de Cambios-III
realizar actividades de SQA y pruebasrealizar actividades de SQA y pruebas
promover SCI para la inclusión en siguientes liberacionespromover SCI para la inclusión en siguientes liberaciones
reconstruir la versión apropiadareconstruir la versión apropiada
revisar/auditar los cambiosrevisar/auditar los cambios
incluir todos los cambios en la liberaciónincluir todos los cambios en la liberación
checar la entrada de los SCIs cambiadoschecar la entrada de los SCIs cambiados
• 1. Introducción• 1.1 Propósito del Plan• 1.2 Alcance• 1.3 Definiciones• 1.4 Referencias• • 2. Administración• 2.1 Organización• 2.2 Responsabilidades• 2.3 Procedimientos, Directivas y Políticas• • 3. Actividades• 3.1 Identificación de la configuración• 3.1.1 Identificación de elementos de configuración• 3.1.2 Asignación de nombres a elementos de configuración• 3.1.3 Obtención de elementos de configuración• 3.2 Control de Configuración• 3.2.1 Solicitud de cambios• 3.2.2 Evaluación de cambios• 3.2.3 Aprobación/Rechazo de cambios• 3.2.4 Implementación de cambios• 3.3 Estado de la configuración• 3.4 Auditorias y revisiones• 3.5 Control de interfaces• 3.6 Control de Vendedores/Subcontratistas• • 4. Planes, Programas• • 5. Recursos
PLAN DE ADMINISTRACION DE LA CONFIGURACION
top related