هو طريقة حل المشاكل التي تتضمن تقسيمها وتحليلها ليفهمها الحاسوب.
مهارة أساسية يجب تعلمها قبل تعلم كتابة الكود بأي لغة برمجة.