flow of control, or Iterative, recursive, and parallel thinking.
We chose these particular concepts because they were widely
discussed in the literature and had the most concrete learning
goals, making them a useful starting point for refining our process. In future work, we plan to develop learning trajectories for
the other aspects of CT articulated in Table 1.
Four researchers independently sorted this collection of
LGs into categories, with no predetermined categories. The
researchers then met to discuss what major themes emerged.
Based on these thematic discussions, new categories were defined, and researchers independently re-sorted the original
collection into these categories. Any LG that was sorted into
the same category by at least three of the four researchers was
retained, with any goals that did not meet this criteria removed
from the collection. The resulting collections of goals were
called clusters. This paper discusses the LTs created from three
clusters: Sequence, Repetition, and Conditionals.
PHASE 4: ASSEMBLING CLUSTERS INTO
We used a two-stage process to assemble each cluster of
learning goals into a trajectory. Due to the limited information
available within the literature (as discussed in the Literature
Attributes section), we gathered an interdisciplinary team
consisting of experts in computer science, computational science, computer science education, mathematics education,
and mathematics curriculum to agree upon decisions involving the trajectories.
First, we wrote “consensus goals” (CGs) to articulate big
ideas expressed within a cluster and assigned to each CG the
learning goals that supported it. An LG was characterized as directly supporting a CG if the CG could be considered a restatement of the LG. An LG was considered inferred support for
the CG if it was not a direct restatement, but was more specific
than the CG, represented an idea for which the CG was a prerequisite, or lacked sufficient detail to provide direct support.
Second, we attempted to articulate relationships and dependencies among the consensus goals that define potential
pathways through the goals. To do so, we applied the theories discussed in Section 3. 2 as follows. To apply the theory
of learning progressions, we noted any study results that suggested a progression in difficulty (e.g., when students could
complete one aspect of a task but not another), and used this
information to place the less difficult ideas before the more
We then adopted three general organizational heuristics
based on the pieces-of-knowledge theory, spiral curriculum
ideas, and constructivist assumptions, respectively:
1. Address and develop component ideas separately before
expecting them to be applied in concert.
2. Identify the minimum knowledge needed to create an
artifact applying a concept, and place this knowledge
into a progression. Then add to the trajectory by adding
alternative, branching paths that add layers of complexity
to the use of the concept.
PHASE 1: EXTRACTING LEARNING GOALS FROM
The literature search included all articles that cited Wing’s [ 38]
paper on computational thinking, keyword searches of the Educational Research Information Center (ERIC) database, and
proceedings from the 2006–2016 Special Interest Group on
Computer Science Education (SIGCSE) Technical Symposium
and the Innovation and Technology in Computer Science Education (ITiCSE) Conference. Application of retention criteria
described in [ 31] resulted in 108 articles.
We define a learning goal as any explicit statement or implicit endorsement of what students can or should be able to do
in relation to computational thinking. Example heuristics for
identifying learning goals that meet this definition can be found
in [ 31]. When possible, text was recorded verbatim from the
article, aside from minor edits to be understood out of context.
This process resulted in 671 learning goals.
PHASE 2: CATEGORIZING LEARNING GOALS
As each learning goal was extracted from an article, it was categorized by concept and support type. Concepts, taken from
[ 21], are listed in Table 1. The two support types are student
Student support: The authors describe evidence that students of particular ages were able to engage with the learning
Theoretical support: The authors describe the goal and/or
its appropriateness for students without citing any particular
evidence other than their own expertise or work with learners
outside the target student population (e.g., teachers or other
Each article was independently reviewed by at least two researchers to extract and categorize learning goals. If intercoder
agreement of at least 80% could not be reached through discussion, a third reader coded the LGs from the article independently and decided the remaining discrepancies.
PHASE 3: CLUSTERING LEARNING GOALS
Learning goals were sorted into large groups according to combinations of concepts. In this paper, we discuss the set of LGs
tagged as related to Conditional logic, Algorithmic notions of
Table 1: Concept categories for sorting learning goals.
Concepts [ 21]
Abstraction and pattern generalization
Systematic processing of information
Symbol systems and representations
Algorithmic notions of flow of control
Structured problem decomposition
Iterative, recursive, and parallel thinking
Efficiency and performance constraints
Debugging and systematic error correction