প্রোগ্রাম তৈরি করর সময় শুরুতেই প্রোগ্রামাররা কোড লিখতে বসে যান না। বরং প্রথমে চিন্তা করতে হয় যে, প্রোগ্রাম লিখে যে সমস্যাটি সমাধান করা হবে, সেটি কীভাবে করা হবে। যে কাজগুলো করা হবে, সেগুলোর প্রতিটি ধাপ লিখে ফেলা হয়। এই ধাপগুলোকেই বলে অ্যালগরিদম (algorithm)। আর অনেক সময় লেখার চেয়ে ছবি এঁকে বোঝা সহজ। সমস্যা সমাধানের ধাপগুলোকে যে ছবির মাধ্যমে প্রকাশ করা হয়, তাকে বলা হয় ফ্লোচার্ট (flowchart)।