Project Management(အပိုင်း-၁)

Published on January 3rd 2023

Post Image
Glossary

constraint- ကန့်သတ်ချက်

intangible- လက်ဆုပ်လက်ကိုင်မပြနိုင်သော

progress- တိုးတက်မှု

Software project management သည် software engineeringနယ်ပယ်တွင် မရှိမဖြစ် လိုအပ်သောအရာဖြစ်ပါသည်။ Management ကောင်းတိုင်း project အောင်မြင် မည်ဟု အာမခံ၍မရပါ။ Managementညံ့လျှင်တော့ projectရလဒ်တွေ မအောင်မမြင် ဖြစ်လေ့ရှိပါသည်။ ပြီးသင့်သည့်ချိန် မပြီးမြောက်ဘဲ နောက်ကျမှုများ၊ ပုံမှန်ခန့်မှန်း ထားသည်ထက် ပိုမိုကုန်ကျမှုများ နှင့် လိုအပ်သည်များကို မဖြည့်စည်းပေးနိုင်မှုများသည် managementမကောင်းလျှင် ဖြစ်လေ့ရှိပါသည်။

Software manager များတွင် project developmentကို အစီအစဉ်ရေးဆွဲခြင်း (planning)နှင့် အစဉ်တကျလုပ်ဆောင်ခြင်း (scheduling) တာဝန်များ ရှိကြပါသည်။ အဖွဲ့အစည်း budget နှင့်၊ လုပ်ငန်းစဉ် အကန့်အသတ်များသည် professional software engineering ပေါ်တွင် မူတည်သောကြောင့် software project managementသည် လိုအပ်သောအရာတစ်ခု ဖြစ်လာပါသည်။ Software projectများကို ကန့်သတ်ချက် များအတွင်း လုပ်ဆောင်ခြင်း နှင့် company၏ software development ပန်းတိုင်များသို့ ပံ့ပိုးမှုများ လုပ်ဆောင်ခြင်းသည် software project manager၏ အလုပ်များဖြစ်ပါသည်။

Software managerများသည် အခြား engineering project managerများကဲ့သို့ တူညီသော အလုပ်များကို လုပ်ဆောင်ကြပါသည်။ သို့ပေမဲ့ software engineering ဆိုသည်မှာ အခြား engineeringနယ်ပယ်များနှင့် ကွဲပြားပါသည်။ မည်သို့ကွဲပြား ခြားနား မှုများက software project managementကို အခြား engineering project managementများထက် ခက်ခဲစေ တာလဲ။

1. The product is intangible: သင်္ဘောတည်ဆောက်ခြင်း (သို့) မြို့ပြ engineering project managerများသည် product တည်ဆောက်နေ ခြင်းကို သေချာစွာ မြင်တွေ့ နိုင်ပါသည်။ ဆိုလိုသည်မှာ အစီအစဉ်များလွဲချော်နေပါက ဖွဲ့စည်း တည်ဆောက်ပုံ အစိတ်အပိုင်းများကို မျက်ဝါးထင်ထင် တွေ့မြင်နိုင်ပါသည်။ Software ကို ထိတွေ့ကိုင်တွယ်၍ မရပါ။ ထို့ကြောင့် software project managerများသည် အခြေအနေ progressကို မတွေ့မြင်နိုင်ပါ။ အခြားသူများအပေါ် မှီခိုအားထားကာ အခြေအနေ progressကိုဆန်းစစ်ရန် လိုအပ်သည့် documentationကို project managerများက ထုတ်လုပ်ပေး ရပါသည်။

2. There are no standard software processes: သမိုင်းတစ်လျှောက် engineering စည်းမျဉ်းစည်းကမ်းများတွင် processများကို စမ်းသပ်မှုများ ပြုလုပ်ပြီး ကြိုးပမ်းဆောင်ရွက်မှုများ ပြုလုပ်ခဲ့ပါသည်။ ထို့ကြောင့် လမ်းတံတား နှင့် အဆောက်အဦး တည်ဆောက်ခြင်း processများကို ကောင်းစွာ နားလည် သဘောပေါက် နိုင်ကြပါသည်။မည်သို့ပင်ဖြစ်စေကာမူ Software process များတွင် အဖွဲ့ အစည်း တစ်ခုနှင့်တစ်ခု ကွဲပြားမှုများမှာ သိသာထင်ရှားပါသည်။ ထိုprocessများကို အရင်ကထက် ကျွန်တော်တို့ နားလည်ကျွမ်းကျင် လာကြ သော်လည်း development problemများဖြစ်ပွားနိုင်သည်ကို ခန့်မှန်းရာ တွင် ယုံယုံကြည်ကြည် မရှိနိုင်သေးပါ။ System engineering project ကြီးတစ်ခု၏ software projectတွင် ဒီအချက်ဟာ ထင်ရှားပါသည်။

3. Large software projects are often ‘one-off’ projects: one-off၏ အဓိပ္ပယ်မှာ တစ်ကြိမ်တစ်ခါသာ ဖြစ်တတ်ခြင်း ကို ဆိုလိုပါသည်။ ယခု လုပ်ဆောင်နေသော Software project ကြီးများနှင့် အရင် လုပ်ပြီးခဲ့တဲ့ projectတွေက ကွဲပြားလေ့ရှိပါသည်။ Experience ရှိသော managerများ ပင်လျှင် problemများကို လက်ဦးရယူ ဖြေရှင်းဖို့ ခက်ခဲပါသည်။ ထို့အပြင် လျင်မြန်စွာပြောင်းလဲနေသော computerနှင့် communicationပိုင်းဆိုင်ရာ နည်းပညာများ သည် manager၏ အတွေ့အကြုံ experience ကို နောက်ကျ ကျန်ခဲ့စေပါသည်။ ထို့ကြောင့် ယခင် projectများမှ ရရှိထားသော သင်ခန်းစာ များကို project အသစ်များတွင် ပြောင်းလဲအသုံးချ နိုင်မှုသည် ဖြစ်ချင်မှဖြစ်နိုင် ပါတော့မည်။

5.1 Management activities

Software managerတစ်ဦးအတွက် standardဖြစ်သည့် job description တစ်ခုရေးဖို့ ခက်ခဲ ပါသည်။ အဘယ်ကြောင့်ဆိုသော် developလုပ်နေသော project နှင့် အဖွဲ့အစည်း ပေါ် တွင်မူတည်ကာ လုပ်ဆောင်ရသော အလုပ်လည်း ကွဲပြား သောကြောင့် ဖြစ်ပါသည်။ မည်သို့ပင်ဖြစ်စေကာမူ managerအများစုသည် အောက်ပါ activityများထဲမှ အချို့ သို့မဟုတ် အကုန်လုံးကို တာဝန်ယူကြရပါသည်။

· Proposal writing: Software projectတစ်ခု၏ ပထမဆုံးအဆင့်များမှတစ်ခု ဖြစ်ပါသည်။ အလုပ်လုပ်ဆောင်ရန် သဘောတူစာချုပ် (contract) ချုပ်ဆိုနိုင် အောင် proposal ရေးသားပေးရခြင်းဖြစ်ပါသည်။ Proposalတွင် project၏ ရည်ရွယ်ချက်များ(objectives)နှင့် ယင်းတို့ကို မည်သို့ လုပ်ဆောင်သွားမည့် အကြောင်း များဖော်ပြထားရပါမည်။ ကုန်ကျစရိတ်များ(cost) နှင့် လုပ်ငန်းစဉ် အချိန်ဇယား (schedule) ခန့်မှန်းချက်များလည်း ပါဝင်လေ့ရှိပါသည်။ ထို့အပြင် မိမိ ၏ projectကို ဘာကြောင့် အရေးပေးသင့်ကြောင်း အဖွဲ့အစည်း သို့မဟုတ် မိမိအသင်းကို အကျိုးသင့်အကြောင်းသင့် ရှင်းပြခြင်းများ proposal တွင် ပါဝင်ရပါမည်။ Proposal writingသည် အလွန်အရေးကြီးသော တာဝန်တစ်ခု ဖြစ်ပြီး ကျွန်တော်တို့အနေဖြင့် လေ့ကျင့်ရေးသားခြင်းများမှရလာသော အတွေ့ အကြုံများ မှတစ်ဆင့် ရရှိလာမည့် skillတစ်ခုဖြစ်ပါသည်။

· Project planning and scheduling: project planningသည် project တစ်ခုမှ activityများ၊ အရေးပါသောတိုးတက်မှု မှတ်ကျောက်များ(milestones)နှင့် deliverable များကို ခွဲခြားသတ်မှတ်ခြင်း နှင့် သက်ဆိုင်ပါသည်။ Projectရည်ရွယ်ချက်ပန်းတိုင်များသို့ developလုပ်နိုင်ရန် လမ်းညွှန်ချက်များ planတစ်ခုတွင်ရေးဆွဲ ရပါသည်။

· Project cost: ကုန်ကျစရိတ်ခန့်မှန်းခြင်း (cost estimation) သည် project plan ဖြစ်မြောက်နိုင်ရန် လိုအပ်သည့် အချက်အလက်အရင်းအမြစ်များကို ခန့်မှန်းခြင်း နှင့် သက်ဆိုင်ပါသည်။

· Project monitoring and reviews: project monitoringသည် စဉ်ဆက်မပြတ် လုပ်ဆောင်ရသော project activity တစ်ခုဖြစ်ပါသည်။ အမှန်တကယ် စီစဉ်ထား သည့် progress နှင့် cost အတိုင်း projectကို managerမှ ဆက်လက် ထိန်းသိမ်း စီမံရပါသည်။

Project လုပ်ဆောင်နေသည့် အချိန်အတွင်း project managementဆိုင်ရာ ပြန်လည်ဆန်းစစ်မှု (review)များ ရေးသားရပါသည်။ Reviewing ဆိုသည့် အပိုင်းတွင် progress တစ်ခုလုံးနှင့် နည်းပညာဆိုင်ရာ development အပိုင်းတို့ ကို review လုပ်ရပါသည်။ ထို့အပြင် projectနှင့် အဖွဲ့အစည်း၏ softwareအပေါ် ထားရှိသော ရည်ရွယ်ချက်ပန်းတိုင်သည် တန်းတူ ကိုက်ညီမှု ရှိ/မရှိ ကြည့်ရှု ရပါသည်။ အခြေအနေ အကြောင်းတစ်စုံတစ်ရာကြောင့် software developmentကို ရပ်ရမည် (သို့) အဖွဲ့အစည်းဆိုင်ရာ objectiveများ ပြောင်းလဲ လာမှုများကို လိုက်လျောရန် project ပြောင်းလဲရမည် ဆိုသော ဆုံးဖြတ်ချက် များကို managementအပိုင်းမှ ဆုံးဖြတ်နိုင်ပါသည်။

ကျန်ရှိနေသော management activityများကို နောက်အပိုင်းတွင် ဖော်ပြပေးသွားပါမယ်။ Milestones နှင့် deliverable အကြောင်းကို topic သက်သက်တစ်ခုဖြင့် ဖော်ပြသွားမည်ဖြစ်ပါသည်။