Pages

Showing posts with label IT. Show all posts
Showing posts with label IT. Show all posts

2009-08-13

Нэр - Утга санаагаа илэрхийлэх нь

Аливаа нэг асуудлыг нэрлэх нь тухайн асуудлын утга санаатай адил чухал юм. Буруу нэрлэгдсэн асуудал бүр араасаа тайлбар дагуулж ойлгох явцыг хүндрүүлнэ. SW хөгжүүлэхэд анхаарч байх чухал ойлголт бол хамгийн бага зардлаар хамгийн өндөр чанартай бүтээгдэхүүн хийх тухай юм гэж би өмнөх бичлэгтээ оруулсан билээ. Тэгвэл SW процест маш чухлаар нөлөөлдөг боловч бид төдийлөн анзаардаггүй, анзаарсанч ач холбогдол бага өгдөг нэг алдаа бол буруу нэрлэгээ юм. Буруу нэрлэгдсэн асуудал нь чанарт ч тэр, зардалд ч тэр сөрөг нөлөө үзүүлдэг. Жишээлбэл системийн шинжилгээ хийхдээ оновчтой бус нэрлэгдсэн нэг асуудал дараа дараагийн үе шат болгонд нэмэлт тайлбар шаардаж цаг хүч барах болно. Тайлбар шаардалгүй цааш үргэлжилбэл ноцтой алдаанд ч хүрч бүтээгдэхүүний чанар мууддаг, гүйцэтгэлийн хугацаа сунадаг.
Оновчтой бус нэрлэгээ гэж бас нэг ойлголт байна, харахад нэр нь утгаа илэрхийлээд байгаа юм шиг хирнээ эргэлзээтэй санагдахаар, тийм нэрлэгээ олон таардаг. Мөн л SW хөгжүүлэлтэнд муу нөлөө үзүүлнэ. Програм бичигч нь Class-даа, Method-ууддаа, Хувьсагчиддаа шууд л санаанд орсон нэг нэрээ өгөөд програмаа түргэхэн бичиж дуусгахад анхаардаг. Гэтэл бичсэн програм нь жижиг биш төслийн code бол алдааны шалгалтанд орно, хожим хойно нэмэлт өргөтгөл хийхэд өөр хүн уншина, гүйцэтгэлийг нь сайжруулах шаардлага гарна гэх мэтээр олон удаа, олон хүн дамжин уншигддаг зүйл гэдгийг мартдаг. Иймд ердөө л оновчтой бус нэрлэгдсэн нэрнээс болж олон хүндрэл учирдаг гэдгийг ойлгож, шууд л санаанд буусан нэг нэрээ өгөх бус уг асуудлаа сайтар ойлгох, хийх гэж буй зүйлээ том зургаар нь харахыг хичээх хэрэгтэй.

2009-07-02

Software as a process

Software хөгжүүлэлт гэдэг нь хэрэглэгчид (захиалагчид) яг хэрэгтэй програмыг/application-ыг нь бүтээж өгөх үйл явц (процес) юм. Энэ процесийн үндсэн зорилго бол аль болох өндөр чанартай бүтээгдэхүүнийг хамгийн боломжит бага зардалаар бүтээж хэрэглэгчдээ хүргэх явдал юм. (high quality and low cost) (Зардал гэдэгт хугацаа, ажиллах хүчний нөөц, мөнгөн зардал гэх мэт бүхий л зардлийн зүйлүүдийг хэлсэн.)

Software(SW) хөгжүүлэгчдийн талаасаа бас нэгэн чухал шалгуур зорилт бол ашиглаж байгаа тухайн процес нь жижиг том гэлтгүй бүх төсөлд хэрэглэхэд тохирч байх үзүүлэлт юм. Ингэдэгийн учир бол тухайн гүйцэтгэгч баг ажиллаж байсан процесоосоо болиод дахиад өөр шат дамжлага хэрэгжүүлэх нь хүндрэлтэй, өөрөөр хэлбэл өөр өөр процес руу шилжиж орох улмаар тэдгээрийг яв цав хэрэгжүүлэхэд тодорхой зардал гардаг.

Дээрх зорилтуудыг биелүүлэхэд хөгжүүлэгч багаас олон олон нөхцөл хангасан байхыг шаарддаг бөгөөд хамгийн чухлаас нь бичвэл:
1. Урьдчилан таамаглах (Prediction) – Янз бүрийн олон процесоос үүнийг сонгож ашиглавал ийм үр дүн гарна гэж таамаглах тухай ойлголт юм. Ижил төстэй үйлдэл хийхэд хоорондоо ойролцоо үр дүнгүүд гардаг бөгөөд тэдгээрт судалгаа хийж баримжаатай болдог болохоор энэ аргыг Статистик удирдлага ч гэдэг. Жишээ нь хэрэв 100 мөр код тутамд нэг алдаа илэрч байгаа нь тогтоогдвол ирээдүйн төсөлд зарцуулах тестийн үйл ажиллагааны зардал чирэгдлийг баримжаалах боломжтой болно гэх жишээний.
2. Шалгагдахуйц ба Арчлагдахуйц (Support Testability & Maintainability) – SW-ыг хөгжүүлэх зардалаас сүүлд нь арчлах зардал нь огт дутуугүй, бараг ч их гардаг нь судлагджээ. Тэгэхээр нийт зардалаа бага байлгая л гэвэл арчилгааны зүтгэл бага гарахаар бүтээгдэхүүн хийхэд зорих ёстой.
3. Доголдолыг эртхэн зогсоох, арилгах (Early Defect Removal & Prevention) – SW хөгжүүлэх бүтэн циклийн үе шатуудын алин дээр нь ч алдаа илэрч болно. Мөн үе болгонд учрах алдаануудыг арилгах зардал хоорондоо харилцан адилгүй. Жишээ нь хэрэглэгчээр хүлээн зөвшөөрүүлэх тестийн үед гарсан алдаа эргээд бүх үе шатууд дээр засвар хийх шаардлагатай болгодогоороо өндөр зардал нэмэлт хугацаа шаарддаг бол систем шинжилгээ хийх үед буруу шаардлага тодорхойлсон алдааг илрүүлэн засах нь хамаагүй бага зардалтай хурдан засаж болохуйц байдаг. Иймд алдааг аль болох эртхэн олж зогсоо, засварла.
4. Процес сайжруулалт – Жамаараа бол зардал, чанар хоёр шууд хамааралтай байдаг ө.х чанараа өсгөе гэхээр хугацаа их орох гээд байдаг эсвэл зардал өндөр гарах гээд байдаг бөгөөд тохирсон сайн процес олж сонгосоноор, эсвэл ашигладаг процесоо сайжруулсанаар зардалаа ч бууруулж чанараа ч өсгөж болдог. Компаний хувьд Процесоо сайжруулах, илүү сайныг нь олж сонгох гол нөхцөл бол туршлагаасаа л суралцах явдал бөгөөд төсөл бүр төгсөхдөө үүнд зориулсан тайлан гаргаж байх нь дараа дараагийн төслүүдэд эерэг нөлөө үзүүлдэг.

Aptech Worldwide Mongolia сургалтын төвийн Project professional course-ийн хичээлд суусан бөгөөд тэмдэглэлээсээ сийрүүлэн бичлээ.