Modulli dasturlash. Modullarni yaratish dasturni bajarish tartibini, uni sozlash, testdan o‘tkazish va takomillashtirishni ancha osonlashtiradi. Bu esa dastur yozishni boshidanok dasturlash vaqtidan va mashina vaqtidan yutishga olib keladi. Bu esa dasturchi uchun juda muxim, chunki dasturni boshlangich vaqtidanok mashina vaqtidan dasturning bajarilishi jarayoniga nisbatan ancha tayorlanadi. Dasturni loyixalash, sozlash, testdan o‘tkazishni bir - biriga bog‘liq bulmagan xolda mustakil bajarish mumkin. Natijada dasturchi mashina vaqtidan yutadi. Dasturdan foydalanishdagi kamchiliklardan biri uning xajmi katta bo‘lishiga karatiladi. Agar dasturni chiqarish nuktaga quyib, dasturni biron - bir joyidan buyruq berilsa, u buyruqni samarali bajaradi.
Dasturni ketma-ketlik bilan bajarishda aloka buyrugi uzib quyiladi va buning okibatida xotira va vaqt meyorlanadi.
Modulni dasturlash - bu model deb ataluvchi mantiqiy qismlarga ajratish jarayonidir.
Bu kismlar aloxida ketma - ket loyixalanadi, chunki katta masala bir necha kichik masalalarga bulinsa uni xal etish yoki yechish ancha yengillashadi.
Agar masalani yuqoridan quyigacha loyixalansa, unda u albatta taxminiy modullar uchun bir necha kichik vazifalarga bo‘linadi.
1). Modulga kullanilgan kontekstga bog‘liq bulmagan, xolda,to‘g‘ri va aniq dasturiy modulga erishish kerak.
2). Oldindan modulning ichki ishi to‘g‘risida xech qanday ma’lumotga ega bulmagan xolda modul yordamida katta dasturni formalashga intilish lozim.
Tadbikiy dasturlash va standart jarayonlar omadli modullarga misoldir.
Buni xam yuqoridan pastga qarab bajariladi. Fakt unda vazifalarni boshqarish tilini biladi.
Odatda loyixa "skletini" ni bir kishi bajarish mumkin. Bu esa loyixani butunligini ta’minlaydi va dasturni tushunish oson bo‘ladi.
Modulni printsipi kullanilaetganligi sababli asosiy dastur kiska bo‘lish va kumaklashuvchi kichik dasturlarni yaratuvchi va modullovchi kichik va modullarni chiqaruvchi bo‘lishi kerak.
Kumaklashuvchi dastur xaqiqiy dastur yaralgunga qadar urnini bosuvchi kiska buyruklar ketma - ketlikdan iborat.
Kumaklashuvchi dastur 2 ga bo‘linadi.
Soxta va almashinuvchan modullar.
Soxta modul xech qanday ish bajarmaydi, u faqat chaqiruvchi
modullarga boshqaruvni kaytarib beradi.
Vaqtincha almashinuvchi modulni murakkab modul yaratilgunga qadar oddiy kayta ishlashni bajaradi.
Almashinuvchi modul natijani bermagunga qadar chiqaruvchi modul ishini davom ettirmasiligi kerak. Kumaklashuvchi dasturlar dasturning boshqa buginlarini (segmentga) testdan o‘tkazish uchun xam xizmat qiladi.
Bosh dasturni 2 ta muvaffakiyatli loyixalar ishlab chiqarilgandan so‘ng tarkibiy dasturlarning xamma usullari birlashtirilib BDB (bosh dastur birgadasi) tuziladi.
1. Texnik boshqarishda loyixani texnik espexiplarni nazorat qilish.
2. Kul ostidagilarni boshqarishda odamlarni xisobotligini va tartibligini nazorat qilish.
3. Shartnoma shartlarini bajarishda buyuruvchi bilan muomalani sozlab turish.
Loyixani kullab - kuvvatlovchi biblioteka (BPR) sistemaga birlashtirilgan va testdan utkazilgan brigada tarkibiy dasturlarini foydalanish uchun xamda saklash uchun xizmat qiladi.
Ko‘p masalalarda tez - tez kullanilib turadigan modullar,standart programmalar bir xil qoida asosida tuziladi(rasmiylashti- riladi), ya’ni ularga murojaat qilish, foydalanish va ulardan natija olish bir xil qoida asosida tashkil etiladi. Bu esa programma tuzishda ulardan osonlik bilan foydalanish imkonini beradi.
Modullardan ikki xil usulda: asosiy programmaning zarur bo‘lgan kismiga modullarni joylashtirish yo‘li bilan: xar bir mashinaning o‘ziga xos komandiri mavjud bo‘lib, bu komandalar yordamida modullarga murojaat qilish yo‘li bilan foydalanish mumkin. Ikkinchi usul ko‘proq kullaniladi. Chunki bu xolda operativ xotirada modullar kutubxona shaklida joylashadi va bu modullardan istalgan vaqtda foydalanish mumkin. Shu sababli modullarni ishdan ozod qilishda uch xil adres kullaniladi:
1. Absolyut adreslarning kiymatlari modullarning tutgan o‘rniga qarab uzgarmaydi;
2. Ichki adreslar modullarning joylashgan yeriga bog‘liq xolda
xisoblanadi;
3. Tashki adreslar boshqa modullarning tutgan o‘rniga qarabuzgaradi;
Absolyut adreslar uzgarmas ish yacheykalari yoki mashina registrlari, ba’zi bir maxsus mashina komandalarining adres kismlaridan iborat bo‘ladi. Masalan, surish komandasi xamda komanda shaklida yozilgan uzgarmas sonlarning adres kismlari.
Ichki adreslar boshqa modullarga o‘tish komandalari va standart programmaning uzida uzgarmaslar yozilgan joyda uchrashi mumkin.
Tashki adreslar boshqa modullarga o‘tish komandalarida uchraydi.
Mashina xotirasida doim saklanadigan modullar tuplami modullar kutubxonasini tashkil etadi. Kutubxona tarkibiga bir necha unlab modullardan bir necha yuzlab modullargacha kiritish mumkin. Umuman mashinada bajariladigan ishlarning soni programma shaklida yozib yigilgan bo‘ladi. Bu ishlarning ba’zi birlari mashina zimmasiga yuklansa, mashina qurilmasini murakkablashtirib yuboradi. Shuning uchun kutubxona tuzish maqsadga muvofikdir.
Kutubxona operativ xotiraga chaqirish va ularni xoxlagan shaklda joylashtirish uchun ikki xil: interpretatsiya va komplyatsiya usullari mavjud. Kompilyatsiya usuli kullanilganda modullarning chaqirish va joylashtirish uchun kompilyatsiya qiluvchi sistema, interpretatsiya usuli kullanilganda esa interpretatsiya qiluvchi sistema ishlaydi.
Ikkala usulda xam standart programmalar kutubxonasiga, kutubxona katalogiga va boshqaruvchi programmaga murojat kilinadi.