SlideShare una empresa de Scribd logo
SESIÓN 03: CALIDAD

Indicar que prevenir los errores es mejor que cometerlos en fases posteriores. Además que los errores
funcionales son los mas costosos de encontrar. Para ello, incluyendo fases de
revisión/inspección/walkthrough es más efectivo. Ir extrayendo un checklist a partir del análisis de
errores cometidos históricamente. Hacer comparativa entre Appraisal Vs Test.

1
2
3
4
5
6
7
8
9
10
11
12
PSP Quality focus [10min]
Calidad: Lo que el usuario quiere
En el proceso, que permita basicamente producir un resultado “Bug free”
Que no afecten la operación, ni causen inconvenientes,
Atributos de calidad del software (ilities)
Functionality: lo que el usuario quiere: condiciones normales y anormales, pero no solo eso
Performance (desempeño):
Usability (claro): para el usuario final
Reliable (confiable/confidence): confiable en los resultados y que queden capturados los datos

13
Al principio del proyecto se piensa que todo es perfecto, pero se van introduciendo pequeños
“pescaditos” que representan los defectos en las primeras fases. Luego estos pescaditos van
madurando mas y mas. Al final del proyecto ya son unas ballenas o tiburones que a veces no se pueden
pescar ni siquiera. Parecen monstruos que no se pueden eliminar (“no silver bullet”/”no hay balas de
plata”).
Ver: http://www.scribd.com/doc/44038107/No-Silver-Bullets-Espanol
• Dentro de desarrollo, se cometen errores: [los que comete la persona al seguir los procesos (o la
metodologia)]
• Defectos ( los que se inyectan al producto: el software no tiene errores sino defctos)
• Fallas (los que percibe o reporta [ej: el carro no está funcionando bien]. quien lo recibe debe
encontrar el defecto asociado para poderlo corregir)

Manejar los defectos antes de que aparezcan
• Remover los defectos
• Analizar las causas de los defectos
• Prevenir la aparición de defectos,
Pero cómo se encuentran los defectos de toda índole, cómo se encuentran los defectos en el área azul
de la figura hoy en día?: A través de Testing
• La industria del software es la única tecnología moderna que deja que los problemas aparezcan en
testing para manejar la calidad
• Si se sigue así, los cronogramas nunca se cierran, no se puede predecir cuándo terminar, se termin
con productos pobres en términos de calidad.
• Incluso existe una fase que se llama “estabilización” para corregir problemas que se debieron
detectar antes.
Ejemplo: un programa de 50mil LOC, con 25 defectos/KLOC, va a tener: 1250 defectos en total, y que en
promedio se pueda solucionar cada bug con prueba y todo en 10 horas, serán 12500 horas de trabajo.
Calcular los años de ésta tarea
Se deben encontrar métodos más eficientes, dentro de los métodos existentes para capturar defectos
encontramos:
• Unit, Integration, System Test
• Reviews /Inspections /Walkthroughs (ver siguiente slide): se ejecutan antes de compilar, requieren
intervencion humana.
14
• Compiling/Static code analysis (Lint)
[APPRAISAL VS TEST]
Appraisal (valoracion previa, enfoque preventivo): analizar la logica de procesamiento
y encontrar el defecto. Saber en qué punto de la lógica se presentó el defecto:
manipular la logica del programa y poder corregir un error funcional
Test (prueba unitaria, enfoque reactivo): encontrar el error cuando se totea el
programa

14
En cuanto a especificación, se entregan unos requerimientos que van evolucionando hasta ser vasos de
uso y prueba.
Sin embargo debemos estar preparados para controlar lo que sucede internamente en el software que
hacemos: prevenir.
Verification: evaluar si cumple los requerimientos
Validation: asegurar que cumple la necesidad
Ver Modelo en V de ITIL> Transición de Servicios:
(http://itilv3.osiatis.es/transicion_servicios_TI/gestion_entregas_despliegues/planificacion_entregas.ph
p)

15
Las estrategias de revisión son el método más efectivo para mejorar la calidad. Algunos métodos o
estrategias son los siguientes:
• Personal review: el individuo que hace la revisión examina su código, con el fin de encontrar tantos
errores como sea posible. Es clave usar un checklist, derivado de las revisíones. Es aconsejable tomar
un descanso antes de iniciar la revisión y revisar uno a uno los puntos del checklist (OJO: no todos a
la vez). La idea es que se capturen también los errores más obvios.
• Inspection: el equipo o algún otro integrante revisa el producto. No se trata entonces de discutir los
problemas identificados sino que se colaborar en pro de corregirlos
• Walkthroughs: un diseño de un producto presentado ante una audiencia
• Debe existir una responsabilidad profesional respecto a las revisiones:
• Antes de pedir una inspeccion, se deben eliminar tantos defectos como sea posible: tener respeto
por el tiempo del otro
• En lugar de concentrarse en errores obvios, el par que revisa, observará que la lógica de negocio
fluya más que todo.

16
Principios de quality management, son expuestos en el slide:
• La calidad de un sistema es determinada por la calidad del peor de sus compoentes
[>] cuando se tiene un error en el que no funciona la aplciación, el usuario dice: este sistema no sirve
(no dice, el componente x no funciona)
• La calidad de un producto es governada por los individuos que lo desarrolaron
• La caliad de un producto es governada por el proceso usado para desarrollarlo
• La clave será entonces los skills, acuerdos y disciplina a nivel de proceso personal, para mejorar la
calidad del producto

17
Medidas de Calidad [20min]
Psp tiene varias medidas de calidad relacionadas con calidad
Las siguientes medidas de calidad se observan en PSP:
• Yield: es la efectividad de “cazar defectos”
• Yield de Fase: porcentaje de defectos en un programa, que son removidos en una fase
particular
• Yield de Proceso: pordentaje de defectos removidos antes de entrar a la fase de compilacion
• Appraisal Cost of quality (Appraisal COQ): porcentaje del tiempo de desarrollo gastado en prevención
de errores
• Failure COQ: porcentaje de tiempo gastado en fases reactivas (compilacion y testing)
• Appraisal to Failure Ratio (AF/R) = = Appraisal COQ / Failure COQ
• DefectRemovalRate [FASE-X] = Numero de defectos encontrados por hora en esa fase
• DRL [FASE-X/FASE-Y] (Defect removal leverage)= comparación del DefectRemovalRate entre 2 fases
cómo calcular los defectos por KLOC
Cómo calcular el DRL (defect removal leverage)

18
19
20
Quality Profile & Performance [40 min]:
• permite evaluar un perfil de calidad, saber cómo calcularlo y extraerlo
• Es derivado de 5 items que caracterizan la calidad del proceso de software, y que se normalizan en el
rango [0..1] y se presentan en un gráfico radial o de kiviat.
• Existe una medida que computa los 5 elementos y se llama el Indice-PQI. Un valor en este cómputo
menor a 0.5 significa que el componente puede tener una muy baja calidad.
• Si tenemos más de un componente, se toma el producto del Indice-PQI de todos los componentes.

21
Assignment 03: [20min] Checklists para fases DLDR y CR
Para aprender PSP2
• Hacer checklist: con los resultados de los assignments anteriores.
• La idea es definir un checklist de revision de codigo.
• Indicar que también existen checlists de revision del diseño.
Enviar el assignment: Archivo .zip con:
• Documento de checklist para DLDR
• Documento de checklist para CR

22
Tutorial: PSP2 [20min]

(1) Sacar una copia de los datos en el processdashboard (C/Tools/SaveDataBackup +
C/Tools/OpenDataset)
(2) 2 fases nuevas se adicionan al proceso PSP (DLDR,CR). Además se incorporan al proceso las
checklists. Se adiciona el plan de calidad
En el plan de calidad se estima el tiempo para ejecutar estas fases
Se estiman los defectos que se van a encontrar en dichas fases
Se disminuyen los defectos encontrados en las fases de UT y COMP
Se disminuye el tiempo estimado en UT acorde a la eficiencia esperada para remover defectos
en fases de DLDR y C
(3) Iniciar como en las fases anteriores: iniciar con la fase de planeación, cree un diseño conceptual en
la fase de planeacin y entrelo en el SizeEstimationTemplate. abra el Wizard de PROBE.
(4) Requerimeintos: camcular media y desviacion. Usar losta encadenada.
(5) Seguir la guia de estimar los tiempos de revision:
DLDR = 0.5* DLD
CR = 0.5 * CODE
Ejemplo: se gastan 32 minutos en DLD y 40 min en CODE, DLDR=16min,CR=20min
(6) La idea es reducir el tiempo de UT, eliminando los defectos que se produjeron antes de UT
(7) Seguir los puntos de la pagina 13 del tutorial para elegir un yield-target
Digamos que se escoje un Yield de 0.75
El primer paso es Calcular NumDefRemovidos (DLDR) .Para ello multiplicar Yield por defectos
inyectados en DLD
-----------> Yield (FaseX) = NumDefRemovidos (FaseX) /NumDefAEntradaFaseX
-----------> Yield (DLRD) = NumDefRemovidos (DLDR) /NumDefAEntradaFaseDLDR
-----------> Yield (DLRD) = NumDefRemovidos (DLDR) /NumDefInyectadosDLD
-----------> 0.75
= x / 3 . x = 2.25
-----------> El valor resultante es el NumDefRemovidos (DLDR)
El segundo es Calcular NumDefectosRemovidos (CR). Para ello:
-----------> x = (NumDefInyectadosDLD - NumDefRemovidos (DLDR) + NumDefInyectadosCODE) *
Yield(CR) .
-----------> x = (3 – 2.25 + 7) * 0.75 = (7.75)*(0.75) = 5.81
Ello debido a que el despejar de la formula de yiel de fase X da este resultado.
23
-----------> Yield (FaseX) = NumDefRemovidos (FaseX) /NumDefAEntradaFaseX
El tercero es calcular los errors restantes para obtener los errores que
corregirá la fase de UT . Para ello
-----------> x = (NumDefInyectadosDLD + NumDefInyectadosCODE) –
(NumDefRemovidos (DLDR) + NumDefRemovidos (DLDR)) .
Verificar que la suma final permanece igual-

23

Más contenido relacionado

La actualidad más candente

Proceso de Software Una Visión General
Proceso de Software Una Visión GeneralProceso de Software Una Visión General
Proceso de Software Una Visión GeneralRuth Hidalgo Tene
 
Determinacion viabilidad---isiv---ds-i
Determinacion viabilidad---isiv---ds-iDeterminacion viabilidad---isiv---ds-i
Determinacion viabilidad---isiv---ds-i
Irving Pazo
 
Psp ingeniería del software
Psp ingeniería del softwarePsp ingeniería del software
Psp ingeniería del software
Andres Giovanni Lara Collazos
 
Psp (personal software process) guia 0 introducción
Psp (personal software process) guia 0 introducciónPsp (personal software process) guia 0 introducción
Psp (personal software process) guia 0 introducción
Alejandra Ceballos
 
Fases del Modelo PSP
Fases del Modelo PSPFases del Modelo PSP
Fases del Modelo PSP
Daniela Camacho
 
Script psp
Script pspScript psp
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de softwareClare Rodriguez
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operaciones
smbcreatividad
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionessmbcreatividad
 
Administración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de softwareAdministración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de softwarejose_macias
 
An evening with... Agile Metrics Meetup
An evening with... Agile Metrics MeetupAn evening with... Agile Metrics Meetup
An evening with... Agile Metrics Meetup
Arkhotech
 
Extreme programming (1)
Extreme programming (1)Extreme programming (1)
Extreme programming (1)Enrique Polo
 
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
Jennifer Andrea Cano Guevara
 
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto softwareMetodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Andres Hoyos Mosquera
 
Psp (personal software process)
Psp (personal software process)Psp (personal software process)
Psp (personal software process)
Luis Angel Robles Aguilar
 
Administración de Proyectos en la Ingeniería de Software
Administración de Proyectos en la Ingeniería de SoftwareAdministración de Proyectos en la Ingeniería de Software
Administración de Proyectos en la Ingeniería de Software
Grupo de Investigación de Ingeniería de Software e Ingeniería del Conocimiento
 

La actualidad más candente (20)

Psp ingeniería del software
Psp ingeniería del softwarePsp ingeniería del software
Psp ingeniería del software
 
Proceso de Software Una Visión General
Proceso de Software Una Visión GeneralProceso de Software Una Visión General
Proceso de Software Una Visión General
 
Determinacion viabilidad---isiv---ds-i
Determinacion viabilidad---isiv---ds-iDeterminacion viabilidad---isiv---ds-i
Determinacion viabilidad---isiv---ds-i
 
Psp ingeniería del software
Psp ingeniería del softwarePsp ingeniería del software
Psp ingeniería del software
 
Psp (personal software process) guia 0 introducción
Psp (personal software process) guia 0 introducciónPsp (personal software process) guia 0 introducción
Psp (personal software process) guia 0 introducción
 
Fases del Modelo PSP
Fases del Modelo PSPFases del Modelo PSP
Fases del Modelo PSP
 
Script psp
Script pspScript psp
Script psp
 
Ingenieria software
Ingenieria softwareIngenieria software
Ingenieria software
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de software
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operaciones
 
Patrones de Proceso BPM
Patrones de Proceso BPMPatrones de Proceso BPM
Patrones de Proceso BPM
 
Enfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operacionesEnfoque integral de proyectos y operaciones
Enfoque integral de proyectos y operaciones
 
Administración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de softwareAdministración de proyectos de desarrollo de software
Administración de proyectos de desarrollo de software
 
An evening with... Agile Metrics Meetup
An evening with... Agile Metrics MeetupAn evening with... Agile Metrics Meetup
An evening with... Agile Metrics Meetup
 
Extreme programming (1)
Extreme programming (1)Extreme programming (1)
Extreme programming (1)
 
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
 
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto softwareMetodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
 
Psp (personal software process)
Psp (personal software process)Psp (personal software process)
Psp (personal software process)
 
Programacion extrema_WR
Programacion extrema_WRProgramacion extrema_WR
Programacion extrema_WR
 
Administración de Proyectos en la Ingeniería de Software
Administración de Proyectos en la Ingeniería de SoftwareAdministración de Proyectos en la Ingeniería de Software
Administración de Proyectos en la Ingeniería de Software
 

Similar a Personal Software Process / Sesion 03

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
will2294
 
Técnicas avanzadas para la gestión de calidad
Técnicas avanzadas para la gestión de calidadTécnicas avanzadas para la gestión de calidad
Técnicas avanzadas para la gestión de calidad
Tatiana Enriquez
 
Presentación Tema 11
Presentación Tema 11Presentación Tema 11
Presentación Tema 11pceciliac
 
Fundamentos Rational Tester
Fundamentos Rational TesterFundamentos Rational Tester
Fundamentos Rational Tester
Professional Testing
 
2. El proceso del software
2. El proceso del software2. El proceso del software
2. El proceso del software
Luis Fernandez Vizcarra
 
Sesión 2: El proceso del software
Sesión 2: El proceso del softwareSesión 2: El proceso del software
Sesión 2: El proceso del software
Luis Fernández
 
Sesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareSesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del software
Coesi Consultoria
 
Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3
Bruno
 
las fases del proceso de programacion
las fases del proceso de programacionlas fases del proceso de programacion
las fases del proceso de programaciongabyota_123
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
Andhy H Palma
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de soft
Jazmin Cr
 
Tecnologias blandas
Tecnologias blandasTecnologias blandas
Tecnologias blandas
william RUBER VELAZQUEZ
 
Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1
Professional Testing
 
Modelo de cascadaa
Modelo de cascadaaModelo de cascadaa
Modelo de cascadaamendez45
 
Modelo espiral win win
Modelo espiral win winModelo espiral win win
Modelo espiral win winkhinkhe
 
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software  Unidad 2 - Software Enginnering - Ian sommervilleProcesos de software  Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Matias Gonzalo Acosta
 
pruebas de calidad.pdf
pruebas de calidad.pdfpruebas de calidad.pdf
pruebas de calidad.pdf
Chirmi1
 
16 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 200916 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 2009
Pepe
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
codicia316
 

Similar a Personal Software Process / Sesion 03 (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Técnicas avanzadas para la gestión de calidad
Técnicas avanzadas para la gestión de calidadTécnicas avanzadas para la gestión de calidad
Técnicas avanzadas para la gestión de calidad
 
Presentación Tema 11
Presentación Tema 11Presentación Tema 11
Presentación Tema 11
 
Fundamentos Rational Tester
Fundamentos Rational TesterFundamentos Rational Tester
Fundamentos Rational Tester
 
Exposicion de ingenieria
Exposicion de ingenieriaExposicion de ingenieria
Exposicion de ingenieria
 
2. El proceso del software
2. El proceso del software2. El proceso del software
2. El proceso del software
 
Sesión 2: El proceso del software
Sesión 2: El proceso del softwareSesión 2: El proceso del software
Sesión 2: El proceso del software
 
Sesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareSesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del software
 
Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3
 
las fases del proceso de programacion
las fases del proceso de programacionlas fases del proceso de programacion
las fases del proceso de programacion
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de soft
 
Tecnologias blandas
Tecnologias blandasTecnologias blandas
Tecnologias blandas
 
Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1
 
Modelo de cascadaa
Modelo de cascadaaModelo de cascadaa
Modelo de cascadaa
 
Modelo espiral win win
Modelo espiral win winModelo espiral win win
Modelo espiral win win
 
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software  Unidad 2 - Software Enginnering - Ian sommervilleProcesos de software  Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
 
pruebas de calidad.pdf
pruebas de calidad.pdfpruebas de calidad.pdf
pruebas de calidad.pdf
 
16 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 200916 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 2009
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
 

Más de andres hurtado

mintic_machinelearning101_coursera
mintic_machinelearning101_courseramintic_machinelearning101_coursera
mintic_machinelearning101_coursera
andres hurtado
 
cia2 charla arquitecturadesoftware ai
cia2 charla arquitecturadesoftware aicia2 charla arquitecturadesoftware ai
cia2 charla arquitecturadesoftware ai
andres hurtado
 
estimacion
estimacionestimacion
estimacion
andres hurtado
 
ComputacionParaTodos / SocioTecnologico
ComputacionParaTodos / SocioTecnologicoComputacionParaTodos / SocioTecnologico
ComputacionParaTodos / SocioTecnologico
andres hurtado
 
Docker 101
Docker 101Docker 101
Docker 101
andres hurtado
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
andres hurtado
 
Git 101
Git 101Git 101
BigData 101 / Cursillo (Parte5)
 BigData 101 / Cursillo (Parte5) BigData 101 / Cursillo (Parte5)
BigData 101 / Cursillo (Parte5)
andres hurtado
 
BigData 101 / Cursillo (Parte4)
 BigData 101 / Cursillo (Parte4) BigData 101 / Cursillo (Parte4)
BigData 101 / Cursillo (Parte4)
andres hurtado
 
BigData 101 / Cursillo (Parte3)
BigData 101 / Cursillo (Parte3)BigData 101 / Cursillo (Parte3)
BigData 101 / Cursillo (Parte3)
andres hurtado
 
BigData 101 / Cursillo (Parte2)
BigData 101 / Cursillo (Parte2)BigData 101 / Cursillo (Parte2)
BigData 101 / Cursillo (Parte2)
andres hurtado
 
BigData 101 / Cursillo (Parte1)
BigData 101 / Cursillo (Parte1)BigData 101 / Cursillo (Parte1)
BigData 101 / Cursillo (Parte1)
andres hurtado
 
BigData 101 / Cursillo (Parte0)
BigData 101 / Cursillo (Parte0)BigData 101 / Cursillo (Parte0)
BigData 101 / Cursillo (Parte0)
andres hurtado
 
Enterprise Architect SparxSystems
Enterprise Architect SparxSystemsEnterprise Architect SparxSystems
Enterprise Architect SparxSystems
andres hurtado
 
ITIL Workshop (2 horas introductorias)
ITIL Workshop (2 horas introductorias)ITIL Workshop (2 horas introductorias)
ITIL Workshop (2 horas introductorias)
andres hurtado
 
BusinessIntelligence Introduction
BusinessIntelligence IntroductionBusinessIntelligence Introduction
BusinessIntelligence Introduction
andres hurtado
 
Personal Software Process / Sesion 05
Personal Software Process / Sesion 05Personal Software Process / Sesion 05
Personal Software Process / Sesion 05
andres hurtado
 
Personal Software Process / Sesion 04
Personal Software Process / Sesion 04Personal Software Process / Sesion 04
Personal Software Process / Sesion 04
andres hurtado
 
Personal Software Process / Agenda
Personal Software Process / AgendaPersonal Software Process / Agenda
Personal Software Process / Agenda
andres hurtado
 

Más de andres hurtado (19)

mintic_machinelearning101_coursera
mintic_machinelearning101_courseramintic_machinelearning101_coursera
mintic_machinelearning101_coursera
 
cia2 charla arquitecturadesoftware ai
cia2 charla arquitecturadesoftware aicia2 charla arquitecturadesoftware ai
cia2 charla arquitecturadesoftware ai
 
estimacion
estimacionestimacion
estimacion
 
ComputacionParaTodos / SocioTecnologico
ComputacionParaTodos / SocioTecnologicoComputacionParaTodos / SocioTecnologico
ComputacionParaTodos / SocioTecnologico
 
Docker 101
Docker 101Docker 101
Docker 101
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
Git 101
Git 101Git 101
Git 101
 
BigData 101 / Cursillo (Parte5)
 BigData 101 / Cursillo (Parte5) BigData 101 / Cursillo (Parte5)
BigData 101 / Cursillo (Parte5)
 
BigData 101 / Cursillo (Parte4)
 BigData 101 / Cursillo (Parte4) BigData 101 / Cursillo (Parte4)
BigData 101 / Cursillo (Parte4)
 
BigData 101 / Cursillo (Parte3)
BigData 101 / Cursillo (Parte3)BigData 101 / Cursillo (Parte3)
BigData 101 / Cursillo (Parte3)
 
BigData 101 / Cursillo (Parte2)
BigData 101 / Cursillo (Parte2)BigData 101 / Cursillo (Parte2)
BigData 101 / Cursillo (Parte2)
 
BigData 101 / Cursillo (Parte1)
BigData 101 / Cursillo (Parte1)BigData 101 / Cursillo (Parte1)
BigData 101 / Cursillo (Parte1)
 
BigData 101 / Cursillo (Parte0)
BigData 101 / Cursillo (Parte0)BigData 101 / Cursillo (Parte0)
BigData 101 / Cursillo (Parte0)
 
Enterprise Architect SparxSystems
Enterprise Architect SparxSystemsEnterprise Architect SparxSystems
Enterprise Architect SparxSystems
 
ITIL Workshop (2 horas introductorias)
ITIL Workshop (2 horas introductorias)ITIL Workshop (2 horas introductorias)
ITIL Workshop (2 horas introductorias)
 
BusinessIntelligence Introduction
BusinessIntelligence IntroductionBusinessIntelligence Introduction
BusinessIntelligence Introduction
 
Personal Software Process / Sesion 05
Personal Software Process / Sesion 05Personal Software Process / Sesion 05
Personal Software Process / Sesion 05
 
Personal Software Process / Sesion 04
Personal Software Process / Sesion 04Personal Software Process / Sesion 04
Personal Software Process / Sesion 04
 
Personal Software Process / Agenda
Personal Software Process / AgendaPersonal Software Process / Agenda
Personal Software Process / Agenda
 

Último

Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
DiegoCampos433849
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
Leidyfuentes19
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
44652726
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
JuanPrez962115
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
DanielErazoMedina
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 

Último (20)

Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 

Personal Software Process / Sesion 03

  • 1. SESIÓN 03: CALIDAD Indicar que prevenir los errores es mejor que cometerlos en fases posteriores. Además que los errores funcionales son los mas costosos de encontrar. Para ello, incluyendo fases de revisión/inspección/walkthrough es más efectivo. Ir extrayendo un checklist a partir del análisis de errores cometidos históricamente. Hacer comparativa entre Appraisal Vs Test. 1
  • 2. 2
  • 3. 3
  • 4. 4
  • 5. 5
  • 6. 6
  • 7. 7
  • 8. 8
  • 9. 9
  • 10. 10
  • 11. 11
  • 12. 12
  • 13. PSP Quality focus [10min] Calidad: Lo que el usuario quiere En el proceso, que permita basicamente producir un resultado “Bug free” Que no afecten la operación, ni causen inconvenientes, Atributos de calidad del software (ilities) Functionality: lo que el usuario quiere: condiciones normales y anormales, pero no solo eso Performance (desempeño): Usability (claro): para el usuario final Reliable (confiable/confidence): confiable en los resultados y que queden capturados los datos 13
  • 14. Al principio del proyecto se piensa que todo es perfecto, pero se van introduciendo pequeños “pescaditos” que representan los defectos en las primeras fases. Luego estos pescaditos van madurando mas y mas. Al final del proyecto ya son unas ballenas o tiburones que a veces no se pueden pescar ni siquiera. Parecen monstruos que no se pueden eliminar (“no silver bullet”/”no hay balas de plata”). Ver: http://www.scribd.com/doc/44038107/No-Silver-Bullets-Espanol • Dentro de desarrollo, se cometen errores: [los que comete la persona al seguir los procesos (o la metodologia)] • Defectos ( los que se inyectan al producto: el software no tiene errores sino defctos) • Fallas (los que percibe o reporta [ej: el carro no está funcionando bien]. quien lo recibe debe encontrar el defecto asociado para poderlo corregir) Manejar los defectos antes de que aparezcan • Remover los defectos • Analizar las causas de los defectos • Prevenir la aparición de defectos, Pero cómo se encuentran los defectos de toda índole, cómo se encuentran los defectos en el área azul de la figura hoy en día?: A través de Testing • La industria del software es la única tecnología moderna que deja que los problemas aparezcan en testing para manejar la calidad • Si se sigue así, los cronogramas nunca se cierran, no se puede predecir cuándo terminar, se termin con productos pobres en términos de calidad. • Incluso existe una fase que se llama “estabilización” para corregir problemas que se debieron detectar antes. Ejemplo: un programa de 50mil LOC, con 25 defectos/KLOC, va a tener: 1250 defectos en total, y que en promedio se pueda solucionar cada bug con prueba y todo en 10 horas, serán 12500 horas de trabajo. Calcular los años de ésta tarea Se deben encontrar métodos más eficientes, dentro de los métodos existentes para capturar defectos encontramos: • Unit, Integration, System Test • Reviews /Inspections /Walkthroughs (ver siguiente slide): se ejecutan antes de compilar, requieren intervencion humana. 14
  • 15. • Compiling/Static code analysis (Lint) [APPRAISAL VS TEST] Appraisal (valoracion previa, enfoque preventivo): analizar la logica de procesamiento y encontrar el defecto. Saber en qué punto de la lógica se presentó el defecto: manipular la logica del programa y poder corregir un error funcional Test (prueba unitaria, enfoque reactivo): encontrar el error cuando se totea el programa 14
  • 16. En cuanto a especificación, se entregan unos requerimientos que van evolucionando hasta ser vasos de uso y prueba. Sin embargo debemos estar preparados para controlar lo que sucede internamente en el software que hacemos: prevenir. Verification: evaluar si cumple los requerimientos Validation: asegurar que cumple la necesidad Ver Modelo en V de ITIL> Transición de Servicios: (http://itilv3.osiatis.es/transicion_servicios_TI/gestion_entregas_despliegues/planificacion_entregas.ph p) 15
  • 17. Las estrategias de revisión son el método más efectivo para mejorar la calidad. Algunos métodos o estrategias son los siguientes: • Personal review: el individuo que hace la revisión examina su código, con el fin de encontrar tantos errores como sea posible. Es clave usar un checklist, derivado de las revisíones. Es aconsejable tomar un descanso antes de iniciar la revisión y revisar uno a uno los puntos del checklist (OJO: no todos a la vez). La idea es que se capturen también los errores más obvios. • Inspection: el equipo o algún otro integrante revisa el producto. No se trata entonces de discutir los problemas identificados sino que se colaborar en pro de corregirlos • Walkthroughs: un diseño de un producto presentado ante una audiencia • Debe existir una responsabilidad profesional respecto a las revisiones: • Antes de pedir una inspeccion, se deben eliminar tantos defectos como sea posible: tener respeto por el tiempo del otro • En lugar de concentrarse en errores obvios, el par que revisa, observará que la lógica de negocio fluya más que todo. 16
  • 18. Principios de quality management, son expuestos en el slide: • La calidad de un sistema es determinada por la calidad del peor de sus compoentes [>] cuando se tiene un error en el que no funciona la aplciación, el usuario dice: este sistema no sirve (no dice, el componente x no funciona) • La calidad de un producto es governada por los individuos que lo desarrolaron • La caliad de un producto es governada por el proceso usado para desarrollarlo • La clave será entonces los skills, acuerdos y disciplina a nivel de proceso personal, para mejorar la calidad del producto 17
  • 19. Medidas de Calidad [20min] Psp tiene varias medidas de calidad relacionadas con calidad Las siguientes medidas de calidad se observan en PSP: • Yield: es la efectividad de “cazar defectos” • Yield de Fase: porcentaje de defectos en un programa, que son removidos en una fase particular • Yield de Proceso: pordentaje de defectos removidos antes de entrar a la fase de compilacion • Appraisal Cost of quality (Appraisal COQ): porcentaje del tiempo de desarrollo gastado en prevención de errores • Failure COQ: porcentaje de tiempo gastado en fases reactivas (compilacion y testing) • Appraisal to Failure Ratio (AF/R) = = Appraisal COQ / Failure COQ • DefectRemovalRate [FASE-X] = Numero de defectos encontrados por hora en esa fase • DRL [FASE-X/FASE-Y] (Defect removal leverage)= comparación del DefectRemovalRate entre 2 fases cómo calcular los defectos por KLOC Cómo calcular el DRL (defect removal leverage) 18
  • 20. 19
  • 21. 20
  • 22. Quality Profile & Performance [40 min]: • permite evaluar un perfil de calidad, saber cómo calcularlo y extraerlo • Es derivado de 5 items que caracterizan la calidad del proceso de software, y que se normalizan en el rango [0..1] y se presentan en un gráfico radial o de kiviat. • Existe una medida que computa los 5 elementos y se llama el Indice-PQI. Un valor en este cómputo menor a 0.5 significa que el componente puede tener una muy baja calidad. • Si tenemos más de un componente, se toma el producto del Indice-PQI de todos los componentes. 21
  • 23. Assignment 03: [20min] Checklists para fases DLDR y CR Para aprender PSP2 • Hacer checklist: con los resultados de los assignments anteriores. • La idea es definir un checklist de revision de codigo. • Indicar que también existen checlists de revision del diseño. Enviar el assignment: Archivo .zip con: • Documento de checklist para DLDR • Documento de checklist para CR 22
  • 24. Tutorial: PSP2 [20min] (1) Sacar una copia de los datos en el processdashboard (C/Tools/SaveDataBackup + C/Tools/OpenDataset) (2) 2 fases nuevas se adicionan al proceso PSP (DLDR,CR). Además se incorporan al proceso las checklists. Se adiciona el plan de calidad En el plan de calidad se estima el tiempo para ejecutar estas fases Se estiman los defectos que se van a encontrar en dichas fases Se disminuyen los defectos encontrados en las fases de UT y COMP Se disminuye el tiempo estimado en UT acorde a la eficiencia esperada para remover defectos en fases de DLDR y C (3) Iniciar como en las fases anteriores: iniciar con la fase de planeación, cree un diseño conceptual en la fase de planeacin y entrelo en el SizeEstimationTemplate. abra el Wizard de PROBE. (4) Requerimeintos: camcular media y desviacion. Usar losta encadenada. (5) Seguir la guia de estimar los tiempos de revision: DLDR = 0.5* DLD CR = 0.5 * CODE Ejemplo: se gastan 32 minutos en DLD y 40 min en CODE, DLDR=16min,CR=20min (6) La idea es reducir el tiempo de UT, eliminando los defectos que se produjeron antes de UT (7) Seguir los puntos de la pagina 13 del tutorial para elegir un yield-target Digamos que se escoje un Yield de 0.75 El primer paso es Calcular NumDefRemovidos (DLDR) .Para ello multiplicar Yield por defectos inyectados en DLD -----------> Yield (FaseX) = NumDefRemovidos (FaseX) /NumDefAEntradaFaseX -----------> Yield (DLRD) = NumDefRemovidos (DLDR) /NumDefAEntradaFaseDLDR -----------> Yield (DLRD) = NumDefRemovidos (DLDR) /NumDefInyectadosDLD -----------> 0.75 = x / 3 . x = 2.25 -----------> El valor resultante es el NumDefRemovidos (DLDR) El segundo es Calcular NumDefectosRemovidos (CR). Para ello: -----------> x = (NumDefInyectadosDLD - NumDefRemovidos (DLDR) + NumDefInyectadosCODE) * Yield(CR) . -----------> x = (3 – 2.25 + 7) * 0.75 = (7.75)*(0.75) = 5.81 Ello debido a que el despejar de la formula de yiel de fase X da este resultado. 23
  • 25. -----------> Yield (FaseX) = NumDefRemovidos (FaseX) /NumDefAEntradaFaseX El tercero es calcular los errors restantes para obtener los errores que corregirá la fase de UT . Para ello -----------> x = (NumDefInyectadosDLD + NumDefInyectadosCODE) – (NumDefRemovidos (DLDR) + NumDefRemovidos (DLDR)) . Verificar que la suma final permanece igual- 23