Agile က အသုံးများလာတဲ့ Project Management နည်းစနစ်ဖြစ်လာတာနဲ့အမျှ Agile အတွက် အသုံးပြုတဲ့ Framework တွေကိုလည်း လေ့လာဖို့လိုအပ်လာပါတယ်။ ဒါကြောင့် ဒီတစ်ပတ်ဆောင်းပါးမှာ Agile နည်းအတွက် အသုံးအတွင်ကျယ်ဆုံးဖြစ်တဲ့ Scrum Framework နဲ့ပတ်သက်ပြီး ဆက်လက်ဝေမျှချင်ပါတယ်။
ဒီဆောင်းပါးက “Scrun ဆိုတာဘာလဲ (အပိုင်း-၁)” ရဲ့ အဆက်ဖြစ်ပါတယ်။ အပိုင်း-၁ မှာ Scrum အကြောင်းကို မိတ်ဆက်ပြီး Sprint နဲ့ Scrum Meeting တွေအကြောင်း ရေးခဲ့တာဖြစ်လို့ အပိုင်း-၂ မှာတော့ Scrum မှာ ပါဝင်တဲ့ Team Member တွေနဲ့ အသုံးပြုတဲ့ Artifact တွေအကြောင်းကို ရေးသွားပါမယ်။
(ဒီဆောင်းပါးက Scrum.org ရဲ့ Scrum Guide™ ကို အခြေခံပြီး ရေးထားတာဖြစ်ပါတယ်။)
Scrum Team က Scrum ကို Run တဲ့ လူတွေအားလုံးပါဝင်ပြီး Product Owner, Scrum Master နဲ့ Development Team ဆိုပြီး Role သုံးခုခွဲပါတယ်။ (သုံးခုအပြင် အခြား Role မရှိပါဘူး)
1. Product Owner ဘာလုပ်လဲ
Product Owner က Product Backlog အတွက် ကိုင်တွယ်သူဖြစ်ပြီး Development Team ကနေ Develop လုပ်ပေးမယ့် Product ကို အကောင်းဆုံးဖြစ်စေဖို့ တာဝန်ယူရပါတယ်။ အဲဒါကြောင့် Product Owner ကို Value Maximizer လို့ တင်စားပါတယ်။ ဒါ့အပြင် Product Owner က Scrum Team ပြင်ပက Stakeholder တွေနဲ့ Scrum Team ကို ဆက်သွယ်ပေးသူလို့လည်း ပြောလို့ရပါတယ်။ Customer ရဲ့ လိုအပ်ချက်တွေ၊ အခြား Stakeholder ရဲ့ တောင်းဆိုမှုတွေကို Product အတွက် လုပ်သင့်၊ မလုပ်သင့် ဆုံးဖြတ်တယ်။ ပြီးနောက် လုပ်ဖို့လိုတာတွေကို Product Backlog ထဲမှာ ထည့်၊ User Story တွေ ရေးပြီး၊ Develop လုပ်ဖို့ရာ Priority သတ်မှတ်ပါတယ်။ များသာအားဖြင့် Product Manager တွေက Scrum Team ရဲ့ Product Owner တာဝန်ကို ယူကြလေ့ရှိပါတယ်။
2. Scrum Master ဘာလုပ်လဲ
Scrum Master ကတော့ Scrum Team တစ်ခုလုံးက Scrum ကို နည်းမှန် လမ်းမှန် Run ဖို့ ဦးဆောင်ပေးသူ၊ ပံ့ပိုးပေးသူ (Facilitator) ဖြစ်ပါတယ်။ Scrum Team အတွက် Scrum Meetings တွေအပြင်၊ လိုအပ်တဲ့ အခြား Meeting တွေကိုပါ စီစဥ်ပေးပါတယ်။ Product Owner ရဲ့ Backlog စီတာမှာ ကူညီပေးသလို၊ Developent Team ရဲ့ အလုပ်တွေအတွက်လည်း မလိုတဲ့ အတားအဆီးတွေကို ကူညီဖယ်ရှားပေးပါတယ်။ Scrum Framewrok နဲ့ ပတ်သက်တဲ့ Knowledge တွေ၊ သတ်မှတ်ချက်တွေကို Scrum Team နဲ့ Company က အခြားဝန်ထမ်းတွေပါ နားလည်စေဖို့ Scrum Master က ဦးဆောင်တာဝန်ယူရပါတယ်။
3. Development Team ဘာလုပ်လဲ
Product ကို Develop လုပ်တဲ့အချိန်မှာ ပါဝင်တဲ့ မည်သူမဆို Development Team အနေနဲ့ သတ်မှတ်ပါတယ်။ Developer, Cloud Engineer, Designer, QA Engineer, Business Analysis စသဖြင့် သက်ဆိုင်ရာ Profession တွေကို လုပ်ဆောင်ကြပေမယ့် သီးခြား Title ထပ်မခွဲပဲ အားလုံးကို Development Team အနေနဲ့ တစ်စုတည်းသတ်မှတ်တာဖြစ်ပါတယ်။ Development Team မှာ အနည်းဆုံး ၃ယောက်ကနေ အများဆုံး ၉ယောက်အထိ ရှိနိုင်ပြီး ဒီထပ်များလာရင်တော့ နောက်ထပ် Scrum Team တစ်ခုထပ်ထားသင့်ပါတယ်။
Scrum ရဲ့ Development Team မှာ အဓိကအချက်က Self-Organize ဖြစ်ခြင်းပါ။ ဘယ်လိုအဓိပ္ပါယ်လည်းဆိုရင်… Development Team ကို ဘယ် Feature တွေ Develop လုပ်ရမယ်၊ ဘယ်လို Develop လုပ်ရမယ်လို့ Product Owner ကရော၊ Scrum Master ကရော ဘယ်သူကမှ အတင်းအကျပ် လုပ်ခိုင်းတာမျိုးမရှိ / မရှိရပါဘူး။ Development Team က Product Backlog မှာ Priority စီထားတဲ့ Feature တွေကိုကြည့်ပြီး Priority မြင့်တဲ့ Feature တွေကို Develop လုပ်ဖို့ ကိုယ်တိုင်ရွေးချယ်၊ ဘယ်လို Develop လုပ်မယ်ဆိုတာ ကိုယ်တိုင် ဆုံးဖြတ်တာဖြစ်ပါတယ်။ အဲ့လိုဆုံးဖြတ်တဲ့အချိန်မှာတော့ Sprint Planning မှာ Product Owner နဲ့တိုင်ပင်ရပါတယ်။
1. Product Backlog
Product မှာ ဆက်လုပ်ဖို့လိုမယ့် အရာမှန်သမျှကို ချရေးထားတဲ့ List လို့ ပြောလို့ရပါတယ်။ Product Backlog ကို Product Owner က တာဝန်ယူရပြီး၊ Product အသက်ရှင်နေသရွေ့ Product Backlog က ကုန်သွားတယ် / ပြီးသွားတယ်ဆိုတာမျိုး မရှိပါဘူး။ Product Backlog ထဲမှာ Features တွေ၊ Functions တွေ၊ Requirements တွေ၊ ပြင်ရမယ့် Bugs တွေ အကုန်ပါရှိပြီး… ဘာတွေက Product မှာ လုပ်ဖို့ အရေးအကြီးဆုံးလဲဆိုတဲ့ Priority စီတာကို Product Owner က လုပ်ပါတယ်။
2. Sprint Backlog
Sprint Backlog ကတော့ Sprint Planning Meeting မှာ ဒီ Sprint အတွင်း Product Backlog ထဲက ဘာတွေကို Develop လုပ်မယ်လို့ ရွေးထုတ်လိုက်တဲ့ List ဖြစ်ပါတယ်။ Sprint Backlog ထဲမှာ Develop လုပ်မယ့် Task တွေအပြင်၊ Sprint မှာ ပြီးသွားတဲ့ Product ကို ဘယ်လို Deliver လုပ်မလဲဆိုတဲ့ Plan နဲ့ ဘာလို့ ဒီ Task တွေကို လုပ်ရသလဲဆိုတဲ့ Sprint Goal တို့ပါဝင်ပါတယ်။ လိုတိုရှင်းပြောရရင် Sprint Backlog က Sprint တစ်ခုစာ Plan လို့ ပြောလို့ရပါတယ်။ Sprint Backlog သတ်မှတ်ပြီးမှ တချို့ Task တွေ မပြီးနိုင်တာမျိုး၊ ထပ်ခွဲဖို့လိုတာမျိုးကို Development Team က Product Owner နဲ့ တိုင်ပင်ပြီး ပြုလုပ်နိုင်ပါတယ်။
3. Increment
Sprint တွေမှာ ပြီးမြောက်ခဲ့တဲ့ Task တွေကို ပေါင်းပြီး Product ရဲ့ Increment (ထပ်တိုး) တွေလို့ ခေါ်ပါတယ်။ Scrum ရဲ့ ရည်ရွယ်ချက်က Sprint တစ်ခုအပြီးမှ Customer ဆီ ထုတ်ပေးလို့ရတဲ့ Increment တစ်ခု ပြီးမြောက်ဖို့ဖြစ်ပါတယ်။ အဲဒီ Increment က သုံးလို့ရ၊ Customer ဆီ ထုတ်ပေးလို့ရတဲ့ အခြေအနေရှိရပါတယ်။ တကယ် Deliver လုပ်မယ်၊ မလုပ်ဖူးကိုတော့ Product Owner က ပြန်ဆုံးဖြတ်ပါတယ်။
Increment တစ်ခု ပြီးမြောက်လား (“Done” ဖြစ်လား / မဖြစ်လား) တိုင်းတာတဲ့ သတ်မှတ်ချက်တွေကို Development Team က သတ်မှတ်ထားရပါတယ်။ Product တစ်ခုနဲ့တစ်ခု၊ Organization တစ်ခုနဲ့တစ်ခု သတ်မှတ်ချက်တွေ မတူကြပါဘူး။ Develop လုပ်လိုက်တဲ့ Task တွေက “Done” သတ်မှတ်ချက်နဲ့ ကိုက်ညီမှသာ Increment တစ်ခုပြီးမြောက်တယ်လို့ ယူဆရပါတယ်။ အဲဒီသတ်မှတ်ချက်ကို “Definition of Done” လို့ ခေါ်ပါတယ်။
Agile နဲ့ Scrum ကို ဘာကွာလဲ ရောထွေးတတ်သူတွေအတွက် အတိုချုပ် ပြန်ပြောရရင်
ဒီလောက်ဆို Agile နဲ့ Scrum အကြောင်းမိတ်ဆက်က လုံလောက်ပြီလို့ထင်ပါတယ်။ နောက်ထပ် ဖတ်ချင်တဲ့ Topic တွေရှိရင်လည်း ဒီ Google Form ကနေတဆင့် အကြံပေးနိုင်ပါတယ်။ ProductBaze မှ Product သမားအချင်းချင်း idea တွေ၊ knowledge နဲ့ experience တွေ share ဖို့ နွေးနွေးထွေးထွေးဖိတ်ခေါ်ပါတယ်။ ProductBaze အကြောင်း (၁) မိနစ်စာ မိတ်ဆက် post လေးကို ဒီ link မှာ ဖတ်လို့ရပါတယ်။ ProductBaze ကို ဆက်သွယ်ချင်ရင် productbaze@gmail.com သို့ ပေးပို့ ဆက်သွယ်နိုင်ပါတယ်။
Follow us on Facebook and Linkedin for latest updates.
ဒီဆောင်းပါးက “Scrun ဆိုတာဘာလဲ (အပိုင်း-၁)” ရဲ့ အဆက်ဖြစ်ပါတယ်။ အပိုင်း-၁ မှာ Scrum အကြောင်းကို မိတ်ဆက်ပြီး Sprint နဲ့ Scrum Meeting တွေအကြောင်း ရေးခဲ့တာဖြစ်လို့ အပိုင်း-၂ မှာတော့ Scrum မှာ ပါဝင်တဲ့ Team Member တွေနဲ့ အသုံးပြုတဲ့ Artifact တွေအကြောင်းကို ရေးသွားပါမယ်။
(ဒီဆောင်းပါးက Scrum.org ရဲ့ Scrum Guide™ ကို အခြေခံပြီး ရေးထားတာဖြစ်ပါတယ်။)
Scrum Team
Scrum Team က Scrum ကို Run တဲ့ လူတွေအားလုံးပါဝင်ပြီး Product Owner, Scrum Master နဲ့ Development Team ဆိုပြီး Role သုံးခုခွဲပါတယ်။ (သုံးခုအပြင် အခြား Role မရှိပါဘူး)
1. Product Owner ဘာလုပ်လဲ
Product Owner က Product Backlog အတွက် ကိုင်တွယ်သူဖြစ်ပြီး Development Team ကနေ Develop လုပ်ပေးမယ့် Product ကို အကောင်းဆုံးဖြစ်စေဖို့ တာဝန်ယူရပါတယ်။ အဲဒါကြောင့် Product Owner ကို Value Maximizer လို့ တင်စားပါတယ်။ ဒါ့အပြင် Product Owner က Scrum Team ပြင်ပက Stakeholder တွေနဲ့ Scrum Team ကို ဆက်သွယ်ပေးသူလို့လည်း ပြောလို့ရပါတယ်။ Customer ရဲ့ လိုအပ်ချက်တွေ၊ အခြား Stakeholder ရဲ့ တောင်းဆိုမှုတွေကို Product အတွက် လုပ်သင့်၊ မလုပ်သင့် ဆုံးဖြတ်တယ်။ ပြီးနောက် လုပ်ဖို့လိုတာတွေကို Product Backlog ထဲမှာ ထည့်၊ User Story တွေ ရေးပြီး၊ Develop လုပ်ဖို့ရာ Priority သတ်မှတ်ပါတယ်။ များသာအားဖြင့် Product Manager တွေက Scrum Team ရဲ့ Product Owner တာဝန်ကို ယူကြလေ့ရှိပါတယ်။
2. Scrum Master ဘာလုပ်လဲ
Scrum Master ကတော့ Scrum Team တစ်ခုလုံးက Scrum ကို နည်းမှန် လမ်းမှန် Run ဖို့ ဦးဆောင်ပေးသူ၊ ပံ့ပိုးပေးသူ (Facilitator) ဖြစ်ပါတယ်။ Scrum Team အတွက် Scrum Meetings တွေအပြင်၊ လိုအပ်တဲ့ အခြား Meeting တွေကိုပါ စီစဥ်ပေးပါတယ်။ Product Owner ရဲ့ Backlog စီတာမှာ ကူညီပေးသလို၊ Developent Team ရဲ့ အလုပ်တွေအတွက်လည်း မလိုတဲ့ အတားအဆီးတွေကို ကူညီဖယ်ရှားပေးပါတယ်။ Scrum Framewrok နဲ့ ပတ်သက်တဲ့ Knowledge တွေ၊ သတ်မှတ်ချက်တွေကို Scrum Team နဲ့ Company က အခြားဝန်ထမ်းတွေပါ နားလည်စေဖို့ Scrum Master က ဦးဆောင်တာဝန်ယူရပါတယ်။
3. Development Team ဘာလုပ်လဲ
Product ကို Develop လုပ်တဲ့အချိန်မှာ ပါဝင်တဲ့ မည်သူမဆို Development Team အနေနဲ့ သတ်မှတ်ပါတယ်။ Developer, Cloud Engineer, Designer, QA Engineer, Business Analysis စသဖြင့် သက်ဆိုင်ရာ Profession တွေကို လုပ်ဆောင်ကြပေမယ့် သီးခြား Title ထပ်မခွဲပဲ အားလုံးကို Development Team အနေနဲ့ တစ်စုတည်းသတ်မှတ်တာဖြစ်ပါတယ်။ Development Team မှာ အနည်းဆုံး ၃ယောက်ကနေ အများဆုံး ၉ယောက်အထိ ရှိနိုင်ပြီး ဒီထပ်များလာရင်တော့ နောက်ထပ် Scrum Team တစ်ခုထပ်ထားသင့်ပါတယ်။
Scrum ရဲ့ Development Team မှာ အဓိကအချက်က Self-Organize ဖြစ်ခြင်းပါ။ ဘယ်လိုအဓိပ္ပါယ်လည်းဆိုရင်… Development Team ကို ဘယ် Feature တွေ Develop လုပ်ရမယ်၊ ဘယ်လို Develop လုပ်ရမယ်လို့ Product Owner ကရော၊ Scrum Master ကရော ဘယ်သူကမှ အတင်းအကျပ် လုပ်ခိုင်းတာမျိုးမရှိ / မရှိရပါဘူး။ Development Team က Product Backlog မှာ Priority စီထားတဲ့ Feature တွေကိုကြည့်ပြီး Priority မြင့်တဲ့ Feature တွေကို Develop လုပ်ဖို့ ကိုယ်တိုင်ရွေးချယ်၊ ဘယ်လို Develop လုပ်မယ်ဆိုတာ ကိုယ်တိုင် ဆုံးဖြတ်တာဖြစ်ပါတယ်။ အဲ့လိုဆုံးဖြတ်တဲ့အချိန်မှာတော့ Sprint Planning မှာ Product Owner နဲ့တိုင်ပင်ရပါတယ်။
Scrum မှာ ပါဝင်တဲ့ Artifacts များ
1. Product Backlog
Product မှာ ဆက်လုပ်ဖို့လိုမယ့် အရာမှန်သမျှကို ချရေးထားတဲ့ List လို့ ပြောလို့ရပါတယ်။ Product Backlog ကို Product Owner က တာဝန်ယူရပြီး၊ Product အသက်ရှင်နေသရွေ့ Product Backlog က ကုန်သွားတယ် / ပြီးသွားတယ်ဆိုတာမျိုး မရှိပါဘူး။ Product Backlog ထဲမှာ Features တွေ၊ Functions တွေ၊ Requirements တွေ၊ ပြင်ရမယ့် Bugs တွေ အကုန်ပါရှိပြီး… ဘာတွေက Product မှာ လုပ်ဖို့ အရေးအကြီးဆုံးလဲဆိုတဲ့ Priority စီတာကို Product Owner က လုပ်ပါတယ်။
2. Sprint Backlog
Sprint Backlog ကတော့ Sprint Planning Meeting မှာ ဒီ Sprint အတွင်း Product Backlog ထဲက ဘာတွေကို Develop လုပ်မယ်လို့ ရွေးထုတ်လိုက်တဲ့ List ဖြစ်ပါတယ်။ Sprint Backlog ထဲမှာ Develop လုပ်မယ့် Task တွေအပြင်၊ Sprint မှာ ပြီးသွားတဲ့ Product ကို ဘယ်လို Deliver လုပ်မလဲဆိုတဲ့ Plan နဲ့ ဘာလို့ ဒီ Task တွေကို လုပ်ရသလဲဆိုတဲ့ Sprint Goal တို့ပါဝင်ပါတယ်။ လိုတိုရှင်းပြောရရင် Sprint Backlog က Sprint တစ်ခုစာ Plan လို့ ပြောလို့ရပါတယ်။ Sprint Backlog သတ်မှတ်ပြီးမှ တချို့ Task တွေ မပြီးနိုင်တာမျိုး၊ ထပ်ခွဲဖို့လိုတာမျိုးကို Development Team က Product Owner နဲ့ တိုင်ပင်ပြီး ပြုလုပ်နိုင်ပါတယ်။
3. Increment
Sprint တွေမှာ ပြီးမြောက်ခဲ့တဲ့ Task တွေကို ပေါင်းပြီး Product ရဲ့ Increment (ထပ်တိုး) တွေလို့ ခေါ်ပါတယ်။ Scrum ရဲ့ ရည်ရွယ်ချက်က Sprint တစ်ခုအပြီးမှ Customer ဆီ ထုတ်ပေးလို့ရတဲ့ Increment တစ်ခု ပြီးမြောက်ဖို့ဖြစ်ပါတယ်။ အဲဒီ Increment က သုံးလို့ရ၊ Customer ဆီ ထုတ်ပေးလို့ရတဲ့ အခြေအနေရှိရပါတယ်။ တကယ် Deliver လုပ်မယ်၊ မလုပ်ဖူးကိုတော့ Product Owner က ပြန်ဆုံးဖြတ်ပါတယ်။
Increment တစ်ခု ပြီးမြောက်လား (“Done” ဖြစ်လား / မဖြစ်လား) တိုင်းတာတဲ့ သတ်မှတ်ချက်တွေကို Development Team က သတ်မှတ်ထားရပါတယ်။ Product တစ်ခုနဲ့တစ်ခု၊ Organization တစ်ခုနဲ့တစ်ခု သတ်မှတ်ချက်တွေ မတူကြပါဘူး။ Develop လုပ်လိုက်တဲ့ Task တွေက “Done” သတ်မှတ်ချက်နဲ့ ကိုက်ညီမှသာ Increment တစ်ခုပြီးမြောက်တယ်လို့ ယူဆရပါတယ်။ အဲဒီသတ်မှတ်ချက်ကို “Definition of Done” လို့ ခေါ်ပါတယ်။
Agile နဲ့ Scrum ကို ဘာကွာလဲ ရောထွေးတတ်သူတွေအတွက် အတိုချုပ် ပြန်ပြောရရင်
- Agile က Project တွေ မြန်ဆန်ပြီး ပြုပြင်ရလွယ်စေဖို့ သုံးတဲ့နည်းစနစ် ဖြစ်ပြီး
- Scrum က Agile ကို Run တဲ့ Framework တစ်ခုသာ ဖြစ်ပါတယ်။
ဒီလောက်ဆို Agile နဲ့ Scrum အကြောင်းမိတ်ဆက်က လုံလောက်ပြီလို့ထင်ပါတယ်။ နောက်ထပ် ဖတ်ချင်တဲ့ Topic တွေရှိရင်လည်း ဒီ Google Form ကနေတဆင့် အကြံပေးနိုင်ပါတယ်။ ProductBaze မှ Product သမားအချင်းချင်း idea တွေ၊ knowledge နဲ့ experience တွေ share ဖို့ နွေးနွေးထွေးထွေးဖိတ်ခေါ်ပါတယ်။ ProductBaze အကြောင်း (၁) မိနစ်စာ မိတ်ဆက် post လေးကို ဒီ link မှာ ဖတ်လို့ရပါတယ်။ ProductBaze ကို ဆက်သွယ်ချင်ရင် productbaze@gmail.com သို့ ပေးပို့ ဆက်သွယ်နိုင်ပါတယ်။
Follow us on Facebook and Linkedin for latest updates.
Comments