Skip to content
julio 30, 2012 / Applied Computing Group

Charla invitada: “Cruzando el abismo educativo” de la ingeniería de software utilizando Software como Servicio y computación en nube

“Cruzando el abismo educativo” de la ingeniería de software utilizando Software como Servicio y computación en nube
Prof. Armando Fox
Facultad de Informática, Universidad de California, Berkeley
fox@cs.berkeley.edu

Gracias al excepcional alineamiento de tres tecnologías— la computación en nube (Cloud Computing), software como servicio (SaaS), y el desarrollo Agile—el futuro del software ha sido revolucionado de una manera que también nos permite enseñarlo más eficazmente.

En los últimos 3 años hemos reinventado el curso de licenciatura de Ingeniería de Software en la Universidad de California, Berkeley, para “cruzar el abismo” que separa lo que muchos cursos académicos tradicionalmente han ofrecido y las habilidades de los que los empleadores esperan de sus nuevos recrutados: comprender y mejorar código de legado, colaborar con clientes no técnicos, y realizar pruebas efectivas del software.

En nuestro curso, equipos de tamaño “dos pizzas”, es decir de 4 a 6 estudiantes, realizan un prototipo de una aplicación especificada por clientes externos (principalmente empresas sin fines de lucro) utilizando el framework Rails y técnicas de desarrollo ágiles, y lo despliegan en la nube publica.

Los estudiantes emplean historias de usuario para llegar a acuerdo con el cliente y desarrollo guiado por pruebas (Test-Driven Development o TDD) para reducir los errores. Durante cuatro iteraciones de dos semanas, perfeccionan continuamente el prototipo basado en comentarios de los clientes, pasando por el ciclo de vida completo del software—la recogida de requisitos, desarrollo, implementación, pruebas, y despliegue—varias veces durante un semestre de 14 semanas.

Debido a la  superioridad de las herramientas basada en Ruby y Rails para la realización de pruebas y para el análisis de la calidad del código, el estudiante aprende haciendo en vez de escuchando, y el instructor puede medir concretamente el progreso del estudiante.

También hemos utilizado con éxito esas mismas herramientas para la calificación automática de tareas de programación, lo que nos permitió  ampliar el curso de 35 a 115 estudiantes y ofrecer un MOOC (curso masivo abierto y en linea, o Massively Open Online Course) a más de 50.000 estudiantes. De hecho, para apoyar instructores interesados ​​en adoptar nuestras técnicas en sus aulas, ofrecemos no sólo un libro de texto de bajo costo y conferencias pregrabadas en video para complementar el plan de estudios, sino ademas un grupo de preguntas y tareas de programación con calificación automatizada.

Nuestra experiencia ha sido que los estudiantes les encanta el curso porque aprenden habilidades practicas mientras trabajan con un cliente externo, los instructores les encanta porque los estudiantes realmente practican lo que aprenden en lugar de escuchar y luego seguir programando como lo han hecho siempre, y las empresas de software les encanta porque los estudiantes adquieren habilidades vitales que faltaban en los cursos anteriores de ingeniería de software.

Anuncios

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s