A COURSE PLAN USING ACTIVE TEACHING METHODS IN SOFTWARE ANALYSIS AND DESIGN IN THE COMPUTER SCIENCE COURSE
DOI:
https://doi.org/10.4301/S1807-1775202522005Keywords:
Syllabus, Teaching Plan, Software Analysis and Design, Active MethodsAbstract
The teaching activity requires organization and planning of actions that will be applied in the classroom. Instruments that help the teacher in this process are extremely important to enhance the teaching-learning process. In this sense, the objective of this work is to present a course plan and teaching plan for the discipline of Software Analysis and Design with emphasis on active teaching methodologies. To meet this objective, the following steps were used as a methodology: literature review on the teaching approach of Software Analysis and Design; mapping of competencies between the ACM/IEEE and SBC curricula for the Computer Science course related to Software Analysis and Design; analysis of the main Pedagogical Projects of the IFES Course in Brazil for the Computer Science course; structuring of the course plan and teaching plan for the teaching of Software Analysis and Design; and evaluation based on Peer Review of the two instruments, the course plan and the teaching plan. As main results, the following can be highlighted: the development of the course plan contemplating the main active methodologies identified in the literature, with emphasis on the aspects of Quality in Software Analysis and Design; indication of basic literature for the teaching of Software Analysis and Projects; presentation of methodological procedures; and development of the teaching plan using iconography and resources to stimulate and facilitate students' understanding.References
Anderson, L. W. and Krathwohl, D. R. (2001). A taxonomy for learning, teaching, and assessing: A revision of Bloom’s taxonomy of educational objectives. Longman.
Aniche, M., Yoder, J., and Kon, F. (2019). Current challenges in practical object-oriented software design. In 2019 IEEE/ACM 41st International Conference on Software Engineering: New Ideas and Emerging Results (ICSE-NIER), pages 113–116. DOI: https://doi.org/10.1109/ICSE-NIER.2019.00037
Bass, L., Clements, P., and Kazman, R. (2003). Software architecture in practice. Addison-Wesley Professional.
Bourque, P. and Fairley, R. E., editors (2014). SWEBOK: Guide to the Software Engineering Body of Knowledge. IEEE Computer Society, Los Alamitos, CA, 3.0 edition.
Bowlick, F. J., Bednarz, S. W., and Goldberg, D. W. (2020). Course syllabi in gis programming: Trends and patterns in the integration of computer science and programming. The Canadian Geographer/Le Geógraphe canadien, 64(4):495–511. DOI: https://doi.org/10.1111/cag.12544
Budgen, D. (2003). Software design. Addison-Wesley.
Camargos, E. F. (2018). Peer review: importance, responsibilities, and benefits. Geriatrics, Gerontology and Aging, 12(3):141–142. DOI: https://doi.org/10.5327/Z2447-21152018v12n3ED
Capraro, L. (2007). Técnicas de ensino a serviço do professor engenheiro. In XXXV Congresso Brasileiro de Educação em Engenharia, COBENGE, Curitiba-PR.
Castro, V. d. S. e Oliveira, S. R. B. (2015). Um framework de práticas Ágeis para apoio à implementação do processo de projeto e construção do produto. iSys – Brazilian Journal of Information Systems, 8(2):78–97. DOI: https://doi.org/10.5753/isys.2015.286
Castro, V. d. S. and Oliveira, S. R. B. (2022). Content and competences for teaching software design in the computer science course: A mapping of CC-2020, RF-CC-2017 and SWEBOK-v3.0. 19th CONTECSI - INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGY MANAGEMENT VIRTUAL. DOI: https://doi.org/10.5748/19CONTECSI/PSE/EDU/6979
Castro, V. d. S. and Oliveira, S. R. B. (2023a). A diagnosis on the teaching of software design in a sample of undergraduate courses in computer science in brazil. In 2023 IEEE Frontiers in Education Conference (FIE).
Castro, V. d. S. and Oliveira, S. R. B. (2023b). Diversity in software design and construction teaching: A systematic literature review. Education Sciences, 13(3):303. DOI: https://doi.org/10.3390/educsci13030303
Castro, V. d. S. and Oliveira, S. R. B. (2024). Software Analysis and Design: A course plan using active teaching methods in Computer Science Course. 20th CONTECSI - INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGY MANAGEMENT VIRTUAL.
Chaudhary, M. and Chopra, A. (2016). CMMI for development: Implementation guide. Apress.
Chaudhary, M. and Chopra, A. (2017). CMMI for Development. Apress. DOI: https://doi.org/10.1007/978-1-4842-2529-5
Chrissis, M. B., Konrad, M., and Shrum, S. (2011). CMMI for development: guidelines for process integration and product improvement. Pearson Education.
Coimbra, C. L. (2017). A aula expositiva dialogada em uma perspectiva freireana. LEAL, Edvalda Araújo; MIRANDA, Gilberto José; CASA NOVA, Silvia Pereira de Castro. Revolucionando a Sala de Aula: como envolver o estudante aplicando técnicas de metodologias ativas de aprendizagem. Sa˜o Paulo: Atlas, pages 1–13.
Curricula, C. (2020). Paradigms for global computing education. URL: https://dl.acm.org/doi/book/10.1145/3467967.
de Pádua Paula Filho, W. (2019). Engenharia de Software: produtos. LTC, Rio de Janeiro.
de Sena Quaresma, J. A. e Oliveira, S. R. B. (2022). Evaluation and use of a student- centered syllabus for the software process subject in a postgraduate course: A quasi- experiment. Education Sciences, 12(12):851. DOI: https://doi.org/10.3390/educsci12120851
Eberly, M. B., Newton, S. E., and Wiggins, R. A. (2001). The syllabus as a tool for student-centered learning. The Journal of General Education, pages 56–74. DOI: https://doi.org/10.1353/jge.2001.0003
Elgrably, I. S. and Bezerra Oliveira, S. R. (2022). A quasi-experimental evaluation of teaching software testing in software quality assurance subject during a post-graduate computer science course. International Journal of Emerging Technologies in Learning, 17(5). DOI: https://doi.org/10.3991/ijet.v17i05.25673
Elgrably, I. S. and Oliveira, S. R. B. (2020). Construction of a syllabus adhering to the teaching of software testing using agile practices. In 2020 IEEE Frontiers in Education Conference (FIE), pages 1–9, Uppsala, Sweden. IEEE. DOI: https://doi.org/10.1109/FIE44824.2020.9274266
Engholm, H. (2010). Engenharia de software na prática. Novatec Editora, São Paulo, Brasil.
Evans, E. (2010). Domain-Driven Design: Atacando as complexidades no coração do software. Alta Books.
Ferreira, T., Viana, D., Fernandes, J., and Santos, R. (2018). Identifying emerging topics and difficulties in software engineering education in brazil. In Proceedings of the XXXII Brazilian Symposium on Software Engineering, pages 230–239. Association for Computing Machinery. DOI: https://doi.org/10.1145/3266237.3266247
Flauzino, R. H., Peres, C. M., and Carmona, F. (2021). A descoberta do plano de Ensino e aprendizagem (PEA) como instrumento reflexivo na docência. Medicina (Ribeirão Preto) DOI: https://doi.org/10.11606/issn.2176-7262.rmrp.2021.184765
Force, C. T. (2020). Computing Curricula 2020. ACM.
Forti, S., Breitenbucher, U., and Soldani, J. (2022). Trending topics in software engineering. SIGSOFT Softw. Eng. Notes, 47(3):20–21. DOI: https://doi.org/10.1145/3539814.3539820
Fowler, M. (2014). UML Essencial: um breve guia para linguagem padrão. Bookman editora.
Garousi, V., Giray, G., and Tuzun, E. (2019). Understanding the knowledge gaps of software engineers: An empirical analysis based on swebok. ACM Trans. Comput. Educ., 20(1). DOI: https://doi.org/10.1145/3360497
Gil, A. C. (2000). Metodologia Do Ensino Superior . Editora Atlas SA.
Guedes, G. T. (2018). UML 2-Uma abordagem prática. Novatec Editora.
Kaur, A. W. (2021). “dope syllabus”: Student impressions of an infographic-style visual syllabus. International Journal for the Scholarship of Teaching and Learning, 15(2):6. DOI: https://doi.org/10.20429/ijsotl.2021.150206
Koscianski, A. and dos Santos Soares, M. (2007). Qualidade de Software-2ª Edição: Aprenda as metodologias e técnicas mais modernas para o desenvolvimento de software. Novatec Editora.
Larman, C. (2005). Utilizando UML e Padrões, 3ª edição ed. Bookman.
Leite, F. T., Coutinho, J. C. S., and de Sousa, R. R. (2020). An experience report about challenges of software engineering as a second cycle course. In Proceedings of the XXXIV Brazilian Symposium on Software Engineering, SBES ’20, page 824–833, New York, NY, USA. Association for Computing Machinery. DOI: https://doi.org/10.1145/3422392.3422487
Lopes, A. C. (2014). Teorias de currículo. Cortez Editora.
Matejka, K. and Kurke, L. B. (1994). Designing a great syllabus. College Teaching, 42(3):115–117. DOI: https://doi.org/10.1080/87567555.1994.9926838
MEC (2016). Resolução nº 05, de 16 de novembro de 2016, diretrizes curriculares nacionais para os cursos de graduação em computação. Technical report, Ministério da Educação - Brasil.
on Computing Curricula, J. T. F. (2013). Computer Science Curricula 2013. ACM/Association for Computing Machinery.
Padilha, P. R. (2002).Planejamento dialógico: como construir o projeto político-pedagógico da escola. Cortez/Instituto Paulo Freire.
Pressman, R. S. and Maxim, B. R. (2016). Engenharia de software. McGraw Hill Brasil, Porto Alegre.
Quaresma, J. A. S. and Oliveira, S. R. B. (2022). A syllabus proposal for teaching of software development process in undergraduate courses in computer science. In Proceedings of the XXXVI Brazilian Symposium on Software Engineering, pages 153–167. DOI: https://doi.org/10.1145/3555228.3555257
Rodríguez-Pérez, G., Nadri, R., and Nagappan, M. (2021). Perceived diversity in software engineering: a systematic literature review. Empirical Software Engineering, 26(5):1– 38. DOI: https://doi.org/10.1007/s10664-021-09992-2
Rubio, F., Llopis-Albert, C., and Zeng, S. (2022). Best practices in syllabus design and course planning applied to mechanical engineering subjects. Multidisciplinary Journal for Education, Social and Technological Sciences, 9(2):123–137 DOI: https://doi.org/10.4995/muse.2022.18230
Sacristán, J. G. (2013). O que significa o currículo. Saberes e incertezas sobre o currículo. Porto Alegre: Penso, pages 16–35.
Silveira, P., Silveira, G., Lopes, S., Moreira, G., STEPAAT, N., and Kung, F. (2011). Introdução à Arquitetura de Design de Software: Uma Introdução à Plataforma Java. Elsevier Brasil.
SOFTEX (2023). MPS.BR - Melhoria de Processo do Software Brasileiro - Guia Geral MPS de Software. Softex.
Sommerville, I. (2011). Engenharia de software. Pearson Prentice Hall, São Paulo.
Yarosh, J. H. (2021). The syllabus reconstructed: an analysis of traditional and visual syllabi for information retention and inclusiveness. Teaching Sociology, 49(2):173–183. DOI: https://doi.org/10.1177/0092055X21996784
Zabeu, A. C., Rocha, A. R., Ângela Filipak Machado, C., dos Santos Souza, G., and Reinehr, S. (2021). MPS.BR - Melhoria de Processo do Software Brasileiro - Guia Geral MPS de Software. Softex.
Zorzo, A. F., Nunes, D., Matos, E. S., Steinmacher, I., Leite, J. C., Araujo, R., Correia, R. C. M., and Martins, S. (2017). Referenciais de Formação para os Cursos de Graduação em Computação. SBC.