Computational thinking is a strategy for problem solving. There are four steps to computational thinking meant to provide order and intent to ones thinking in order to solve complex problems. Lets explore each of those steps:

STEP ONE DECOMPOSITION: Break down the problem into smaller, manageable pieces rather than attempting to look at the problem as a whole.

STEP TWO PATTERN RECOGNITION: Observe patterns within the problem. Are the pieces of the problem you broke up related (same cause)? This is an excellent time for learners to look to their previous knowledge to see how this could help them now. Has this happened before?

STEP 3 ABSTRACTION: Analyze the problem’s complexity. Pull out the significant details and only focus on the pertinent information. Ignore any details that do not directly affect your ability to solve the problem.

STEP 4 ALGORITHMIC THINKING: Create a set of rules required to solve the problem. Create a step by step plan to address the issues.
Computational thinking can be brought into the classroom to help students with independence and group problem solving and it fits into the curriculum in a few different ways. I found there are ways to fit computational thinking into every core competency to varying degrees depending on the focus of your teachings.

was taken directly from their website
Teacher Talk (Vocabulary for Understanding):
Paired Programming: When students work together to code on a shared piece of technology rather than a 1:1 ratio of students and computers
Collaboration: students learn to work towards a common goal
Critical and reflective thinking: students learn to examine their own thinking
Personal awareness and responsibility: students learn to make constructive and ethical decisions
CORE COMPETENCY TEACHINGS WITH COMMPUTATIONAL THINKING:
COMMUNICATION: Computational thinking can be taught in small groups to solve complex problems the students are struggling with. A great example of this is paired programming which is an excellent way to teach collaboration under the bc curriculum.
THINKING: Computational thinking has thinking in the name so it must teach thinking right!?! Specifically I would categorize this under critical and reflective thinking. Students are learning how to analyze a problem, observe the problem, question when something goes wrong and learn from their mistakes!
PERSONAL AND SOCIAL: Computational thinking teaches students personal responsibility and independence. Giving students complex problems to solve and teaching them strategies to be successful rather than showing them how to fix it can be a frustrating act for the kids who get stuck. Allowing them to preserver by themselves fits into the BC curriculum under Personal Awareness and Responsibility as the students work on regulating emotions and managing their stress when they are thinking through complex problems. I always find when a student panics is when they lose sight of the goal. Computational thinking works on breaking a problem down into smaller pieces and completing things one step at a time which is important for stress management.