Automating the Assessment of Algorithms and Programming Concepts in App Inventor Projects in Middle School

Automating the Assessment of Algorithms and Programming Concepts in App Inventor Projects in Middle School

Nathalia da Cruz Alves (Federal University of Santa Catarina, Brazil), Christiane Gresse von Wangenheim (Federal University of Santa Catarina, Brazil), Jean C. R. Hauck (Federal University of Santa Catarina, Brazil) and Adriano F. Borgatto (Federal University of Santa Catarina, Brazil)
DOI: 10.4018/978-1-7998-4576-8.ch004

Abstract

As computer science education makes its way into schools, diverse initiatives worldwide promote computer science education in K-12, often focusing on teaching algorithms and programming with block-based programming languages such as Scratch or App Inventor. However, alternatives to assess the learning of computer science concepts on this educational stage are still scarce. This chapter presents an automated rubric for assessing algorithms and programming concepts of App Inventor projects at middle school level. The assessment is based on a rubric proposed in alignment with the K-12 Computer Science Framework with satisfactory reliability and validity. The rubric has been automated through a web-based system that allows assessing App Inventor projects through static code analysis. As a result, it can support computer science education in practice providing feedback to students and teachers.
Chapter Preview
Top

Introduction

Computer science is relevant to most activities nowadays. Regardless of a professional's area of expertise, it is essential to know the fundamentals and basic principles of computer science. However, in general, people are not as well informed as they should be demonstrating a knowledge gap in computer science on all levels (CSTA, 2016). In order to popularize computer science for all, several initiatives have emerged around the world (Bocconi, Chioccariello, Dettori, Ferrari, & Engelhardt, 2016). And, as the inclusion of computer science in K-12 is considered one of the most effective approaches, several efforts have been made to develop guidelines and curricula for K-12 computer science education. One of the most prominent is the K-12 Computer Science Framework developed by the Computer Science Teachers Association (CSTA, 2016). The CSTA K-12 framework serves as a high-level guide that can be used for developing custom computer science curricula for three educational levels for ages ranging from kindergarten through high school. Middle school typically consists of grades 5-6 to 9-10, ranging from age 10-11 to 14-15 years.

The CSTA K-12 framework defines a set of core practices that refer to behaviors that computer science literate students use to fully engage with basic computer science concepts (CSTA, 2016). These practices defined in the framework also embrace computational thinking by practices 3, 4, 5, and 6 (Figure 1). Computational thinking refers to the thinking processes involved in creating algorithmic solutions, or step-by-steps, that can be performed by a computer (Wing, 2006). It is a relevant universal competence, not only reserved for computer scientists, representing a way in which humans solve problems (Wing, 2006). Complementary, core practices 1, 2, and 7 (Figure 1) represent general computer science practices that complement computational thinking.

Figure 1.

Computational thinking core practices in the K-12 Computer Science Framework (CSTA, 2016)

978-1-7998-4576-8.ch004.f01

According to the CSTA K-12 framework (CSTA, 2016), computational thinking core practices can be applied to areas other than computer science. However, computer science offers unique opportunities to develop computational thinking (CSTA, 2016). Thus, in the context of this chapter, the connection between practices of computational thinking and computer science algorithms and programming concepts is explored, as proposed by the K-12 Computer Science Standards (CSTA, 2017) in the K-12 Computer Science Framework (CSTA, 2016).

Figure 2.

Computational thinking core practices and their connection with computer science algorithms and programming concepts (CSTA, 2016; CSTA, 2017)

978-1-7998-4576-8.ch004.f02

Key Terms in this Chapter

Algorithms and Programming: A subdimension of App Inventor projects assessed by the CodeMaster rubric. This subdimension is assessed based on the K-12 Computer Science Standards ( CSTA, 2017 ), which decomposes algorithms and programming into five subconcepts: algorithms, variables, control, modularity, and program development.

K-12 Computer Science Education: Computer Science Education for the educational stage comprising Kindergarten to High School. Includes methods, tools, models, rubrics, etc. developed specifically for the education of students aged 5 to 17 years.

Mobile Algorithms and Programming: A subdimension of App Inventor projects assessed by the CodeMaster rubric. This subdimension is assessed based on the rubric proposed by Sherman et al. (2014) and Sherman and Martin (2015) , which are related to App Inventor mobile components.

Automated Assessment: An assessment that is done using software that assesses several factors and characteristics. Typically, this software implements an assessment model based on a rubric containing the characteristics to be analyzed.

Ill-Structured Learning Activity: A learning activity that has several possible solutions, and the judgment on which path to reach a solution is up to the student. Solutions can be considered partially correct or incorrect.

Rubric: A matrix that details each assessment item in rows and performance levels in columns using a rating scale. A rubric can facilitate the diagnosis of specific problems within the teaching-learning process.

Visual Block-Based Programming Environment: Programming environments that allow programming via graphical rather than textual command blocks and to execute these programs. Examples are App Inventor (2019) , Scratch (2019) AU71: The in-text citation "Scratch (2019)" is not in the reference list. Please correct the citation, add the reference to the list, or delete the citation. AU72: The in-text citation "Scratch (2019)" is not in the reference list. Please correct the citation, add the reference to the list, or delete the citation. , and Snap (2019) .

Complete Chapter List

Search this Book:
Reset