Belirli bir amaca ulaşmak için tasarlanan yol veya bir problemle karşılaşıldığında çözüme gitmek için kullanılan yöntemler ve yaklaşım algoritmayı oluşturur. Algoritma yazılımın temelidir.