Аливаа программ хангамжийн төслүүд тодорхой дараалал бүхий процессын дагуу явагддаг. Энэ дараалал нь хөгжүүлэх, авч явах, солих, сайжруулах алхмуудыг агуулсан байна.
Тодорхой дарааллын дагуу хөгжүүлэх нь программ хангамж хөгжүүлэх процессын чанарыг сайжруулахад чиглэдэг.

ҮЕ ШАТУУД
Төлөвлөх, ерөнхий нөхцөл тодорхойлох
Программ хөгжүүлэлтийн шаардлага тодорхойлох нь хамгийн чухал бөгөөд суурь үе шат байдаг. Ихэвчлэн хөгжүүлэлтийн багийн гишүүд Захиалагчийн мэдээлэлд үндэслэн гүйцэтгэх боловч шаардлагатай үед борлуулалтын, маркетингийн эсвэл тухайн салбарт мэргэшсэн мэргэжилтнүүдийг оролцуулах тохиолдол гарч болно.
Цуглуулсан мэдээлэлд үндэслэн ТЭЗ боловсруулна. Санхүүгийн, үйл ажиллагааны, технологийн тооцоонууд хийх ба чанарын шаардлагууд, үүсч болох эрсдэлүүдийг давхар тооцсон байна.
ТЭЗҮ-ийн зорилго нь төслийг боломжит хувилбараар, бизнест эрсдэл бага нөлөөлөхүйц байдлаар хэрэгжүүлэхэд туслах юм.

Системийн шинжилгээ
Ерөнхий нөхцөл тодорхойлсоны дараа бүтээгдэхүүний болон дагалдах бичиг баримтын дэлгэрэнгүй шаардлага бүхий ажлын даалгавар тодорхойлж Захиалагчаар батлуулна. Шаардлага нь мөн л тодорхой агуулгуудыг багтаасан “Программ хангамжийн ажлын даалгавар” болж гарах бөгөөд хөгжүүлэх бүтээгдэхүүний бүх шаардлагыг багтаасан байна.
Шинжилгээ нь дизайнер болон хөгжүүлэгчдэд хэрэглэгчийн өмнөөс бодож төсөөлөх шаардлагагүйгээр захиалагчийн хэрэгцээ, шаардлагыг ойлгуулах зориулалттай.

Системийн дизайн
Өмнөх шат болох системийн шинжилгээ нь бүтээгдэхүүнд хамгийн тохиромжтой архитектурыг тодорхойлдог. Харин системийн дизайны үе шатанд төслийг хэрэгжүүлэхэд шаардлагатай хэдэн хэдэн дизайныг санал болгож баримтжуулах ба төслийн бүх оролцогч талууд хамтран хэлэлцэж хамгийн сайн хувилбарыг сонгоно.
Дизайны бичиг баримтад архитектур, техник хангамж, программ хангамж, лиценз зэргээс эхлээд программын харагдах дизайн, тайлан болон бусад гаралтууд гэх мэт бүх л мэдээлэл агуулагддаг.

Хөгжүүлэлт
Энэ шатанд жинхэнэ хөгжүүлэлт кодчлол хийгдэнэ. Системийн шинжилгээ, дизайны бичиг баримтын дагуу бүх хөгжүүлэлт явагдах ёстой. Программын хэлийг мөн шинжилгээнд тохируулан сонгоно. Хөгжүүлэлтийн шат нь SCRUM эсвэл AGILE гэх мэт аргачлалуудад суурилж болно.

Туршилт
Уг нь бол программ хөгжүүлэлтийн бүх үе шат дотроо дэд туршилтын хэсэгтэй байдаг. Харин хөгжүүлэлтийн дараах туршилтын шатанд программчлалын явцад гарсан элдэв алдаа ( bug) эсвэл чанарын доголдлыг олж засах ёстой. Чанарын шаардлага нь Системийн төлөвлөлтийн шатанд тодорхойлогдсон байна.

Хүлээн авах, суурилуулах
Ихэвчлэн программ хангамжийн бета хувилбар гарсны дараа суурилуулахад бэлэн болсон байдаг. Шаардлагатай бол UAT буюу User acceptance test хийх зорилгоор өмнөх шатуудад суурилуулалт хийж болно.
Хэрэглэгчийн санал хүсэлтэд үндэслэн тухайн программ хангамжийн бүтээгдэхүүн шууд эсвэл тодорхой сайжруулалтууд хийгдэж болдог. Бүтээгдэхүүн хэрэглэгчдэд хүрч эхэлсэн бол support, maintenance буюу арчилгааны төлөвт шилжинэ.

Аюулгүй байдал
Өнөөг хүртэл ихэнх программ хангамж хөгжүүлэлтүүд мэдээллийн аюулгүй байдлын зохих үнэлгээ, алхмуудыг орхигдуулсанаас болж эрсдэлд орж байна.
Цахим гэмт хэрэг хэвийн үзэгдэл болсон энэ цаг үед программ хангамжуудад шаардлагатай аюулгүй байдлын үнэлгээ хийгдэж, илэрсэн алдаа, цоорхойг хаасны дараа нэвтрүүлэх хэрэгтэй.

Эх сурвалж:
https://medium.com/@livexsa/what-is-the-software-development-life-cycle-d11d93e28e94