Ir al contenido

Documat


Aprendiendo arquitectura software a partir de proyectos de código abierto en GitHub

  • Ana B. Sánchez [1] ; José Antonio Parejo [1] ; Bedilia Estrada-Torres [1] ; Alfonso E. Márquez-Chamorro [1] ; Adela del-Río-Ortega [1] ; Sergio Segura [1]
    1. [1] Universidad de Sevilla
  • Localización: Actas de las Jornadas sobre la Enseñanza Universitaria de la Informática (JENUI), ISSN 2531-0607, Nº. 8, 2023, págs. 89-96
  • Idioma: español
  • Enlaces
  • Resumen
    • español

      La enseñanza de arquitectura del software supone todo un reto. Los conceptos teóricos son a menudo muy abstractos y los problemas arquitectónicos sólo son claramente visibles en aplicaciones de cierta envergadura. El reto es aún mayor cuando estos conceptos se enseñan en las primeras etapas del grado cuando los conocimientos de diseño y programación del alumnado aún son limitados. Para abordar este reto, inspirados por una propuesta llevada a cabo en la Delft University, decidimos adoptar un enfoque novedoso: enseñar arquitectura del software a través del análisis, evaluación y documentación de la arquitectura de proyectos existentes alojados en la plataforma GitHub. Para ello, fue necesario adaptar el método original, empleado a nivel de máster, a la asignatura objeto del estudio impartida durante el segundo curso de grado. Para evaluar este enfoque realizamos un total de 258 encuestas a estudiantes de dos cursos consecutivos. Los resultados del estudio, respaldados por un sólido análisis estadístico de los datos, demuestran la idoneidad de este método para la enseñanza de arquitectura del software en los primeros cursos de grado.

    • English

      Teaching software architecture is a challenge. Theoretical concepts are often very abstract and architectural problems are only clearly visible in applications of a certain magnitude. The challenge is even greater when these concepts are taught in the early stages of the bachelor’s degree when the students’ knowledge of design and programming is still limited. To address this challenge, inspired by a proposal carried out at Delft University, we decided to adopt a novel approach: teaching software architecture by analysing, evaluating and documenting the architecture of existing projects hosted on the GitHub platform. To do so, it was necessary to adapt the original method, used in a master course, to the course under study, taught during the second year of the bachelor’s degree. To evaluate this approach we conducted a total of 258 student surveys in two consecutive years. The results of the study, supported by a robust statistical analysis of the data, demonstrate the suitability of this method for teaching software architecture in the first years of the bachelor’s degree.

  • Referencias bibliográficas
    • Len Bass, Paul Clements, y Rick Kazman. Software Architecture In Practice. Addison-Wesley Professional. 3rd edition, 01 2003.
    • Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Paulo Merson, Robert Nord, y Judith Stafford. Documenting...
    • Cristobal Costa-Soria, Manuel Llavador, y Maria del Carmen Penades. An approach for teaching software engineering through reverse engineering....
    • Cristóbal Costa-Soria y Jennifer Pérez. Teaching software architectures and aspect-oriented software development using open-source projects....
    • Mohsen Dorodchi, Erfan Al-Hossami, Mohammad Nagahisarchoghaei, Rohit Diwadkar, y Aileen Benedict. Teaching an undergraduate software engineering...
    • Patricia Lago y Hans Vliet. Teaching a course on software architecture. En CSEET Conf., pp. 35 – 42, 05 2005.
    • John Mcgregor, Felix Bachmann, Len Bass, Philip Bianco, y Mark Klein. Using an architecture reasoning tool to teach software architecture....
    • Tomi Männistö, Juha Savolainen, y Varvana Myllärniemi. Teaching software architecture design. En WICSA Conf., pp. 117 – 124, 03 2008.
    • Naomi B. Robbins y Richard M. Heiberger. Plotting likert and other rating scales. En 2011 joint statistical meeting, volumen 1. American Statistical...
    • Claudia Rodrigues. Visar3d: an approach to software architecture teaching based on virtual and augmented reality. En ICSE, pp. 351–352, 2010.
    • Nick Rozanski y Eóin Woods. Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives. Addison-Wesley Professional,...
    • Chandan R. Rupakheti y Stephen V. Chenoweth. Teaching software architecture to undergraduate students: An experience report. En IEEE International...
    • Javier Troya, José A Parejo, Sergio Segura, Antonio Gámez-Díaz, Alfonso E Márquez-Chamorro, y Adela del Río-Ortega. Flipping laboratory sessions...
    • Juan Urrego y Dario Correal. Archinotes: A tool for assisting software architecture courses. En CSEE&T Conf., pp. 80–88, 05 2013.
    • Arie Van Deursen, Maurício Aniche, Joop Aué, Rogier Slag, Michael De Jong, Alex Nederlof, y Eric Bouwers. A collaborative approach to teaching...
    • Alf Wang. Extensive evaluation of using a game project in a software architecture course. TOCE, 11:5, 02 2011.
    • Gero Wedemann. Scrum as a method of teaching software architecture. En ECSEE Conf., p. 108–112, 2018.

Fundación Dialnet

Mi Documat

Opciones de artículo

Opciones de compartir

Opciones de entorno