Restrospectiva-testimonio sobre la experiencia vivida durante la incursión en la calidad del software basada en el testing, concretamente en dos proyectos software muy diferentes: un nuevo desarrollo, y un mantenimiento de grupo de aplicaciónes y rutinas legacy.
Este video recoge gran parte de la charla que compartid con el grupo GDG Toledo en esta convocatoria.
https://www.meetup.com/gdgtoledo_es/events/254795881/
2011 1 administración-de_proyectos_informáticos_tema-03_caceres_meza_jack_danielJack Daniel Cáceres Meza
Dictado en la Universidad Telesup, Lima - Perú, en los ciclos 2007-2 (noviembre/2007), 2008-1 (febrero/2008), 2009-1 (marzo/2009), 2010-1 (marzo/2010), 2011-1 (marzo/2011).
Virtualización de servicios de CA LISA: Eliminación de restricciones del desarrollo de software con la virtualización de servicios
Descripción general:
En el negocio competitivo de hoy, la salida al mercado y los resultados exitosos de los clientes son esenciales para el éxito.
El conjunto de programas CA LISA simula sistemas restringidos o no disponibles que la virtualización convencional no logra alcanzar. CA LISA ayuda a eliminar los retrasos, los costos y los riesgos impuestos por recursos de TI dependientes
para desarrollo y prueba. Con CA LISA, múltiples equipos desarrollan en paralelo, administran mejor los datos y los
escenarios de prueba y reducen la cantidad de entornos en línea necesarios. Este enfoque reduce los costos y los riesgos, la duración de los ciclos de lanzamiento y los requisitos de hardware y software costos, a la vez que entrega funcionalidad importante a los clientes con más rapidez.
El Ciclo de Vida del Software propone algunos modelos para explicar las fases o etapas que cumple el producto de software desde los requerimientos inicial hasta su nueva entrega.
El Módulo de Vigilancia por Video para la empresa PC Solution es un software que será desarrollado para automatizar y mejorar la seguridad en la empresa, haciendo mucho más fácil el reconocimiento de las personas que se encuentran en las instalaciones de la misma en el momento en el que se requiera, así como la detección de intrusos en lugares determinados.
En este documento se encuentra conglomerado las tareas expedidas por la instructora Lisbeth Jaquez, en el transcurso del desarrollo de Introducción a la Gerencia de Proyectos.
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Educagratis
En el Aula Virtual online de Educagratis ( http://www.educagratis.org ) es posible encontrar un curso gratis de Analisis y Diseño Orientado a Objetos - UML (http://computacion.educagratis.org ) en el cual se tratan los siguientes contenidos:
- INTRODUCCION LOS COSTOS Y LA CALIDAD DEL SOFTWARE
- LA TECNOLOGIA OO Y UML
- UML Y EL PROCESO MODELADO
- SOFTWARE PARA MODELAR UML (HERRAMIENTAS CASE)
- EJERCICIOS Y CERTAMENES DE UML
- LA PROGRAMACION ORIENTADA A OBJETO
- NETSBEANS
- SOFTWARE ECLIPSE
- REFERENCIAS Y MATERIALES EXTERNOS
Y muchos otros cursos de diversas áreas:
- Animales, Aves y Peces ( http://animales.educagratis.org )
- Artes, Diseño, Pintura y Dibujo ( http://artes.educagratis.org )
- Autoayuda ( http://autoayuda.educagratis.org )
- Belleza y Moda ( http://belleza.educagratis.org )
- Ciencias Alternativas ( http://alternativas.educagratis.org )
- Ciencias Naturales ( http://ciencias.educagratis.org )
- Ciencias Sociales y Juridicas ( http://sociales.educagratis.org )
- Cocina, Bebidas, Pastelería y Repostería ( http://cocina.educagratis.org )
- Computación e Informática ( http://computacion.educagratis.org )
- Construcción, Arquitectura y Paisajismo ( http://construccion.educagratis.org )
- Deportes y Educación Física ( http://deportes.educagratis.org )
- Educación, Religión y Filosofía ( http://educacion.educagratis.org )
- Historia, geografía, tradiciones y cultura ( http://historia.educagratis.org )
- Hogar, Tejido, Borado y Jardín ( http://hogar.educagratis.org )
- Idiomas, Lenguaje y Letras ( http://idiomas.educagratis.org )
- Juegos, Recreación y Pasatiempos ( http://juegos.educagratis.org )
- Matemáticas ( http://matematicas.educagratis.org )
- Mecánica, Autos y Motos ( http://mecanica.educagratis.org )
- Medicina, Psicología y Salud ( http://medicina.educagratis.org )
- Musica, Baile y Danza ( http://musica.educagratis.org )
- Negocios, Empresa y Economía ( http://negocios.educagratis.org )
- Técnicos, Oficios y Manualidades ( http://tecnicos.educagratis.org )
Cobertura de Código con Tests Funcionales atSistemas
¿Cuántas veces has resuelto una incidencia que ha salvado a tu cliente o empresa?
¿Eres de los que intentan arreglar la calidad de un desarrollo cuando parece que la ha generado el peor de los villanos?
¿Tu "trinchera" es la aplicación de pruebas funcionales para validar la calidad de la aplicación?
Si eres de los que ha respondido SÍ, ¿estás listo para ser un superhéroe?
En este webinar, demostraremos que se pueden aplicar más elementos para medir la calidad de los productos e incluso comprender las aplicaciones: la cobertura técnica de código con pruebas funcionales.
Este documento describe la implementación de la metodología de trabajo scrum en la especialización en ingeniera de software I asignatura Informática I para la gestión del desarrollo el proyecto UD-RN-2015.
Incluye junto con la descripción de este ciclo de vida iterativo e incremental para el proyecto, los artefactos o documentos con los que se gestionan las tareas de adquisición y suministro: requisitos, monitorización y seguimiento del avance, así como las responsabilidades y compromisos de los participantes en el proyecto.
Este documento describe la implementación de la metodología de trabajo scrum en la especialización en ingeniera de software I asignatura Informática I para la gestión del desarrollo el proyecto UD-RN-2015.
Incluye junto con la descripción de este ciclo de vida iterativo e incremental para el proyecto, los artefactos o documentos con los que se gestionan las tareas de adquisición y suministro: requisitos, monitorización y seguimiento del avance, así como las responsabilidades y compromisos de los participantes en el proyecto.
Si bien los hospitales conjuntan a profesionales de salud que atienden a la población, existe un equipo de organización, coordinación y administración que permite que los cuidados clínicos se otorguen de manera constante y sin obstáculos.
Mario García Baltazar, director del área de Tecnología (TI) del Hospital Victoria La Salle, relató la manera en la que el departamento que él lidera, apoyado en Cirrus y Estela, brinda servicio a los clientes internos de la institución e impulsa una experiencia positiva en el paciente.
Conoce el Hospital Victoria La Salle
Ubicado en Ciudad Victoria, Tamaulipas, México
Inició operaciones en el 2016
Forma parte del Consorcio Mexicanos de Hospitales
Hospital de segundo nivel
21 habitaciones para estancia
31 camas censables
13 camillas
2 quirófanos
+174 integrantes en su plantilla
+120 equipos médicos de alta tecnología
+900 pacientes atendidos
Servicios de +20 especialidades
Módulos utilizados de Cirrus
HIS
EHR
ERP
Estela - Business Intelligence
Los desafíos de calidad de software que nos trae la IA y los LLMsFederico Toledo
En esta charla, nos sumergiremos en los desafíos emergentes que la inteligencia artificial (IA) y los Large Language Models (LLMs) traen al mundo de la calidad del software y el testing. Exploraremos cómo la integración, uso o diseño de modelos de IA plantean nuevos retos, incluyendo la calidad de datos y detección de sesgos, sumando la complejidad de probar algo no determinístico. Revisaremos algunas propuestas que se están llevando adelante para ajustar nuestras tareas de testing al desarrollo de este tipo de sistemas, incluyendo enfoques de pruebas automatizadas y observabilidad.
Más contenido relacionado
Similar a 21 días haciendo tests (lo que he aprendido)
2011 1 administración-de_proyectos_informáticos_tema-03_caceres_meza_jack_danielJack Daniel Cáceres Meza
Dictado en la Universidad Telesup, Lima - Perú, en los ciclos 2007-2 (noviembre/2007), 2008-1 (febrero/2008), 2009-1 (marzo/2009), 2010-1 (marzo/2010), 2011-1 (marzo/2011).
Virtualización de servicios de CA LISA: Eliminación de restricciones del desarrollo de software con la virtualización de servicios
Descripción general:
En el negocio competitivo de hoy, la salida al mercado y los resultados exitosos de los clientes son esenciales para el éxito.
El conjunto de programas CA LISA simula sistemas restringidos o no disponibles que la virtualización convencional no logra alcanzar. CA LISA ayuda a eliminar los retrasos, los costos y los riesgos impuestos por recursos de TI dependientes
para desarrollo y prueba. Con CA LISA, múltiples equipos desarrollan en paralelo, administran mejor los datos y los
escenarios de prueba y reducen la cantidad de entornos en línea necesarios. Este enfoque reduce los costos y los riesgos, la duración de los ciclos de lanzamiento y los requisitos de hardware y software costos, a la vez que entrega funcionalidad importante a los clientes con más rapidez.
El Ciclo de Vida del Software propone algunos modelos para explicar las fases o etapas que cumple el producto de software desde los requerimientos inicial hasta su nueva entrega.
El Módulo de Vigilancia por Video para la empresa PC Solution es un software que será desarrollado para automatizar y mejorar la seguridad en la empresa, haciendo mucho más fácil el reconocimiento de las personas que se encuentran en las instalaciones de la misma en el momento en el que se requiera, así como la detección de intrusos en lugares determinados.
En este documento se encuentra conglomerado las tareas expedidas por la instructora Lisbeth Jaquez, en el transcurso del desarrollo de Introducción a la Gerencia de Proyectos.
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Educagratis
En el Aula Virtual online de Educagratis ( http://www.educagratis.org ) es posible encontrar un curso gratis de Analisis y Diseño Orientado a Objetos - UML (http://computacion.educagratis.org ) en el cual se tratan los siguientes contenidos:
- INTRODUCCION LOS COSTOS Y LA CALIDAD DEL SOFTWARE
- LA TECNOLOGIA OO Y UML
- UML Y EL PROCESO MODELADO
- SOFTWARE PARA MODELAR UML (HERRAMIENTAS CASE)
- EJERCICIOS Y CERTAMENES DE UML
- LA PROGRAMACION ORIENTADA A OBJETO
- NETSBEANS
- SOFTWARE ECLIPSE
- REFERENCIAS Y MATERIALES EXTERNOS
Y muchos otros cursos de diversas áreas:
- Animales, Aves y Peces ( http://animales.educagratis.org )
- Artes, Diseño, Pintura y Dibujo ( http://artes.educagratis.org )
- Autoayuda ( http://autoayuda.educagratis.org )
- Belleza y Moda ( http://belleza.educagratis.org )
- Ciencias Alternativas ( http://alternativas.educagratis.org )
- Ciencias Naturales ( http://ciencias.educagratis.org )
- Ciencias Sociales y Juridicas ( http://sociales.educagratis.org )
- Cocina, Bebidas, Pastelería y Repostería ( http://cocina.educagratis.org )
- Computación e Informática ( http://computacion.educagratis.org )
- Construcción, Arquitectura y Paisajismo ( http://construccion.educagratis.org )
- Deportes y Educación Física ( http://deportes.educagratis.org )
- Educación, Religión y Filosofía ( http://educacion.educagratis.org )
- Historia, geografía, tradiciones y cultura ( http://historia.educagratis.org )
- Hogar, Tejido, Borado y Jardín ( http://hogar.educagratis.org )
- Idiomas, Lenguaje y Letras ( http://idiomas.educagratis.org )
- Juegos, Recreación y Pasatiempos ( http://juegos.educagratis.org )
- Matemáticas ( http://matematicas.educagratis.org )
- Mecánica, Autos y Motos ( http://mecanica.educagratis.org )
- Medicina, Psicología y Salud ( http://medicina.educagratis.org )
- Musica, Baile y Danza ( http://musica.educagratis.org )
- Negocios, Empresa y Economía ( http://negocios.educagratis.org )
- Técnicos, Oficios y Manualidades ( http://tecnicos.educagratis.org )
Cobertura de Código con Tests Funcionales atSistemas
¿Cuántas veces has resuelto una incidencia que ha salvado a tu cliente o empresa?
¿Eres de los que intentan arreglar la calidad de un desarrollo cuando parece que la ha generado el peor de los villanos?
¿Tu "trinchera" es la aplicación de pruebas funcionales para validar la calidad de la aplicación?
Si eres de los que ha respondido SÍ, ¿estás listo para ser un superhéroe?
En este webinar, demostraremos que se pueden aplicar más elementos para medir la calidad de los productos e incluso comprender las aplicaciones: la cobertura técnica de código con pruebas funcionales.
Este documento describe la implementación de la metodología de trabajo scrum en la especialización en ingeniera de software I asignatura Informática I para la gestión del desarrollo el proyecto UD-RN-2015.
Incluye junto con la descripción de este ciclo de vida iterativo e incremental para el proyecto, los artefactos o documentos con los que se gestionan las tareas de adquisición y suministro: requisitos, monitorización y seguimiento del avance, así como las responsabilidades y compromisos de los participantes en el proyecto.
Este documento describe la implementación de la metodología de trabajo scrum en la especialización en ingeniera de software I asignatura Informática I para la gestión del desarrollo el proyecto UD-RN-2015.
Incluye junto con la descripción de este ciclo de vida iterativo e incremental para el proyecto, los artefactos o documentos con los que se gestionan las tareas de adquisición y suministro: requisitos, monitorización y seguimiento del avance, así como las responsabilidades y compromisos de los participantes en el proyecto.
Si bien los hospitales conjuntan a profesionales de salud que atienden a la población, existe un equipo de organización, coordinación y administración que permite que los cuidados clínicos se otorguen de manera constante y sin obstáculos.
Mario García Baltazar, director del área de Tecnología (TI) del Hospital Victoria La Salle, relató la manera en la que el departamento que él lidera, apoyado en Cirrus y Estela, brinda servicio a los clientes internos de la institución e impulsa una experiencia positiva en el paciente.
Conoce el Hospital Victoria La Salle
Ubicado en Ciudad Victoria, Tamaulipas, México
Inició operaciones en el 2016
Forma parte del Consorcio Mexicanos de Hospitales
Hospital de segundo nivel
21 habitaciones para estancia
31 camas censables
13 camillas
2 quirófanos
+174 integrantes en su plantilla
+120 equipos médicos de alta tecnología
+900 pacientes atendidos
Servicios de +20 especialidades
Módulos utilizados de Cirrus
HIS
EHR
ERP
Estela - Business Intelligence
Los desafíos de calidad de software que nos trae la IA y los LLMsFederico Toledo
En esta charla, nos sumergiremos en los desafíos emergentes que la inteligencia artificial (IA) y los Large Language Models (LLMs) traen al mundo de la calidad del software y el testing. Exploraremos cómo la integración, uso o diseño de modelos de IA plantean nuevos retos, incluyendo la calidad de datos y detección de sesgos, sumando la complejidad de probar algo no determinístico. Revisaremos algunas propuestas que se están llevando adelante para ajustar nuestras tareas de testing al desarrollo de este tipo de sistemas, incluyendo enfoques de pruebas automatizadas y observabilidad.
Escaneo y eliminación de malware en el equiponicromante2000
El malware tiene muchas caras, y es que los programas maliciosos se reproducen en los ordenadores de diferentes formas. Ya se trate de virus, de programas espía o de troyanos, la presencia de software malicioso en los sistemas informáticos siempre debería evitarse. Aquí te muestro como trabaja un anti malware a la hora de analizar tu equipo
1. 21 días haciendo Tests
en un proyecto entregado y en otro de mantenimiento
2. “Estos y muchos otros fenómenos observados
comúnmente tienden a mostrar que se requiere
de un mínimo de 21 días para que una imagen
mental establecida desaparezca y cuaje una
nueva”
Maxwell Maltz (1889 -1975)
Psycho-Cybernetics
6. El proyecto Entregado
El Escenario
- Aplicación web monolito modular
- Producción posterior a 2015
- Documentación, presente!
- Estable: Incidencias tipo error < 3 / mes
- Test: definidos por los desarrolladores
- CI / Sonar
- > 50.000 LOC
- Cobertura es <<<< 80 %
- Technical Debt < 1 mes
- Complexities < 3000
- Código duplicado > 4 %
7. El proyecto Entregado
El compromiso
- Evolutivo clave a nivel de negocio
- Cumplir 888 casos de prueba
- Más cobertura, ...
- … bajar la deuda técnica,
- … y tiene que estar para ya !!!
8. El proyecto Entregado
Enfoque 1
- Cobertura rápida ??? Sí claro por
supuesto !!!
Técnica 1
- Con Jacoco de copiloto, hasta el
infinito y más allá !!!!
9. El proyecto Entregado
Conclusiones 1
- El Enfoque 1 no tiene ningún sentido, o
sí, pero no es funcional
- Tope cobertura y crackdown en el
mismo día, el #defectoWallstreet
- Sensibles a los cambios en la capa de
presentación
- Solo para testeo de funcionalidades
completas
10. El proyecto Entregado
Conclusiones 1
- Dependencia total del entorno y
recursos
- Mucho tiempo invertido en capacitar los
tests
- Tiempo de ejecución >= 3 horas
- Planificación para pasarlos mientras
desarrollo
11. El proyecto Entregado
Enfoque 2
- Keep calm y veamos lo que tenemos:
- Código mayormente sin cobertura
- Aparentemente fácil de testear
- Estrategia Test poco definida
- Herramientas de test
Técnica 2
- Uso herramientas test disponibles en el
proyecto
12. El proyecto Entregado
Conclusiones 2
- Métodos private y static no son
testeables
- Necesito del contexto: Servicios y
Repositorios
- Falsos negativos causa ajena
- Dependencia de datos y entorno
- Mucho tiempo para construir los tests
- Tiempo de ejecución << 1 hora
- Ejecución ‘más accesible’ mientras
desarrollo
13. El proyecto Entregado
Enfoque 3
- Que nos falta
- Eliminar la dependencia del entorno
- Llamadas a servicios y repositorios
- Private, Static y otros no testeables
- Reducir drásticamente el tiempo de ejecución
Técnica 3:
- Selección de las ‘mejores’ herramientas
14. El proyecto Entregado
Conclusiones 3
- Herramientas:
- TestMe
- Mockito
- PowerMockito
- Beanmother
- Fixture-Factory
- Refactorizar (privados, statics y otros)
- Definición de estrategia test
- Disminuye el tiempo de creación por test
- La cobertura aumenta de ‘modo natural’
15. El proyecto Entregado
Finalmente
- Se han automatizado los 888 casos de
prueba
- La cobertura aumenta de forma natural
y con sentido
- Aplicación se completa
- Promoción y formación del equipo de
mantenimiento en la cultura test
16. El proyecto Entregado
Finalmente
- Los test de la estrategia 1 son los
actuales test funcionales
- Los test de la estrategia 2 son los
actuales test de integración
- Los test de la estrategia 3 son los
actuales test unitarios
- Los test se lanzan a demanda
- CI tiene opciones para testar la
aplicación a conveniencia
18. El proyecto de Mantenimiento
El Escenario A
- Aplicación web monolito pseudo modular
- Documentación por recopilación
- En producción posterior a 2010
- Estable, incidencias tipo error < 2 / semana
- Test de integración
- CI / Sonar
- 50.000 LOC
- Cobertura > 70 %
- Technical Debt < 15 días
- Complexities < 5000
- Código duplicado < 15 %
19. El proyecto de Mantenimiento
El Escenario Z
- Aplicación web monolito pseudo modular
- Documentación por reflexión
- En producción anterior a 2010
- Estable, incidencias tipo error < 5 / semana
- Test sin mantenimiento
- CI / Sonar
- LOC >>>> 50.000
- Cobertura es <<<< 80 %
- Technical Debt >>> 1000 días
- 60.000 < Complexities < 120.000
- Código duplicado < 30 %
20. El proyecto de Mantenimiento
El compromiso
- Resolver incidencias: errores y soportes
- Evolutivos alcance diverso
- Respetar la convención de arquitectura
- CI / Sonar
- Reducir la deuda técnica
- Iguala o mejora de las métricas principales
- Capacitación para la automatización
21. El proyecto de Mantenimiento
Enfoque 1
- Incidencias: Errores y Soportes
- Conocimiento limitado sobre procesos
- Descripción en ‘negolenguaje’
- Priorizadas por el usuario
- Evolutivos
- Documentación funcional
- Desarrollo y pruebas
Técnica 1
- Solicitar info y datos para reproducir el
proceso y depurar #likeAPro !!!
22. El proyecto de Mantenimiento
Conclusiones 1
- El enfoque 1 no tiene ningún sentido, es
una completa pérdida de tiempo!!!
- Pruebas de dudosa repetibilidad
- Falsos negativos (datos muy concretos)
- Dependendencia de terceras personas
- Mucho tiempo invertido en capacitar las
pruebas
- Tiempo de ejecución indeterminado
- Imposible (o casi) ejecutar mientras se
desarrolla
23. El proyecto de Mantenimiento
Enfoque 2
- Incidencias: Errores y Soportes
- Absoluta dependencia de datos
- Private, Static y otros no testeables
- Evolutivos:
- Dependencia de datos
Técnica 2
- Crear tests de integración
24. El proyecto de Mantenimiento
Conclusiones 2
- Los métodos private y static no son
testables directamente
- Llamadas a servicios y repositorios
requieren levantar la aplicación
- Falsos negativos: problemas en la
instancia, servicios, base de datos
- Se requieren datos y entorno para soportar
los tests
- Mucho tiempo para construir los tests
- Ejecución parcial durante el desarrollo
25. El proyecto de Mantenimiento
Enfoque 3
- Incidencias: Errores y Soportes
- Identificación unitaria de procesos
- Análisis entrada - salida #depurando
- Evolutivos:
- Documento funcional como fuente de datos
- Código fuente como planos de datos
Técnica 3
- Crear tests unitarios y mocks
26. El proyecto de Mantenimiento
Conclusiones 3
- Testeamos con herramientas adecuadas:
- TestMe
- Mockito
- PowerMockito
- Ahora con más de Mocks!!!
- Independencia de contexto, entorno, o
datos
- Reducción de tiempo creación de tests
- Ejecución disponible durante el desarrollo
27. El proyecto de Mantenimiento
Finalmente
- Resolvemos incidencias más rápido
- Aplicación se va completando
- Soporte Test de procesos aplicación
- Creación de cultura del test
- Formación de equipo mantenimiento
- Aumento de confianza del grupo
- Destierro de las tradiciones manuales
- Mayor independencia
Enfoque Test + Código legacy = PERFECTO!!!
28. … lo que he aprendido
- Hacer test es amor <3
- Conocimiento técnico aplicación
- Lanzar cualquier parte de la aplicación
- Reducción dependencias: datos, entorno...
- Detectar más errores
- El precio de la Cobertura
- Los test también son diseño
29. … lo que he cambiado
- Planteamiento de tareas desde el test
- Mejor de diseño, #testenabled
- Lanzar ‘esa’ parte de la aplicación
- Pruebo mejor el código que escribo
- Independencia de preparados de datos
- Análisis estático de mi código
- Solicito testear en el desarrollo
- Depurar alterando los valores no es test
- Repulsión por las tareas no automatizadas
prueba != test
- Hablo de tests
32. IDEA Y GUIÓN
DIRECCIÓN
FIXES & BUGS
AMBIENTACIÓN
CRÉDITOS IMÁGENES
POSTPRODUCCIÓN
EXTRAS Y DOBLES
PRESENTADO EN
GRUPO INFO
EVENTO
manu garcia
Dev & QA
manu garcia
Jose Juan
Pulp Fiction
https://www.imdb.com/title/tt0110912/
A Band a Part
manu garcia as himself
GDG TOLEDO
meetup.com/gdgtoledo_es
meetup.com/gdgtoledo_es/events/254795881