En está guía se realiza una explicación del rol que el tutor del curso de Fábricas de Software y Líneas de Productos. Se busca hacer énfasis en las actividades que el tutor debe realizar semana a semana. Igualmente, se realiza una revisión general de las herramientas que serán utilizadas durante el curso por parte del curso.
Temas a tratar
Dinámica general del curso y del rol de tutor.
Unidades (objetivos y actividades generales) del curso.
Herramientas y su uso.
Conceptualización de líneas de producto
Conceptualización de técnicas generales de implementación de variabilidad
Implementación de un proyecto
Conceptualización de fábricas de software y revisión de estrategias de negocios asociadas a la implementación de Líneas de Software y Fábricas de Software
Elementos a realizar durante el desarrollo del curso
Para un correcto desarrollo del curso es necesario tener siempre presentes los siguientes elementos como tutor:
Revisión del aula virtual:
Configuración del centro de calificaciones en Moodle
Acordar con el profesor si todas las semanas del curso se dejan visibles para los estudiantes
Configurar fechas de entrega de actividades
Revisar instrucciones generales: revisar la alineación de cada una de las pestañas con la información del programa del curso, configurar los bloques del curso (configurar un bloque con la información del proyecto del curso incluyendo las rúbricas de evaluación), instrucciones de las actividades semanales y enlaces a los recursos.
Verificar inscripción de estudiantes al curso.
Programar y estructurar reuniones sincrónicas virtuales
Creación de anuncios semanales con información de:
Actividades a desarrollar en la semana. En la primera semana se realiza un mensaje de bienvenida al curso y una presentación del tutor.
El anuncio semanal de actividades a partir de la semana 2 puede ser realizado por el tutor (se debe definir con el profesor).
En caso de actividades en grupo, se debe realizar la definición de los grupos en Moodle y como se espera que se realice en trabajo en grupo.
Los anuncios de las semanas pueden tener varios objetivos (anuncios motivacionales, noticias de actualidad disciplinar, actividades de la semana y su importancia, énfasis o explicación adicional de una tecnología o concepto). En este sentido se debe acordar quién hace el anuncio según su tipo.
Resolución de dudas en el menor tiempo posible (foros, slack, reuniones sincrónicas, etc) - Aclaración de dudas e inquietudes conceptuales o tecnológicas: hace referencia a la oportuna respuesta a las dudas e inquietudes que tienen los estudiantes, haciendo uso de los canales de comunicación del curso: foros (conceptos, talleres y tutoriales/preguntas tecnológicas) slack (proyecto)
Revisión del estado de los enlaces de recursos y de subida de las actividades en Moodle u otras plataformas como Github antes de la semana en que van a ser utilizadas:
Enlaces funcionales.
Permisos para que los estudiante puedan acceder a los recursos correctos.
Fechas de límite de entrega correctas.
Calificación semanal de las actividades (máximo al final de la siguiente semana en lo posible).
Retroalimentación semanal o por unidades (apoyo al profesor con resúmenes de las revisiones de las actividades y retroalimentación en cada una de las actividades calificadas por el tutor a los estudiantes).
Realizar un seguimiento de los estudiantes y las actividades por semana en un archivo compartido Excel o Google Sheets con el profesor. Dentro de este archivo se busca dar una perspectiva general de que estudiantes no han hecho actividades o si no les ha ido del todo bien en alguna actividad.
Idealmente asistir a las clases presenciales para:
Preparar material que se requiera para la sesión
Apoyar el desarrollo del curso.
Ayudar a resolver dudas que surjan durante las actividades presenciales.
Buscar tener un claro entendimiento del estado del curso y lo que se hable durante la clase presencial con el profesor.
Si el profesor requiere de una solicitud especial en cuanto a equipos adicionales, movil express, grabación, traducción, etc, esto deberá ser solicitado con tres días hábiles de anticipación, esto teniendo en cuenta lo establecido en los procedimientos administrativos y logísticos de la Universidad.
En el caso que para la sesión el profesor tenga a un profesor o conferencista invitado informar al Programa con antelación, ya que para estos casos se deben realizar unos trámites administrativos internos.
Llevar el control de la asistencia de los estudiantes a cada una de las clases presenciales.
Rol del tutor hacia las actividades
Durante el desarrollo del curso se plantean múltiples actividades que pueden ser categorizadas teniendo en cuenta el rol del tutor en el desarrollo del curso. A continuación, se resume dicha clasificación:
Rol para la actividad
Descripción
Revisión y ajuste de las instrucciones de actividades y enlaces a los recursos
Esta función se debe realizar al inicio de todas las semanas del curso. Hace referencia al trabajo de revisar nuevamente las instrucciones de las actividades correspondientes a la semana, ajustarlas en caso necesario y revisar el funcionamiento de los enlaces a los recursos y la disponibilidad de los mismos para el desarrollo de las actividades.
Resumen y seguimiento
Hace referencia al trabajo realizado sobre actividades en las que los estudiantes reciben una retroalimentación automática, como por ejemplo al realizar un quiz. En este caso, el tutor debe realizar una revisión general de cómo les fue a los estudiantes, ver si hay algún tema específico que se les dificulte en general a los estudiantes e identificar si hay estudiantes cuyo desempeño no fue el mejor para realizar un seguimiento a su desempeño y buscar orientarlos para que mejoren. El tutor debe realizar un informe al profesor en el cual resuma los vacíos encontrados en el desarrollo de las actividades de tipo conceptual y de apropiación tecnológica (talleres) e identificar los estudiantes que presenten dificultades de aprendizaje.
Retroalimentación y evaluación
Hace referencia al trabajo realizado sobre las actividades que son desarrolladas por los estudiantes como talleres o trabajos, y que tienen un peso en la nota final del curso. Dichas actividades deben ser calificadas en el transcurso de la siguiente semana después del límite de entrega y debe darse una retroalimentación al estudiante que justifique la nota obtenida.
Cada actividad cuenta con una serie de criterios a revisar. Los mismos son explicados en detalle más adelante en la descripción de actividades por semana.
Retroalimentación
Hace referencia al trabajo realizado sobre actividades que son desarrolladas por los estudiantes pero cuya nota no tiene un peso sobre la nota final del curso. Si bien la nota no afecta al estudiante, es importante hacer una retroalimentación. En general hace referencia a actividades formativas cuyo fin no es dar una nota al estudiante, sino buscar el desarrollo inicial de habilidades o establecimiento de convenciones de cómo se deben realizar las actividades (habituar el estudiante a leer el enunciado, entender que es lo que se pide y que pueda preguntar si tiene dudas del mismo o de las herramientas a usar).
Preparación de recursos
En general durante el desarrollo del curso el tutor debe tener presente que los recursos de las actividades deben estar actualizados y disponibles para los estudiantes, sin embargo, es necesario puntualmente cada semestre hacer la creación o configuración de ciertos elementos (por ejemplo la organización en Github del curso y la invitación de los estudiantes a la misma). Es importante que el tutor desarrolle o actualice los tutoriales utilizados en el curso
Objetivos Generales
Identificar las ventajas y las implicaciones de implementar estrategias de líneas de productos en empresas de desarrollo de software.
Ejemplo de Anuncio de la semana - Bienvenida al curso (tutor)
Hola a todos,
Nuevamente bienvenidos al curso de Fábricas de Software y Líneas de Producto. Mi nombre es <Nombre del tutor> y en esta oportunidad voy a apoyar el desarrollo del curso como tutor.
En caso de dudas o inquietudes no duden en hacer uso de los foros que tenemos disponibles:
Foro de preguntas tecnológicas (dudas o inquietudes sobre las tecnologías usadas en el curso, incluyendo la plataforma misma del curso - moodle).
Quedamos pendientes y esperamos que el curso sea de gran provecho para todos.
<Nombre del tutor>
<Correo del tutor>
Actividades de la semana
Actividad
Rol del tutor
Descripción
Quiz conceptos generales de Fábricas de Software
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Encuesta de tecnologías y reuso
Resumen y seguimiento
En caso de que el profesor lo requiera:
Realizar una presentación (.pptx, slides) sobre la encuesta para que el profesor la presente en la primera clase presencial.
Se busca mediante esta actividad hacer énfasis en
la importancia de los conceptos para los estudiantes
y también tener un panorama del enfoque inicial
que el curso debería tener.
Ejemplo de Anuncio de la semana (profesor)
Hola a todos
Esta es la segunda semana del curso de Fábricas de Software y Líneas de Productos. Esta semana revisaremos algunas propuestas sobre estrategias y modelos de madurez en empresas que implementan estas estrategias. Veremos, por ejemplo, algunas capacidades que deben desarrollar estas empresas.
Vamos a revisar unos artículos relacionados con el tema y analizaremos un caso de estudio
El caso de estudio involucra unas actividades individuales y otras grupales.
Pueden usar las herramientas de Moodle y de Colaboración de la Universidad para estas tareas.
Si tienen alguna inquietud, no duden en contactarnos a través de los espacios de comunicación.
NOTA: La información está en texto y en video para que el profesor elija la manera adecuada o que prefiera.
Ejemplo de Anuncio con los grupos del caso de estudio (tutor)
Hola a todos,
A continuación los grupos que se crearon para el "caso de estudio de Biometrix Solutions". Estos grupos los hemos creado de forma aleatoria. Esperamos que puedan contactarse entre Uds y coordinar su trabajo (pueden por ejemplo usar el espacio de trabajo de Slack o el medio que sea más conveniente para Uds).
Cada uno de los grupos tiene un espacio diferente en el foro. Esto significa que solo verán los mensajes de sus compañeros de grupo.
Si lo desean, pueden suscribirse al foro para recibir los mensajes por correo.
Grupos
Miembros del grupo
Biometrix Solutions 1
Estudiante 1, Estudiante 3
Biometrix Solutions 10
Estudiante 2, Estudiante 4
Si tienen alguna duda o inconveniente con el trabajo o con el uso del foro, no duden en escribirnos.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Mapas conceptual sobre niveles de madurez y evaluación de adopción de líneas de producto
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas). Si es necesario, colocar ejemplos de como hacer un mapa.
Realizar la retroalimentación individual de la actividad entregada y asignar una nota.
Revisar y listar los elementos conceptuales que pueden no estar claros según el desempeño de los trabajos entregados y comentarlos al profesor.
Caso de estudio
Seguimiento - Retroalimentación y
evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Anunciar como están conformados los grupos para la actividad.
Realizar la retroalimentación por grupos y asignar una nota.
Realizar la revisión de elementos que pueden no estar claros según el desempeño de los trabajos entregados y comentarlo al profesor.
Como todas las semanas, hay un pequeño video explicando las actividades: https://vimeo.com/315015152
Si tienen alguna inquietud, no duden en contactarnos a través de los espacios de comunicación.
Ejemplo de Anuncio con los grupos de la grabación de un proyecto de Spl2go (tutor)
Esta semana deberemos hacer una grabación de pantalla (un screencast) de un ejemplo de líneas de productos. El ejemplo puede descargarse de spl2go o puede utilizarse uno de los ejemplos de FeatureIDE.
La idea es que el trabajo sea en parejas. Esto les permitirá comparar notas sobre el proyecto y revisar que incluir en el video. El video lo puede grabar uno del grupo. En el video se debe mencionar las personas que hicieron el video.
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Realizar la retroalimentación individual de la actividad entregada y asignar una nota.
Revisar y listar los elementos conceptuales que pueden no estar claros según el desempeño de los trabajos entregados y comentarlos al profesor.
Proyectos spl2go
Seguimiento - Retroalimentación y evaluación.
Preparación de recursos.
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Anunciar como están conformados los grupos para la actividad.
Crear del muro en padlet de ser necesario.
Realizar la retroalimentación por grupos y asignar una nota. La retroalimentación de la actividad es importante para definir el modo correcto de realización de este tipo de actividades en el futuro (grabaciones de pantalla o presentaciones y subida en muro digital usando padlet) y seguimiento de instrucciones para realización de informes.
Objetivos Generales
Determinar, Modelar y Analizar la Variabilidad que existe en un conjunto de productos de software
Ejemplo de Anuncio de la semana (profesor)
Esta es la cuarta semana del curso de Fábricas de Software y Líneas de Productos. Esta semana tendremos una serie de actividades por Internet y una sesión presencial.
Deben hacer unas lecturas y ver un video sobre modelos de features / modelos de características
Deben realizar un Quiz
Deben hacer un taller de modelamiento de características
Pueden ver toda la información en el Moodle. No duden en escribir a los foros y espacios de comunicación si tienen algún problema o inquietud.
Nos vemos el fin de semana.
Nota: Queda a elección del profesor el uso de un video, texto u otro medio para especificar la lista de actividades.
Ejemplo de Anuncio con los grupos de la definición de alcance de una línea de productos (tutor)
Hola a todos
Para la otra semana deberán hacer un trabajo en parejas relacionado con determinar el alcance (y la variabilidad) de una línea de productos.
Este trabajo ya lo pueden ver en la semana 4, al final de las actividades de modelamiento.
Al colocar la actividad, esperamos que puedan revisar el enunciado y/o avanzar en alguna parte de este trabajo desde esta misma semana.
La entrega deberá hacerse, como máximo, la otra semana.
Este trabajo deberá hacerse en parejas. Las parejas seleccionadas por Moodle son las siguientes:
Grupos
Miembros del grupo
spl2go 1
Estudiante 1, Estudiante 3
spl2go 2
Estudiante 2, Estudiante 4
Como siempre, cualquier inquietud o problema, pueden reportarlo usando los foros del curso. Estaremos atentos.
Nos vemos el sábado.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Quiz sobre modelos de características e introducción a la variabilidad
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Taller modelamiento de características
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Realizar la retroalimentación individual de los modelos enviados por el estudiante. Dentro de la retroalimentación se debe establecer si los modelos son válidos, tienen características muertas, restricciones redundantes, etc. Igualmente, se pueden explicar otras posibilidades de modelamiento no contempladas por el estudiante.
Definición de Alcance de una línea de producto
Seguimiento - Retroalimentación
Se plantea en esta semana iniciar una actividad que debe ser entregada en la semana 5. En este sentido el tutor debe estar pendiente de:
Resolver dudas sobre el enunciado
Anunciar como estan conformados los grupos para la actividad.
Ejemplo Anuncio de la semana (profesor)
Esta es la quinta semana del curso de Fábricas de Software y Líneas de Productos. Esta semana tendremos una serie de actividades individuales y en grupo.
Si tienen alguna pregunta o hay algún inconveniente, nos pueden mandar un mensaje a los foros del curso.
Ejemplo Anuncio de creación de grupos (tutor)
Hola a todos,
Buscando conformar los grupos del proyecto les pedimos que escriban un mensaje al canal general del slack del curso. Pueden acceder al espacio en slack con este enlace:
<Enlace de invitación al espacio de slack>
Nuestro espacio en slack se encuentra en esta dirección: <Enlace del espacio del trabajo>
Para el proyecto debemos definir <Número de grupos>: <Descripción de número de personas por grupo>
Cualquier duda pueden escribirnos en los foros o en slack
Actividades de la semana
Actividad
Rol del tutor
Descripción
Quiz de análisis de variabilidad
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Quiz de conteo de productos
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Definición de Alcance de una línea de producto
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Realizar la retroalimentación grupal de la actividad entregada y asignar una nota.
Revisar y listar los elementos conceptuales que pueden no estar claros según el desempeño de los trabajos entregados y comentarlos al profesor.
Ejemplo de Anuncio de la semana (profesor - tutor)
Hola a todos
Actividades Generales
En la página de esta sexta semana ya tiene los enlaces al tutorial de la librería de FeatureIDE y las actividades para esta semana.
Hay un tutorial paso-a-paso de Git, para las personas que no hayan utilizado antes Git
Hay un tutorial de programación en la librería de FeatureIDE
Hay un caso de estudio sobre análisis de variabilidad a realizar en los grupos del proyecto.
Actividad con Github
Recuerden que para realizar la actividad del tutorial con FeatureIDE deben aceptar la invitación a la organización del curso en <Enlace a la organización en GIthub> que enviamos a su correo uniandes (algunos ya aceptaron la invitación pero faltan personas todavía).
Actividad en los grupos del proyecto
Recuerden que es necesario que tengan ya conformados los grupos para el proyecto del curso. Los grupos deben ser de 4-5 personas (idealmente 4 grupos de 5 personas y un único grupo de 4 personas). Igualmente tengan en cuenta que la actividad de "Caso de estudio de análisis de variabilidad" es con estos grupos de proyecto.
Pueden escribir en el foro de "Definición de Grupos para el Proyecto del Curso" los grupos que vayan conformando como lo han venido haciendo y de esta manera vamos creando los grupos en moodle para que puedan acceder al enlace de entrega de la actividad. Si no tiene grupo pueden preguntar por el foro o mediante slack a sus compañeros del curso para crear un grupo o unirse a uno.
Si tienen algún problema o pregunta adicional, nos la pueden hacer por los foros del curso
Actividades de la semana
Actividad
Rol del tutor
Descripción
Caso de estudio de análisis de variabilidad (primer trabajo con grupos del proyecto)
Seguimiento - Retroalimentación y evaluación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Asegurar que los estudiantes se organicen en grupos para los trabajos del proyecto del curso (se puede usar para esto el foro en la semana 6 de grupos para el proyecto del curso).
Crear los grupos en la plataforma para dar acceso al enlace de entrega de la actividad.
Retroalimentar las entregas de la actividad y evaluarlas teniendo en cuenta los entregables esperados en el enunciado de la actividad.
Tutorial FeatureIDE
Preparación de recursos
En conjunto con el profesor:
Crear la Organización en Github del curso.
Invitar a los estudiantes a la organización en Github.
Crear el espacio de trabajo en Github Classroom.
Importar los repositorios base para las actividades de la organización anterior en Github a la nueva organización.
Crear la actividad de la semana en Github Classroom
Actualizar los enlaces en guías y Moodle.
Tutorial Git
Preparación de recursos
Actualizar enlaces dentro del tutorial en codelabs de ser necesario
Objetivos Generales
Analizar y discutir problemas de implantación de este enfoque en contextos reales teniendo en cuenta consideraciones como la forma de diseñar, implementar y desplegar estas soluciones
Ejemplo de Anuncio de la semana (profesor)
Esta semana empezaremos a revisar las técnicas de implementación de variabilidad
deberán hacer una lectura que describe algunas técnicas de implementación
harán unos tutoriales y un ejercicio en FeatureIDE usando las técnicas de implementación por parámetros y por compilación condicional
También deberán actualizar la wiki en el Github del proyecto del curso
Noten que la implementación por parámetros y compilación condicional son muy usadas para implementar variabilidad en las interfaces de usuario para los programas que instalan los usuarios en sus computadores y dispositivos móviles
Para las actividades, pueden pensar que variaciones esperan en sus interfaces de usuario y cómo podrían implementarlas con estas técnicas.
Todavía hay usuarios que no se han unido a la organización en Github. Les enviamos una invitación para unirse a sus correos uniandes, quedamos pendientes si necesitan ayuda para aceptar la invitación.
Recuerden que esta semana tendremos una sesión presencial. La sesión se realizará en el salón XX.
Es muy importante que todos asistan este fin de semana.
tendremos una evaluación de los temas vistos en el curso: conceptos de líneas de productos, modelamiento de características y análisis de modelos de características.
Si tiene alguna duda o comentario, pueden enviarnos un mensaje en los foros y el Slack del curso.
Nos vemos el fin de semana
Actividades de la semana
Actividad
Rol del tutor
Descripción
Implementación de línea de productos de Notepad
Seguimiento - Retroalimentación y evaluación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear la tarea en Github Classroom
Importar el repositorio base de la actividad desde la organización anterior en Github del curso.
Actualizar el tutorial en codelabs de ser necesario (actualización de los enlaces o contenido en general).
Cuadro comparativo: Técnicas de Implementación
Seguimiento - Retroalimentación y evaluación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear el muro digital en padlet (desde la cuenta uniandes) para los cuadros comparativos.
Retroalimentar de los trabajos subidos al muro.
Revisar si los estudiantes tiene clara las definiciones de técnicas de implementación e informar al profesor posibles dudas o ideas equivocadas
Wiki del proyecto en Github
Resumen y seguimiento - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear los repositorios y grupos en la organización en Github del curso.
Revisar las Wikis de los grupos e informar del avance al profesor
Ejemplo de Anuncio de la semana (profesor)
Esta semana abordaremos el diseño de líneas de productos usando niveles de abstracción diferentes al código fuente. En lugar de usar "if" y "compilación condicional", revisaremos diseño orientado a objetos, de arquitectura y de componentes.
Deben hacer una serie de lecturas y tutoriales
Deben hacer un diseño e implementación orientada a objetos
Deben hacer un diseño de arquitectura de línea de productos usando componentes
Además, deberán ir revisando alternativas que les puedan servir para implementar su proyecto del curso
Pueden contar con unos recursos adicionales para implementación de una línea de productos basada en patrones de diseño:
Si tienen alguna duda o sugerencia, no duden en contactarnos. Recuerden que podemos hacer "reuniones sincrónicas" para ver lo que están haciendo en sus computadoras y resolver problemas que les puedan pasar.
Estamos atentos a resolver cualquier inquietud.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Diseño e Implementación de LPS de Grafos (Taller)
Seguimiento - Retroalimentación y evaluación - Preparación de recursos
Resolver dudas de la actividad (enunciado)
Importar repositorio base de la actividad desde la organización anterior del curso en Github.
Actualizar los tutoriales en codelabs con información y enlaces correctos
Retroalimentar los trabajos subidos y evaluarlos.
Identificar si alguna persona tiene dificultades en la implementación y resolver dudas al respecto
Diseño de Arquitectura de LPS basada en Componentes (Taller)
Seguimiento - Retroalimentación y evaluación
Retroalimentar los trabajos subidos y evaluarlos.
Identificar si alguna persona tiene dificultades en la implementación y resolver dudas al respecto.
Actualización Wiki con información del grupo
Resumen y seguimiento
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Revisar el trabajo realizado e identificar el avance de los grupos en el proyecto
Quiz: Arquitectura de línea de productos, Componentes y Patrones de Diseño
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Ejemplo de Anuncio de la semana (profesor)
Esta semana revisaremos una última técnica de implementación de variabilidad: el uso de aspectos.
Los aspectos permiten manejar cross-cutting concerns, en particular, cambios que deben aplicarse a muchas clases al mismo tiempo
En prácticamente todos los lenguajes existen mecanismos para crear aspectos
En Java, se pueden crear usando tecnologías como AspectJ, Spring y CDI
Entre las actividades de esta semana
Revisaremos el desarrollo basado en aspectos para implementar variabilidad
Hacemos un cuadro comparativo de las tecnologías de implementación de variabilidad
y, en los grupos del proyecto, haremos una primera propuesta de arquitectura de línea de productos.
Como siempre, estamos atentos a resolver cualquier duda. Si tienen alguna pregunta o inconveniente, pueden enviarnos un mensaje a los fotos.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Quiz: Aspectos para la implementación de variabilidad
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Taller de implementación de variabilidad usando AspectJ y FeatureIDE
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Retroalimentar los trabajos subidos y evaluarlos.
Identificar si alguna persona tiene dificultades en la implementación y resolver dudas al respecto
Cuadro comparativo: Técnicas de Implementación de variabilidad
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Retroalimentar los trabajos subidos y evaluarlos.
Identificar si alguna persona tiene dudas de los conceptos o ideas erradas de las técnicas
Actualización de la Wiki: Arquitectura de la línea
Resumen y seguimiento
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Revisar el trabajo realizado e identificar el avance de los grupos en el proyecto
Objetivos Generales
Diseñar, implementar y probar una Línea de Producto para un mercado vertical: desde la especificación de requerimientos hasta la derivación de diferentes productos de software.
Ejemplo de Anuncio de la semana (profesor)
Hola a todos, llegamos a la décima semana del curso de Fábricas de Software y Líneas de Productos
Esta semana revisaremos de nuevo el alcance para el proyecto del curso. Podrán retomar lo hecho en la semana 6 y revisar el alcance para el proyecto considerando lo aprendido al revisar las diferentes técnicas de implementación.
Una primera versión de la línea de productos deberá entregarse en la semana 13
Deberá contener, al menos, 3 productos.
En cuanto a las funcionalidades, deberá soportar, al menos tres áreas funcionales (módulos o subsistemas), cada uno con al menos tres características
Deben definir el alcance, primero haciendo una propuesta de forma individual, y luego revisando todo de forma colaborativa. Recuerden suministrar evidencia del trabajo colaborativo que han hecho.
Si tienen alguna duda sobre los diferentes temas o necesitan alguna ayuda, nos pueden contactar en los foros. Igualmente podemos hacer reuniones sincrónicas.
Recuerden que esta semana tendremos una sesión presencial. La sesión se realizará en el salón XX.
Anuncio de las semanas siguientes y recursos para el desarrollo del proyecto del curso (tutor)
Hola a todos
En el Moodle hemos colocado visibles las actividades para las semanas 11, 12 y 13
En estas semanas deberán hacer avances en el proyecto
El trabajo en las semanas 10 y 13 tienen visibles las rúbricas de evaluación
Si revisan las rúbricas pueden darse una idea de las cosas que se esperan del trabajo. Básicamente son las restricciones mencionadas en las actividades de la semana 10
Una línea de productos basada en el caso de estudio (Servicios para Ciclistas y Bicicletas)
Debe tener al menos tres productos
Debe soportar, al menos, tres áreas funcionales (módulos o subsistemas) con al menos tres características cada una
Deben usar, al menos, tres técnicas de implementación de variabilidad de las revisadas en el curso: técnicas como condiciones sobre variables, condiciones sobre constantes, compilación condicional, patrones de diseño, diseño basado en componentes y aspectos.
Estas semanas esperamos enviar enlaces y tutoriales de acuerdo con las preguntas que nos hagan los diferentes grupos.
Si tienen alguna duda o desean alguna aclaración, nos pueden enviar sus mensajes al Slack del curso para el proyecto. Además, recuerden que pueden solicitar reuniones sincrónicas con nosotros.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Propuesta de alcance, matriz de requerimientos y el listado de casos de uso
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Realizar una revisión y evaluación de la propuesta inicial de los grupos siguiendo la rúbrica de calificación
Sesión sincrónica virtual por cada grupo del proyecto
Preparación de recursos
Crear el espacio en collaborate para cada uno de los grupos
Revisar las grabaciones y dar un reporte al profesor.
Ejemplo de Anuncio de la semana (profesor)
<Anuncio relacionado a alguna actividad referente a las temáticas del curso que se están realizando. Si han surgido dudas durante la anterior semana respecto al proyecto, realizar un breve anuncio de aclaración o mostrando algunos recursos extra para revisar y aclarar o invitar a realizar una reunión sincrónica si la duda es general entre todos los estudiantes>
Actividades de la semana
Actividad
Rol del tutor
Descripción
Modelamiento de Variabilidad y Requerimientos
Seguimiento - Retroalimentación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear muro en padlet para que los grupos suban un video de resumen del avance realizado
Revisar los video subidos para dar retroalimentación de ser necesario
Reunión sincrónica para revisión de avance
Retroalimentación - Preparación de recursos
Habilitar enlace para realizar la reunión sincrónica
Actualizar hoja de horarios para agendar reunión sincrónica
Asistir a las reuniones sincrónicas acordadas
Ejemplo de Anuncio de la semana (profesor)
<Anuncio relacionado a alguna actividad referente a las temáticas del curso que se están realizando. Si han surgido dudas durante la anterior semana respecto al proyecto, realizar un breve anuncio de aclaración o mostrando algunos recursos extra para revisar y aclarar o invitar a realizar una reunión sincrónica si la duda es general entre todos los estudiantes>
Actividades de la semana
Actividad
Rol del tutor
Descripción
Arquitectura de la Línea de Productos
Seguimiento - Retroalimentación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear muro en padlet para que los grupos suban un video de resumen del avance realizado
Revisar los video subidos para dar retroalimentación de ser necesario
Reunión sincrónica para revisión de avance del proyecto
Retroalimentación - Preparación de recursos
Habilitar enlace para realizar la reunión sincrónica
Actualizar hoja de horarios para agendar reunión sincrónica
Asistir y liderar las reuniones sincrónicas acordadas para conocer el avance de cada uno de los proyectos y realizar la retroalimentación puntual a cada grupo durante las sesiones.
Ejemplo de Anuncio de la semana (profesor)
<Anuncio relacionado a alguna actividad referente a las temáticas del curso que se están realizando. Si han surgido dudas durante la anterior semana respecto al proyecto, realizar un breve anuncio de aclaración o mostrando algunos recursos extra para revisar y aclarar o invitar a realizar una reunión sincrónica si la duda es general entre todos los estudiantes>
Recuerden que esta semana tendremos sesión presencial. La sesión se realizará en el salón XX
Este día deben presentar los avances de la implementación del proyecto del curso.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Implementación de la Línea de Productos
Seguimiento - Retroalimentación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear muro en padlet para que los grupos suban el video resumen de la actividad de implementación inicial de la línea
Revisar los vídeos subidos para dar retroalimentación y hacer un reporte al profesor.
Objetivos Generales
Proponer estructuras organizaciones y procesos que faciliten la implementación de fábricas de software y líneas de productos.
Diseñar y evaluar mecanismos para implementar las estrategias de negocio para construir estas fábricas de software y líneas de productos.
Ejemplo de Anuncio de la semana (profesor)
Esta es la décimo cuarta semana del curso de fábricas de software y líneas de productos.
Esta semana,
Deberán hacer una lectura y revisar unos vídeos sobre la noción de Fábricas de Software
Si tienen alguna pregunta o necesitan ayuda, no olviden usar los foros y el Slack del curso.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Foro de Implementación de Fábricas de Software
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Revisar las entradas realizadas en el foro, retroalimentar y evaluar el entendimiento de los conceptos sobre Fábricas de Software.
Realizar un resumen de las entradas y presentarlo al profesor.
Implementación de la Línea de Productos
Seguimiento - Retroalimentación y evaluación - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear muro en padlet para que los grupos suban el video resumen de la actividad de implementación final de la línea
Realizar la retroalimentación y evaluación de la implementación realizada basados en la rúbrica y la funcionalidad mostrada en el video subido por los grupos
Ejemplo de Anuncio de la semana (profesor)
Hola a todos
Esta semana revisaremos la propuesta de Microsoft para implementar Fábricas de Software y las prácticas de Integración Continua
Deben hacer una lectura sobre Fábricas de Software al estilo Microsoft y otra sobre integración continua
Hay un Quiz que deben hacer antes del próximo lunes
Hay unos tutoriales sobre Git Hook, integración continua con Jenkins y con Circle CI.
Deben iniciar la implementación de integración continua para el proyecto del curso. Deberán subir un video con lo que hagan a finales de la otra semana.
En estas semanas que vienen podemos organizar reuniones sincrónicas para ayudarles a implementar la integración continua, si así lo requieren,
Si tienen alguna pregunta, pueden contactarnos por los foros o el Slack.
Actividades de la semana
Actividad
Rol del tutor
Descripción
Quiz: Fábricas de Software
Resumen y seguimiento
Identificar preguntas dentro del quiz en las que los estudiantes tuvieron más errores.
Identificar estudiantes que no les haya ido muy bien (notas inferiores a 3.8-3.5).
Mostrar el panorama al profesor y definir si es necesario preguntar a los estudiantes si necesitan ayuda o una explicación.
Muro digital del proyecto
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Creación de padlet para la subida de lo realizado sobre integración continua para el proyecto.
Realizar una retroalimentación a los estudiante y un resumen para el profesor de lo realizado.
Ejemplo de Anuncio de la semana (profesor)
Hola a todos
Esta es la décimo sexta semana del curso de Fábricas de Software. Vamos a hacer una pequeña actividad sobre Entrega y Despliegue continuo y deberán entregar sus avances en la implementación de Integración Continua.
Deberán revisar un caso de estudio sobre la implementación de integración y entrega continua (CI/CD) en una empresa de software
Hacen primero una revisión individual y luego una revisión grupal
Deberán subir un video con sus avances en la implementación de integración continua del proyecto del curso
Si tienen alguna duda, pueden enviarnos un mensaje por Slack o los foros del Curso
Actividades de la semana
Actividad
Rol del tutor
Descripción
Foro Caso de Estudio: Empresa OurPeople Solutions
Seguimiento - Retroalimentación y evaluación
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Realizar la retroalimentación y evaluación de las entradas grupales realizadas en el foro.
Identificar si los estudiantes tiene un entendimiento de los conceptos y su aplicación en el caso
Identificar si las entradas cumplen con los elementos requeridos en el enunciado.
Muro digital del proyecto - CI/CD
Resumen y seguimiento - Preparación de recursos
Resolver las dudas relacionadas a la actividad (conceptuales o técnicas).
Crear muro digital en padlet para la subida de los videos resumen de la la aplicación de integración continua y despliegue continuo en el proyecto
Revisar la implementación realizada por parte de los grupos y resumir lo realizado al profesor
Dentro de las herramientas de gestión que se utilizan en el curso se encuentran:
TODO: Revisa
Moodle (preguntar a Ricardo)
Edición de contenidos - Modificación de fechas de actividades.
Edición de contenidos - Modificación de descripciones y enlaces.
Creación de grupos - Asignación manual o automática.
Calificación y creación de retroalimentaciones.
Collaborate (reuniones sincrónicas).
Creación de notificaciones para eventos en el sistema (i.e notificación por publicación de comentarios en foros sin tiempo de esperar).