Experimentación
en la Ingeniería de
Software
Esteban Sanín Ángel
Slide 2
Slide 2 text
ingeniería de software
la aplicación de una aproximación
sistemática, disciplinada y cuantificable
al desarrollo, operación y
mantenimiento de software.
(ieee)
Slide 3
Slide 3 text
¿Cuantificable?
¿Disciplinada?
¿Sistemática?
Slide 4
Slide 4 text
La ingeniería de software parece
estar controlada por modas y
emociones, no por datos.
Slide 5
Slide 5 text
«El plural de anécdota no es datos»
Muchas personas
Slide 6
Slide 6 text
«Si contradice la experimentación, es
incorrecto. En esta frase está la clave de
la ciencia» - Richard Feynman
Slide 7
Slide 7 text
¿Por qué no experimentamos?
Slide 8
Slide 8 text
Complejidad
Desconocimiento
Costo
Slide 9
Slide 9 text
¿Qué podemos obtener
de un experimento?
Slide 10
Slide 10 text
Conocer la relación entre
las variables involucradas
Slide 11
Slide 11 text
Estudiar si el tipo de lenguaje tiene un
efecto en la calidad del código
Saber si la estructura organizacional
tiene un impacto en la comunicación
entre programadores
Conocer el costo/beneficio de las
inspecciones de código
Slide 12
Slide 12 text
Relaciones de Correlación
Relaciones de Causalidad
Relaciones Descriptivas
Slide 13
Slide 13 text
Tiene un proceso
Slide 14
Slide 14 text
2. Diseño
3. Ejecución
1. Definición de Objetivos
4. Análisis
Slide 15
Slide 15 text
¿y como hacemos un experimento
entonces?
Slide 16
Slide 16 text
¿Cómo comparamos dos
técnicas de pruebas?
Slide 17
Slide 17 text
Comparar la efectividad entre
dos técnicas de pruebas
Slide 18
Slide 18 text
variable dependiente
el resultado o efecto en un experimento.
variable de respuesta
ej: la efectividad
Slide 19
Slide 19 text
variable independiente
cualquier variable que afecte la variable
dependiente que queremos estudiar.
también conocida como factor
ej: las técnicas
Slide 20
Slide 20 text
niveles
posibles valores que puede tener la
variable independiente
ej: técnica a, técnica b
Slide 21
Slide 21 text
variables de bloque
variaciones no deseadas en el
experimento, que deben ser controladas
ej: experiencia, orden de aplicación
Slide 22
Slide 22 text
unidad experimental
los objetos en los cuales se ejecuta el
experimento
ej: el código
Slide 23
Slide 23 text
¿Qué necesitamos?
Slide 24
Slide 24 text
laboratorio
Realidad simplificada y controlada
donde el fenómeno a estudiar puede ser
manipulado e investigado
ej: sala de trabajo
Slide 25
Slide 25 text
población
colección de personas, plantas, animales,
bacterias o cosas de la que queremos
sacar conclusiones.
ej: todos los testers del mundo
Slide 26
Slide 26 text
sujetos
persona(s) que aplica(n) los métodos o
técnicas a la unidad experimental
ej: los testers
Slide 27
Slide 27 text
¿Cómo lo medimos?
Slide 28
Slide 28 text
métrica
forma en que se mide la variable
dependiente
ej: número de errores
Slide 29
Slide 29 text
¿Listo?
Slide 30
Slide 30 text
Ejecutar el Experimento
Slide 31
Slide 31 text
Análisis Estadístico
Slide 32
Slide 32 text
Replicación
Slide 33
Slide 33 text
¿Es válido el estudio?
Slide 34
Slide 34 text
validez
el grado en que los resultados obtenidos
corresponden con exactitud al mundo
real
Slide 35
Slide 35 text
Validez interna
Validez del constructo
Validez de las conclusiones
Validez externa
Slide 36
Slide 36 text
pregunta
interrogación que se hace para que
alguien responda lo que sabe de un
negocio u otra cosa.
Slide 37
Slide 37 text
gracias
sentimiento que nos obliga a estimar el
beneficio o favor que se nos ha hecho, y
a corresponder a él de alguna manera.
Slide 38
Slide 38 text
Créditos
Información
Natalia Juristo
Ana María Moreno
Basics of Software Engineering Experimentation
IEEE Standard Glossary of Software
Engineering Terminology
Fuentes
Ubuntu
Libre Baskervile
Fotos
Library of Congress
Alex Eylar
Guy Himber
Emily Barney
Terry McCombs
Welllwin Kwok
Bernardo Borghetti