MeMo2

95.21 - Métodos y Modelos en la Ingeniería de Software 2

Generalidades

La materia está basada en una dinámica de aula invertida con un enfoque de educación centrada en el alumno. Busca cubrir todo el proceso de entrega de software incluyendo desde la visión hasta puesta en producción y operación. Más información sobre el contenido y el enfoque se enseñanza se encuentra publicada en estos dos artículos: A Flipped Classroom Experience Teaching Software Engineering y Software Engineering Education Meets DevOps: an Experience Report.
La materia consta de dos clases teórico-prácticas semanales de asistencia obligatoria, los días lunes y jueves en el horario matutino de 8:00 a 11:00. Todo el material de estudio está disponible en Aula Virtual a la cual se accede una vez confirmada la inscripción en el curso.
En caso de necesitar contactar con el equipo docente puede hacerlo mediante este formulario.

Equipo docente

  • Nicolás Paez
  • Hernán de la Fuente
  • Alejo Rodriguez
  • Joaquin Casal
  • Kevin Spasiuk
  • Matias Gonzalez
  • Angel Martín Veiga
  • Juan Cruz Roussilian

Programa sintético

  • El proceso de Entrega de Software.
  • Introducción a la gestión de proyectos.
  • Release Planning y Slicing.
  • Especificación con ejemplos.
  • Técnicas de diseño emergente.
  • Desarrollo guiado por pruebas.
  • Diseño guiado por el Dominio.
  • Calidad interna y externa.
  • Atributos de calidad.
  • Testabilidad y Tipos de pruebas.
  • Configuration Management.
  • Gestión de ambientes.
  • Delivery Pipeline.
  • Infraestructura como Código.

Herramientas

La materia tiene una importante carga de tareas desarrollo para las cuales trabajamos con Git, Ruby y Docker. A aquellos alumnos que no esten familiarizados con estas herramientas les recomendamos el siguiente material de estudio pues no dedicaremos mayor tiempo de clase a enseñar el uso de estas herramientas.

  • Video Tutorial de Git disponible aquí
  • Videos Introductorios a Ruby disponibles aquí
  • Video Tutorial de Docker aquí

Bibliografía

  • James Shore and Shane Warden. 2021. The art of agile development (2 ed.). O'Reilly.
  • Jez Humble and David Farley. 2010. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Professional.
  • Len Bass, Ingo Weber, and Liming Zhu. 2015. DevOps: A Software Architect's Perspective. Addison-Wesley Professional.
  • Nicolás Paez et al. 2014. Construcción de Software, una mirada ágil. EDUNTREF.
  • Steve Freeman and Nat Pryce. 2009. Growing Object-Oriented Software, Guided by Tests. Addison-Wesley Professional.

Agradecimientos

Agradecemos a las siguiente empresas por facilitarnos sus herramientas para el dictado de la materia.

También agradecemos a los ex-alumnos y alumnas que fueron parte del equipo docente: Jessyca Souza, Emiliano Prediger, Franco Schischlo, Josefina Montenegro, Anarella Nicoletta, Constanza Frutos, Ignacio Iglesias, Pablo Repetto, Emilio Gutter, Facundo Gerstner, Federico Amura, Sol Orive, Filyan Karagoz, Flavio Pérez Ondarts y Germán Rotili.