Edición 2015
13 y 14 de abril - Universidad Católica y Facultad de Ingeniería, Universidad de la República - Montevideo, Uruguay
La segunda edición de TestingUy se llevó a cabo los días 13 y 14 de abril en la Universidad Católica y en el Aulario de la Facultad de Ingeniería, UdelaR respectivamente, reuniendo alrededor de 220 profesionales e interesados en el testing.
En esta segunda edición, el primer día se realizaron los talleres con la participación de 80 asistentes, y durante el segundo día se llevaron a cabo las charlas.
Talleres
PONIENDO EN PRÁCTICA TÉCNICAS DE USABILIDAD Y UX
Gabriela Sánchez y Miguel Sánchez - SALÓN 001
Tanto la Usabilidad, como más recientemente la Experiencia de Usuario son conceptos claves a la hora de probar nuestras aplicaciones móviles, sociales y ubicuas.
El objetivo principal del Workshop es responder las siguientes interrogantes que nos surgen a la hora de enfrentarnos al Testing de Usabilidad y UX: ¿Qué es la Usabilidad? ¿A qué se refiere la Experiencia de Usuario? ¿Cómo se relacionan estos conceptos? ¿Cómo se integran en el ciclo de vida de desarrollo de software? ¿Qué técnicas existen para evaluar Usabilidad y UX? Y finalmente lo más importante de todo ¿Cómo llevamos todo esto a la práctica?
Esperamos que se lleven no solo los conceptos teóricos sino ya la aplicación práctica de algunas de las técnicas más relevantes en el área de Testing de Usabilidad y UX como por ejemplo Heurísticas de Usabilidad en una página Web, Prototipación, etc. de forma que puedan luego adaptarlas al contexto y realidad de su empresa!
Requisitos: el participante debe traer su computadora.
TÉCNICAS Y HERRAMIENTAS DE AUTOMATIZACIÓN DE APLICACIONES WEB
Federico Regueira, Diego Tortoriello y Gonzalo Ciosek - SALÓN 004
Demostración del uso de un framework de automatización para interacción directa con objetos de una página web.
Se propone hacer una presentación teórica de la automatización de pruebas sobre Selenium, sus obstáculos típicos y cómo superarlos mediante el uso de otro framework; creando scripts de automatización más robustos y con mayor mantenibilidad.
Asimismo, se propone hacer una práctica en conjunto con los participantes, para que puedan ver y entender por un medio más tangible, la diferencia y ventajas que esta nueva estrategia nos brinda.
Requisitos: el participante debe traer su computadora y tener instalado:
o Firefox
o Selenium IDE
o Seleno
o Visual Studio (2013 community)
o Java
o Eclipse
COFFEE BREAK
GESTIÓN DE CASOS DE PRUEBA CON TESTLINK
Belén Luna y Giulliana Scuoteguazza – SALÓN 001
Testlink es una herramienta de gestión de pruebas muy popular en el mundo. Ofrece grandes facilidades para la gestión y organización de los Casos de prueba. Muy útil para gestionar proyectos de testing, tanto las tareas de gestión de requerimientos como de casos de prueba. Permite optimizar los tiempos del equipo de testing y tener un control sobre el avance y la cobertura del testing. Tiene integración con herramientas de gestión de incidentes como Mantis Bug Tracker.
En este workshop aprenderán sobre las principales funcionalidades de la herramienta y variedad de reportes que es posible generar. Se realizarán ejercicios prácticos, de modo que permitan a los asistentes entrenar, ver resultados de lo aprendido y luego poder aplicar los conocimientos en sus tareas cotidianas.
La metodología que se explicará es extrapolable a cualquier otra herramienta de gestión de pruebas, se usa TestLink por ser una buena alternativa que no genera costos extra.
Requisitos: el participante debe traer su computadora.
BUGATAHON EN URUGUAY, ¡A VER QUIÉN ENCUENTRA MÁS BUGS!
Federico Toledo – SALÓN 004
Así como están de moda los hackathon, existe una propuesta a nivel internacional llamada BugATAhon con una idea similar pero ¡con el fin de encontrar bugs!
Acá está la información de esa movida: bugatahon.agiletestingalliance.org
La Agile Testing Alliance (www.agiletestingalliance.org) está planificando el evento en todo el mundo, y en particular en Latinoamérica se planea realizar en Perú, Panamá y México. Lo que se pretende con este workshop es traer este evento a Uruguay también.
Se desafía a los participantes a competir ganando puntos por distintas cosas como cantidad de defectos encontrados en la aplicación que se brinda para probar, teniendo en cuenta la severidad de los defectos, la forma en la que se describen y las estrategias usadas. Para todo esto se proporcionará una aplicación para probar, que podrá ser usada tanto en web como mobile. También se dará acceso a los celulares del ODL (open device lab de Uruguay – http://odl.uy) para poder tener distintos dispositivos en los que probar.
Hay cupones con premios y certificaciones para los ganadores.
Requisitos: el participante debe traer su computadora.
GESTIÓN DE INCIDENTES
Mariana Travieso – SALÓN 303
La gestión de incidentes es fundamental para el éxito de un proyecto de software. Los incidentes fluyen entre los distintos actores. Cómo se reportan y cómo se resuelven podrá ocasionar o ahorrar muchos problemas.
Hay varias opciones para gestionarlos, por mail, personalmente o con un sistema. Es importante pensar de antemano qué tan adecuada y escalable es la opción elegida y de qué forma se utilizará en la organización. Gestionar los incidentes contribuye a establecer procesos que se pueden evaluar, medir y mejorar.
En el workshop se presentarán y discutirán instrumentos para dar respuesta a algunas de las dificultades que se presentan día a día en las organizaciones.
Charlas
acreditación
bienvenida
KEYNOTE: MÉTODOS DE EVALUACIÓN DE USABILIDAD
Daniel Mordecki
Tan importante como la calidad del código, la detección de bugs y el ajuste de la performance, es la capacidad de los usuarios de interactuar con nuestro software de una forma sencilla, productiva y agradable.
Es que al otro lado de la pantalla se desarrolla la interacción, un proceso absolutamente decisivo para el éxito de nuestros sitios y aplicaciones, integrado al núcleo central de los atributos de calidad.
Existe una vasta experiencia en la evaluación de la Usabilidad de las interfaces, un abanico importante de metodologías y un conjunto sólido de mejores prácticas. El objetivo de la charla es recorrerlas, de modo de poder brindar un panorama general los métodos de evaluación de Usabilidad.
PROBANDO UN RELOJ DE HUELLAS AUTOMÁTICAMENTE
Gustavo Mažeikis
El objetivo de la presentación es compartir con el público aspectos de la construcción de una prueba automatizada para un dispositivo biométrico, dedicado al registro de asistencia del personal. Hasta el momento las pruebas funcionales se realizaban interactuando manualmente con el dispositivo.
Esta forma de trabajo hacía que, en mayor medida, las pruebas de regresión resultaran costosas en tiempo y recursos. La automatización de pruebas funcionales sobre el dispositivo, tiene la dificultad inherente de simular la entrada (huella y teclado) y capturar la salida (pantalla).
El enfoque de la solución se basa en los siguientes aspectos. En primer lugar, se habilita la interacción automática con el dispositivo mediante la sustitución de los controladores de entrada y salida. En segundo lugar, se construye una aplicación que modela los servicios del dispositivo y que constituye la base de la prueba automática. En tercer lugar, con el empleo del marco de pruebas TestNG, se escriben las pruebas funcionales automatizadas.
Durante la exposición se pretende dar al espectador una idea general de los problemas y desafíos que se presentan con un abordaje de estas características.
COFFEE BREAK
PROPERTY-BASED TESTING USANDO QUICKCHECK, O CÓMO NO ESCRIBIR MÁS UNIT TESTS
Guillermo Winkler
Sabiendo que nunca vamos a lograr escribir tests que prueben que el código es correcto, en esta charla vamos a ver cómo en lugar de escribir tests para casos específicos de entradas de nuestro sistema, podemos declarar propiedades que tiene que cumplir nuestro sistema, y que sea la propia infraestructura que encuentre los casos para los cuáles dichas propiedades no se cumplen.
Un repaso a la historia e implementación de QuickCheck con casos prácticos en Clojure y Javascript.
PROYECTO SOLIDARIO NAHUAL: COMBINANDO TESTING Y EDUCACIÓN PARA GENERAR OPORTUNIDADES
Federico Toledo y Gabriel Montero
Proyecto Nahual es una iniciativa honoraria, llevada adelante por un grupo devoluntarios que tienen como objetivo utilizar la enseñanza en testing, como un vehículo para facilitar el acceso al mercado laboral de jóvenes que hayan abandonado el sistema educativo formal.
Vemos esta iniciativa además como una forma de acercar mano de obra a la industria de TI y en particular al testing, en un momento en el cual el desarrollo del sector ha hecho que la demanda de profesionales sea superior a la oferta.
En esta charla queremos contar la primera experiencia que se realizó el año 2014 en Uruguay, con el apoyo del equipo de Argentina (que llevan 9 años en esto) y cómo se pretende redoblar la apuesta con ideas muy innovadoras en cuanto a enseñanza del testing, contando con un equipo de desarrollo que acompaña todo el proceso para poder simular la interacción entre los testers y desarrolladores, viviendo el proceso de creación de software durante el curso.
Estaremos invitando también a todos los oyentes a colaborar con el proyecto, ya sea contribuyendo en la preparación de cursos, hasta la búsqueda de ofertas de inserción laboral o pasantías para los chicos que egresan.
Almuerzo
PRÓXIMO ESCALÓN HACIA LA CALIDAD DEL SOFTWARE: SHIFT LEFT
Amalia Alvarez
Las pruebas de software son una actividad fundamental del proceso de producción de software, sin embargo, hay muchas evidencias de que no es suficiente para lograr niveles de excelencia en la calidad del software producido.
Para lograr niveles de excelencia debemos adelantar las actividades de calidad lo más tempranamente posible en el proceso de construcción de software, trabajando en la concepción de los requerimientos y el diseño del software, e incluyendo actividades de aseguramiento de la calidad a lo largo de todo el proceso.
La calidad se debe planificar contemplando el nivel de riesgo asociado a una potencial falla en el producto y se debe incorporar actividades de aseguramiento de la calidad en etapas tempranas del proceso de construcción del producto, acordes a la criticidad del software a producir, incluso desde la definición de los
requerimientos.
En esta charla se presentará el enfoque actual para el aseguramiento de la calidad del software, se mostrarán datos que respaldan este enfoque obtenidos de referentes de la ingeniería del software mundial y los principios fundamentales en los que se basa la mejora de la calidad del software.
DE WATERFALL A SCRUM, ¿UN VIAJE DE IDA?
Marcelo De Los Santos
Caso de estudio sobre adopción y adaptación de marco de trabajo scrum, enfocándose principalmente en el testing como parte integral del proceso de desarrollo de un aplicativo, donde los testers proveemos valor al producto no sólo detectando bugs, sino siendo partícipe en decisiones de negocio dado nuestro involucramiento temprano y cercano al cliente tanto en relevamiento como en seguimiento.
Con esta adopción, buscamos en un determinado proyecto mejorar tiempos de respuesta y calidad a la demanda de cambios del cliente, sin olvidar lo importante que es estar involucrado con sus expectativas.
Se expondrán las variables que influenciaron la decisión del cambio, que ha sucedido desde la misma, y las primeras conclusiones de esta experiencia.
ENFOQUE PRÁCTICO PARA CONSTRUIR APLICACIONES SIN VULNERABILIDADES DEL OWASP TOP 10
Pablo Alzuri
Desarrollar con una herramienta basada en modelos tiene varias ventajas. La generación de código a partir de una especificación, transfiere la responsabilidad de la codificación segura en el lenguaje de generación a la herramienta. Esto trae una pregunta… ¿GeneXus hace todo para que mi sistema sea seguro? ¿Tengo que preocuparme en algo?
En esta charla haré una breve introducción al OWASP Top Ten, y contaré qué hace la herramienta y qué aspectos tiene que tener en cuenta cada actor en la construcción del sistema, teniendo foco en las actividades de testing que forman parte del ciclo de desarrollo seguro.
COFFEE BREAK
INTRODUCIENDO EL TESTING EN EL CICLO DE DESARROLLO DE SISTEMAS
Alfonso Mariano Fernández Laconich
La maduración de una empresa de desarrollo de sistemas obliga a reescribir las metodologías constantemente, para adaptarlas a las nuevas filosofías. ¿Cómo introducir el testing dentro de una metodología de desarrollo? ¿Cómo crear conciencia de la importancia del testing en el ciclo de desarrollo? Estas preguntas aparecieron en el equipo y las respondimos cambiando nuestra metodología actual de desarrollo. Compartiremos el origen, proceso y resultados de estos cambios que se dieron en nuestra organización para que las empresas que se inician en esto puedan tener un testimonio real sobre el proceso de introducir el testing en un ciclo de desarrollo.
UNA EXPERIENCIA DIFERENTE CON TOKENS PKI
Rodrigo Quinta
Charla sobre la experiencia obtenida en un proyecto de testing con tokens de seguridad y firmas digitales. Se muestran los distintos desafíos de un problema diferente a lo que es el testing habitual de software, el cual aporta las bases para encarar futuros proyectos orientado a verificar compatibilidad.
ALTERNATIVAS PARA EL TESTING DE APLICACIONES SENSIBLES AL CONTEXTO
Santiago Matalonga
Un sistema de software es sensible al contexto cuando utiliza información contextual para ayudar a los actores (usuarios u otros sistemas) para lograr sus tareas. El Testing de este tipo de software puede ser un desafío si solo se consideran Técnicas de prueba de software tradicionales. Estos sistemas ya están disponibles e integran aplicaciones que utilizamos (Motorola Assist, Android Geofencing). El problema principal para el Testing de estos sistemas es el crecimiento del espacio de entradas posibles al sistema bajo prueba.
Sin embargo, luego de un estudio sistemático de la literatura, no se encontraron técnicas que aseguren la calidad de estos sistemas. En esta charla se presentan los conceptos principales asociados a la prueba de sistemas sensibles al contexto, y las soluciones identificadas en la literatura.
EDUCACIÓN EN TESTING
Mónica Wodzislawski – CES, Fernando Panizza – Forge y Ximena Sommer – Ánima
El Centro de Ensayos de Software, es una organización especializada en proveer servicios de testing a TICS y otras industrias, favoreciendo el incremento de su capacidad productiva mediante la mejora en la calidad. El CES ofrece servicios de testing funcional, automatización, ensayos de plataformas, consultoría y capacitación.
La Capacitación impartida promueve una visión integradora del proceso de testing y su importancia dentro del proceso de desarrollo de software. La metodología de enseñanza procura el desarrollo de habilidades de los estudiantes.
En la actualidad, CES dicta la Carrera de Testing de Software, única en el mundo en cuanto a su concepción y enfoque.
En Forge nos concentramos en neutralizar el impacto de esta problemática a través del programa Formación y Trabajo dirigido a jóvenes de entre 16 y 22 años, pertenecientes a familias de escasos recursos económicos, que se encuentran cursando el último año del nivel secundario en escuelas públicas.
Nuestro programa es complementario a la educación formal, fomenta la finalización de estudios secundarios y es gratuito para sus participantes. Al finalizar la etapa de formación, Forge facilita y acompaña a los alumnos en su ingreso al mundo laboral en organizaciones de calidad.
Ánima es una Institución de educación formal que a partir del 2016 ofrecerá un Bachillerato Tecnológico con una propuesta de formación integral dirigida a jóvenes que viven en situación de vulnerabilidad social. Desde una oferta de formación técnica, Ánima construye un proceso educativo orientado al desarrollo de las competencias necesarias para la inclusión laboral de los jóvenes, basados en la experiencia del alumno tanto dentro del aula como dentro de la empresa.
LA EVOLUCIÓN DEL TESTING A LO LARGO DEL TIEMPO
Juliana Herbert
En 1979, en su clásico libro “The Art of Software Testing”, Glendford Myers definió testing como el “proceso de ejecutar el programa con la intención de encontrar defectos”. Hoy en día se habla del testing con otros objetivos, relacionados a la búsqueda de calidad, más informaciones para la toma de decisiones y disminución de riesgos, entre otros. Además, el desarrollo de software ha evolucionado bastante, los sistemas son cada vez más complejos y conceptos como movilidad y procesamiento en la nube aumentan la variedad de contextos y ambientes que deben ser considerados para el testing. Sin embargo, ¿el testing realmente ha evolucionado a lo largo del tiempo? ¿Estamos consiguiendo cumplir con el objetivo presentado por Myers en 1979? ¿La base que ha sido construida para el testing es robusta? ¿Cuál fue la evolución del perfil y de las habilidades del tester? ¿Cuál es el impacto de paradigmas como agile, lean y otros sobre el testing? La charla tiene el objetivo de presentar una serie de reflexiones sobre este asunto, identificando puntos de evolución, involución y estagnación del área del testing al largo del tiempo.
SORTEO Y CIERRE