Det innebærer å løse en sammensatt oppgave som kanskje krever at man må identifisere flere enkeltoppgaver som må løses før man kan finne løsningen på hele oppgaven. Problemløsning krever gjerne en algoritmisk tilnærming, der man deler oppgaven opp i ulike trinn og utvikler en helt egen løsningsmetode for problemet.