Програм бичих нь тийм ч хялбар ажил биш, тэр дундаа програмын алдааг шинжлэх ажил нэлээд төвөгтэй байдаг. Томоохон хэмжээтэй програмд алдаа, доголдол гарах нь нийтлэг байдаг. Маш туршлагатай програм зохиогчид хүртэл алдаа гаргах нь байдаг. Алдаатай програмаас буруу үр дүн гарах, ажиллагаа нь гацах, санах ойг зохисгүй ашиглах зэргээр хэвийн бус зүйлс ажиглагддаг. Тийм учраас програмыг тестлэх, алдааг хөөн судлах нь програм хөгжүүлэлтийн маш чухал хэсэг байдаг.
Програмын зөв, хэвийн ажиллагааг алдагдуулж байгаа алдаа, гажиг, согогийг ерөнхийд нь бааг (BUG- хорхой) гэж нэрлэдэг. Баагийг хайн илрүүлэх ажлыг дебааг (De-BUG) хийх гэж нэрлэдэг.