Primeros egresados UNTreF

El pasado miércoles por la tarde tuve la oportunidad de asistir a la defensa del trabajo final de carrera de los dos primeros egresados de la carrera de Ingeniería en Computación de la Universidad Nacional de Tres de Febrero: Fernando Scorpiniti y Fernando Degirmenntjis. Adicionalmente fui jurado evaluador de uno de estos trabajos. Más allá de lo que esto representa para los egresados y sus familias, este es un gran hito para la carrera e incluso para la universidad. Mis felicitaciones a ambos Fernandos.

PD: Curiosamente también fui jurado evaluador del trabajo de primer egresado de la Tecnicatura en Programación de UNQ, ¡que loco!

Anuncios

Build de 10 minutos y categorización de tests

Cuando el equipo actual tomó a su cargo el sistema este tenía una alto grado de inestabilidad y prácticamente no tenía tests automatizados. Gradualmente se fueron agregando tests que ayudaron a mejorar a la estabilidad del sistema. En un punto se llegó a tener unos ~2600 tests de componentes/unitarios cuya ejecución excedía los 30 minutos. Todos estos tests eran ejecutados como parte del build de integración continua. A esto se sumaba el hecho de que equipo hacía feature-branches, los cuales también eran buildeados automáticamete, aumentando la carga del build server. Llegado un punto, cada vez que un developer hacía un commit (+push) tenía que esperar, en el mejor de los casos, unos 40 minutos para obtener feedback. Podía llevar a pasar que el build server estuviera ocupado y entonces el build quedaba encolado estirando aún más el tiempo de espera.

Ante esta situación hicimos dos cosas. En primer lugar instalamos un segundo agente del Build Server, para bajar el tiempo tiempo de espera en cola. En segundo lugar categorizamos los tests y ajustamos la configuración del build server. En este segundo punto quiero profundizar.

Es un práctica muy difundida y aceptaba, el tener un build de integración/feedback continua que no exceda los 10 minutos (algunas referencias para profundizar aquí y aquí). En línea con esto decidimos categorizar los ~2600+ tests, identificando aquellos que cubrían las partes críticas de la iteración. Identificamos unos ~600 tests fundamentales cuyo tiempo de ejecución resultó en unos 7 minutos. Categorizamos esos tests como “core”. Al mismo tiempo ajustamos el build server para que se ejecuten en forma continua (ante cada commit+push) los tests “core” y de los “current” (pertenecientes a la iteración actual), de manera de poder tener un feedback “rápido”. Por otro lado, creamos otra tarea que se ejecuta al fin del día para correr el set completo de tests.

 

Mis notas del CONAIISI 2017

Jueves y Viernes pasado estuve participando por segunda vez del CONAIISI. En ese contexto estuvimos con Fernando Gainey y Diego Fontdevila presentando nuestro trabajo An empirical study on the usage of technical and organizational practices in the Agile Community. Personalmente me gustó como salió nuestra presentación. Las diapositivas utilizadas están disponibles aquí.

Más allá de nuestra presentación, tuve la oportunidad de escuchar la exposición de algunos otros trabajos de investigación que me resultaron interesantes.

Entre los trabajos de estudiantes hubo un par que me parecieron muy buenos. En este contexto quiero destacar el trabajo final de carrera Ema Suriano y sus colegas de la UNLAM quienes desarrollaron un artefacto para habilitar el aprendizaje/asistencia de escritura/lectura braile. Más información sobre este desarrollo está disponible en https://blindle.github.io/.

Por otro lado, me llamo mucho la atención que ciertos trabajos no fueron presentados a pesar de que algunos de los autores estaban presentes en la conferencia.

Más allá de la cuestión académica, el jueves por la noche fue evento social de la conferencia en el patio cervecero de la cervecería Santa Fe. Lugar 100% recomendable.

Finalmente en el cierre de la conferencia, se anunció que el CONAIISI 2018 será en Mar del Plata.

Con Fer y Diego en el camino de vuelta casa.
Cena social en el patio cervecero.
Exposición de pósters de trabajos estudiantiles.

Conferencias de cierre de Año

Hoy y mañana estoy participando del Congreso Nacional de Ingeniería Informática y Sistemas de Información (CONAIISI) que se está desarrollando en la Facultad Regional Santa Fe de la Universidad Tecnológica Nacional. En este contexto voy a estar presentando el trabajo An empirical study on the usage of technical and organizational practices in the Agile Community.

La semana próxima, estaré participando de la Smalltalks. La misma se desarrollará del 8 al 10 de noviembre, en la Universidad Nacional de La Plata.