এগুলো এক জিনিস না.
একটি বাগ একটি সফ্টওয়্যার অংশের অনিচ্ছাকৃত আচরণ: সফ্টওয়্যারটি যা করার কথা তা করে না। বাগগুলি সফ্টওয়্যার বিকাশের সমস্ত স্তরে বাস করতে পারে, প্লেইন পুরাতন টাইপগুলি থেকে যৌক্তিক ত্রুটি থেকে অপর্যাপ্ত ফাংশনাল স্পেস পর্যন্ত।
একটি ব্যতিক্রম , বিপরীতে, হয় কোনও প্রোগ্রামের একটি অস্বাভাবিক পরিস্থিতি, সাধারণ ক্রিয়াকলাপ থেকে বিচ্যুত হওয়া বা বিশেষত, এই জাতীয় অবস্থার সংকেত ও পরিচালনা করতে ব্যবহৃত ভাষা নির্মানের বিষয়ে উল্লেখ করতে পারে।
ব্যতিক্রম ঘটবে তা ত্রুটির চিহ্ন হতে পারে তবে প্রায়শই তা হয় না। উদাহরণস্বরূপ, কোনও অ্যাপ্লিকেশন যা কোনও ইউআরএল থেকে একটি দস্তাবেজ ডাউনলোড করার এবং স্থানীয়ভাবে এটি প্রক্রিয়া করার কথা বলে তা দূরবর্তী সার্ভারটি ডাউন থাকলে একটি ব্যতিক্রম হতে পারে: অ্যাপ্লিকেশনটি সাধারণ ক্রিয়াকলাপ থেকে বিচ্যুত হয় (এটি নথিটি ডাউনলোড ও প্রক্রিয়া করতে পারে না), তবে এটি যদি হয় ব্যতিক্রমটি সঠিকভাবে পরিচালনা করে এবং পুনরুদ্ধার করে, তখন কোনও বাগ নেই।
বিপরীতে, ত্রুটির উপস্থিতি অগত্যা নিজেকে ব্যতিক্রম হিসাবে প্রকাশ করে না। কোনও অ্যাপ্লিকেশন আপনার ডাটাবেসে এটি সংরক্ষণ করার পরিবর্তে নিঃশব্দে প্রবেশ করা ডেটা বাতিল করতে পারে; কোনও ব্যতিক্রম ছুঁড়ে না ফেলে তবে এটি এখনও একটি বাগ is