
Planning Project Schedule
Developer တစ်ယောက်အနေနဲ့ project တွေရေးတဲ့အခါ learning အတွက်ပဲဖြစ်ဖြစ် client project ပဲဖြစ်ဖြစ် မဖြစ်မနေရှိသင့်တဲ့ habit တစ်ခုကတော့ schedule ဆွဲတာပဲဖြစ်ပါတယ်။ မိတ်ဆွေတို့အနေနဲ့ project ကိုအသေးစိတ်လေ့လာပြီး လုပ်ရမယ့် task တွေ function တွေကို deadline တစ်ခုထားပြီး schedule ဆွဲမယ်ဆိုရင် project တစ်ခုလုံးကို စပြီးမဆွဲခင်မှာပဲ အကြမ်းဖြင်းအားဖြင့် လိုအပ်တဲ့ requirements တွေကို ကြိုတွေးမိပြီး သေချာပြင်ဆင်နိုင်ပါလိမ့်မယ်။ ဒီတော့မမျှော်လင့်ပဲဖြစ်လာနိုင်တဲ့ပြသနာတွေကို ပြင်ဆင်ပြီးသားမို့လို့ အချိန်ကြန့်ကြာတာမျိုးတွေလည်းမဖြစ်နိုင်တော့ပဲ အချိန်အတိကျနဲ့ပြီးစီးနိုင်တာကြောင့် client တွေနဲ့ကတိပျက်ရတာမျိုးတွေလည်းမဖြစ်နိုင်တော့ပါဘူး။ Schedule ထဲက deadline အတိုင်းတော့ သေချာလုပ်ဖို့တော့လိုတာပေါ့ဗျာ။ Schedule ဆွဲတဲ့အခါစဉ်းစားပုံ အသေးစိတ်တွေကတော့ တစ်ယောက်နဲ့တစ်ယောက်မတူနိုင်ပေမယ့် များသောအားဖြင့် Project function တွေနဲ့ ကိုယ့်ရဲ့ coding skill ပေါ်မူတည်ပြီးဆွဲကြပါတယ်။ ဒီနေ့မှာတော့ ကျွန်တော် schedule ဆွဲနေကြပုံစံလေးကို sharing လုပ်ပေးချင်ပါတယ်ခင်ဗျ။
1. project ကိုသေချာနားလည်အောင်လုပ်ပါတယ်။ client ဘက်ကတောင်းထားတဲ့ Page တွေ function တွေကို Detail စဉ်းစားပါတယ်။ ဥပမာ Blog website မျိုးဆို Admin panel မှာ Post တင်မယ့်CRUDအပိုင်းတွေ Admin Role တွေ Site setting တွေ User Panel မှာဆို Post ဖတ်မယ် comment ပေးမယ်စသည်ဖြင့်ပေါ့နော်။
2. ကျွန်တော်ကတော့ schedule app တွေ management app တွေသိပ်သုံးလေ့မရှိပါဘူး။ Excel မှာပဲစိတ်ကြိုက် column တွေခွဲပြီး customize လုပ်ရတာကိုသဘောကျပါတယ်။ ဒီတော့ Excel မှာ Modules, Task Description , Days, Priority, Status ဆိုပြီး column တွေခွဲလိုက်ပါတယ်။
Module - ခုနက function တွေကို ခေါင်းစဉ်အနေနဲ့ရေးထားပါတယ်။ ဥပမာ- Project Setup, Admin CRUD, Post CRUD ပေါ့ဗျာ။
Task description - Function တစ်ခုချင်းဆီအတွက်အသေးစိတ်စဥ်းစားပြီးရေးထားတဲ့ document cell လို့ပြောလို့ရပါတယ်ဗျ။ function note တွေအပြင် role authority တွေ client request တွေကအစအကုန်အသေးစိတ် ဒီ column မှာမှတ်ထားပါတယ်။
Days - ဒါကတော့ Task တစ်ခုချင်းစီအတွက်ကြာမယ့်ရက်ပါ။ ဒီနေရာမှာတော့ task description ပေါ်မူတည်ပြီးစဉ်းစားပါတယ်။ ကိုယ့်ရဲ့ coding time အပြင် design ပိုင်းတွေစဉ်းစားဖို့ ဆွဲဖို့၊ တခြားမမျှော်လင့်ဘဲတက်လာမယ့် error တွေရှင်းဖို့၊ ကိုယ်မလုပ်ဖူးတဲ့ function မျိုးတွေအတွက် tech stack အသစ် learning လုပ်ရမယ့်အချိန်တွေ၊ testing & bug fix အတွက်အချိန်တွေ စသဖြင့် သေချာတွက်ချက်ပြီး ထည့်ပါတယ်။ Client project မျိုးဆိုရင်တော့ client ဆိုတာအမြဲပြင်ခိုင်းတတ်တဲ့သူဆိုတော့ အချိန်ကို ညှိနှိုင်းပြီး နည်းနည်းလေးပိုတွက်ထားစေချင်ပါတယ်။ ဒါမှလည်း Pressure မရှိပဲ အချိန်မှီပြီးနိုင်မှာကိုးဗျ။ Project setup, database design, deployment အတွက်အချိန်ချန်ဖို့လည်းမမေ့နဲ့နော်။
Priority - ကျွန်တော်ကတော့ high / medium / low ဆိုပြီး ၃မျိုးခွဲထားပါတယ်။ Client Project မျိုးဆို Site တစ်ခုလုံးမပြီးသေးရင်တောင် အရေးကြုံရင် အရင်ဆုံးသုံးလို့ရမယ့် function မျိုးတွေနဲ့ မဖြစ်မနေပါရမယ့်အရေးကြီးတဲ့ function မျိုးတွေကို high ပေးပြီး ကျန်တာကတော့ medium နဲ့ low ကို project ပေါ်မူတည်ပြီး ခွဲလိုက်ပါတယ်။ website စဆွဲတဲ့အခါ high ဖြစ်နေတဲ့ moduleတွေကိုအရင်ရေးပါတယ်။ ပြီးမှ medium to low develop လုပ်ပါတယ်။ အဓိကကတော့အကြောင်းအမျိုးမျိုးကြောင့် in time မပြီးနိုင်ခဲ့ရင်တောင် လတ်တလောအသုံးပြုနေလို့ရဖို့ဆိုပြီးရည်ရွယ်ချက်နဲ့ပါ။
Status - Pending, in progress, complete, testing, bugfix, close ဆိုပြီးထားထားပါတယ်။ ကိုယ်တစ်နေ့တာပြီးသွားတဲ့အတိုင်းတာတစ်ခုကိုမှတ်ထားတာပါ။ ဒါမှလည်း Task ကျန်ခဲ့တာမျိုးမရှိမှာပဲဖြစ်ပါတယ်။
အားလုံးပြီးသွားရင်တော့ site တစ်ခုလုံးကို testing လုပ်ဖို့နဲ့ final bug fixes အတွက် ၂~၃ ရက်လောက်လည်း schedule ထဲထည့်ပါတယ်။
မိတ်ဆွေတို့အနေနဲ့လည်း project တိုင်းကို flexible and well-structured ဖြစ်တဲ့
schedule အတိုင်းလုပ်မယ်ဆိုရင် အချိန်၊ client ရဲ့ယုံကြည်မှု၊ ကိုယ့်လုပ်နိုင်စွမ်း၊ အဘက်ဘက်ကအကျိုးရှိမယ့်အပြင် တို့လို့တန်းလန်းနဲ့ project တွေပုံပြီး ကျန်နေတော့မှာလည်းမဟုတ်ပါဘူး။ project နှစ်ခုသုံးခုကိုလည်းတစ်ပြိုင်ထဲ တာဝန်ယူထားနိုင်တာပေါ့နော်။
ဆိုတော့ ဒီ habit လေးကို ခုကစပြီးလုပ်ကြည့်ဖို့အကြံပေးပါရစေဗျ။ Developer ကြီးတို့ရော ကိုယ်လုပ်လေ့ရှိတဲ့အလေ့ကျင့်ကောင်းလေးတွေရှိရင်အတုယူလို့ရအောင်မျှဝေအကြံပြုပေးသွားပါဦးဗျ။
Categories: Programmer Life
Login with your account to share your thoughts...
Comments
No comment yet.