OPENSMALS: um repositório aberto para auxiliar no ensino de modelagem de software empregando estratégias de aprendizagem ativa

Modelagem e um topico central na Educacao em Engenharia de Software. A modelagem de software possibilita que os engenheiros de software compreendam de forma aprofundada os conceitos ou problemas especificos durante o desenvolvimento de software usando diferentes niveis de detalhes. A Unified Modeling Language (UML) e um padrao de modelagem amplamente usado na industria de software como uma linguagem para especificar sistemas de software. No entanto, os estudantes enfrentam dificuldades enquanto estao aprendendo modelagem de software empregando os diagramas UML. Uma causa possivel e a abordagem tradicional centrada no professor que ainda domina os cursos de Computacao. Para ensinar a modelagem de software de maneira eficaz, os professores que geralmente empregam metodos tradicionais podem usar estrategias de aprendizagem ativa. Contudo, os professores relutam em mudar suas abordagens de ensino devido as diversas barreiras que impedem a aplicacao de estrategias ativas de aprendizagem. Alem disso, ha relativamente poucas pesquisas que tratam sobre como mitigar essas barreiras. O objetivo apresentado nesta tese de doutorado e apoiar os professores na adocao de estrategias de aprendizagem ativas no ensino de modelagem de software. Para atingir esse objetivo, esta pesquisa foi guiada pela abordagem de pesquisa Design Science Research (DSR). O DSR permitiu a delimitacao do problema de pesquisa, o desenvolvimento, a avaliacao e a evolucao de um artefato. A abordagem DSR e um processo iterativo e compreende tres ciclos de pesquisa interligados entre si: O Ciclo de Relevância, o Ciclo de Design e o Ciclo de Rigor. Durante o Ciclo de Relevância, realizou-se a analise da viabilidade do tema de pesquisa. Para isso, foi conduzido um Mapeamento Sistematico da Literatura para compreender as principais dificuldades percebidas pelos estudantes ao realizar a modelagem de software e identificar as estrategias de ensino utilizadas pelos professores para apoiar o ensino de modelagem de software. Foram tambem conduzidos estudos experimentais exploratorios para obter uma melhor compreensao, sob as perspectivas dos estudantes e professores, das estrategias de aprendizagem ativa identificadas na literatura. O Ciclo de Design possibilitou a o desenvolvimento, avaliacao e evolucao de um artefato. O artefato proposto e um repositorio chamado OpenSMALS (Open Repository for Software Modeling Teaching from Active Learning Strategies). O OpenSMALS fornece diretrizes especificas sobre como os professores podem aplicar as estrategias de aprendizagem ativa, alem de ajuda-los na identificacao das estrategias que melhor se adequam ao seu contexto de ensino. Para avaliar e evoluir o OpenSMALS, foram conduzidos quatro Ciclos de Design – em quatro universidades diferentes – para avaliar o uso do OpenSMALS. Os resultados mostraram que o OpenSMALS reduziu satisfatoriamente as barreiras enfrentadas pelos professores e alcancou um nivel de maturidade adequado a ser adotado por outros professores. Por fim, o Ciclo de Rigor refere-se principalmente a geracao e o uso do conhecimento. Com isso, os principais fundamentos estao relacionados ao conhecimento sobre educacao em Engenharia de Software, as estrategias de aprendizagem ativa, o Mapeamento Sistematico da Literatura, os estudos experimentais, analise qualitativa e quantitativa, Grupos de Foco, entrevistas, dentre outros. Com relacao a geracao de conhecimento, a principal contribuicao para a base de conhecimento e o proprio OpenSMALS, como um novo repositorio aberto que ajuda os instrutores a identificar estrategias de aprendizagem ativa mais adequadas ao seu contexto de ensino. Alem disso, (i) o processo de uso do OpenSMALS em configuracoes reais serve como exemplo para outros instrutores, (ii) a investigacao realizada para desenvolver o OpenSMALS, (iii) o conjunto de estrategias de aprendizagem ativa que podem ser usadas para ensinar diagramas UML ( iv) os aspectos a serem considerados na implementacao da estrategia e (v) o conhecimento relacionado a analise dos impactos da estrategia no ensino do diagrama UML.