A case-based approach for software architecture education and training
| Main Author: | |
|---|---|
| Publication Date: | 2024 |
| Format: | Doctoral thesis |
| Language: | eng |
| Source: | Biblioteca Digital de Teses e Dissertações da USP |
| Download full: | https://www.teses.usp.br/teses/disponiveis/55/55134/tde-11022025-151023/ |
Summary: | Context: Software architecture education remains challenging for instructors, students, and software industry professionals. Several initiatives have been proposed to mitigate the inherent challenges, including games, supporting tools, collaborative courses, and hands-on projects. In addition to such initiatives, case-based approaches have been introduced for software architecture education and training, and its benefits are recognized. However, it is challenging to find, select, evaluate, and adapt cases to design instructions that are capable of achieving meaningful learning. Objective: In this sense, the main goal of this thesis is to provide the knowledge and means necessary to facilitate the employment of real cases for software architecture education and maximize the positive effects of such approach on students learning. Method: For that purpose, we employed a series of methods that comprises a literature review to understand and characterize the methods and approaches commonly employed to teach software architecture, and characterize the use of cases and real cases to support software architecture education, a mix of qualitative and quantitative methods to assess the perspective of students on the use of real cases in different ways and occasions, a mix of qualitative methods to develop a conceptual model, and action research to iteratively develop a case-based approach for software architecture education. Results: Besides providing a broad view of software architecture education, our results highlight the use of real cases as an important resource when teaching and learning software architecture concepts. The conceptual model in combination with our approach can support instructors in delivering a better overall experience with real cases. Conclusion: Using real cases to teach software architecture can be rewarding in several ways, both from the point of view of students and instructors. However, developing effective instruction based on such cases may require careful design and extra effort to achieve the desired learning objectives. In this sense, the use of a systematic approach is key to leverage the use of cases in software architecture education. |
| id |
USP_d3ea31ad0bfd3ad78bb121a43f9c6e37 |
|---|---|
| oai_identifier_str |
oai:teses.usp.br:tde-11022025-151023 |
| network_acronym_str |
USP |
| network_name_str |
Biblioteca Digital de Teses e Dissertações da USP |
| repository_id_str |
2721 |
| spelling |
A case-based approach for software architecture education and trainingUma abordagem baseado em casos para o ensino e treinamento em arquitetura de softwareAprendizagem baseada em casosArquitetura de softwareCase-based learningEducação em arquitetura de softwareEducação em engenharia de softwareSoftware ArchitectureSoftware architecture educationSoftware engineering educationContext: Software architecture education remains challenging for instructors, students, and software industry professionals. Several initiatives have been proposed to mitigate the inherent challenges, including games, supporting tools, collaborative courses, and hands-on projects. In addition to such initiatives, case-based approaches have been introduced for software architecture education and training, and its benefits are recognized. However, it is challenging to find, select, evaluate, and adapt cases to design instructions that are capable of achieving meaningful learning. Objective: In this sense, the main goal of this thesis is to provide the knowledge and means necessary to facilitate the employment of real cases for software architecture education and maximize the positive effects of such approach on students learning. Method: For that purpose, we employed a series of methods that comprises a literature review to understand and characterize the methods and approaches commonly employed to teach software architecture, and characterize the use of cases and real cases to support software architecture education, a mix of qualitative and quantitative methods to assess the perspective of students on the use of real cases in different ways and occasions, a mix of qualitative methods to develop a conceptual model, and action research to iteratively develop a case-based approach for software architecture education. Results: Besides providing a broad view of software architecture education, our results highlight the use of real cases as an important resource when teaching and learning software architecture concepts. The conceptual model in combination with our approach can support instructors in delivering a better overall experience with real cases. Conclusion: Using real cases to teach software architecture can be rewarding in several ways, both from the point of view of students and instructors. However, developing effective instruction based on such cases may require careful design and extra effort to achieve the desired learning objectives. In this sense, the use of a systematic approach is key to leverage the use of cases in software architecture education.Contexto: O ensino e a aprendizagem de arquitetura de software continua a ser um desafio para instrutores, alunos e profissionais da indústria de software. Diversas iniciativas foram propostas para mitigar os desafios inerentes, incluindo jogos, ferramentas de apoio, cursos colaborativos e projetos práticos. Além dessas iniciativas, abordagens baseadas em casos foram introduzidas para ensinar arquitetura de software, e seus benefícios são reconhecidos. No entanto, é desafiador encontrar, selecionar, avaliar e adaptar casos para criar instruções capazes de alcançar um aprendizado significativo. Objetivo: Nesse sentido, o principal objetivo desta tese é fornecer o conhecimento e os meios necessários para facilitar o uso de casos reais na educação em arquitetura de software e maximizar os efeitos positivos dessa abordagem no aprendizado dos alunos. Método: Para isso, empregamos uma série de métodos que inclui uma revisão da literatura para entender e caracterizar os métodos e abordagens comumente utilizados para ensinar arquitetura de software e caracterizar o uso de casos e casos reais para apoiar a educação em arquitetura de software; uma combinação de métodos qualitativos e quantitativos para avaliar a perspectiva dos alunos sobre o uso de casos reais em diferentes formas e ocasiões; um método baseado em literatura, opiniões de especialistas e coding para desenvolver um modelo conceitual; e pesquisa-ação para desenvolver iterativamente uma abordagem baseada em casos para a educação em arquitetura de software. Resultados: Além de fornecer uma visão ampla da educação em arquitetura de software, nossos resultados destacam o uso de casos reais como um recurso importante no ensino e aprendizagem dos conceitos de arquitetura de software. O modelo conceitual, combinado com nossa abordagem, pode apoiar os instrutores na oferta de uma experiência melhor ao utilizar casos reais. Conclusão: Usar casos reais para ensinar arquitetura de software pode ser gratificante de várias maneiras, tanto do ponto de vista dos alunos quanto dos instrutores. No entanto, desenvolver instruções eficazes com base nesses casos pode exigir um planejamento cuidadoso e um esforço adicional para alcançar os objetivos de aprendizagem desejados. Nesse sentido, o uso de uma abordagem sistemática é fundamental para potencializar o uso de casos na educação em arquitetura de software.Biblioteca Digitais de Teses e Dissertações da USPNakagawa, Elisa YumiOliveira, Brauner Roberto do Nascimento2024-11-29info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttps://www.teses.usp.br/teses/disponiveis/55/55134/tde-11022025-151023/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesseng2025-02-11T17:20:02Zoai:teses.usp.br:tde-11022025-151023Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212025-02-11T17:20:02Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false |
| dc.title.none.fl_str_mv |
A case-based approach for software architecture education and training Uma abordagem baseado em casos para o ensino e treinamento em arquitetura de software |
| title |
A case-based approach for software architecture education and training |
| spellingShingle |
A case-based approach for software architecture education and training Oliveira, Brauner Roberto do Nascimento Aprendizagem baseada em casos Arquitetura de software Case-based learning Educação em arquitetura de software Educação em engenharia de software Software Architecture Software architecture education Software engineering education |
| title_short |
A case-based approach for software architecture education and training |
| title_full |
A case-based approach for software architecture education and training |
| title_fullStr |
A case-based approach for software architecture education and training |
| title_full_unstemmed |
A case-based approach for software architecture education and training |
| title_sort |
A case-based approach for software architecture education and training |
| author |
Oliveira, Brauner Roberto do Nascimento |
| author_facet |
Oliveira, Brauner Roberto do Nascimento |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Nakagawa, Elisa Yumi |
| dc.contributor.author.fl_str_mv |
Oliveira, Brauner Roberto do Nascimento |
| dc.subject.por.fl_str_mv |
Aprendizagem baseada em casos Arquitetura de software Case-based learning Educação em arquitetura de software Educação em engenharia de software Software Architecture Software architecture education Software engineering education |
| topic |
Aprendizagem baseada em casos Arquitetura de software Case-based learning Educação em arquitetura de software Educação em engenharia de software Software Architecture Software architecture education Software engineering education |
| description |
Context: Software architecture education remains challenging for instructors, students, and software industry professionals. Several initiatives have been proposed to mitigate the inherent challenges, including games, supporting tools, collaborative courses, and hands-on projects. In addition to such initiatives, case-based approaches have been introduced for software architecture education and training, and its benefits are recognized. However, it is challenging to find, select, evaluate, and adapt cases to design instructions that are capable of achieving meaningful learning. Objective: In this sense, the main goal of this thesis is to provide the knowledge and means necessary to facilitate the employment of real cases for software architecture education and maximize the positive effects of such approach on students learning. Method: For that purpose, we employed a series of methods that comprises a literature review to understand and characterize the methods and approaches commonly employed to teach software architecture, and characterize the use of cases and real cases to support software architecture education, a mix of qualitative and quantitative methods to assess the perspective of students on the use of real cases in different ways and occasions, a mix of qualitative methods to develop a conceptual model, and action research to iteratively develop a case-based approach for software architecture education. Results: Besides providing a broad view of software architecture education, our results highlight the use of real cases as an important resource when teaching and learning software architecture concepts. The conceptual model in combination with our approach can support instructors in delivering a better overall experience with real cases. Conclusion: Using real cases to teach software architecture can be rewarding in several ways, both from the point of view of students and instructors. However, developing effective instruction based on such cases may require careful design and extra effort to achieve the desired learning objectives. In this sense, the use of a systematic approach is key to leverage the use of cases in software architecture education. |
| publishDate |
2024 |
| dc.date.none.fl_str_mv |
2024-11-29 |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
| format |
doctoralThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://www.teses.usp.br/teses/disponiveis/55/55134/tde-11022025-151023/ |
| url |
https://www.teses.usp.br/teses/disponiveis/55/55134/tde-11022025-151023/ |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
|
| dc.rights.driver.fl_str_mv |
Liberar o conteúdo para acesso público. info:eu-repo/semantics/openAccess |
| rights_invalid_str_mv |
Liberar o conteúdo para acesso público. |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.coverage.none.fl_str_mv |
|
| dc.publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
| publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
| dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo (USP) instacron:USP |
| instname_str |
Universidade de São Paulo (USP) |
| instacron_str |
USP |
| institution |
USP |
| reponame_str |
Biblioteca Digital de Teses e Dissertações da USP |
| collection |
Biblioteca Digital de Teses e Dissertações da USP |
| repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP) |
| repository.mail.fl_str_mv |
virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br |
| _version_ |
1839839032383635456 |