Decomposition is also an essential part of computational thinking.
It allows computer scientists to divide a big problem into smaller parts. These can be further subdivided into even smaller parts until each part is easy to examine and understand, and a solution can be developed.
This often means that functions/procedures are designed to implement some of, or each of, the parts.