အဂျိုင်း(လ်) နည်းဖြင့် ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်း

အဂျိုင်း(လ်) နည်းဖြင့် ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်း (အင်္ဂလိပ်: Agile software development) ဆိုသည်မှာ ဆော့ဖ်ဝဲရ် တစ်ခုကို ဖန်တီးရာတွင် ချဉ်းကပ် အဖြေရှာပုံ နည်းလမ်းတစ်ခုဖြစ်သည်။ ထိုနည်းလမ်းတွင် ကိုယ်တိုင် ခေါင်းဆောင်တာဝန်ယူနိုင်၍ ဆော့ဖ်ဝဲရ်ကဏ္ဍစုံတွင် ကျွမ်းကျင်သူများပါဝင်သည့် အဖွဲ့များ နှင့် ဆော့ဖ်ဝဲရ်ကို အသုံးပြုမည့်သူများ အတူတကွ ညှိနှိုင်း အားထုတ်လုပ်ဆောင်၍ ဆော့ဖ်ဝဲရ် အတွက် လိုအပ်ချက်များ နှင့် ဆော့ဖ်ဝဲရ်အဖြေများကို အဆင့်ဆင့် ဖော်ထုတ် ရယူသည်။[၁]အဂျိုင်း(လ်) နည်းတွင် ပြောင်းလဲရန် လွယ်ကူသောစီစဉ်မှု၊ ဆင့်ကဲပြောင်းလဲ ဖန်တီးခြင်း၊ ဆော့ဖ်ဝဲရ် တစ်ခုကို စောစီးစွာ ပေးအပ်ခြင်း နှင့် အစဉ်မပြတ် တိုးတက်ကောင်းမွန်အောင် လုပ်ဆောင်ခြင်းများကို အလေးထား၊ ဦးစားပေး၍ အပြောင်းအလဲ ကို လျင်မြန်စွာ တုံ့ပြန်၍ ပြောင်းလဲရန် ပျော့ပြောင်း လွယ်ကူခြင်းကို အားပေးသည်။[၂]

အတွဲနှင့် ပရိုဂရမ်ရေးခြင်း (အင်္ဂလိပ်: Pair programming) မှာ အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ်ဖန်တီးနည် တမျိုးဖြစ်သည်။

(အင်္ဂလိပ်: a) အသေးဖြင့် အဂျိုင်း(လ်) (အင်္ဂလိပ်: agile) ဟုသုံးလျှင် ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်းတွင် ပြောင်းလဲရန် လွယ်ကူခြင်းနှင့် အပြောင်းအလဲ ကို လျင်မြန်စွာ တုံ့ပြန်နိုင်ခြင်းတို့ကို ယေဘုယျသဘောဖြင့် ရည်ညွန်းသည်။ (အင်္ဂလိပ်: A)အကြီးဖြင့် အဂျိုင်း(လ်) (အင်္ဂလိပ်: Agile) ဟုသုံးလျှင် အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ် ဖန်တီးမှု ကြေညာစာတန်း [၃] နှင့်အညီ သို့မဟုတ် အနည်းစပ်ဆုံး ကိုက်ညီသော နည်းလမ်းများဖြင့် ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်း ဟုအဓိပ္ပာယ်ရသည်။ စကရမ်း နှင့် ကန်ဘမ် တို့အပါအဝင် ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်း နည်းလမ်းဘောင် အများအပြားမှာ ဤ ကြေညာစာတန်းမှ ပေါ်ထွန်းလာသော တန်ဖိုးများနှင့် နိယာမများ ကို အခြေခံကြသည်။[၄][၅]

အဂျိုင်း(လ်) နည်းလမ်း များ နှင့် အဂျိုင်း(လ်) တန်ဖိုးများ ကို လိုက်နာခြင်း ကြောင့် ဆော့ဖ်ဝဲရ် ပညာရှင်များ နှင့် ဆော့ဖ်ဝဲရ် အသင်း၊ အဖွဲ့ များ၏ အပြောင်းအလဲကို လျင်မြန်စွာ တုံ့ပြန်နိုင်မှုများတိုးတက်၍ အကျိုးများကြောင်း ကျယ်ကျယ်ပြန့်ပြန့် ပြောဆိုရေးသားကြသည်။ သို့သော် အချို့ သုတေသနများတွင် အဂျိုင်း(လ်)နည်းကြောင့် အကျိုးများကြောင်းကို သိပ္ပံနည်းကျ သက်သေအထောက်အထား မရှိဟု တွေ့ရှိခဲ့ကြသည်။[၆][၇]

နောက်ခံသမိုင်း ပြင်ဆင်ရန်

အဆင့်ဆင့်နှင့် အနည်းငယ်မျှသာ ပြောင်းလဲမှုပြုသော ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း (အင်္ဂလိပ်: Iterative and incremental development) နည်းလမ်းများကို ၁၉၅၇ခုနှစ် ကတဲက စတင်အသုံးပြုခဲ့ကြသည်။ ဆင့်ကဲပြောင်းလဲ စီမံကိန်းခံ့ခွဲမှု (အင်္ဂလိပ်: Evolutionary project management) နှင့် ပြောင်းလဲလွယ်မှုကို အထူးပြုသော ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်း (အင်္ဂလိပ်: Adaptive software development) နည်းတို့မှာ ၁၉၇၀ ခုနှစ်များတွင် ပေါ်ထွန်းလာခဲ့သည်။

ဝေဖန်သူများက အလွန် စည်းမျဉ်းများသော၊ စီမံမှုလွန်ကဲ၍ အသေးစိတ်လွန်းသည် ဟု ဖော်ပြခံရသော နှေးကွေး လေးလံသည့် ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း နည်းလမ်းများကို တုံ့ပြန်ချက်အဖြစ် သွက်လက်ပေါ့ပါးသော ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း နည်းလမ်းများ ၁၉၉၀ ခုနှစ်များတွင် ပြောင်းလဲပေါ်ထွန်းလာခဲ့သည်။ ပေါ်ထွန်းလာသော နည်းလမ်းများမှာ ၁၉၉၁ ခုနှစ်တွင် ဆော့ဝဲ(ရ်) အမြန် ဖန်တီးခြင်းနည်းလမ်း (အင်္ဂလိပ်: Rapid Application Development)[၈][၉]၊ ၁၉၉၄ ခုနှစ်တွင် ပေါင်းစည်း နည်းလမ်း (အင်္ဂလိပ်: Unified process) နှင့် ပြောင်းလဲသော စနစ်များကို ဖန်တီးခြင်းနည်းလမ်း (အင်္ဂလိပ်: Dynamic systems development method)၊ ၁၉၉၅ တွင် စကရမ်း (အင်္ဂလိပ်: Scrum) ၊ ၁၉၉၆ တွင် ခရစ္စတယ် ကလီးယား (အင်္ဂလိပ်: Crystal clear) နှင့် အစွမ်းရောက် ဆော့ဝဲ(ရ်)ဖန်တီးခြင်းနည်းလမ်း (အင်္ဂလိပ်: Extreme programming) နှင့် ၁၉၉၇ ခုနှစ်တွင် စွမ်းဆောင်နိုင်ချက် တွန်းအားပေး ဖန်တီးခြင်းနည်းလမ်း (အင်္ဂလိပ်: Feature-driven development) တို့ ဖြစ်သည်။ ထိုနည်းလမ်းများ သည် အဂျိုင်း(လ်) ကြေညာစာတန်း မထုတ်ပြန်မီ အချိန်က စတင်ခဲ့သော်လည်း ယခုအခါတွင် ထိုနည်းလမ်းများအားလုံးကို အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ် ဖန်တီးနည်းလမ်းများ ဟု ရည်ညွန်းလေ့ရှိသည်။[၅] ထိုနည်းလမ်းများ ပေါ်ထွန်းလာသည့် ၁၉၉၀ ခုနှစ်များတွင် ကုန်ထုတ်လုပ်မှု[၁၀]၊ လေကြောင်း နှင့် အာကာသကဏ္ဍ[၁၁] များ တွင်လည်း အလားတူ အပြောင်းအလဲများ ဖြစ်ပေါ်နေခဲ့သည်။

၂၀ဝ၁ ခုနှစ်တွင် ဆော့ဖ်ဝဲရ် ဖန်တီးသူ ၁၇ ယောက် သည် အမေရိကန် ပြည်ထောင်စု၊ ယူတားပြည်နယ်၊ စနိုးဘာဒ် (အင်္ဂလိပ်: Snowbird) ရှိ အပန်းဖြေဟိုတယ် တစ်ခုတွင် သွက်လက်ပေါ့ပါးသော ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း နည်းလမ်းများ အကြောင်းကို ဆွေးနွေးရန် တွေ့ဆုံခဲ့ကြသည်။ တွေ့ဆုံဆွေးနွေးခဲ့ကြသူများတွင် ကင့် ဘက်ခ် (အင်္ဂလိပ်: Kent Beck) ၊ ဝါ့ဒ် ကန်နင်ဟမ် (အင်္ဂလိပ်: Ward Cunningham) ၊ ဒေ့ဖ် သောမတ်စ် (အင်္ဂလိပ်: Dave Thomas) ၊ ဂျက်ဖ် ဆတ်သာလန့်ဒ် (အင်္ဂလိပ်: Jeff Sutherland) ၊ ကန် ရွှာဘား (အင်္ဂလိပ်: Ken Schwaber) ၊ ဂျင်မ် ဟိုင်းစမစ်သ် (အင်္ဂလိပ်: Jim Highsmith) ၊ အလစ်စ်တဲရ် ကော့ခ်ဘန်း (အင်္ဂလိပ်: Alistair Cockburn) နှင့် ရောဘတ် စီ မာတင် (အင်္ဂလိပ်: Robert C. Martin) တို့ ပါဝင်ခဲ့ကြသည်။ ထိုသူများအားလုံး စုပေါင်း၍ အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ် ဖန်တီးမှု ကြေညာစာတန်း (အင်္ဂလိပ်: Manifesto for Agile Software Development) ကိုရေးသားထုတ်ပြန်ခဲ့ကြသည်။[၃]

၂၀ဝ၅ ခုနှစ်တွင် ကော့ခ်ဘန်း နှင့် ဟိုင်းစမစ်သ်တို့ ခေါင်းဆောင်သောအဖွဲ့မှ ဆော့ဖ်ဝဲရ်စီမံကိန်း ခန့်ခွဲမှုကို ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း နည်းလမ်းများနှင့်အညီ လမ်းညွှန်မှုပြုနိုင်ရန် အတွက် စီမံကိန်း ခန့်ခွဲမှု နိယာမများ နောက်ဆက်တွဲ အဖြစ် စီမံကိန်း ခန့်ခွဲမှု လွတ်လပ်ရေးကြေညာစာတန်း(အင်္ဂလိပ်: PM Declaration of Interdependence)[၁၂] ကို ရေးသားထုတ်ဝေခဲ့ကြသည်။

၂၀ဝ၉ ခုနှစ်တွင် မာတင် ခေါင်းဆောင်သောအဖွဲ့မှ ဆော့ဖ်ဝဲရ်ဖန်တီးခြင်း နိယာမများကို တိုးချဲ့၍ အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်းကို ပညာရှင်ကျင့်ဝတ် နှင့် သမားစဉ်အတိုင်း လမ်းညွှန်မှုပြုနိုင်ရန်အတွက် ဆော့ဖ်ဝဲရ် လက်မှုပညာ ကြေညာစာတန်း (အင်္ဂလိပ်: Software Craftsmanship Manifesto) ကို ရေးသားထုတ်ဝေခဲ့ကြသည်။

၂၀၁၁ ခုနှစ်တွင် အဂျိုင်းလ်မဟာမိတ် (အင်္ဂလိပ်: Agile Alliance) မှ ပေါ့ပါး သွက်လက်သော လက်တွေ့နည်းလမ်းများ၊ ဝေါဟာရများ၊ အခြေခံများ နှင့် ထိုအချက်များကို ကမ္ဘာတဝှမ်းမှ ပေါ့ပါးသွက်လက်နည်း ကျင့်သုံးသူများ၏ အဓိပ္ပာယ် ဖွင့်ဆိုချက်များနှင့်တကွ အတွေ့အကြုံလမ်းညွှန်များကို အဆင့်ဆင့် ပြောင်းလဲထွက်ပေါ်လာမည့် ပွင့်လင်းရင်းမြစ် (အင်္ဂလိပ်: Open-source) လက်စွဲအဖြစ် အဂျိုင်းလ် လက်တွေ့လမ်းညွှန် (အင်္ဂလိပ်: Guide to Agile Practices) ကိုဖန်တီးခဲ့သည်။ ထိုလမ်းညွှန်ကို ၂၀၁၆ ခုနှစ်တွင် အဂျိုင်းလ် ဝေါဟာရများ (အင်္ဂလိပ်: Agile Glossary)ဟုအမည် ပြောင်းခဲ့သည်။[၁၃]

အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ်ဖန်တီးမှု အတွက် ကြေညာစာတန်း ပြင်ဆင်ရန်

အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ်ဖန်တီးမှု တန်ဖိုးထားချက်များ ပြင်ဆင်ရန်

အဂျိုင်း(လ်) ကြေညာစာတန်းကို ထောက်ခံ လက်မှတ်ရေးထိုးသူ တစ်ဆယ့်ခုနှစ်ဦးသည် သူတို့၏ ဆော့ဖ်ဝဲရ်ကို ကိုယ်တိုင်ဖန်တီးခြင်း နှင့် အခြားသူများအား ဆော့ဖ်ဝဲရ် ဖန်တီးခြင်းတွင် ကူညီအားပေးခဲ့သော စုပေါင်း အတွေ့အကြုံများ ကို အခြေခံ၍ သူတို့၏ တန်ဖိုးထားပုံကို - [၃]

  • လူပုဂ္ဂိုလ်များနှင့် အပြန်အလှန်ဆက်ဆံမှုများ ကို နည်းစဉ်များနှင့် အထောက်အကူကိရိယာများထက် ပို၍
  • အလုပ်လုပ်သော ဆော့(ဖ်)ဝဲ(ရ်) ကို စာရွက်စာတမ်း ပြည့်စုံခြင်းထက် ပို၍
  • အသုံးပြုသူနှင့် လက်တွဲဆောင်ရွက်ခြင်း ကို စာချုပ် ညှိနှိုင်းခြင်းထက် ပို၍
  • အပြောင်းအလဲနှင့် လိုက်လျောညီထွေ ဆောင်ရွက်ခြင်း ကို စီမံကိန်းအတိုင်း လုပ်ဆောင်ခြင်းထက် ပို၍

ဟု ထုတ်ပြန်ကြေညာ ခဲ့ကြသည်။ အချုပ်သဘောမှာ လက်ဝဲဘက်တွင် ဖော်ပြထားသော အချက်များသည် လက်ယာဘက်တွင်ရှိသော အချက်များထက် ပို၍တန်ဖိုးရှိသည်ဟု ဆိုလိုခြင်းဖြစ်သည်။

စကော့တ် အမ်ဘလာ ၏ ဖွင့်ဆိုရှင်းပြချက်မှာ -[၁၄]

  • အထောက်အကူကိရိယာများနှင့် နည်းစဉ်များသည် အရေးကြီးသည်။ သို့သော် ပို၍အရေးကြီးသောအချက်မှာ အရည်အချင်းရှိသောပုဂ္ဂိုလ်များ ထိရောက်ပေါက်မြောက်စွာ အတူတကွ အလုပ်လုပ်ကိုင်လျက် ရှိခြင်း ဖြစ်သည်။
  • ပြည့်စုံကောင်းမွန်သော စာရွက်စာတန်းသည် ဆော့ဖ်ဝဲရ်ကို တည်ဆောက်ထားပုံ နှင့် မည်ကဲ့သို့အသုံးပြုရမည်ကို လူအများနားလည်အောင် ရှင်းလင်းသင်ပြရာတွင် အထောက်အကူပြုသည်။ သို့သော် ဆော့ဖ်ဝဲရ်ဖန်တီးမှု၏ အဓိကအချက်မှာ ဆော့ဖ်ဝဲရ်ကို ဖန်တီးရန်ဖြစ်သည်။ စာရွက်စာတန်း ရေးရန်မဟုတ်။
  • စာချုပ်သည် အရေးကြီးသည်။ သို့သော် ဆော့ဖ်ဝဲရ်ကို အသုံးပြုမည့်သူများနှင့် အနီးကပ်အလုပ်လုပ်၍ သူတို့၏လိုအပ်ချက်ကို ရှာဖွေခြင်းကို စာချုပ်တစ်စောင်နှင့် အစားမထိုးနိုင်ပါ။
  • စီမံကိန်းတစ်ခုအတွက် အစီအစဉ်သည် အရေးကြီးသည်။ သို့သော် ထိုအစီအစဉ်သည် နည်းပညာနှင့် ပတ်ဝန်းကျင်အပြောင်းအလဲ၊ စီမံကိန်း အကျိုးလိုလားသူများ၏ ဦးစားပေးအဆင့် အပြောင်းအလဲ၊ လူအများ၏ ပြဿနာကို နားလည်ပုံနှင့် ဖြေရှင်းနည်း အပြောင်းအလဲတို့ကို နေရာမပေးနိုင်လောက်အောင် တင်းကြပ်၍ ပုံသေကားချမရှိစေရပါ။

အဂျိုင်း(လ်) ဆော့ဖ်ဝဲရ်ဖန်တီးမှု ဥပဒေသများ ပြင်ဆင်ရန်

အဂျိုင်း(လ်)ကြေညာစာတန်းသည် အဂျိုင်း(လ်)ဥပဒေသ တစ်ဆယ့်နှစ်ချက် ပေါ်တွင် အခြေခံသည်။[၁၅]

  • တန်ဖိုးရှိသော ဆော့ဖ်ဝဲကို ဆောလျင်စွာ နှင့် အဆက်မပြတ် ပေးအပ်ခြင်းဖြင့် အသုံးပြုသူများ စိတ်ကြေနပ်မှုရသည်။
  • ဖန်တီးမှုအတွက် အချိန်နှောင်းနေသည့် တိုင်အောင် လိုအပ်ချက်များ ပြောင်းလဲခြင်းကို လက်ခံကြိုဆိုသည်။
  • အလုပ်လုပ်သော ဆော့ဖ်ဝဲကို မကြာခဏပေးအပ်သည်။ လပေါင်းများစွာ အစား ရက်သတ္တပတ် အနည်းငယ်မျှသာ စောင့်ရသည်။
  • လုပ်ငန်းကျွမ်းကျင်သူများနှင့် ဖန်တီးသူများ နေ့စဉ် နီးကပ်စွာ ပူးတွဲ အလုပ်လုပ် ကိုင်ကြသည်။
  • စိတ်ချရသော စိတ်အားတက်ကြွ သူများကို ဗဟိုပြု၍ စီမံကိန်းများကို ရေးဆွဲ တည်ဆောက်သည်။
  • မျက်နှာချင်းဆိုင် တွေ့ဆုံ၍ စကားပြောရခြင်းသည် အကောင်းဆုံး ဆက်သွယ်နည်းဖြစ်သည်။ နေရာတစ်ခုထဲတွင် အတူတူ အလုပ်လုပ်ကြခြင်းကို ဆိုလိုသည်။
  • အလုပ်ပေါက်မြောက်မှု၏ အဓိက အတိုင်းအတာ သည် အလုပ်လုပ်သော ဆော့ဖ်ဝဲ ဖြစ်သည်။
  • ရေရှည်အလုပ်ဖြစ်သော ဖန်တီးမှုဆိုသည်မှာ အလုပ်လုပ်မှုနှုန်းကို တသမတ်တည်း ထိန်းထားနိုင်ခြင်း ဖြစ်သည်။
  • နည်းပညာသာလွန်မှုနှင့် ဒီဇိုင်းကောင်းမွန်မှုကို အစဉ်အမြဲ ဂရုပြုသည်။
  • ရိုးရှင်းမှု သို့မဟုတ် အလုပ်မရှုပ်အောင် ရှင်းနိုင်သော ပညာသည် မရှိမဖြစ် အရေးပါသည်။
  • အကောင်းဆုံး တည်ဆောက်ပုံစံများ၊ လိုအပ်သည့်အချက်များနှင့် ဒီဇိုင်းများသည် မိမိတို့ကိုယ်တိုင် စီမံဖွဲ့စည်းသော အဖွဲ့များမှ ပေါ်ထွက်သည်။
  • အလုပ် ပိုမိုထိရောက်စေရန် မည်ကဲ့သို့ လုပ်ဆောင်မည်ကို အဖွဲ့သည် အချိန်တခုရောက်တိုင်း ပုံမှန်ပြန်လှန်၍ သုံးသပ်သည်။ ထို့နောက် သုံးသပ်ချက်နှင့်အညီ ပြုပြင်သည်။

ကိုးကား ပြင်ဆင်ရန်

  1. Collier၊ Ken W. (2011)။ Agile Analytics: A Value-Driven Approach to Business Intelligence and Data Warehousing။ Pearson Education။ pp. 121 ff။ ISBN 9780321669544What is a self-organizing team?
  2. What is Agile Software Development?။ Agile Alliance (8 June 2013)။ 4 April 2015 တွင် ပြန်စစ်ပြီး။
  3. ၃.၀ ၃.၁ ၃.၂ Kent Beck (2001)။ Manifesto for Agile Software Development။ Agile Alliance။ 14 June 2010 တွင် ပြန်စစ်ပြီး။
  4. Which is better – Kanban or Scrum?
  5. ၅.၀ ၅.၁ Larman၊ Craig (2004)။ Agile and Iterative Development: A Manager's Guide။ Addison-Wesley။ p. 27ISBN 978-0-13-111155-4
  6. "Empirical studies of agile software development: A systematic review" (in en) (1 August 2008). Information and Software Technology 50 (9–10): 833–859. doi:10.1016/j.infsof.2008.01.006. ISSN 0950-5849. 
  7. Lee (2010). "Toward Agile: An Integrated Analysis of Quantitative and Qualitative Field Data on Software Development Agility". MIS Quarterly 34 (1): 87–114. doi:10.2307/20721416. 
  8. Martin, James (1991)။ Rapid Application Development။ Macmillan။ ISBN 978-0-02-376775-3
  9. Kerr, James M.; Hunter, Richard (1993)။ Inside RAD: How to Build a Fully Functional System in 90 Days or Less။ McGraw-Hill။ p. 3။ ISBN 978-0-07-034223-1
  10. Iacocca Institute (1991). "21st Century Manufacturing Enterprise Strategy: An Industry Led View". Iacocca Institute, Lehigh University, Bethlehem, PA.
  11. Presley, A., J. Mills and D. Liles (1995). "Agile Aerospace Manufacturing". Nepcon East 1995, Boston.
  12. Anderson၊ David (2005)။ Declaration of Interdependence။ 27 January 2018 တွင် မူရင်းအား မော်ကွန်းတင်ပြီး။ 29 December 2020 တွင် ပြန်စစ်ပြီး။
  13. McDonald၊ Kent။ "How You Can Help Agile Alliance Help You"၊ Agile Alliance Blog၊ 1 November 2016။ 
  14. Examining the Agile Manifesto။ Ambysoft Inc.။ 6 April 2011 တွင် ပြန်စစ်ပြီး။
  15. Kent Beck (2001)။ Principles behind the Agile Manifesto။ Agile Alliance။ 14 June 2010 တွင် မူရင်းအား မော်ကွန်းတင်ပြီး။ 6 June 2010 တွင် ပြန်စစ်ပြီး။