Computational Thinking and Software Engineering: first steps towards a proposal for systematization of problem solving
Abstract
Computational Thinking (CT) involves concepts and techniques from Computer Science that can help in problem solving. Software Engineering (SE) encompasses different actions related to the systematic organization for software development, focusing on the quality and effectiveness of the delivered product. Both CT and SE constitute approaches that involve problem solving grounded in the fundamentals of Computing. This work addresses the first steps towards an interrelationship between the areas that will allow the foundation of future proposals that aim to systematize the problem-solving process.
References
Csizmadia, A., Curzon, P., Dorling, M., Humphreys, S., Ng, T., Selby, C., and Woollard, J. (2015). Computational thinking - A guide for teachers. Guide, Computing at School. [link].
CSTA/ISTEA (2011). Computational Thinking in K–12 Education: leadership toolkit. [link].
Fronza, I., El Ioini, N., and Corral, L. (2016). Teaching software design engineering across the k-12 curriculum: Using visual thinking and computational thinking. In Proceedings of the 17th Annual Conference on Information Technology Education, SIGITE ’16, page 97–101, New York, NY, USA. Association for Computing Machinery.
Fronza, I., Ioini, N. E., and Corral, L. (2017). Teaching computational thinking using agile software engineering methods: A framework for middle schools. ACM Trans. Comput. Educ., 17(4).
Lee, I., Martin, F., Denner, J., Coulter, B., Allan, W., Erickson, J., Malyn-Smith, J., and Werner, L. (2011). Computational thinking for youth in practice. Acm Inroads, 2(1):32–37.
Papert, S. (1990). Children, computers and powerful ideas.
Pressman, R. and Maxim, B. (2016). Engenharia de Software-8ª Edição. McGraw Hill Brasil.
Ribeiro, L., Foss, L., and da Costa Cavalheiro, S. A. (2020). Entendendo o pensamento computacional. In Raabe, A., Zorzo, A. F., and Blikstein, P., editors, Computação na educação básica: fundamentos e experiências. Penso Editora.
Santos, J., Cavalheiro, S., Foss, L., and Jr., L. R. (2021). Relações entre o pensamento computacional e a engenharia de software: Uma revisão sistemática da literatura. In Anais do XXXII Simpósio Brasileiro de Informática na Educação, pages 1027–1038, Porto Alegre, RS, Brasil. SBC.
SBC (2019). Diretrizes para ensino de computação na educação básica. [link].
Shute, V. J., Sun, C., and Asbell-Clarke, J. (2017). Demystifying computational thinking. Educational Research Review, 22:142–158.
Sommerville, I. (2011). Engenharia de software. 9a. edição, Pearson Prentice Hall.
Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3):33–35.
Wing, J. M. (2014). Computational thinking benefits society. 40th Anniversary Blog of Social Issues in Computing, 2014:26.
