Bug Life Cycle Explained – QA Beginner Guide | Ankan Das
A
Ankan Das
April 11, 2026

Learn Bug Life Cycle step by step with real examples. Understand all defect stages, statuses, and QA workflow in this beginner-friendly guide from bangla blog.
বাগ লাইফ সাইকেল কী?
ধরুন আপনি একটি নতুন ফ্ল্যাট কিনলেন। একদিন বাথরুমে গিয়ে দেখলেন পাইপ ফুটো। এখন আপনি কী করবেন? শুধু তাকিয়ে থাকবেন না—আপনি প্লাম্বারকে ফোন করবেন, তিনি এসে ঠিক করবেন, আপনি পরীক্ষা করে দেখবেন ঠিক হয়েছে কিনা, তারপর মনে করবেন সমস্যার সমাধান হয়ে গেছে।
সফটওয়্যার টেস্টিং-এ বাগ লাইফ সাইকেল ঠিক একইভাবে কাজ করে!
যখন একজন QA ইঞ্জিনিয়ার (টেস্টার) কোনো সফটওয়্যারে সমস্যা খুঁজে পান—হতে পারে একটি বাটন কাজ করছে না, ক্যালকুলেশন ভুল হচ্ছে, বা পেজ ক্র্যাশ করছে—সেই সমস্যাটিকে বলা হয় বাগ বা ডিফেক্ট।
বাগ লাইফ সাইকেল হলো সেই বাগটির সম্পূর্ণ যাত্রাপথ যেখান থেকে শুরু করে যতক্ষণ না সেটি স্থায়ীভাবে সমাধান হয়ে ফিক্স হয়ে যায়। এটি একটি প্রক্রিয়া যা নিশ্চিত করে কোনো কিছু ট্রাক হারিয়ে যায় না।
বাগ লাইফ সাইকেলের ধাপগুলো:
New
> Assigned
>![]()
Open / Active >![]()
Test > Fixed >চলুন প্রতিটি ধাপ বাস্তব উদাহরণ দিয়ে বুঝি। এটি আপনার বাগের জীবনের গল্প!

ধাপ ১: NEW (নতুন)
কী হয়:
- একজন টেস্টার টেস্টিং করার সময় কিছু অস্বাভাবিক খুঁজে পান
- তিনি নিশ্চিত করেন এটি আসলেই বাগ (ভুল বোঝাবুঝি নয়)
- বিস্তারিত বাগ রিপোর্ট তৈরি করেন ট্র্যাকিং সিস্টেমে (যেমন জিরা, বাগজিলা, অ্যাজুর ডেভঅপস)
- বাগটিকে একটি ইউনিক আইডি দেওয়া হয় এবং স্ট্যাটাস হয়: NEW
বাস্তব উদাহরণ:
আপনি একটি ই-কমার্স অ্যাপ টেস্ট করছেন। আপনি ৫০০-এর একটি পণ্য কার্টে যোগ করলেন, "৫০% " কুপন প্রয়োগ করলেন, কিন্তু টোটাল দেখাচ্ছে ২৫০ পরিবর্তে ১২৫-এর। এটি একটি ক্যালকুলেশন বাগ! আপনি এটি জিরায় লগ করলেন স্ট্যাটাস NEW-এ।
টিপ: লগ করার আগে সবসময় দুইবার চেক করুন। নিজেকে জিজ্ঞাসা করুন: "আমি কি ঠিক ধাপগুলো অনুসরণ করেছি? এটি কি আসলেই অপ্রত্যাশিত আচরণ?"
ধাপ ২: ASSIGNED (অ্যাসাইন করা)
কী হয়:
- টেস্ট লিড বা প্রজেক্ট ম্যানেজার নতুন বাগটি রিভিউ করেন
- নির্দিষ্ট একজন ডেভেলপারকে অ্যাসাইন করেন:
- কে সেই ফিচারে কাজ করেছিলেন
- বর্তমান ওয়ার্কলোড কেমন
- বিশেষজ্ঞতার ক্ষেত্র কী
- স্ট্যাটাস পরিবর্তন হয়: ASSIGNED
ডেভেলপার কী দেখেন:
তিনি একটি নোটিফিকেশন পান: "BUG #2047 আপনাকে অ্যাসাইন করা হয়েছে: চেকআউট মডিউলে ডিসকাউন্ট ক্যালকুলেশন ত্রুটি।"
টিপ: কিছু দলে বাগগুলো প্রথমে "TRIAGE" মিটিং-এ যায়, যেখানে দল প্রায়রিটি এবং অ্যাসাইনমেন্ট ঠিক করে। যদি এই অতিরিক্ত ধাপ দেখেন, চিন্তার কিছু নেই!
ধাপ ৩: OPEN
তদন্ত শুরু
কী হয়:
- ডেভেলপার বাগটি বিশ্লেষণ করা শুরু করেন
- তিনি তার এনভায়রনমেন্টে এটি রিপ্রোডিউস করার চেষ্টা করেন
- কোড খুঁজে মূল কারণ (রুট কজ) বের করেন
- স্ট্যাটাস পরিবর্তন হয়: OPEN বা IN PROGRESS
ধাপ ৪: FIXED (ঠিক করা হয়েছে)
ডেভেলপার বিজয় দাবি করেন
কী হয়:
- ডেভেলপার কোড ফিক্স ইমপ্লিমেন্ট করেন
- লোকালি টেস্ট করে নিশ্চিত হন এটি কাজ করছে
- কোড রিপোজিটরিতে কমিট করেন
- বাগ স্ট্যাটাস আপডেট করেন: FIXED বা RESOLVED
- বাগটি QA দলের কাছে যাচাই করার জন্য ফেরত যায়
*** "Fixed" মানে "Closed" নয়! ডেভেলপার মনে করেন সমাধান হয়েছে, কিন্তু QA-কে নিশ্চিত করতে হবে।
ধাপ ৫: RETEST / READY FOR TEST (পুনরায় টেস্ট)
সত্যিকারের পরীক্ষার সময়
কী হয়:
- QA ফিক্সড বিল্ড পান
- মূল বাগ রিপোর্টের ঠিক একই ধাপ অনুসরণ করেন
- নিশ্চিত হন বাগটি সত্যিকারেই সমাধান হয়েছে
- দেখেন ফিক্স অন্য কিছু ভাঙ্গেনি কিনা (রিগ্রেশন টেস্টিং)
দুটি সম্ভাব্য ফলাফল:
| ফলাফল | পরবর্তী স্ট্যাটাস | কী হয় |
|---|---|---|
| ✅ বাগ সত্যিকারেই ঠিক হয়েছে | CLOSED | উদযাপনের সময়! বাগ স্থায়ীভাবে বন্ধ |
| ❌ বাগ এখনও আছে বা আংশিক ঠিক | REOPENED | বিস্তারিত সহ ডেভেলপারের কাছে ফেরত |
উদাহরণ
আপনি ডিসকাউন্ট বাগটি পুনরায় টেস্ট করলেন। এখন সঠিকভাবে ₹১২৫ দেখাচ্ছে। কিন্তু আপনি লক্ষ্য করলেন শিপিং চার্জ উধাও হয়ে গেছে! ফিক্স অন্য কিছু ভেঙ্গেছে। আপনি নতুন সমস্যার বিস্তারিত সহ রিওপেন করলেন।
ধাপ ৬: CLOSED
কী হয়:
- QA নিশ্চিত করেন ফিক্স পারফেক্টলি কাজ করছে
- কোনো পার্শ্ব প্রতিক্রিয়া বা নতুন সমস্যা নেই
- বাগটি অফিসিয়ালি চিহ্নিত হয়: CLOSED
- এটি ইতিহাসের জন্য সিস্টেমে থাকে কিন্তু আর সক্রিয় নয়
আমাদের আরো কিছু স্ট্যাটাস জানা দরকারঃ
বাস্তব প্রজেক্টে জটিল থাকে! বাগগুলো সবসময় হ্যাপি পাথ অনুসরণ করে না।তাই আরো কিছু স্ট্যাটাস রয়েছে:
REOPENED (পুনরায় খোলা) 🔄
যখন একটি "ফিক্সড" বাগ ফিরে আসে:
- ফিক্স টেস্টিং এনভায়রনমেন্টে কাজ করেনি
- কিছুদিন পর বাগটি আবির্ভূত হয়
- ফিক্স অন্য সমস্যা সৃষ্টি করেছে
বিগিনার টিপ: ডেভেলপারকে দোষ দেবেন না! সফটওয়্যার জটিল। রিওপেন করা প্রক্রিয়ার অংশ।
REJECTED (প্রত্যাখ্যান) ❌
বাগ নয়, এটি ফিচার!
কখনও কখনও যা বাগ মনে হয় তা আসলে বাগ নয়:
- এটি প্রত্যাশিত সিস্টেম আচরণ
- টেস্টার রিকোয়ারমেন্ট ভুল বুঝেছেন
- এটি ডিজাইন অনুযায়ী কাজ করছে (যদিও অদ্ভুত মনে হতে পারে)
উদাহরণ: ইউজার রিপোর্ট করলেন "বাগ: সিস্টেম ১৫ মিনিট নিষ্ক্রিয় থাকলে লগআউট করে।"
বাস্তবতা: এটি একটি নিরাপত্তা ফিচার, বাগ নয়!
DEFERRED (স্থগিত)
পরে ঠিক করব
বাগটি বৈধ কিন্তু:
- অন্য কাজের তুলনায় কম প্রায়রিটি
- সামান্য প্রভাবের জন্য উল্লেখযোগ্য প্রচেষ্টা প্রয়োজন
- ভবিষ্যত রিলিজে সমাধান করা হবে
সাধারণত: ছোট UI অ্যালাইনমেন্ট সমস্যা, বিরল এজ কেস, কসমেটিক সমস্যা।
DUPLICATE (ডুপ্লিকেট)
আমরা এটি আগে দেখেছি
অন্য কেউ ইতিমধ্যে একই সমস্যা রিপোর্ট করেছে।
কেন গুরুত্বপূর্ণ: ডেভেলপারদের একই জিনিস দুইবার ঠিক করতে বাধা দেয়।
বিগিনার টিপ: নতুন বাগ লগ করার আগে সবসময় বাগ ডাটাবেসে সার্চ করুন। আপনার এরর মেসেজের কীওয়ার্ড ব্যবহার করুন!
CANNOT REPRODUCE (রিপ্রোডিউস করা যাচ্ছে না)
না ডেভেলপার না QA বাগটি আবার ঘটাতে পারছেন:
- হতে পারে এনভায়রনমেন্ট সমস্যা
- রেস কন্ডিশন (টাইমিং সমস্যা) হতে পারে
- অন্য কোড পরিবর্তনে ঠিক হয়ে গেছে হতে পারে
কী করবেন: আরও বিস্তারিত সমস্যা যোগ করুন, বিভিন্ন এনভায়রনমেন্ট চেক করুন, বা এটি আবির্ভূত হলে পর্যবেক্ষণ করুন।
Read this topic from geeksforgeeks