Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CУБД_жауап_40.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
915.97 Кб
Скачать
  1. Күрделi жүйелердің белгiлері.

Клетка, қан, атака жасайтын вирустар физикалық әлемнің ғажайып күрделі жүйелері болап келеді. Сол секілді компьютерлік программалар да күрделі болып келеді, бірақ олардың күрделілігі мүлдем басқа типте.

Біз барлық программалардың жүйелердің күрделі бола бермейтіндігін білеміз.

Бір ғана адамның ойлауымен, өңдеуімен, қалыпқа келтіріліп қолдануымен жүзеге асатын программалар да болады. Әдетте бұл адам программаны енді үйренуді бастаған программист немесе профессионал болуы мүмкін.Бірақ мұндай программалардың өмірі тым қысқа және қолданылу аясы аз болады.Программа қиын болған сайын оған деген қызығушылық та аз болады.

Күрделі АЖ негізгі ерекшелігі бір адам күрделі АЖ-на түсіне алмайды және жасай алмайды. Мұндай жүйені өндірістік деп атаймыз. Күрделі АЖ-ға жататындар: банк АЖ, банкомат. Жеңіл АЖ-ға: есептер, калькулятор т.б.

АЖ күрделі болатын себептері:

1.Тақырыптық аймақтың күрделілігі;

2.АЖ өңдеу процесінің күрделілігі:

Қойылатын талаптар:модель; программалау,кодтау; тестілеу;

3.АЖ өзгеруі және талаптардың өсуі;

4.АЖ сипаттайтын бірыңғай стандарт жоқ болғаны.

АЖ сипаттайтын стандарттар:

MSF – өмір циклі; IDEFX – функционалдық; DFD – функционалдық мәліметтер;

UML – логикалық үлгілер.

Ерекшеліктері: 1.Күрделі жүйелер көп жағдайда бір-бірімен байланысқан жүйелерден тұрады. 2.Берілген жүйеде элементарлы компьютерді программист өзі таңдайды. 3.Компоненттің ішіндегі байланыс элементтер арасындағы байланыстан тұрады. 4.Иерархиялық жүйелер ұқсас компоненттерден тұрады. 5.Күрделі жүйе бөлек-бөлек жеңіл жүйелерден тұрады.

Мысалдар

1.Планшет

дисплей сенсор

программа камера корпус

драйвер ОЖ

2.Телефон

телефон

дисплей корпус кнопка камера

экран бөлшек микросхема линза

микросхема бөлшектер программа

лампочка флешка

программа

  1. Декомпозиция, алгоритмдік декомпозиция, объектті бағыттылған декомпозиция: анықтама, мысалдар.

Дейкстра айтып кеткендей Күрделі жүйелерді басқару тәсілдері ежелден ақ белгілі болған (divide

et impera -бөліп ал да билік жүргіз). Күрделі программалық жүйелерді проектілеу кезінде оларды кіші және өте кіші подсистемаларға бөліп алу керек, программалардың бір-бірінен тәуелсіз жұсыс істеуі үшін.Бұл жағдайда біз кез-келген кезеңдегі жүйені бір уақытта миымызда сақтап ол жайлы мәліметті біліп отыруымыз қажет.

Шын мәнінде декомпозиция программалаудың қиындығын тудырады,

дәл асы қиындық қаншалықты жүйенің қалып күйінің аясында бөлуге мәжбүр.

Алгоритмдік декомпозиция. Көпшілігіміз құрылымды программалауды формальды түрде "жоғарыдан төменге " қарай оқып үйренгенбіз, және біз декомпозицияны мұнда әрбір модуль жүйесі жалпы процестің бір этапын орандайтын алгоритмнің қарапайым бөлігі деп қараймыз.

Сурет құрылымды проектілеудің мысалы ретінде келтірілген:

Аралық функционалды элементтер жүйесі арасындағы байланысты көрсететін құрылымдық схема.

Берілген құрылымдық схема программалық схеманың басқару файлының өзгерген мазмұны бөлігін үйлестіреді.Ол автоматты түрде құрылымды проектілеудің ережелерінен белгілі ағымдар диаграммасының арнайы экспертті жүйесінен алынған.

Объектті бағыттылған декомпозиция

Берілген есепте декомпозиция әдісінің альтернативті түрі бар деп есептейік.

Біз жүйені суреттегідей декомпозицияның қай критерийіне жататындығына қарай оның элементтерін берілген проблемалық облыстың абстракциясына қарай бөліп орналастырдық.

Тапсырманы бөлу алдында Get formatted update және Add check sum-ды

қадамдарға бөлмес бұрын , біз Master File және Check Sum секілді объектілерді анықтап алуымыз қажет.

Екі схема да бір ғана есепті шешкенімен бірақ олар оны әртүрлі тәсілмен орындайды.Get formatted update объектісі енді жеке объект ретінде емес File of Updates-тің меншігіндегі объекті ретінде жүреді.Бұл операция Update to Card объектісін тудырады.

Екі аспекті де алгоритмі және обьектісі жөнінен декомпозицияның күрлі жүйесінде дұрыс аспектілер болып саналады.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]