Preparando Ingeniería de Software UNTreF 2020

Ya está definido que este año tendremos que dictar la materia en modalidad completamente a distancia y por ello tendremos que hacer algunos ajustes en la dinámica de las clases y de la materia en general. Al mismo tiempo tenemos ciertas dudas sobre la cantidad de alumnos que cursarán.

Por esto es que hemos habilitado este formulario para llenen que los alumnos interesados en cursar Ingeniería de Software este segundo cuatrimestre de 2020 y de esta forma poder hacer una planificación con menos incertidumbre. Quisiéramos que llenen este formulario todos los alumnos que tengan intención de cursar la materia incluso cuando no reúnan todas las correlativas necesarias.

De paso compartimos aquí algunos detalles de la forma en que dictamos la materia:

  • Intentamos cubrir los temas de la materia con materiales de estudio actualizados y herramientas de uso de frecuente en la industria
  • Para las cuestiones de programación utilizamos Ruby
  • Como herramienta de soporte para las tareas de programación y el trabajo grupal utilizamos GitLab
  • La materia requiere una dedicación semanal de entre 4 y 6 horas adicionales al tiempo de clase
  • La dinámica de evaluación es continua, con tareas semanales que incluyen lecturas, videos, ejercicios de programación y cuestionarios.
  • Este artículo describe formalmente la dinámica de la materia
  • Aquí pueden encontrar varios sobre el dictado de la materia en cuatrimestres anteriores

Cierre de cuatrimestre en Ing-Soft @ UNTreF

Ayer terminamos Ingeniería de Software en UNTreF, fue la primera edición de la materia con el nuevo plan de estudio. Este cambio de plan de la carrera no trajo muchos cambios a nuestra materia particularmente, pero si hubo importantes cambios en la materias previas y posteriores a la nuestra, lo cual nos llevó a ajustar algunas clases y la profundidad de algunos temas.

Otra novedad de este cuatrimestre fue que contamos con un alumno en el equipo docente (FerGainey), lo cual a mi entender siempre es un aporte de valor pues aporta una visión distinta a la que tenemos los que dejamos de ser alumnos hace mucho tiempo.

Comenzamos la materia con 10 alumnos y la terminamos con 8, todos aprobados. La nota promedio de aprobación fue 9 (con desvío 1).

Comparto algunos números de la encuesta de fin de curso:

  • Evaluación general de la materia: 8,5 / 10
  • Claridad de los docentes 4,5 / 5
  • Conocimientos de los docentes sobre los temas de la materia 4,8 / 5
  • Dinámica de las clases 4,6 / 5
  • Materiales de estudio (textos y videos) 4,8 / 5
  • Dedicación promedio semanal extra-clase: 7,8 horas

Comparativamente este cuatrimestre ha sido el mejor puntuado desde 2016 que fue cuando yo me sumé a la materia.

Entre los ítems destacados que surgieron de la retrospectiva de cierre con los alumnos están:

  • Mejorar la consigna y material de estudio de algunas de las tareas
  • Mejorar el feedback escrito en la corrección de las tareas individuales
  • Mejorar el feedback al final de cada iteración del trabajo grupal
  • Incluir clases sobre nuevos temas (por ejemplo seguridad informática)
  • Hacer actividades técnicas/de programación en clase

Personalmente me voy muy conforme con el resultado del cuatrimestre y con varias ideas para el próximo año. Creo que logramos una muy buena química alumnos-docentes a lo largo del cuatrimestre.

Ingeniería de Software 2019 @ UNTreF

Este cuatrimestre será la primera vez que dictemos la materia en el contexto del nuevo plan de estudios. Esto implica ciertos cambios a nivel contenido respecto de lo que veníamos dando en años anteriores. Estos cambios tienen más que ver con cambios generales a nivel del plan de estudios que con cambios en el contenido particular de nuestra materia.

Más allá de los cambios de contenido, planeamos mantener la modalidad de cursada, eso es:

  1. Modalidad de aula invertida
  2. Como consecuencia del punto anterior hay una constante carga de trabajo fuera del aula (~6 horas semanales)
  3. Trabajo y evaluación constante a lo largo de toda la cursada

Según nos indica el sistema de inscripción, tendremos unos 10 alumnos, un excelente número para poder establecer un ambiente de confianza entre los alumnos y los docentes.

Las clases serán los días miércoles, de 18 a 22 horas (inicio puntual) en el aula 307 de la sede Caseros 1.

Cierre de segundo cuatrimestre 2018 en UNTreF

Ayer cerramos el cuatrimestre de la materia Ingeniería de Software. Fue un cuatrimestre un poco atípico, pues a mediado de cuatrimestre no nos gustó como estaba fluyendo la materia y por ello hicimos un ajuste importante en la planificación. Creemos que con esto logramos corregir el rumbo y finalmente cerramos la materia satisfactoriamente. Comparto algunos números del cuatrimestre.

  • Inscriptos: 9
  • Aprobados: 9
  • Nota promedio de aprobación: 7,6
  • Evaluación general de la materia: 8.4
  • Trabajos/tareas individuales: 10
  • Trabajos grupales: 1 (6 iteraciones)
  • Dedicación semanal promedio extra-clase: 11 horas (desvío 5)
Foto de WaldoG en el after-class luego del cierre de la materia

Ingeniería de Software: materiales de estudio

Hace un par de semanas un colega docente me hizo una consulta porque tenia que comenzar a dictar una materia de Ingeniería de Software. Hicimos una llamada vía skype y le conté sobre el enfoque que suelo usar en mis materias sobre dicha temática. Al final de la charla quedamos en que le compartiría los materias de estudio que utilizo y de ahí la idea de este post.

En primer lugar un poco de contexto. Yo dicto dos materias de Ingeniería de software una en UNTREF y otra en UBA (Facultad de Ingeniería). La materia de UNTREF se llama efectivamente Ingeniería de Software mientras que la de UBA se llama Métodos y Modelos en la Ingeniería de Software 2 (memo2). Más allá de las diferencias de nombres, el contenido de ambas materias es muy parecido y la dinámica de cursada y aprobación es la misma (está descripta en este paper).  Al mismo tiempo hay que destacar que en ambos casos los alumnos llegan luego de haber cursado previamente alguna otra materia de Ingeniería de Software más introductoria, con lo cual ya tienen cierta idea de un proceso de desarrollo y han leído/estudiado algunos de los clásicos como No Silver Bullet y el SWEBoK.

Explicado el contexto vamos al contenido. En ambos casos tomamos como base el libro Construcción de Software: una mirada ágil (aunque no lo leemos completo). Complementariamente tenemos los siguientes materiales (no todos son de “consumo obligatorio” y en algunos casos se referencia un libro, pero no pedimos leerlo completo sino algunos capítulos en particular):

Adicionalmente tenemos algunos material de nivelación sobre temáticas que se supone vieron en materias anteriores:

Debo mencionar que esta lista de materiales está en constante evolución.

Cierre de cuatrimestre en Ingeniería @ UNTreF

La semana pasada cerramos el cuatrimestre en la materia Ingeniería de Software en UNTreF. Fue mi tercer cuatrimestre en la materia y personalmente estoy muy conforme con el resultado. Algunas particularidades de este cuatrimestre fueron:

  • Tuvimos un cambio en el equipo docente, Diego Marcet (@diemarcet) reemplazó a Pablito Tortorella (@pablitux)
  • Cambiamos el campus virtual que usamos como herramienta de soporte, pasamos de Eliademy a Canvas.
  • Hicimos algunos ajustes en el programa, incluyendo algunos temas nuevos relacionados principalmente a cuestiones de control de calidad y gestión de la operación
  • Tuvimos dos clases especiales: una sobre modelos de calidad dictada por Sergio Villagra y otra dictada por Fernando Pelliccioni quien compartió la forma de trabajo de su equipo de desarrollo en Bitprim

En términos estadísticos:

  • 8 inscriptos, 1 abandono, 7 aprobados
  • La nota promedio de cierre de cursada fue 8,9
  • La evaluación general de la materia realizada por los alumnos (vía encuesta anónima) fue 8,3

Entre los puntos a mejorar que identificamos en el cierre de la materia destacamos:

  • Mejorar la consigna de la tarea de performance testing
  • Agregar un video introductorio a JMeter
  • Revisar el envió de notificaciones del campus (varios reportaron que la notificaciones les llegaban con mucho retraso)
  • Repetir el ejercicio del elefante carpaccio que fue de las mejores actividades de la materia
  • Comenzar antes con el desarrollo del trabajo final
  • Intentar que las tareas individuales se hagan sobre la misma base de código que el trabajo final
  • Hacer una introducción técnica a Padrino
  • Probar haciendo que las iteraciones del trabajo final sean de 2 semanas

Cierre de Ingeniería de Software en UNTreF

El cuatrimestre terminó y si bien no todo salió perfecto, estoy conforme con el resultado.

Una cuestión fundamental a mi entender para el buen fluir del cuatrimestre es que este mismo grupo de alumnos cursó conmigo el cuatrimestre anterior la materia Análisis y Diseño Orientado a Objetos. En dicha materia hicimos un gran foco en cuestiones técnicas de ingeniería de software lo cual permitió que en esta materia podamos poner más foco en las cuestiones no tan técnicas.

Comparto aquí algunos puntos destacados:

  • 10 inscriptos, 10 aprobados
  • La nota promedio de cierre de cursada fue 9
  • La evaluación general de la materia realizada por los alumnos (vía encuesta anónima) fue 8,4
  • El tiempo promedio semanal dedicado por los alumnos fuera de clase fue 8 horas.
  • Tuvimos dos clases especiales a cargo de invitados: Sergio Villagra nos visitó para dar la clase de modelos de calidad y Emilio Gutter vino a contar la forma de trabajo  y organización de 10 Pines
  • La actividad de cierre de la materia (lecciones aprendidas) fue facilitada por también por Emilio Gutter.

inguntref2016

Preparando Ingeniería de Software 2016 @ UNTreF

En segundo cuatrimestre de 2016 dictaré la materia Ingeniería de Software junto a mi colega el ingeniero Pablo Tortorella (@pablitux). De cara a facilitar a los potenciales alumnos la organización de su cuatrimestre queremos compartir algunas cuestiones referentes a la dinámica de la materia para esta edición 2016.

  • La materia se dictará los jueves de 18 a 22 (si, jueves) en la sede Lynch.
  • Más allá de la asistencia formal requerida por reglamento, recomendamos fuertemente la asistencia a clase.
  • La dinámica de evaluación será continua: tareas semanales + trabajo práctico final (últimas 5 semanas del curso).
  • Utilizaremos una herramienta virtual de soporte para centralizar la publicación, entrega y evaluación de tareas. Las tareas serán principalmente lecturas + cuestionarios + ejercicios de programación.
  • Trabajaremos con GNU+Linux (obligatorio) y Ruby.
  • Estimamos que la carga de trabajo extra clase será aproximadamente de 6 horas semanales (aunque puede que sea un poco mayor durante el desarrollo del trabajo final).