Science and Engineering Practices

In the following sections, we first explain the synergy between each science and engineering practice and the five MDPs. We then provide multiple examples, options, and variations of activities and instructional strategies that are aligned with each MDP and the focal practice in order to be as comprehensive and specific as possible. However, this does not mean that teachers must use all of these strategies to enact the MDPs when promoting each science and engineering practice, nor that these strategies are the only way to do so. We encourage teachers to use their professional discretion to select what will work best for them and their classrooms, and to modify and innovate on these strategies, using the blank space provided at the end of each section for notes, reflections, and new ideas.

Mathematics and Computational Thinking

Practice 5: Using Mathematics and Computational Thinking

Belonging Supports for Using Mathematics and Computational Thinking

Applications of mathematics and computational thinking in science and engineering require flexible thinking in a variety of contexts. Instructional strategies that support students’ feelings of belonging cultivate a safe space for students to take chances with potentially unfamiliar types of mathematical or computational thinking across contexts. Strategies that support belonging also encourage students to develop a sense of being part of a community of scientists and engineers, which is especially important for students who may not have a well-developed science identity or who may feel alienated from science [see Motivation as a Tool for Equity]. As students begin to feel a greater sense of belonging within their science classroom community and within science and engineering communities, they may feel more inclined to engage in using mathematics and computational thinking as a practice.


Cultivate a sense of belonging in science by highlighting the ways mathematics and computational thinking is used in everyday activities familiar to them. For example, many “free-to-play” phone games use algorithms to direct users towards giving the programmers money for in-app purchases.
Provide students with 1-2 examples of models/simulations that use algorithms, such as computer games, phone apps, or other technologies. Invite students to make observations and “wonderings” about the computational practices involved in these examples to scaffold their value for computational skills. Then ask students to share out about their experiences with similar types of models or simulations that use algorithms.
Create activities where the teacher can demonstrate computational thinking with input from the whole class (e.g., students can help identify lab tools needed, and then walk the teacher through observing, measuring, recording, and processing data). This fosters a teamwork mentality among peers, and with the teacher.
Promote identification within science by having students create an algorithm that they can use at home or in their community. For example, students can create algorithms for how they do chores at home, including how often they wash the dishes (e.g., if there are more than five dishes in the sink, then wash, dry, and put away the clean dishes).
Provide opportunities for peer support by having students work in groups to brainstorm ways to organize data into a form that will simplify future calculations.

Students may have little experience using mathematics and computational thinking to represent, model, and analyze variables and their relationships to make sense of phenomena or solve design problems. Students’ mathematical and computational thinking proficiency and, more importantly, their confidence in those abilities may vary widely. Ample examples, models, and opportunities for success are crucial to support students who may enter science class with lower confidence in these areas and for those students whose skills can be developed further. Informational feedback will help all students understand when they are progressing and, if they are not, what they can work on to improve.


Provide students with ample opportunities to test algorithms or simulations they are actively working on and receive informational feedback on them.
To help students practice identifying, articulating, and representing relationships, start simple. For example, use relationships that are quite familiar to students (e.g., around everyday phenomena that students encounter in their daily lives) and that students can bring many approaches to articulating those relationships.
Present common algorithms using a variety of displays and representations to develop student fluency with a variety of visual and graphical representations of common concepts. Provide frequent practice with a variety of computational thinking skills such as logic, patterns, and generalization as students make sense of a phenomenon or solve a problem.
Provide supports and scaffolds for students while they are doing mathematics or computational thinking, and gradually release or give students the option to choose whether to continue using these supports as their skills develop. Possible examples include:
  • Guidelines for graphing: the parts of a graph; how to determine a good scale for the data they are graphing; what type of graph will be most useful for their purpose
  • Spreadsheets for algorithms:
    • Functions in Excel or Google Sheets (e.g., calculating the mean or sum of several numbers; looking up numbers or text in a data set)
    • Examples can help demonstrate to students what an algorithm is
  • Process charts for algorithms:
    • Common logical structures (e.g., if, then, else; for loop; while loop)
    • Examples of simple algorithms that can be used as building blocks or jumping off points

Mathematics and computational thinking are skills that scientists and engineers use to gain deeper understanding of the phenomenon or problem they are investigating. Supports for a learning orientation frame the purpose of this work as such, rather than as an activity to complete in and of itself, or with the purpose of obtaining the correct answer. Because of varying proficiency in mathematics and computational thinking, supporting students’ learning orientation can help to sustain motivation if or when students struggle with, for example, abstract thinking, logic, or algorithms so that they do not become discouraged by mistakes or incorrect answers. This support may be especially important for students who are concerned that their struggles are confirming negative stereotypes that others may hold about their mathematical and computational ability [see Motivation as a Tool for Equity]. A learning orientation can help students view their mistakes as part of the process of developing mathematics and computational thinking skills in the context of science and engineering.


Give students a relationship between two variables that they are studying and ask them to come up with a way to represent that relationship (e.g., thermal energy and particle motion, specifically when thermal energy is transferred to particles, particle speed increases). In sharing out, emphasize the different ways in which students accomplished the same goal.
Have students write, debug, and redo algorithms for problems they are trying to solve as a class or individually.
Engage students in error analysis to figure out what went wrong during computations, where errors were made, and how students might apply their learning from these mistakes to approach similar problems.
Model and then scaffold how to create, explain, and evaluate algorithms or other computational processes. For example, design computational questions or assessments such that they always include an opportunity for students to explain how they arrived at their answer. Provide feedback and/or evaluate these responses based on students’ explanations and not just whether they obtained the correct result.
Use think-alouds to model a learning orientation to students; they can be used to normalize struggle, confusion, and mistakes and to model effective strategies for mathematics and computational thinking.
Be especially mindful of using talk moves to solicit student explanations and respond to student errors so that students do not seek only to produce the right answer and do not attribute their mistakes to ability/intelligence.
Have multiple students share out valid, but different, mathematical and/or computational steps for solving a problem to show there are many ways to successfully accomplish the task.

Problems requiring the application of mathematics and computational thinking often have multiple possible solutions or multiple possible algorithms to reach the optimal solution. When feasible, students should be given the autonomy to choose how they will approach a problem and how they will calculate a solution. Autonomy can be undermined if students feel there is only one correct answer or that they are being asked to follow a predetermined set of steps.


Recognize and acknowledge even small variations in students’ computations or algorithms, such as some students merging two steps, or summing multiple numbers in a different order. This helps to communicate a consistent message of support for students’ autonomous choices.
When possible, have students work in pairs or groups to solve mathematics or computational problems before sharing out or going over algorithms and/or answers as a class so that more students are actively engaged in mathematical or computational thinking and have autonomy to direct their own problem-solving process before receiving feedback.

Mathematics and computational thinking are an integral part of science and engineering. Framing the use of mathematics and application of computational thinking within a phenomenon or design problem that is of interest to students may help motivate them to work hard on tasks involving these skills. Encouraging students to connect mathematics and computational thinking to a broad range of situations that relate to their lives and home communities can make them more invested in the practice as something that can be leveraged to figure out phenomena or solve problems that feel relevant and important to them [see Motivation as a Tool for Equity]. Many students may be unfamiliar with or lack confidence in using mathematics to represent and relate physical variables and to make predictions, and in using computational thinking. Connecting the practice of using mathematics and computational thinking to the work of scientists and engineers in understanding phenomena or solving problems of interest may help encourage students to engage in this type of work despite their unfamiliarity or lack of confidence.


Provide examples of mathematics and computational thinking within phenomena and design problems that students find interesting, or invite students to identify the ways in which they already use mathematics and computational thinking in their daily lives, possibly without recognizing it as such. For example, if students are interested in a particular sport, encourage them to think about how patterns in probabilities and statistics might be used to inform scoring approaches and game strategy.
Provide scaffolding with referents that are familiar to students in order to support mathematics and computational thinking in terms to which they can most easily relate.
Utilize software like Excel or Google Sheets to facilitate calculations while tapping into contemporary ways of life. By teaching students how to use technology, these activities may become more relevant: in a world filled with computers, using a spreadsheet feels more useful in life than doing, for example, long division.
  • Relate software programs to the work that contemporary scientists and engineers do (i.e., they log their data and share results in their teams through digital platforms)
  • Introduce the connection between software programs used in class and other programs used for coding (and the cool things coders do!)
Provide examples of the benefits of mathematics and computational thinking as it relates to understanding science phenomena and solving engineering problems in daily life that otherwise might seem very complicated. For example, the gears on a student’s bicycle may jam as the student tries to downshift while climbing a hill. The student could use decomposition in order to understand how the complex system of a moving bicycle works by breaking down the system into parts (e.g., pedals, chains, chain rings, brakes, etc.).
Many strategies from equitable teaching frameworks (e.g., culturally responsive pedagogy) address ways to learn more about the local community and their needs, and to connect science and engineering learning to those needs.
Provide diverse examples of STEM professionals and peers successfully using mathematics and computational thinking in an area of interest to students.