![Page 1: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/1.jpg)
CompuwareCorporation
Maximizar la Calidad de la aplicación con Continuous Integrated Testing
![Page 2: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/2.jpg)
Page 2
Un líder en la industria del Software� 32 años ayudando a las principales compañías del mundo a aumentar el valor de
las TI
� 8,000+ empleados
� 84 oficinas en 60 paises
� 3 Laboratorios de desarrollo + TIC certificado CMM nivel 3
� Situación financiera sólida y estable
– Ingresos de 1.230 millones de $ en FY’05
– Alta liquidez, sin deudas
– 40% de Facturación en EMEA
� Nombrada por la revista Fortune como una de las 10 compañías de software más admiradas.
� Nuestro compromiso: VALOR real y ROI para cada EURO que invierta
![Page 3: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/3.jpg)
Page 3
IT Operations
Application Development
IT Management
IT Operations
Application Development
IT Operations
Soluciones Compuware
![Page 4: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/4.jpg)
Page 4
SERVICIO SANITARIOS:Perdidas de $78M durante un trimestre debido a los problemas de calidad en susaplicaciones (HMO). Los retrasos en los pagos y los errores llevaron a sobreestimar las ganancias, y comoresultado dio lugar a una multa de 3M$ por parte del gobierno.
EMPRESAS DE MANUFACTURASLa implantación de un sistemainformático de 115M $ sin ningún tipo de pruebas. Debido a poblemas de software que podrían haber sido detectados con anterioridad, estáempresa informó de una reducción del 12% en sus ventas y de un 19% en sus ingresos.
TRAGEDIAS:En los últimos 16 años, los errores de software han provocado accidentes que van desde el lanzamiento de un satélite corrupto, la caida del sistema de ambulancias en Lóndres y hasta la destrucción de un avión de pasajeros por una mala información dada a un aviónmilitar.
Existe un precio a pagar por la Baja Calidad del Código?
"The average cost of unplanned downtime for a mission-critical application is $100,000 per hour" Theresa Lanowitz Gartner App Dev Summit in Sept 04
![Page 5: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/5.jpg)
Page 5
¿Cuál es el problema? El Desarrollo de Aplicaciones siempreha tendido a cometer
errores1965“los desarrolladorescometen 1 error por cada18 líneas de código”
Profesor del ComputingImperial College London
1999“7% de todos loscambios tuvieronerrores”Estudio de los cambios del Año
2000 (Cutter Organisation)
Vamos a peor !!!!!
2004
“De media, un programador profesionalcomete entre 100 y 150 errores por cada1000 líneas de código”
Mann, Charles. “Why Software is so Bad”
Technology Review
5.5%
7%
10%-15%
![Page 6: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/6.jpg)
Page 6
¿Cuanto cuesta corregir un Defecto?
“Los errores descubiertosdurante la fase de pruebascuesta resolverlos entre un 15 a un 75 mas de tiempo quelos que son descubiertos y solucionados en la fase de codificación.”
Software Engineering Economics, Barry W. Boehm
El Coste asociado a corregir un defectoaumenta según avanza el ciclo de vidade la aplicación
![Page 7: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/7.jpg)
Page 7
Que ocurre hoy� Defectos e incidencias relacionadas con el rendimientoy la
escalabilidad se encuentran en fases tardìas del ciclo de desarrollo.
� El código se reenvía a Desarrollo lo que provoca retrasos en lasentregas, consecuencia de lo cual la fase de Testing se vereducida.
� Muchas incidencias se encuentran una vez la aplicación está en producción esto se debe a la reducción de la fase de Testing.
Planning Coding Testing Production
Go Live
Debugging
![Page 8: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/8.jpg)
Page 8
“Per reviews” de software pueden captar hasta el 60% de los defectos. Institute of Electrical and Electronics Engineers
Gracias a los Diseños formales y a las Inspecciones de Código se mejora hasta en un 65% en la eliminación de defectos.
La mayoria de los planes de Testing están por debajo del 30% de eficiencia
“Software Quality: Analysis and Guidelines for Success” Capers Jones
Existe un camino que aune Coste con Efectividad para solucionar este
problema?
![Page 9: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/9.jpg)
Page 9
Continuous Integrated TestingProbar antes, Probar a menudo…
Pruebas Automáticas, Pruebas con Confianza!
� Tres componentes en el Proceso– Recolección
– Análisis
– Resolución
� Incrementar el número de ciclos de pruebas por proyecto
� Reducir el uso innecesario de recursos– Tests completamente automátizados permiten ser ejecutados de
forma desatendida.
Planning Coding Testing Production
Go Live ?
Continuous Integrated Testing
Test Cases
![Page 10: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/10.jpg)
Page 10
Qué esContinuous Integrated Testing?
� Proceso Repetible, Consistente e Iterativo quemejora la calidad de la aplicación
� Comenzar las pruebas a la vez que la codificación!
– Encontrar defectos nada mas comenzar el desarrollo
– Las pruebas son efectivasdesde el primer dia del desarrollo
– Se mueve código al grupode Pruebas con confianza
� Incrementa de forma exponencial los ciclosde Test!
– Se ejecuta un ciclo cadadía
– Se prueba de nuevo lo arreglado ese día
– Traspaso de pruebasválidas al equipo de pruebas
![Page 11: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/11.jpg)
Page 11
El valor de incorporar CIT:� Muchos errores de desarrollo pueden ser descubiertos pronto ~ Al tiempo en que
son escritos.
– Incidencias de rendimiento y memoría pueden ser descubiertas durante la ejecución de pruebasdiarias.
� Detectado el código que no es ejecutado.
– Recoger estadísticas de la cobertura de código minuciosas trás la ejecución de los scripts de pruebas.
� Según avanzan los días los scripts de pruebas crecen exponencialemente.
– Según los módulos son desarrollados, se crean los scripts de pruebas para ellos cada día.
– Según los scripts de pruebas son desarrollados cada día, se añaden al conjunto de pruebas a realizarde forma desatendida cada noche.
� Solo el denominado Código de Calidad se envía a la faseformal de Pruebasfuncionales y de stress.
� De esta forma las capacidades de los desarrolladores se alinean con los objetivos de Negocio de las empresas.
![Page 12: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/12.jpg)
Page 12Compuware: Solución de Calidad SW
RequisitosIntegrados
RequisitosIndividuales
PruebasFuncionales
PruebasCarga
SI
PruebasManuales
PruebasAutomat.
AplicaciónCorrecta
SI
NO
Gestión de Defectos
DatosPrueba
Pruebas Caja
Blanca
Plan de Pruebas
DatosPrueba
[CIT]
![Page 13: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/13.jpg)
Page 13
“Hardware Store” es una aplicación web que va a ser desarrollada usando CIT.
![Page 14: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/14.jpg)
Page 14
El desarrollador se encargará de generar el código necesario.
A su vez el establecimiento de reglas detectan el nivel de calidad de ese código
![Page 15: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/15.jpg)
Page 15
• Análisis estático de código• Optimización del código:
•Mejorar el tiempo de respuesta•Reducir Errores•Reducir consumo de recursos
Scripts automáticos de TP lanzados en modo desatendido sobre el código ya desarrollado. Ayudará a mejorar el rendimiento ya a conocer la cobertura de código.A comparar las mejoras tras ciertos cambios.Entega de scripts automáticos al equipo de Testing
![Page 16: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/16.jpg)
Page 16
• Análisis estático de código• Optimización del código:
•Mejorar el tiempo de respuesta•Reducir Errores•Reducir consumo de recursos
• Optimización del código:•Mejorar el tiempo de respuesta•Reducir Errores•Reducir consumo de recursos
• Medición de la cobertura• Comparativas
![Page 17: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/17.jpg)
Page 17
Static Code Analysis
DevPartner ha remarcado que el usode la clase StringBuilder podría ser
mas eficiente en este punto del código
![Page 18: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/18.jpg)
Page 18
Memory & Performance Analysis
La Memoría y el Rendimiento se venimpatados por no haber usado la clase
que se recomendaba.
![Page 19: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/19.jpg)
Page 19
Application Performance ResultsBefore and After the repair is made
![Page 20: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/20.jpg)
Page 20
Code Coverage Analysis
Quickly identify how thorough your test scripts are by seeing what code has
not been executed.
![Page 21: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/21.jpg)
Page 21
Automated Test Script
La opción de Captura de TestPartner se usa para generar los scripts
automáticos.
![Page 22: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/22.jpg)
Page 22Compuware: Solución de Calidad SW
RequisitosIntegrados
RequisitosIndividuales
PruebasFuncionales
PruebasCarga
SI
PruebasManuales
PruebasAutomat.
AplicaciónCorrecta
SI
NO
Gestión de Defectos
DatosPrueba
Pruebas Caja
Blanca
Plan de Pruebas
DatosPrueba
[RBT]
[CIT]
![Page 23: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/23.jpg)
Page 23
CIT Resumen
� Automatizar muchas de las tareas manuales:– Revisión de Código, Análisis de Memoria y Rendimiento y
Análisis de Cobertura de Código.
� Mayor rapidez en el aprendizaje:– Ayuda Online, tutoriales, ejemplos, enlaces a white papers.
� Creación de “best practices” repetibles
� Reducir tiempo conjunto entre desarrollo y pruebas.
� Desarrollando aplicaciones con mejor rendimiento y mayor fiabilidad.
![Page 24: Compuware Corporation - Calidad del Software Semana CMMI/10-Compuware.pdf– Revisión de Código, Análisis de Memoria y Rendimiento y Análisis de Cobertura de Código. Mayor rapidez](https://reader036.vdocuments.pub/reader036/viewer/2022070723/5f01fcda7e708231d402052a/html5/thumbnails/24.jpg)