A Large-Scale Functionality Analysis of Apps Created with App Inventor
Abstract
Teaching algorithms and programming in K-12 Education has become essential. One of the programming environments used at this level of education is App Inventor, which allows you to create mobile applications. While there have been numerous studies on learning to program with App Inventor, one question that remains is which features are typically implemented. Thus, this article presents the results of a large-scale statistical analysis based on automated functionality extraction from the code of 100,000 application projects created with App Inventor. The results demonstrate that some functionalities are very common and related to the idiosyncrasy of applications. On the other hand, although there is support from App Inventor, some features are extremely rare due to niche use and lack of teaching materials. These results can help in a better understanding of the functionalities currently present in most projects, indicating opportunities for the development of new materials and support in assessment, including creativity development.
References
CNE/MEC. Conselho Nacional de Educação, Ministério da Educação. 2022. Competências e premissas específicas da computação na BNCC. Disponível em: [link]. Acessado em 14 set. 2022.
MIT App Inventor. 2022. App Inventor. Disponível em: http://ai2.appinventor.mit.edu. Acessado em 14 set. 2022.
MIT App Inventor. 2022. App Inventor - About Us. Disponível em: https://appinventor.mit.edu/about-us. Acessado em 14 set. 2022.
MIT Galeria AI. 2022. MIT App Inventor Gallery. Disponível em: https://gallery.appinventor.mit.edu/. Acessado em 14 set. 2022.
B. Xie, H. Abelson. 2016. Skill progression in MIT App Inventor. In IEEE Symposium on Visual Languages and Human-Centric Computing, Cambridge, pp. 213–217. DOI: http://doi.org/10.1109/VLHCC.2016.7739687
S. C. Kong, H. Abelson. 2019. Computational thinking education. Springer Nature. DOI:10.1007/978-981-13-6528-7
N. da C. Alves, C. Gresse von Wangenheim, J. C. R. Hauck, A. F. Borgatto. 2021 An Item Response Theory Analysis of Algorithms and Programming Concepts in App Inventor Projects. In: Anais do Simpósio Brasileiro de Educação em Computação, Jataí, Goiás, 2021. DOI: 10.5753/educomp.2021.14466
W. Martin, F. Sarro, Y. Jia, Y. Zhang, & M. Harman. 2016. A survey of app store analysis for software engineering. IEEE transactions on software engineering, 43(9), 817-847. DOI:10.1109/TSE.2016.2630689
I. Li, F. Turbak, & E. Mustafaraj. 2017. Calls of the wild: Exploring procedural abstraction in app inventor. 2017 IEEE Blocks and Beyond Workshop (B&B). DOI:10.1109/blocks.2017.8120417
B. Xie, I. Shabir, & H. Abelson. 2015. Measuring the usability and capability of app inventor to create mobile applications. In Proceedings of the 3rd International Workshop on Programming for Mobile and Touch (pp. 1-8). DOI:10.1145/2824823.2824824
Y. Park, & Y. Shin. 2019. Comparing the effectiveness of scratch and app inventor with regard to learning computational thinking concepts. Electronics, 8(11), 1269. DOI:10.3390/electronics8111269
V. R. Basili, G. Caldiera, & H. D. Rombach. 1994. The goal question metric approach. In Encyclopedia of Software Engineering, John Wiley & Sons.
MIT. 2022. App of the Month. Disponível em: https://appinventor.mit.edu/explore/app-month-gallery. Acessado em 03 out. 2022.
N. da C. Alves, C. G. von Wangenheim, C. G., & J. C. R. Hauck. 2020. Teaching Programming to Novices: A Large-scale Analysis of App Inventor Projects. In 2020 XV Conferencia Latinoamericana de Tecnologias de Aprendizaje (LACLO) (pp. 1-10). IEEE. DOI:10.1109/LACLO50806.2020.9381172
E. W. Patton, A. Seo, & F. Turbak. 2019. Enhancing Abstraction in App Inventor with Generic Event Handlers. In 2019 IEEE Blocks and Beyond Workshop (B&B) (pp. 63-71). IEEE. DOI:10.1109/BB48857.2019.8941193
M. Svanberg. 2017. Using feature vector representations to identify similar projects in App Inventor. In 2017 IEEE Blocks and Beyond Workshop (B&B) (pp. 117-118). IEEE. DOI:10.1109/BLOCKS.2017.8120430
E. Mustafaraj, F. Turbak, & M. Svanberg. 2017. Identifying original projects in App Inventor. In The Thirtieth International Flairs Conference.
MIT App Inventor. 2022. Beginner Tutorials. Disponível em: https://appinventor.mit.edu/explore/ai2/beginner-videos. Acessado em 19 set. 2022.
MIT App Inventor. 2022. Beginner Tutorials – Hello Codi. Disponível em: http://appinventor.mit.edu/explore/ai2/hello-codi.html. Acessado em 19 set. 2022.
MIT App Inventor. 2022. Tutorials – Space Invaders. Diaasponível em: https://appinventor.mit.edu/explore/ai2/space-invaders. Acessado em 21 set. 2022.
MIT App Inventor. 2022. Tutorials – Golf. Disponível em: https://appinventor.mit.edu/explore/ai2/minigolf. Acessado em 21 set. 2022.
MIT App Inventor. 2022. Tutorials – Mole Mash. Disponível em: https://appinventor.mit.edu/explore/ai2/molemash. Acessado em 21 set. 2022.
MIT App Inventor. 2022. App of the Month Winners. Disponível em: https://appinventor.mit.edu/explore/app-month-gallery. Acessado em 26 set. 2022.
UFSC. Aplicativos de Engenharia de Usabilidade. Disponível em: [link]. Acessado em 26 set. 2022.
UFSC. Iniciativa Computação na Escola – Cursos. Disponível em: https://cursos.computacaonaescola.ufsc.br/. Acessado em 27 set. 2022.
N. da C. Alves, C. Gresse von Wangenheim, L. Martins-Pacheco, e A. Ferreti Borgatto. 2022. Artefatos computacionais são considerados criativos? In Anais do II Simpósio Brasileiro de Educação em Computação, online, Brasil. SBC, Porto Alegre, Brasil, 01-09. DOI:10.5753/educomp.2022.19193.
C. Tang, J. Baer, & J. C. Kaufman. 2015. Implicit theories of creativity in computer science in the United States and China. The Journal of Creative Behavior, 49(2), 137-156. DOI:10.1002/jocb.61
Y. Kafai. 2001. The educational potential of electronic games: From games-to-teach to games-to-learn. Playing By the Rules, Cultural Policy Center, University of Chicago, Chicago, IL, 2001.
F. Hayes-Roth. 1985. Rule-based systems. Communications of the ACM, 28(9), 921-932. DOI:10.1145/4284.4286
MEC. 2022. DESPACHO DE 30 DE SETEMBRO DE 2022. Homologação das normas sobre Computação na Educação Básica - Complemento à Base Nacional Comum Curricular – BNCC. Disponível em: [link]. Acessado em 03 out. 2022.
C. Gresse von Wangenheim, J. C. R. Hauck, M. F. Demetrio, R. Pelle, N. da C. Alves, H. Barbosa, L. F. Azevedo. 2018. CodeMaster – Automatic Assessment and Grading of App Inventor and Snap! Programs. Informatics in Education, 17(1), 117-150. DOI:10.15388/infedu.2018.08
J. J. Garrett. 2011. The Elements of User Experience: User-Centered Design for the Web and Beyond. Berkeley: New Riders.
M. N. F. Ferreira, C. Gresse von Wangenheim, N. da C. Alves. 2021. Desenvolvimento de um Curso on-line para Ensinar Design de Interface de Usuário na Educação Básica. Anais do Workshop on Human-Computer Interaction Education (WEIHC), online, Brasil. DOI:10.5753/ihc.2021.19589
J. Gray, H. Abelson, D. Wolber, M. Friend. 2012. Teaching CS principles with App Inventor. In Proceedings of the 50th Annual Southeast Regional Conference (pp. 405–406). ACM. DOI:10.1145/2184512.2184628
