3. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
¿Más que una
tarea repetitiva?
Software Quality
Assurance & Testing.
4. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Sí. ¡Más que una
tarea repetitiva!
Software Quality
Assurance & Testing.
¿Wise?
5. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
“Los jardineros
de la calidad”
Metodología
Observación
Reacción
6. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
“A monkey hitting keys
at random on
a typewriter keyboard for
an infinite amount of time
will almost surely type a
given text, such as the
complete works
of William Shakespeare.”
Teorema del
mono infinito.
17. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
“Quality is
never an
accident. It is
always the
result of
intelligent
effort.”
John RuskinIntelligentia (latín)
= intus (“entre”) y legere (“elegir”)
Be wise!
18. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Inteligencia.
“Habilidad de adquirir y
aplicar conocimiento.”
Familiaridad
Percatación
Entendimiento
algo
alguien
de
Hechos
Información
Habilidades
Un proceso complejo, muy complejo.
19. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Inteligencia Artificial.
“Habilidad de adquirir y aplicar
conocimiento artificialmente”
... para un determinado dominio y con restricciones?
20. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Aprendizaje
Inteligencia.
“Habilidad de adquirir
y aplicar conocimiento.” Adquisición de conocimiento.
Experiencia
Base de
conocimiento.
No supervisadoSupervisado
Percepción
Transformación de
señales a información
Descubrimiento
Detectar algo nuevo de
nuestro alrededor de forma
aleatoria y crear conexiones
significativas.
Educación
Facilitación del aprendizaje
con conjuntos de datos y
habilidades previamente
descubiertos/aceptados.
21. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
No supervisado
Descubrimiento
Detectar algo nuevo de
nuestro alrededor de forma
aleatoria y crear conexiones
significativas.
22. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Supervisado
Educación
Facilitación del
aprendizaje con
conjuntos de datos y
habilidades previamente
descubiertos/aceptados.
Proceso social y cognitivo*
Necesidad de comunicación e interacción
*Del latín, cognoscere, ‘conocer’
23. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Inteligencia.
“Habilidad de adquirir y
aplicar conocimiento.”
¿Qué pasaría si…? Evaluación de alternativas
Predicción
Sentimientos
Consciencia
Razonamiento
facultad que permite resolver problemas, extraer
conclusiones y aprender de manera consciente de los
hechos, estableciendo conexiones causales y lógicas
necesarias entre ellos.
Decisiones
Modelar
(estadística, machine learning, deep learning,…)
Automatizar
24. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Proceso social y cognitivo*
Necesidad de comunicación e interacción
*Del latín, cognoscere, ‘conocer’
“La verdad absoluta no existe, y esto es absolutamente cierto”
25. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Miles de millones
Niño/a: 100.000.000.000
6.000 millones
300 millones
160 millones
4 millones
27. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
¿Podríamos
desarrollar
un/a tester i/o
ingeniero/a
de calidad
(artificial)?
28. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
TestCase1
TestCase2
TestCase3
TestCase8
TestCase9
TestCase1
TestCase8
TestCase4
TestCase5
TestCase7
TestCase1
TestCase2
TestCase6
TestCase8
TestCase9
Test set
A
Test set
B
Test set
C
¿Qué set de pruebas ejecutaríais?
TestCase3
Objetivo:
Maximizar la
productividad
esperada de los
test cases.
31. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
TestCase1
TestCase2
TestCase3
TestCase8
TestCase9
TestCase1
TestCase8
TestCase4
TestCase5
TestCase7
TestCase1
TestCase2
TestCase6
TestCase8
TestCase9
Test set
A
Test set
B
Test set
C
¿Qué set de pruebas ejecutaríais?
TestCase3
Objetivo:
Maximizar la
productividad
esperada de los
test cases.
32. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
TestCase1
TestCase2
TestCase3
TestCase8
TestCase9
TestCase1
TestCase8
TestCase4
TestCase5
TestCase7
TestCase1
TestCase2
TestCase6
TestCase8
TestCase9
Test set
A
Test set
B
Test set
C
Área funcional
LOGIN
Área funcional
COMPRA
DE
ENTRADAS
Área funcional
LOGIN
CON
FACEID
✪ No hay commits
✪ Funcionalidad importante
✪ Tendencia de fallos baja
✪ Se han realizado 25 commits
✪ Funcionalidad clave de negocio
✪ Test 4 altamente productivo
✪ Tendencia de fallos regular
✪ Defectos pendientes de resolución
✪ Comentarios negativos en appstore
✪ Se han realizado 2 commits
✪ Funcionalidad complementaria
✪ Tendencia de fallos estabilizada
✪ No hay defectos pendientes
¿Qué set de pruebas ejecutaríais?
TestCase3
34. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
“AI first”
La IA ya se aplica en
diversos ámbitos.
AlphaGo gana a Ke Jie, el
campeón mundial de Go.
Mayo 2017
40. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Podemos aprender artificialmente en
el dominio del testing y la calidad?
Otros proyectos Buenas prácticas
41. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Deep learning
Redes neuronales.
Pesos iniciales +
Backpropagation
43. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Productividad
MUY ALTA
Productividad
ALTA
Productividad
MEDIA
Productividad
BAJA
Componentesdeloscasos
depruebaderegresión
Training
set con
ejecuciones
Históricas
+
[MUTACIONES]
Nuevos test cases
44. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
¿Podemos tener base de conocimiento?
Hechos, información, habilidades…
45. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Requisitos
Desarrollo
Testing
Defectos
Gestión de
proyectos
Soporte
UX
¿Qué hacemos con los datos que generamos?
Organización y trazabilidad
46. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Inteligencia
Artificial
Predicción
Análisis de datos
Testing
Soporte
al usuarioDesarrollo
Gestión de
datos
Datos no estructurados
Transformamos
datos en
información
(técnicas de BI y
dashboards
personalizados)
Generamos y
gestionamos
datos que
puedan tener
implicaciones
para la QA.
Automatizamos acciones
basadas en IA para mejorar la
gestión de la calidad, la
optimización de recursos y el
time-to-market.
Utilizamos modelos
predictivos para
predecir defectos,
patrones, áreas críticas,
esfuerzos estimados…
con información
histórica y presente.
52. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
£ An online a portal where
connectors to quality information
tools may be configured and
enabled/disabled by project (*)
£ Data is filtered, loaded and
integrated into a single data
model whish may be used for the
visualization of KPIs.
£ WiseQA is integrated with SPSS
(Watson Analytics) modeler &
server in order to define and
execute predictive QA models,
which may feed predictive metrics
into the dashboards.
£ A set of predictive models (defect
& test cases predictions) have
been developed and can be
adapted for particular projects and
complemented with project-
specific models.
£ IA actions can be automated and
triggered based on predictions.
Componentes
de WiseQA
53. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
RAZONAMIENTO
Acción de pensar
sobre algo en una
forma lógica.
EJECUCIÓN
AUTOMATIZADA
Acciones en base al
procesamiento, al riesgo
estimado, etc.
EXPERIENCIA
Acumulación de
conocimiento
(hechos, eventos,..)
DATOS
Obtención y
procesamiento
de datos
PREDICCIÓN
Acción de estimar
qué puede pasar en
el futuro.
INTERFAZ
CONECTORES
MODELO DATOS
MODELOS ESTADÍSTICOS
Y ALGORITMOS IA
DATOS Y
RELACIONES
AUTOMATIZACIONES
56. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Gráficos con
Información predictiva
Métricas
predictivasIndicadores
de confianza
57. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Predicted defect effort-to-fix
It takes into account the historical effort invested in fixing defects,
together with the complexity of related requirements/user stories.
Predicted defect start-to-fix time
It takes into account the historical tendency of the time that a defect
remains until some developer starts fixing it.
Predicted risk (per requirement)
It takes into account the historical risk of requirements, the new added
functionalities and their complexity and the solved/unsolved defects. It can
be evolved by adding support information (customer reviews and support
tickets) and development information (number of commits per
requirement and internal code quality)
Predicted Test execution time
It takes into account the historical time to execute tests, by considering
the complexity of test case designs (test steps) and the complexity of the
tested requirements.
Testing productivity
It takes into account the correlation between found defects and testing
effort.
Estimated
defects fixing
date
(for next cycles / priority)
Estimated
necessary
testing effort
(for next cycles)
Automated
prioritization
of defects fixing &
resources allocation
Automated selection
of (manual or
automated) test cases to
be executed
Automated selection
of test cases to be
automated
Automated
Quality Gates resolution
in
DevOps chains
Anticipate
necessary QA
investment
¿Con qué riesgo/nivel de calidad voy a salir a
producción si…?
58. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Casos de prueba
Selección &
priorizaciónResource
allocation
Ejecución
automatizada
Asignación de casos
de prueba a testers
(conocimiento del
dominio,
performance,…)
Ejecución y reporte
desatendido de casos
de prueba previamente
automatizados.
59. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Historias de usuario
Flow sketches
Algoritmos optimizados
Priorización automática basada en IA
http://serviciosdetesting.com/kCycle
60. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
https://www.botlibre.com/bot?instance=20624399&dynamicChat=Chat
61. WiseQA
Predicción e Inteligencia Artificial
para Quality Assurance
"The aim of
the wise is not
to secure
pleasure, but
to avoid pain."
Aristotle
62. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Utilicemos lo mejor de
la inteligencia
y la inteligencia
artificial.
El “factor
Frankenstein”
63. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
La inteligencia artificial como combustible de CALM en DevOps.
CULTURE
AUTOMATION
LEAN
MEASUREMENT
66. WiseQA
Predicción e Inteligencia Artifical
para Quality Assurance
Muchas gracias.”
Albert Tort
Technical Director & Innovation Manager
albert.tort@sogeti.com
SOGETI SPAIN
¡Tenemos trabajo por hacer!