Тема 12: Метод функціональної декомпозиції задачі. Модульність.

 

Об'єктне проектування інформаційних систем

Основні питання

·Особливості методів проектування.

·Об'єктно-орієнтоване проектування.

·Основні положення об'єктного підходу.

·Відношення між класами та наслідування властивостей.

·Методологія OOD.

·Життєвий цикл розроблення інформаційної системи.

Особливості методів проектування.

Сучасний підхід до проектування програм ґрунтується на їх декомпозиції, яку виконують з використанням абстракцій. Головним при цьому залишається розподіляти і керувати. Проте не менш важливо, як здійснити це.

Мета декомпозиції програми полягає у створенні модулів, які теж є невеликими програмами, що взаємодіють одна з одною за певним правилом. За досягнення цієї мети розроблення окремих модулів може здійснюватися різними людьми незалежно один від одного, а об'єднана програма функціонуватиме правильно.

Декомпозицію програм використовують для розбиття їх на компоненти, які потім можуть бути об'єднані й дають змогу розв'язати основну задачу; абстрагування передбачає продуманий вибір компонентів.

Прикладом абстракції є конструкція типу файлу. Розрізняють абстракцію через параметризацію та через специфікацію. Суть першої полягає в тому, що за одним алгоритмом можна розв'язувати задачі, які мають різні вихідні дані, задані як параметри. Суть другої зводиться до того, що за допомогою різних алгоритмів можна здобути однакові результати. При цьому описується ефект роботи, зміст звернення до програми стає зрозумілим через аналіз її специфікації, а не самого тіла процедури.

Методи проектування архітектуриНа стадії проектування архітектури специфікації трансформуються у структуру системи. Методології, які застосовуються на цій стадії, поділяються на дві групи: а) орієнтовані на оброблення; б) орієнтовані на дані. Перші надають особливого значення процесу декомпозиції, а також структурі у створенні архітектури програми, другі зосереджуються на даних.

Найпоширенішими методологіями, орієнтованими на оброблення, є модульне програмування, функціональна декомпозиція, проектування з використанням потоку або структур даних, проектування за методом НІРО.

Модульнепрограмування.Його основні концепції такі:

— реалізація кожним модулем єдиної незалежної функції;

— наявність у кожного модуля єдиної точки входу/ виходу;

— намагання мінімізувати розмір модуля;

— проектування, кодування і тестування кожного модуля різними членами бригади програмістів;

— побудова усієї системи з модулів.

За такого підходу складна система поділяється на кілька частин, одночасно створюваних різними програмістами. Кожен модуль реалізує єдину функцію. Розмір модуля невеликий, тому тестуванням можна керувати і проводити його дуже ретельно. Після кодування і тестування всіх модулів відбуваються їх інтеграція і тестування всієї системи. Під час супроводження тестується та налагоджується тільки той модуль, який погано працює. Очевидними є переваги у полегшенні написання і тестування програм, зменшується вартість їх супроводження.

Функціональнадекомпозиція.Вона ґрунтується на стратегії типу «розподіляй і керуй». Відомий спеціаліст із методології програмування Парнас, який спробував формалізувати процедуру функціональної декомпозиції у формі покрокової деталізації, критерієм декомпозиції системи запропонував концепцію приховування інформації. При застосуванні цього критерію кожен модуль характеризується суб'єктивним рішенням проектувальника. Тільки конкретна інформація про модуль потрібна іншим модулям, а зв'язки між модулями організовуються за допомогою добре визначених інтерфейсів.

Іншою важливою ідеєю є проектування програмної системи у вигляді набору віртуальних машин замість традиційного підходу, під час якого користуються схемами. Перевага функціональної декомпозиції — в її застосовності, недоліки — в непередбаченості й мінливості.

Проектуваннязвикористаннямпотокуданих.У цій методології потік даних є рушійною силою процесу проектування програми, а різні функції відображення перетворюють потік інформації на структуру програми.

Структурне проектування іноді називають ще композиційним, або трансформаційним. При цьому намагаються боротися з недоліками, притаманними методу функціональної декомпозиції, за яким не можна керувати якістю декомпозиції функції. Підхід полягає у структурному проектуванні як генеральної лінії композиційного проектування та деталізації проекту, критерію ступеня, способів аналізу проекту, коли потік даних проблеми відображається у структурі програми. Ця процедура передбачає:

- ідентифікацію потоку даних і відображення графа потоку даних;

- ідентифікація вхідних, центральних і вихідних перетворювальних елементів;

- формування ієрархічної структури програми, в якій використовуються ці елементи;

- деталізація та оптимізація структури програми, сформульованої на попередньому кроці.

Такий підхід застосовується за відсутності яскраво виражених структур даних.

ТехнологіяструктурногоаналізупроектуSADT.Ця технологія ґрунтується на структурному аналізі, запропонованому Россом. SA — графічна мова, що використовується для вираження ієрархічних і функціональних зв'язків між об'єктами та діями. Структура системи, подана графічно, виділяє інтерфейси між її компонентами структурно, модульно й ієрархічно. SADT включає процедури планування управління розробленням та управління конфігурацією, засоби організації працюючих спеціалістів у бригади і зв'язки між ними. SADTуспішно застосовується у різних сферах. Метод особливо ефективний на ранніх та пізніх стадіях розвитку системи і менш ефективний при деталізації. Водночас, даючи змогу кожному проектувальнику створювати незалежні діаграми, можна зіткнутися з додатковими труднощами у процесі їх перегляду.

Проектування,щоґрунтуєтьсянавикористанні структурданих.Існує два підходи, розвинутих незалежно Г.-А Джексоном та В. Уорнером. Обидва використовуються як для конструювання архітектури, так і для деталізації проекту.

За методологією Джексона структура даних застосовується як ключовий елемент у побудові доброго програмного проекту. Основна структура системи програми визначається структурою даних, які вона обробляє. Програма розглядається як механізм, за допомогою якого вхідні дані перетворюються на вихідні. Використовуючи вхідні та вихідні структури як основу, намагаються отримати добре сконструйовані програми. Основна перевага методології Джексона полягає в тому, що якість підсумкового проекту не залежить від досвіду проектувальника, кожен крок проектування може бути верифікованим, різні проектанти, працюючи незалежно над однією і тією самою проблемою, здобувають однаковий результат. Однак у методології немає рекомендацій, як структурувати дані. Основні дії зводяться до того, щоб:

- ідентифікувати та зобразити структуру вхідних і вихідних даних;

- зобразити структуру програми, поєднуючи зображення її структурних елементів;

- визначити дискретні операції, що складають програму;

- перетворити операції на текст програми.

Методологія Уорнера подібна до методології Джексона втому, що ключем до проекту програми є структура даних, але процедуру проектування деталізовано краще. Використовуються чотири види подання проекту: діаграми організації даних, діаграми логічного проходження, список інструкцій, псевдокод. Діаграма організації даних описує вхідні та вихідні дані. Діаграми логічного прямування є логічним потоком цих даних. Список інструкцій містить команди, що застосуються у проекті. Псевдокод використовується під час опису остаточних результатів проектування.

Узагальнивши методологію Уорнера, можна викласти її в таких послідовних діях:

- ідентифікація всіх вхідних даних системи;

- організація вхідних даних в ієрархічну форму;

- визначення детального формату кожного елемента вхідного файла і фіксація кількості їх з'явлень;

- повторення попередніх кроків для вихідних даних;

- специфікація деталей програми, ідентифікація типів команд, що містяться у проекті в такому порядку: читання, розгалуження, обчислення, виведення, виклики підпрограм;

- використання діаграм типу схем для демонстрації логічної послідовності інструкцій, застосування спеціальних символів для подання початку процесу, його кінця, розгалуження і вкладання;

- нумерація елементів логічної послідовності та розкриття їх за допомогою інструкцій.

МетодНІРО(ієрархіяплюсвхід,оброблення,вихід).Метод ієрархічних діаграм, розвинутий фірмою IBM, характеризують:

- здатність надавати зв'язок між вхідними/вихідними даними та процесом їх оброблення;

- можливість декомпозувати систему ієрархічно, не залучаючи дуже дрібні деталі;

- використання трьох елементів — входу, оброблення, виходу. Оброблення специфікується як центральний блок діаграми, з'єднаний з елементами, що складають вхід і вихід системи.

Основна процедура проектування з використанням методу НІРО охоплює такі кроки:

- початок з найвищого рівня абстракції;

- ідентифікація входу, оброблення і виходу системи;

- з'єднання кожного елемента входу й виходу з відповідним обробленням;

- документування кожного елемента системи з використанням НІРО-діаграми;

- деталізація діаграми з використанням попередніх кроків.

Методології,орієнтованінадані.У цих методологіях виділяються компоненти проекту, які ґрунтуються на даних. Це об'єктно-орієнтована методологія проектування і методологія проектування концептуальних БД. Обидві методології належать до методу формалізації специфікацій. Концепція методів формальних специфікацій передбачає, що програми можуть бути побудовані методично (систематично), виходячи з формальних специфікацій даних, з якими вони працюють. Ґрунтуючись на цих специфікаціях, можна розробити способи автоматичного програмування та доведення правильності програм. Особлива увага приділяється абстракціям даних.

Об'єктно-орієнтована методологія проектування. Вона ґрунтується на концепціях приховування інформації та абстрактних типів даних. За такого підходу розглядаються всі ресурси (дані, модулі, системи), що виступають як об'єкти. Кожен об'єкт містить певну структуру або тип даних, обрамлену набором процедур, які визначають спосіб маніпулювання даними. Використовуючи цю методологію, проектант може створити власний абстрактний тип і відобразити проблемну сферу у створені ним абстракції замість традиційного її відображення.

Такий підхід рекламується як більш натуральний, ніж методології, орієнтовані на оброблення даних, завдяки можливості створювати у процесі проектування різні види абстракції типів даних. На цьому шляху проектант може сконцентруватися на проектних системах, не думаючи про деталі ІО, які використовуються в системі.

Основні дії, що реалізуються завдяки цій методології, передбачають:

- визначення проблеми;

- розвиток неформальної стратегії, тобто загальної послідовності кроків, яка задовольняє вимоги до системи;

- формалізацію стратегії, тобто ідентифікацію об'єктів та їхніх атрибутів, операції над об'єктами, встановлення інтерфейсів і реалізацію операції.

Методологія, що ґрунтується на проектуванні концептуальних БД. Вона належить до класу методологій, орієнтованих на дані, та покликана дати проектувальнику методичні вказівки у процесі трансформації специфікацій у концептуальну схему БД. Цей підхід передбачає встановлення уніфікованої концептуальної моделі з багатшим семантичним значенням і використання концепції абстракцій даних для спрощення проектування. Насправді він є різновидом подання знань, що охоплює як проблеми реального світу, так і код, який виконує ЕОМ. Процес проектування є процесом побудови моделі. Відомі методи конструювання концептуальної моделі ґрунтуються на способах узагальнення/специфікації. Передбачається, що проектант починає з визначення найзагальніших класів об'єктів та подій проблемної сфери. Далі деталі програмної системи вводяться послідовними ітераціями опису підкласів уже поданих класів і специфікацій взаємодій у них.

Детальне проектування. Розглянуті вище методи стосуються модульного рівня. Метод, що використовується на кодовому рівні проектування, відомий під назвою структурне програмування. Він ґрунтується на передбаченні того, що код у модулі легше читається, пишеться і супроводжується, якщо він сконструйований з фіксованого набору базових структур, які не виключають оператор GOTO.

Доведено, що будь-яка складна система може бути подана з використанням трьох базових структур: прямування, ітерації та вибору. Структурне програмування охоплює чотири тісно пов'язані проблеми: методологію програмування, нотацію, коректність, верифікацію. Практика підтвердила недостатню його ефективність під час проектування великих систем. Для досягнення максимальної надійності, а також зниження вартості системи слід об'єднати способи структурного програмування з методологією проектування архітектури, включаючи бригаду головного програміста, проектування зверху вниз, бібліотеку, яка підтримує процес розвитку проекту, та ін.

Об'єктно-орієнтоване проектування.

Характерною особливістю сучасних ІС є їхня складність, що невпинно зростає. Це зумовлено розвитком технічних засобів, які забезпечують реалізацію все більшої кількості інформаційних функцій у складі однієї ІС. Організація ІС на мережах ЕОМ, розподілені БД, інтерактивний графічний інтерфейс користувача, безпаперовий документообіг — ці та багато інших аспектів реалізації ІС значно ускладнюють процес її проектування. Інша вада пов'язана з тим, що проект, доведений до стадії впровадження, починає старіти і потребує модифікації. Це неминучий наслідок зміни інструментарію ІС та змін у самому ОУ або навколишньому середовищі, що актуалізує необхідність адаптації ПЗ і технологічних процесів оброблення інформації в ІС. Модифікація складних програмних комплексів, реалізованих на основі процедурних мов програмування, є важко розв'язуваною проблемою адаптації ІС.

Компенсувати проблему зростаючої складності в ІС покликаний об'єктно-орієнтований підхід, у межах якого виділяють:

- об'єктно-орієнтоване програмування (OOP);

- об'єктно-орієнтоване проектування (OOD);

- об'єктно-орієнтований аналіз (ООА). Теоретичною основою цих методів є теорія систем ісистемний аналіз. Об'єктна технологія принципово відрізняється від усіх існуючих технологій проектування.

Спрощено можна вважати, що кінцевою метою проектування ІС є створення комплексу програм, які реалізують задані функції системи. Основна мета розроблення програми — це переведення задачі з мови проблемної сфери на мову комп'ютера.

Традиційний підхід до проектування полягає у послідовній побудові низки моделей (інформаційної моделі, опису структур файлів і вихідних документів, економіко-математичної моделі, схеми алгоритму), останньою з яких є модель мовою реалізації (програма).

Особливість цього підходу полягає в тому, що проблемна сфера відображається у заздалегідь визначених керуючих структурах та структурах даних. Мова проблемної сфери — це набір понять, за допомогою яких може бути описана вихідна задача. Водночас будь-яка мова комп'ютера подає вихідну задачу у вигляді сукупності даних і процедур їх перетворення.

Ідеальна гіпотетична мова програмування має подавати алгоритм розв'язання задачі на основі понятійного апарату заданої проблемної сфери. Виходом є використання універсальної метамови для всіх проблемних сфер — мови теорії систем та системного аналізу. Основні поняття цієї мови: об'єкт, клас об'єктів, атрибут (властивість), процес, функція, метод, структура тощо. На цьому і ґрунтується ключова ідея OOP — створення мовних засобів, які на основі абстрактних типів даних дають змогу специфікувати нові класи програмних об'єктів, адекватних об'єктам конкретної проблемної сфери.

Об'єктні програми складаються з готових компонентів-об'єктів. Ці об'єкти можуть відповідати:

- об'єктам або процесам реального світу (деталь, документ, клієнт);

- абстрактним поняттям (екран, таблиця, графічний елемент тощо).

У традиційних програмах дані відокремлено від процедур і методів, в об'єктних — дані та процедури об'єднуються в об'єкті.

Приклад

Об'єкт — «клієнт». Усе, що відомо користувачеві про нього, включається у цей об'єкт. Дії з клієнтом реалізуються як методи (функції) для заданого об'єкта, що також входять в його опис.

Отже, основа OOP — формування із простих об'єктів, які складаються з даних і набору функцій, більш складних, здатних моделювати об'єкти проблемної сфери.

Наведений огляд наводить на висновок, що об'єктно-орієнтована технологія стирає межу між «чистим» проектувальником (системним аналітиком) та «чистим» програмістом. З'являється новий тип розробника — проектувальник-програміст, здатний самостійно поставити, спроектувати задачу і реалізувати її у вигляді об'єктно-орієнтованої програми.

Приклад

Розглянемо опис об'єктів мовою Турбо Паскаль (YG> 0). Об'єкт — структура даних, що містить поля даних різних типів (у тому числі абстрактні) та заголовки методів:

Ім'я Об'єкта = object (Ім'я Класу)

поле;...; поле;

метод;метод;

end.

Метод — це процедура або функція, оголошена всередині оголошення елемента типу об'єкт:

procedure Ім'я Об'єкта. Метод

(параметр.....параметр п);

begin;

end.

Оголошення методу всередині оголошення об'єкта:

procedure Метод (параметр,параметр n).

Історично склалося так, що спочатку були розроблені мови OOPза відсутності теорії об'єктно-орієнтованого проектування. І тільки після усвідомлення спеціалістами з інформатики, що OOP є основою для чергового перевороту в IT, почалось активне розроблення теорії об'єктно-орієнтованого аналізу та проектування.

Уперше поняття класів і об'єктів введено в мові Simula67. У системі Smalltalk-80 ідеї Simulaдоведено до логічного завершення — всі дії виконуються на основі класів. У 70-ті роки XX ст. були створені мови, які реалізують дії абстрактних даних: Alpharad, CLV, Euclid, Module. Занесення об'єктно-орієнтованого підходу в С привело до створення мов C++ і Objective С. На основі мови Pascal виникли мови ObjectPascal, Eiffel та Ada. З'явились такі діалекти LISP, як LOOPS і CLOS, з можливостями мов Simula та Smalltalk.

Основні положення об'єктного підходу.

Принципова відмінність методів програмування і методів проектування полягає в тому, що перші орієнтовано на ефективне використання механізмів мови програмування, а другі спрямовано на ефективне та правильне структурування складних систем.

Об'єктно-орієнтоване проектування — методологія проектування, що поєднує процес об'єктної декомпозиції зі способами подання як логічної та фізичної, так і динамічної моделей системи, яка проектується.

Моделі, на яких ґрунтуються об'єктно-орієнтоване проектування, формуються в результаті об'єктно-орієнтованого аналізу.

Об'єктно-орієнтований аналіз — методологія, спрямована на створення моделей з використанням об'єктно-орієнтованого підходу на основі понять класів та об'єктів, що складають словник проблемної сфери.

Першим й основним способом розв'язання складних задач в OOD є абстрагування, яке концентрує увагу на зовнішніх особливостях об'єкта і дає змогу відокремити істотні особливості поведінки від деталей їх здійснення.

Абстракція — істотні характеристики певного об'єкта, що відрізняють його від усіх інших видів об'єктів і, отже, чітко відокремлюють особливості об'єкта з позиції подальшого розгляду й аналізу.

Наприклад:

Абстракція сутності об'єкта

Об'єкт є моделлю істотних аспектів проблемної сфери

Абстракція поведінки

Об'єкт складається з узагальненої множини операцій, кожна з яких виконує певну функцію

Абстракції сутності об'єктів відповідають словнику проблемної сфери. Опис поведінки об'єкта пов'язаний з поняттями «операція» та «протокол». Об'єкт може здійснювати дії над іншим об'єктом. Протокол відображає всі дії на об'єкт, а також його вплив на інші об'єкти.

Сукупність усіх методів (операцій), специфічних для конкретного класу об'єктів, називається інтерфейсом класу.

Сукупність даних, що характеризують поточний стан об'єкта і його взаємозв'язки з іншими об'єктами, називають локальною (приватною) пам'яттю об'єкта.

Структура локальної пам'яті об'єкта і реалізація методів можуть бути (мають бути) прихованими від зовнішнього спостерігача, тобто будь-якого іншого об'єкта. Цю властивість класів об'єктів називають «приховані дані», «обмеження доступу», «інкапсуляція властивостей».

Обмеження доступу — процес захисту окремих елементів об'єкта, який не втрачає істотних характеристик об'єкта як цілого.

Приклад

Плановий відділ розробляє план випуску виробів для цеху. Такий план є частиною словника проблемної сфери, тому він може бути реалізований у вигляді абстракції. З точки зору інтерфейсу об'єкта потрібно забезпечити можливість задання окремих показників плану і його виконання. Тому можна ввести об'єкт, який забезпечує інтерфейс «людина — комп'ютер» та ручну зміну плану. Крім того, може бути введений об'єкт — виконавець плану, що може читати дані про план. Введені об'єкти взаємодіють для забезпечення загальної мети. Виходячи з цього, визначають межу кожного об'єкта абстракції та протоколи їх зв'язку.

Відношення між класами та наслідування властивостей.

Модель проблемної сфери, як правило, дуже важлива, що потребує такої класифікації об'єктів, яка б відображала спільність та відмінність їхніх властивостей. Виявлені родо-видові зв'язки між класами об'єктів фіксуються за допомогою оголошення відношення типу «клас — підклас». Такі проектні процедури породжують ієрархічні структури з абстракції.

Основними видами ієрархічних структур є:

- структура класів (ієрархія за номенклатурою);

- структура об'єктів (ієрархія за складом).

Підклас називають породженням, або похідним класом. Клас, що стоїть вище за ієрархією, є базовим класом об'єктів.

Породжений клас наслідує всі властивості базового класу — структуру приватної пам'яті та методи. Таке відношення між породженим і базовим класами називають простим наслідуванням. Крім наслідування, похідний клас може мати додаткові властивості.

Приклад

Є абстракція «План — випуску — продукції». Для кожного цеху він має бути спеціалізованим залежно від типу продукції (наприклад, одиниці виміру).

Методологія OOD.

Об'єктно-орієнтоване проектування є зворотним процесом. При зворотному проектуванні основна увага приділяється процесу поступального й ітеративного розвитку різних моделей системи. В OODвикористовують чотири види моделей (логічна, фізична, статична, динамічна) системи, що проектується. Кожна з моделей подається однією або кількома діаграмами.

Логічне подання системи відображається в діаграмі класу, діаграмі об'єктів.

Компонентами системи є діаграма модулів, діаграма процесів. Названі діаграми реалізують статичний опис системи. Для опису динамічних компонентів системи використовують два види діаграм: діаграми перехідних станів, тимчасові діаграми.

Процес об'єктно-орієнтованого проектування можна подати у вигляді такої послідовності проектних процедур.

1. Ідентифікація класів та об'єктів заданого рівня абстракції.

2. Ідентифікація семантики класів і об'єктів.

3. Ідентифікація зв'язків між класами та об'єктами.

4. Використання класів і об'єктів.

Процедура 1. Виконується аналіз проблемної сфери (вводяться класи та об'єкти), розробляються основні механізми, що забезпечують поведінку об'єктів. Для виконання проектних дій проектувальник повинен засвоїти термінологію й основні теоретичні положення проблемної сфери.

Процедура 2. Проводиться опис шаблонів, відповідних класів та об'єктів. Будуються діаграми класів або об'єктів (рис. 4.1).

http://dn.khnu.km.ua/dn/k_img.aspx?M=k0998&T=04&I=image001&R=jpg

Рисунок 4.1 -Діаграма класів документів підприємства

Шаблон об'єкта:

Об'єкт

зміст

Ім'я

ідентифікатор

Документація

текст

Клас

ім'я класу

Сталість

сталий (статичний) динамічний

Ім'я

ідентифікатор

Документація

текст

Відображення

експорт/ відокремити/ імпорт

Множинність

0/ 1 /п

Ієрархія:

Суперклас

список імен класів

Метаклас

ім'я класу

Узагальнені

параметри

список параметрів

Інтерфейс/Реалізація

загальнодоступна/ захищена

Використання

список імен класів

Поля

список, імен полів

Операції

список операцій класів

Кінцевий автомат

діаграма переходу станів

Паралельність

послідовність виконання

Ємність пам'яті

/відстрочене/ активне

текст

Сталість

статична /динамічна/

Різнілінії зв’язку на діаграмі класів позначають різні відношення між класами, змістом класів та об'єктів, заданих на попередньому кроці. Складання протоколу для об'єкта може потребувати прийняття рішень, що визначають зміст іншого об'єкта.

Процедура 3. Цей крок розглядається як продовження попереднього. Його результатом є логічні моделі проекту, модульні діаграми, прототипи елементів проектованої системи.

Процедура 4. Приймається рішення про включення в систему конкретних класів і об'єктів. Розподіляються класи та об'єкти по окремих модулях, а програми — по процесорах. Його результатом є кінцеве дороблення структури класів, кінцеві варіанти шаблонів, модульні діаграми та діаграми процесів.

Життєвий цикл розроблення інформаційної системи

Для традиційного циклу розроблення ІС характерним є лавиноподібне наростання її складності (рис. 4.2). Недоліками цієї схеми є непридатність для розроблення складних програмних систем, що складаються з великої кількості автономних модулів, а також несумісність із перспективними методами розроблення, тобто з можливостями автоматичного програмування, трансформації програм і застосування засобів, які ґрунтуються на БЗ.

http://dn.khnu.km.ua/dn/k_img.aspx?M=k0998&T=04&I=image002&R=jpg

Рисунок 4.2 - Традиційний цикл розроблення ІС

Цикл розроблення ІС з використанням об'єктно-орієнтованого підходу характеризується ітеративним рухом із можливістю багаторазових повернень на попередні стадії (рис. 4.3).

http://dn.khnu.km.ua/dn/k_img.aspx?M=k0998&T=04&I=image003&R=jpg

Рисунок 4.3 -Цикл розроблення ІС на основі OOD

Порівняно з традиційними методами об'єктна технологія має такі переваги:

- дає змогу розробникам складати нові прикладні програми з готових модулів;

- дає змогу користувачам і розробникам оперувати у програмі тими самими процесами, з якими їм доводиться мати справу на рівні звичайних практичних понять і термінів;

- підтримує багатий набір форм подання інформації для засобів multimedia;

- підтримує повторне використання окремих складових ПЗ;

- забезпечує створення більш відкритих систем;

- знижує ризик під час розроблення системи;

- активізує пізнавальні здібності людини.

Отже, об'єктна технологія вигідно відрізняється від традиційної.

Література для самоосвіти: 1, 4, 3.

Запитання.

1.Охарактеризуйте сучасний підхід до проектування програм на основі декомпозиції.

2.У чому полягають особливості модульного програмування? 3. Зяких елементів складається функціональна декомпозиція?

4.Визначте особливості структурного аналізу проекту SADT.

5. Що спільного і відмінного містять у собі проектування на основі структур даних і проектування з використанням потоку даних?

6.У чому виявляються відмінності методології НІРО від інших методологій?

7.З'ясуйте сутність методології, орієнтованої на дані.

8.Наведіть особливості об'єктно-орієнтованої методології проектування.

9.Обґрунтуйте переваги об'єктної технології порівняно з традиційними.

© Хмельницький нацiональний унiверситет
29016 Україна м.Хмельницький вул.Iнститутська 11