1-мавзу. Дастурлаш парадигмаларини асосий тушунчалари


Download 0.66 Mb.
bet1/2
Sana23.11.2020
Hajmi0.66 Mb.
#150849
  1   2
Bog'liq
1-mavzu


1-мавзу. Дастурлаш парадигмаларини асосий тушунчалари.
Режа:

  1. Турли тиллар ва дастурлаш тизимлари.

  2. Дастурларнинг бутун ҳаётий цикли тушунчалари таҳлили ва имкониятлари билан танишиш.

1. Турли тиллар ва дастурлаш тизимлари.

Дастурлаш тили – бу компьютер дастурларини ёзиш учун расмий тил хисопланади.. Дастурлаш тили дастурнинг кўринишини ва ижрочи (одатда ЭҲМ) томонидан бошқариладиган ҳаракатларни белгилайдиган лексик, синтактик ва семантик қоидалар тўпламини белгилайди.

Дастлабки дастурлаштириладиган машиналар яратилганидан бери, инсоният саккиз мингдан ортиқ дастурлаш тилларини (шу жумладан эзотерик, визуал ва ўйинчоқларни) ишлаб чиқди. Уларнинг сони йил сайин ортиб бормоқда. Баъзи тиллар ўзларининг ишлаб чиқарувчиларининг оз сонига маълум, бошқалари миллионлаб одамларга маълум бўлиб қолишади. Профессионал дастурчилар ўнлаб ёки ундан кўп турли хил дастурлаш тилларини билишлари мумкин.

Дастурлаш тили компютер дастурларини ёзиш учун мўлжалланган бўлиб, бу компьютерга маълум бир ҳисоблаш жараёнини амалга оширишга имкон берадиган, турли хил объектларни бошқаришни ташқил этадиган ва ҳоказо қоидалар тўпламидир. Дастурлаш тили табиий тиллардан фарқ қилади, чунки у компьютерни бошқариш учун мўлжалланган. Aксарият дастурлаш тиллари маълумотлар конструкцияларини аниқлаш ва бошқариш ва ҳисоблаш жараёнини бошқариш учун махсус конструкциялардан фойдаланади.

Компютерда дастурлаш бу – компьютер микропроцессори учун турли буйруқлар бериш, қачон, қаерда нимани ўзгартириш ва нималарни киритиш ёки чиқариш ҳақида буйруқлар беришдир. Компютер дунёсида кўплаб дастурлаш тиллари мавжуд бўлиб, дастурлаш ва унга қизиқувчилар сони ортиб бормоқда. Бир хил турдаги ишни бажарадиган дастурларни Basic, Pascal, C ва бошқа тилларда ёзиш мумкин. Pascal, Fortran ва Kobol тиллари универсал тиллар ҳисобланади, C ва Aссемблер тиллари маши тилига анча яқин тиллар бўлиб, қуйи ёки ўрта даражали тиллардир. Aлгоритмик тил инсон тилларига қанчалик яқин бўлса, у тилга юқори даражали тил дейилади. Машина тили эса энг пастки даражали тилдир. Машина тили бу сонлардан иборатдир, Масалан: 010110100010101.

Дастурлаш тиллари 2 та катта гуруҳларга бўлинади, қуйи ва юқори даражали дастурлаш тили. Қуйи даражали дастурлаш тили анча мураккаб бўлиб улар жуда махсус соҳаларда ишлатилади ва уларнинг мутахассислари ҳам жуда кам. Чунки қуйи дастурлаш тиллари (масалан: ассемблер) кўпинча миктопроцессорлар билан ишлашда керак бўлиши мумкин. Одатда турли дастурлаш ишлари учун юқори даражали дастурлаш тилидан кенг фойдаланилади. ЭҲМ (Электрон Ҳисоблаш Машинаси) энди юзага келган пайтда дастур тўзишда, фақат машина тилларида, яъни сонлар ёрдамида ЭҲМ бажариши керак бўлган амалларнинг кодларида киритилган. Бу ҳолда машина учун тушинарли саноқ, системаси сифатида 2 лик, 6 лик, 8 лик саноқ системалари бўлган. Программа мазкур саноқ системасидаги сонлар воситасида киритилган. Юқори даражали дастурлашда, машина тилларига қараганда машинага мослашган (йўналтирилган) белгили кодлардаги тиллар ҳисобланади. Белгилар кодлаштирилган тилларнинг асосий тамойиллари шундаки, унда машина кодлари уларга мос белгилар билан белгиланади, ҳамда хотирани автоматик тақсимлаш ва хатоларни ташҳис қилиш киритилган. Бундай машина мослашган тил — ASSEMBLER тили номини олди. Одатда дастурлаш юқори савияли дастурлаш тиллари (Delphi, Java, C++, Python) воситасида амалга оширилади. Бу дастурлаш тилларининг семантикаси одам тилига яқинлиги туфайли дастур тўзиш жараёни анча осон кечади.

Кўп ишлатиладиган дастурлаш тиллари.

Биз ҳозир биладиган ва ишлатадиган тилларнинг барчаси шу гуруҳга мансуб. Улар инсонга «тушунарли» тилда ёзилади. Инглиз тилини яхши билувчилар программа кодини қийналмасдан тушунишлари мумкин. Бу Fortran, Algol, C, Pascal, Cobol ва ҳ.к. тиллар киради (кўпчилиги ҳозирда деярли қўлланилмайди).

Энг биринчи пайдо бўлган тиллардан то ҳозирги замонавий тилларгача ишлатиш мумкин. Лекин, ҳозирги web технология орқали ишлайдиган тилларда (PHP, ASP.NET, JSP) бундай дастурлар тўзилмайди. Чунки бундай дастурларнинг ишлаши учун яна бир амалий дастур ишлаб туриши керак. Ҳозирда, амалий дастурлар, асосан, Visual C++, C#, Borland Delphi, Borland C++, Java, Phyhon каби тилларда тўзилади. Ўзбекистонда кўпчилик Delphi дан фойдаланади. Бунинг асосий сабаби: соддалиги, компонентларнинг кўплиги, интерфейсининг тушунарлилиги ва ҳ.к. Delphi да биринчи ишлаган одам ҳам қанақадир дастур тўзиши осон кечади. Лекин, Windows да дастурнинг асосий ишлаш моҳиятини анча кейин билади (компонентларнинг кўплиги ва API функсиялари дастурда кўрсатилмаслиги учун). Яна бир тарафи, Delphi (Pascal) оператив хотирани тежашга келганда анча оқсайди. Унда ўзгарувчиларни олдиндан эълон қилиб қўйиш эвазига ишлатилмайдиган ўзгарувчилар ва массивлар ҳам жой олиб туради. Энг кенг тарқалган дастурлаш тили (Windows OS да) Microsoft Visual C++ тилидир. Кўпчилик дастурлар ҳозирда шу тилда тўзилади. Умуман олганда, C га ўхшаш(C-подобный) тиллар ҳозирда дастурлашда етакчи. Деярли ҳамма замонавий тилларнинг асосида C ётади. Бундан ташқари, Турли компьютер ўйинлари тўзишда ёки кичик ҳажмдаги дастурлар тайёрлашда LUA script ёки JavaScript тиллари ҳам кенг ишлатилмоқда. Хозирги кунда кенг тарқалган desktop дастурлашда ишлатиладиган дастурлаш тилларидан базилари ҳақида айтиб ўтамиз: Delphi — дастурлаш тилларидан бири. Borland фирмаси томонидан ишлаб чиқарилган. Delphi дастурлаш тили ишлатилади ва аввалдан Borland Delphi пакети таркибига киритилган. Шу билан бир қаторда 2003-йилдан ҳозиргача қўлланилаётган шу номга эга бўлган. Object Pascal — Pascal тилидан бир қанча кенгайтиришлар ва тўлдиришлар орқали келиб чиққан бўлиб, у объектга йўналтирилган дастурлаш тили ҳисобланади. Aввалдан ушбу дастурлаш муҳити фақатгина Microsoft Windows амалиёт тизими учун дастурлар яратишга мўлжалланган, кейинчалик эса GNU/Linux ҳамда Kylix тизимлари учун мослаштирилди, лекин 2002-йилги Kylix 3 сонидан сўнг ишлаб чиқариш тўхтатилди, кўп ўтмай эса Microsoft.NET тизимини қўллаб қувватлаши тўғрисида эълон қилинди.



Lazarus проекти амалиётидаги (Free Pascal) дастурлаш тили Delphi дастурлаш муҳитида GNU/Linux, Mac OS X ва Windows CE платформалари учун дастурлар яратишга имконият беради. Visual Basic – Microsoft корпорацийдан дастурлаш тили ва унинг учун дастурлаш муҳитдир. У BASICdan дан кўп тушунчалар олди ва тез расмли интерфейс билан дастурлар тараққиёт таъминлайди. Охирги версия 6.0 1998 йилда релиз келишди. Microsoft дан ворис Visual Basic .NET 2002 йилда пайдо бўлди.

Java дастурлаш тили — энг яхши дастурлаш тилларидан бири бўлиб унда корпоратив даражадаги маҳсулотларни (дастурларни) яратиш мумкин. Бу дастурлаш тили Oak дастурлаш тили асосида пайдо бўлди. Oak дастурлаш тили 90-йилларнинг бошида Sun Microsystems томонидан платформага (Операцион тизимга) боғлиқ бўлмаган ҳолда ишловчи янги авлод ақлли қурилмаларини яратишни мақсад қилиб ҳаракат бошлаган эди. Бунга эришиш учун Sun ҳодимлари C++ ни ишлатишни режалаштирдилар, лекин баъзи сабабларга кўра бу фикридан воз кечишди.Оак мувофақияциз чиқди ва 1995-йилда Sun унинг номини Java га алмаштирди ва уни WWW ривожланишига ҳизмат қилиши учун маълум ўзгаришлар қилишди. Java Объектга Йўналтирилган Дастурлаш (OOP-object oriented programming) тили ва у C++ га анча ўхшаш.Энг кўп йўл қўйилдиган хатоларга сабаб бўлувчи қисмалари олиб ташланиб, Java дастурлаш тили анча соддалаштирилди. Java код ёзилган файллар (*.java билан ниҳояланувчи) компилациядан кейин байт код (bytecode) га ўтади ва бу байт код интерпретатор томонидан ўқиб юргиздирилади.

C++ — турли мақсадлар учун мўлжалланган дастурлаш тили. 1979-йили Bell Labs Biyarne Stroustrup томонидан C дастурлаш тилининг имкониятларини кенгайтириш ва OOP (object Oriented Programming) хусусиятини киритиш мақсадида ишлаб чиқарилган. Бошида “C with Classes” деб аталган, 1983-йили ҳозирги ном билан яъни C++ деб ўзгартирилган. C++ C да ёзилган дастурларни компиляция қила олади, аммо C компилятори бу хусусиятга эга эмас. C++ тили операцион тизимларга алоқадор қисимларни, клиент-сервер дастурларни, ЭҲМ ўйинларини, кундалик эҳтиёжда қўлланиладиган дастурларни ва шу каби турли мақсадларда ишлатиладиган дастурларни ишлаб чиқаришда қўлланилади.

Дастурлаш тизимлари

Дастурлаш тизимлари тил муаммоларини хал қилувчи дастурларни бирлаштирадилар ва дастурий таъминотни ишлаб чикаришга мўлжалланган.

Дастурлаш тизимларига:



  1. трансляторлар;

  2. кутубхона дастурлари;

  3. редакторлар;

  4. компановщиклар;

  5. загрўзчиклар;

  6. отладчиклар кирадилар.

Дастурларга хизмат кўрсатувчи тизимлар – бу махсус сервис дастурлар бўлиб, улар ёрдамида операцион тизимни ўзига хизмат кўрсатиш мумкин.

Транслятор – бу дастур берилган дастурлаш тилидаги кирувчи дастур матнини унга эквивалент бўлган чиқишдаги натижавий тилга ўгиради.

Компилятор – бу транслятор бўлиб, у берилган дастур мантнини унга эквивалент бўлган машина командаларидаги объект дастурга ўгиради.

Интерпретатор – бу дастур бўлиб, у берилган дастур матнини бирданига қабул қилади ва бажаради (натижавий коди бўлмайди).



Компилятор формал тиллар нуқтаи назаридан куйидаги 2 асосий функцияларни бажаради:

  1. у кирувчи дастур матни тили учун англовчи хисобланади (кирувчи дастур занжирлар генератори бўлиб хисобланади);

  2. натижавий дастур тили учун генератор хисобланади (англовчи бўлиб хисоблаш тизими хисобланади)

Компиляция чизмаси

Лексик таҳлил – бу компилятор бўлаги бўлиб, дастур литераларини ўкийди ва улар орқали кирувчи тил лексемаларини кўради.

Синтактик таҳлил – таҳлил босқичидаги компиляторнинг асосий бўлагидир. Тилнинг синтактик конструкцияларини ажратади.

Семантик таҳлил – бу компилятор бўлаги бўлиб, кирувчи тил семантикаси нуқтаи назаридан дастур матнини текширади.

Кодни генерациялашга тайёргарлик – натижавий дастурнинг синтези билан боғлик бўлган харакатларга тайёргарлик бажарилади.

Кодни генарациялаш – натижавий кодни бевосита хосил этиш – кодни оптимизациялашни ўз ичига олган асосий фаза.

Идентификаторлар жадвали – кирувчи дастур элементлари хақидаги маълумотларни сақловчи берилганлар тўплами. Бир неча хил идентификаторлар жадвали мавжуд.

Ўтиш – бу ташўи хотирадан берилганларни охирги ўкиш жараёни, уларни қайта ишлаш ва ташқи хотирага жойлаштириш. Компиляциянинг бир фазаси - бир ўтишдир.

Асосий функциялари ва таркиби

Тизимли қайта ишловчи дастурларнинг асосий функциялари ва таркиби;


  1. Ассемблер;

  2. Алоқа редакторлар ва юкловчилар;

  3. Макропроцессорлар;

  4. Трансляторлар (таржимонлар);

  5. Тил конверторлари;

  6. Редакторлар ва матн процессорлари;

  7. Отладчиклар;

  8. Дизассемблер;

  9. Кросс-системлар;

  10. Кутубхоначилар.

1. Ассемблер – бу шундай тизимли қайта ишловчи дастур бўлиб, у бирон бир машинага мўлжалланган дастурлаш тилида ёзилган дастур матнини объект кодига айлантириш учун мўлжалланган (Ассемблер тилидаги матн директивалар ва исмлардан ташқил топади, машина коди эса факат байтлардан ташқил топади.).

Изох: Объект коди ёки алоқа редакторининг киришига ёки юкловчининг киришига келиб тушади.



2. Алоқа редакторлари – бу шундай тизимли қайта ишловчи дастур бўлиб, улар Ассемблер ёрдамида алоҳида олинган объект модулларини ягона модулга бирлаштиришга мўлжалланган. Алоқа редактори чегарасида барча адрес йўналишлари ягона адреслар фазосига ўрнатилади.

Алоҳида объект модулларида хар бир объект модули алоқа редакторининг чиқишини юкловчининг кириши деб ҳисоблайди.

Юкловчилар дастурни қайта ишловчи дастурга юклайдилар ва унга бошқарувни узатадилар. Яна шу билан бирга улар юкловчиларни боғловчи алоҳида модулларни бирлаштирадилар.

Изох: Юкловчилар жой ўзгартирувчи ёки абсолют бўлишлари мумкин.



  • абсолют юкловчилар хар бир дастурни биттадан фиксирланган адрес бўйича юклайдилар;

  • жой ўзгартирувчи юкловчилар дастурни хотирадаги ихтиёрий бўш жойга жойлаштиришлари мумкин.

3. Макропроцессорлар– бу шундай дастурларки, улар белгили қайта ишлашга мўлжалланган бўлиб, бу жараёнда қандайдир қиска фразаларга (макрочақириқларга) узун фразалар (макрокенгайтмалар) мос қўйилади. Макропроцессорнинг киришида қандайдир макрочақириқлардан олинган матн бўлиб, чиқишида эса – макрокенгайтмалар бўлади.

4. Трансляторлар (таржимонлар) бир тилда ёзилган матнни бошқа тилга ўгирадилар. Трансляторларнинг қуйидаги кўринишларини ажратиб кўрсатиш мумкин:

  • компиляторлар: киришида юқори даража тилида ёзилган дастур матни, чиқишида машина кодларидаги алоқа редакторига ёки юкловчига ўзатиладиган дастур.

Хусусиятлари: таржима функцияларини аниқ бўлиниши ва таржима қилинган функцияларни бажарилиши.

  • интерпретаторлар – функциялар бўлинмайдилар, балки мослаштириладилар. Интерпретатор таржимани ва бажарилишни қаторлаб ва кооператив бажаради. Улардан ёзилган дастурни диалог асосида қайта ишлашда фойдаланиш қулай.

5. Тил конверторлари бир юқори даража дастурлаш тилида ёзилган дастур матнини бошқа юкори даража дастурлаш тилига айлантириш учун мўлжалланган. Улар S1 дастурлаш тилида ёзилган дастурни S2 дастурлаш тилига айлантириш учун керак.

6. Матн редакторлари мантни қайта ишлаш учун кенг имкониятларга эгаликлари билан фарқланадилар.

7. Отладчиклар дастурларни бажарилиш жараёнида учраши мумкин бўлган хатоларни кидириш ва бартараф этиш учун мўлжалланган.

8. Дизассемблер бу машина кодлари кетма-кетлигини ассемблер кўринишига ўзгартирадиган дастур.

Изох: Улар ҳам баъзи бир харакатлар тизимини бажарилишини ассемблер кўринишида қуриш имконини яратадилар.



9. Кросс-тизим – бу дастур бир хисоблаш машинасида машина кодларида ифодаланган бошқа бир хисоблаш машинасининг дастурларини олиш учун қулланилади. Лойихалаштирилаётган хисоблаш тизимлари архитектурасини отладка килиш учун фойдаланилади.

10. Кутубхоначилар – киритилаётган матн, объект модули рақами бўлиши мумкин бўлган кутубхона файлларини ташкил этиш ва уларга хизмат кўрсатиш учун дастурлардир.

Операцион тизим ривожланиш имкониятлари:

Операцион тизим ўзлуксиз ривожланишининг сабаблари:

1. Аппарат таъминотининг янги кўринишларининг юзага келиши ва янгиланиши.

2. Янги сервислар.

3. Ўзгартиришлар киритиш.

Операцион тизимнинг ривожланиши заруриятдир, акс холда у янги дастурлар ва янги қурулмалар билан ишлай олмайди.

Мисол учун, Intel процессорлар Hyper Thread ни қўлланишидан бошлаб Windows NT операцион тизимини бозордан сиқиб чиқара бошлади, улар иккинчи процессорни эмуляция қилдилар. Windows NT нинг ядроси эмуляцияси билан қандай ишлашни «билмай қолиб» тизим йиқилди.

Операцион тизимлар ривожланиши мумкин.

1.сакраб (Windows) ва

2.аста секин (UNIX).

Биринчи ҳолда аввалги мавжуд дастурлардан тўлиқ воз кечишга тўғри келади, чунки бу тизимда хеч қандай кўчириб ўтишлар назарда тутилмаган. Аммо фақат унинг ўзигагина ёзилган янги дастурлардан бутун маҳсулот юзага келади. Бу эса дастурий таъминотни ишлаб чикарувчилар (яратувчилар) учун жуда фойдалидир.

Иккинчи ҳолда янги қурилма имкониятларини эски дастурлар билан боғлашга тўғри келади. Операцион тизим ва дастурлар имкониятларини кенгайтирувчи дастур заплаткаларини ишлаб чикаришга тўғри келади.

Операцион тизимларни ишлаб чиқиш.

Операцион тизимларни ишлаб чиқиш бўйича уч ечиш йўли мавжуд:


  • ёпиқ ечим;

  • очиқ ечим;

  • аралаш ечим.

Ёпик ечим. Барча ишлаб чикарилаётган маҳсулотлар лицензиялар билан ҳимояланган ва ишлаб чикарилган фирмадан ташқарида ўзгартирила олмайди. Бундай ечим фирмадан қурилмаларнинг ўзгаришига жуда тез эътибор беришни, маркетинг ва ишлаб чикаришга катта маблағларни сарфлашни талаб килади.

Бундай йўналишнинг ютуғи бўлиб, ўзи ишлаб чикараётган дастурий маҳсулоти учун фирманинг жавобгарлиги ҳисобланади. Яхши хужжатлаштириш. Универсальлик. Стандартлаштириш. Бундай йўналишдан фойдаланаётган таниқли фирмалардан : Microsoft, SUN, SCO.

Бундай йўналишнинг камчилиги фирмаларнинг инертлиги ҳисобланади. Ўзгараётган шароитларга тезда аҳамият бера олмаслик қобилияти. Операцион тизимнинг бошка фирма ишлаб чикараётган операцион тизим билан ўзаро алоқа қила олмаслиги, яъни мослаша олмаслиги имконияти.

Очик ечим. Ишлаб чиқарилаётган ечимлар умумий лицензияга эга очик кодли ечимга бўйсунадилар. Ихтиёрий хохловчи дастур маҳсулотининг берилиш кодини олиши мумкин, агар унинг автор томонидан ишчи варианти қўйилган бўлса. Бундай ечим дастурий маҳулот хатосиз ишлашига кафолат бера олмайди. Бу ечимлар кўп ҳолларда яхши хужжатлаштирилмаган. Бундай йўналишнинг ютуғи бўлиб, турли давлат ва турли соҳа мутахассисларининг бир командада ишлай олиши имконияти ҳисобланади. Ишлаб чиқарувчилар командасининг ўзгариш шартларига тезликдаги эътибори. Барча мумкин бўлган платформаларда ва ихтиёрий бошка тизимларда ишлай олиш имконияти. Бундай йўналишдан фойдаланаётган таниқли фирмалардан: RedHat, SuSe, FreeBSD; Novell.

Аралаш ечим. Ишлаб чикарилаётган ечимлар умумий коддан ташқари яна шахсий ишлаб чикарилаётган, лицензия билан ҳимояланган ечимдан ҳам фойдаланадилар. Бундай йўналиш очиқ ечимлардан энг яхши ечимларни танлаб олиш ва улар асосида ўзларининг ечимларини ташқил этиш имконини беради. Бундай йўналиш хар иккала йўналишнинг энг яхши хусусиятларини ҳисобга олади, чунки фирма факатгина ўзининг ечимларинигина хужжатлаштириш ва унга жавобгарликни бўйнига олибгина қолмай, балки танлаб олинган очиқ ечимлар учун ҳам жавобгарликни хис этади. Бундай йўлни танлаган фирмалар MacOS, BeOs, QNX, Netrino.


  1. Дастурларнинг бутун ҳаётий цикли тушунчалари таҳлили ва имкониятлари билан танишиш.

Дастурларнинг ҳаёт цикли деганда – уни яратиш зарурлиги тўғрисида қарар қабул қилинган вақтдан бошлаб, ўз фаолиятининг якунигача бўлган узлуксиз жараён тушунилади.

Мавжуд стандартлар асосида замонавий тармоқлар яратиш, уларнинг юқори самарадорлигини ва ўзаро алоқа қилиш имкониятларини таъминлайди.

Дастурлаш тизимлари (ихтиёрий тизимлар) учун яратилган барча стандартларни қуйидаги иккита синфга ажратиш мумкин:



  • фунционал стандартлар – тизига қўйилган талабларни бажарилишини таъминлаш мақсадида, унинг фаолияти тартибини белгилайди;

  • ҳаёт цикли стандартлари – тизимни қандай яратиш кераклигини, амалда яратиш (тадбиқ қилишни), амалиётда қўллаш ва фаолиятини якунлаш (тўхтатиш) тартибларини белгилаб беради.

Албатта, бу иккита синф стандартлари ёрдамида аниқланган моделлар ўзаро алоқалар билан боғланган бўлса ҳам, улар хар ҳил масалаларни ечишга мўлжалланган ва уларни яратиш умуман турли ёндашувлар билан таърифланади.

Буни қуйидаги келтирилган мисолда изоҳлаш мумкин.

Тизимнинг энг тўлиқ функционал модели бу тизимнинг ўзидир. Бироқ тизимнинг "биография"си(ўтмиши)ни, унинг ҳаёт цикли модели сифатида хеч қайси ҳолатда кўриб чиқилиши мумкин эмас. Дастурларнинг ҳаёт цикли моделига, ўзининг мослиги билан яқин бўлган, тирик жонзот ҳаётини, унга асос солинган дақиқадан бошлаб берилган таснифи мисол бўла олади.

Шундай қилиб, дастурларнинг ҳаёт цикли ҳамма босқичларни – яратиш, кузатиб бориш ва ривожланиш босқичларини қамраб олади:



  • лойиҳалашдан олдинги таҳлил (шу жумладан, дастурларнингни тақдим этиш мўлжалланган объектнинг функционал ва ахборот моделини форматлаш);

  • тизимни лойиҳалаш (шу жумладан, техник топшириқни, эскиз ва техник лойиҳаларни ишлаб чиқиш);

  • тизимни ишлаб чиқиш (шу жумладан, лойиҳалаш босқичида ажратилган тизимостиларнинг лойихавий спецификацияси асосида дастурлаш ва амалий дастурларни синаш);

  • тизимни йиғиш ва интеграциялаш, синовдан ўтказиш;

  • тизимни ишлатиш ва кузатиб бориш;

  • тизимни ривожлантириш.

Замонавий ахборот тизимларнинг ҳаёт цикли 10 йилга яқин давом этади, бу муддат тизимнинг яратилиши циклида фойдаланилган техник ва тизимли дастурий воситаларнинг маънавий ва жисмоний эскириш муддатидан анча юқоридир. Шу сабабли тизим ҳаёт цикли давомида унинг техник ва дастурий базасида замонавийлаштириш ўтказилади. Бунда тизимнинг амалий дастурлар таъминоти сақлаб қолиниши ва янгиланаётган техник-дастурий базасига кўчирилиши зарур.

Бундай муаммоларнинг юзага келиши, аксарият ахборот тизимлари лойиҳаларини амалга ошириш циклида уларнинг сифати пасайишига, бажарилган ишларнинг сметаси ва муддатлари бузилишига олиб келмоқда.

Ахборот тизимлари лойиҳаларининг қариб учдан бир кисми охирига етказилмасдан ўзининг мавжудлигини тўхтатишяпти. Standish Group компаниясининг маълумотларига кўра 1996 йилда ахборот тизимлари лойиҳаларининг 84% и белгиланган муддатларда бажарилмаган, 1998 йилда 74% га қисқарган, 2000 йилга келиб ўз вақтида якунланмаган лойиҳалар 50% дан камаймаган (Standish Group —дунёдаги энг хурматли компания бўлиб, ахборот тизимлари лойиҳалари самарадорлигини тадқиқоти ва тахлили билан шуғилланади).

Бундай ҳолатнинг асосий сабаблари, тижоратнинг мураккаблашуви ва жадал суратлар билан ўзгариши, тизимларни тахлил қилиш ва лойиҳалаш технологиялари даражаси ҳамда лойиҳаларни бошқариш усул ва маблағлари яратилаётган тизимларнинг мураккаблик даражасига мос келмаслигидир.

Жахон тажрибасидан маълумки, ахборот тизимларини дастурий таъминотни ишлатиш ва кузатиб бориш харажатлари унинг ҳаёт циклидаги умумий харажатларнинг 70% идан кам эмас. Шу сабабдан, лойиҳалаш циклидаёқ дастурий таъминотни ишлатиш ва кузатиб бориш усул ва маблағлари ҳамда тузилишини бошқариш усулларини аниқлаб олиш керак.



Автоматлаштирилган ахборот тизимларини ва уларнинг таркибига кирувчи ахборот тизимларини яратиш ва синовдан ўтказиш бир қатор стандартлар ёрдамида тартибланади. Ахборот тизимлари ҳаёт циклининг бази босқичлари етарли даражада тўлиқ тақдим этилмаганлиги сабабли аниқловчи хужжат сифатида ISO/IEC 12207 стандартини қўллаш мақсадга мувофиқдир. Бу стандарт дастурий таминотни яратиш вақтида бажарилиши керак бўлган жараёнларни ўз ичига олган, дастурларнинг ҳаёт цикли тузилишини аниқлайди.
Бу жараёнлар уч гурухга бўлинади:
  1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling