Гол ялгаа – SDLC ба Agile арга зүй
SDLC болон Agile Methodology хоёрын гол ялгаа нь SDLC нь өндөр чанартай програм хангамжийг зохион бүтээх, хөгжүүлэхийн тулд програм хангамж боловсруулах ажлыг тодорхой үе шатуудад хуваах үйл явц бөгөөд Agile Methodology нь SDLC загвар юм. Agile Methodology нь процессын дасан зохицох чадвар болон ажиллаж буй програм хангамжийн бүтээгдэхүүнийг түргэн шуурхай хүргэх замаар хэрэглэгчийн сэтгэл ханамжид төвлөрдөг давталтын болон нэмэгдэл процессын загваруудын нэгдэл юм.
SDLC гэж юу вэ?
SDLC нь Software Development Life Cycle гэсэн үгийн товчлол юм. Програм хангамж бүтээхдээ тодорхой үе шатуудыг дагаж мөрдөх шаардлагатай. Програм хангамж хөгжүүлэлтийн байгууллага бүр програм хангамжийн төслийн SDLC-ийг дагаж мөрддөг. SDLC-д янз бүрийн үе шатууд байдаг. Төлөвлөлтийн үе шатанд асуудлын талаархи үндсэн ойлголтыг тодорхойлдог. Төсөлтэй холбоотой эрсдэл, техникийн хүндрэл, нөөц, хөгжлийн хүчин чармайлтыг мөн энэ үе шатанд илрүүлсэн.
Шаардлагатай үе шатанд эхний ажил бол шаардлагыг цуглуулж, дүн шинжилгээ хийх явдал юм. Хэрэглэгчийн санал хүсэлтийг олж авах, ахлах менежерүүдтэй уулзаж, борлуулалтын талаар дэлгэрэнгүй мэдээлэл авах, маркетинг нь шаардлага цуглуулах явцад хийгддэг. Цуглуулсан шаардлагыг зохих ёсоор баримтжуулсан байх ёстой. Энэхүү баримт бичгийг Програм хангамжийн шаардлагын тодорхойлолт (SRS) гэж нэрлэдэг. Энэ нь төслийн амьдралын мөчлөгийн туршид боловсруулж, боловсруулах бүтээгдэхүүний шаардлагыг агуулдаг.
Програм хангамжийн дизайныг SRS-ээс авсан. Бүтээгдэхүүний архитектурт зориулсан нэгээс илүү дизайны аргыг санал болгож, дизайны баримт бичгийн тодорхойлолтод (DDS) баримтжуулсан болно. Энэ үе шатанд бүх архитектурын модулиуд, гадаад модулиудтай өгөгдлийн урсгалын дүрслэл гэх мэт дизайн хийгдсэн.
Хэрэгжүүлэхдээ тохирох програмчлалын хэлийг ашиглан төслийг хэрэгжүүлдэг. Хөтөлбөрийг бичих, туршихын тулд хөрвүүлэгч, орчуулагч, код засварлагч, IDE, дибаггер зэрэг програмчлалын янз бүрийн хэрэгслийг ашиглаж болно. Програмчлалын хэлийг програмын дагуу сонгож болно. Боловсруулсан модулийн нэгжийн туршилтыг энэ үе шатанд хийж байна.
Туршилт гэдэг нь програм хангамжийн програм санаснаар ажиллаж байгаа эсэхийг шалгах, баталгаажуулах үйл явц юм. Энэ нь эцсийн төсөл нь хүлээгдэж буй шаардлагад хүрсэн эсэхийг олж мэдэхэд ашиглагддаг. Туршилт нь интеграцийн тест, системийн туршилт гэх мэт орно. Интеграцийн тест нь хоёр модулийн хооронд туршилт хийх явдал юм. Системийн туршилт нь төслийн бүрэн туршилт юм.
Зураг 01: SDLC
Эцэст нь бүтээгдэхүүн зах зээлд гарлаа. Хэрэглэгчийн санал хүсэлтээс хамааран бүтээгдэхүүнд шинэ боломжуудыг нэмж болно. Засвар үйлчилгээ, шаардлагатай үйлчилгээг одоо байгаа хэрэглэгчдэд үзүүлдэг. Эдгээр нь SDLC-ийн үндсэн үе шатууд юм.
Agile арга зүй гэж юу вэ?
Програм хангамж боловсруулах явцад програм хангамжийн хөгжлийн амьдралын мөчлөгийн загварыг баримтлах ёстой. Эдгээр загваруудыг Програм хангамж хөгжүүлэх үйл явцын загвар гэж нэрлэдэг. Програм хангамжийн төслийг амжилттай дуусгахын тулд процесс бүр өөрийн төрлөөс хамааран тодорхой тооны алхмуудыг дагаж мөрддөг. SDLC загваруудын зарим жишээ нь хүрхрээ загвар, давталт загвар, спираль загвар, v загвар, прототип загвар, Шуурхай програм хөгжүүлэлт гэх мэт.
Agile арга зүй нь мөн SDLC загвар юм. Энэ нь давталтын болон нэмэгдэл процессын загваруудын хослол юм. Энэхүү загвар нь шаардлагын өөрчлөлтөд дасан зохицоход тусалдаг. Энэ загварт төслийг хэд хэдэн модулиудад хуваадаг. Төслийг A, B, C гэсэн гурван модульд хуваасан гэж бодъё. Эхний модуль А нь төлөвлөлт, шаардлагыг цуглуулах, дүн шинжилгээ хийх, дизайн хийх, хэрэгжүүлэх, турших замаар дамждаг. Энэ нь дууссаны дараа B модуль эхэлнэ. Энэ нь мөн модуль А-тай ижил үе шат дамждаг. В дуусах үед модуль С эхэлнэ. Давталтын төгсгөлд ажиллах модулийг хэрэглэгчдэд өгөх боломжтой.
Agile-д олон давуу тал бий. Уламжлалт хүрхрээ загварт шаардлагыг тодорхойлсны дараа тэдгээрийг өөрчлөх боломжгүй. Гэхдээ Agile-д шаардлагыг өөрчилж болно. Хөгжүүлэгч болон үйлчлүүлэгчийн хооронд илүү их хамтын ажиллагаа бий. Энэ нь багийн ажлыг сайжруулж, төслийг удирдахад хялбар болгодог. Ерөнхийдөө Agile бол уян хатан байдал, дасан зохицох чадвараараа алдартай SDLC загвар юм. Энэ нь нарийн төвөгтэй төсөлд тохиромжгүй байж магадгүй юм. Бусад сул тал нь үйлчлүүлэгч шаардлагаа байнга өөрчилж чаддаг бөгөөд төслийг удирдан чиглүүлэх чадвартай удирдагчтай байх шаардлагатай.
SDLC болон Agile аргачлалын хооронд ямар холбоотой вэ?
Agile арга зүй нь SDLC загвар юм
SDLC болон Agile аргачлалын хооронд ямар ялгаа байдаг вэ?
SDLC ба Agile арга зүй |
|
SDLC нь дизайн, бүтээгдэхүүний удирдлага, төслийн менежментийг сайжруулахын тулд програм хангамж хөгжүүлэх ажлыг тодорхой үе шатуудад хуваах үйл явц юм. | Agile Methodology нь програм хангамж хөгжүүлэх арга бөгөөд үүнд тавигдах шаардлага, шийдлүүд нь бие даан зохион байгуулалттай, харилцан ажиллагаатай баг болон тэдгээрийн эцсийн хэрэглэгчдийн хамтын хүчин чармайлтаар өөрчлөгддөг. |
Хэрэглээ | |
SDLC нь програм хангамж боловсруулах ажлыг зохион байгуулахад ашиглагддаг. | Agile нь уян хатан байдлыг сайжруулах, төслийн шаардлагын өөрчлөлтөд дасан зохицоход ашиглагддаг. |
Хураангуй – SDLC ба Agile арга зүй
Энэ нийтлэлд SDLC болон Agile хоёрын ялгааг авч үзсэн. SDLC болон Agile Methodology хоёрын ялгаа нь SDLC нь өндөр чанартай програм хангамжийг зохион бүтээх, хөгжүүлэхийн тулд програм хангамж боловсруулах ажлыг тодорхой үе шатанд хуваах үйл явц бөгөөд Agile Methodology нь SDLC загвар юм.