2. Характеристики CASE технологій

З появою сучасної обчислювальної техніки системний аналіз зна­чно розширив свої можливості і все більше входить у повсякденну практику. Протягом останніх ЗО років виникла і інтенсивно розвивають­ся комп' ютерні засоби аналізу систем. Спочатку вони використовува­лись для побудови інформаційних систем і були відомі як CASE техно­логії [18-21]. Термін CASE (Computer Aided Software Engineering) вико­ристовується і в даний час доволі широко. Первісне значення терміну CASE, обмежене питаннями автоматизації розробки тільки програмного забезпечення інформаційних систем, сьогодні одержало нове звучання і охоплює процеси аналізу складних організаційних і технічних систем. Тепер під терміном CASE-засоби розуміють програмні засоби, що підт­римують процеси аналізу і формулювання вимог до складних систем різного призначення, процеси створення і супроводження інформацій­них систем, засоби проектування приладного програмного забезпечен­ня.

Одним з напрямків цих технологій є методологія структурного аналізу та проектування - SADT методологія (Structured Analysis and Design Technique). Цей напрямок розробки програмних засобів обчис­лювальної техніки виник в 60 - 70х роках минулого сторіччя і знайшов розвиток в роботах Дугласа Росса та інших авторів [22]. Він широко застосовується при вирішенні проблем аналізу проектування та експлу­атації складних систем. На його основі розроблена методологія IDEF0 (Icam DEFinition), що є головною частиною програми ICAM (Інтеграція комп' ютерних і промислових технологій), виконаної з ініціативи ВВС США. Методологію системного структурного аналізу використовують НАТО, Міжнародний валютний фонд, інші міжнародні організації та передові промислові фірми [21-25]. У 90-х роках минулого сторіччя бу­ли розроблені і прийняті міжнародні стандарти з використання SADT -технологій та побудови моделей складних систем, відомих як IDEF -моделі [2б,27]. Ці моделі застосовують для розробки і вироблення стра­тегічних напрямків розвитку, для аналізу бізнес-процесів та ін. Харак­терними рисами вказаних технологій є :

• чітка мова опису систем, що має універсальний характер;

• використання комп'ютерної техніки;

• стандартизація;

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

Розглянемо ці особливості комп' ютерних технологій: Мова опису систем в SADT - технологіях - це певна графічна мо­ва зі строгими правилами, які ми вивчатимемо далі. Вона має універса­льний характер і дозволяє описати найширше коло систем штучного і природного характеру, технічних та організаційних систем.

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

Стандартизація дозволяє: подолати різноманітність підходів до вирішення проблем системного аналізу, розуміти і використовувати вказану методологію спеціалістами різних наукових напрямків, керів­никами та рядовими виконавцями, знаходити розуміння між спеціаліс­тами різних країн. Основні нормативні документи затверджуються в міжнародних стандартах. Ці стандарти видають такі організації, як ISO та IEC (ISO - International Organization of Standardization - Міжнародна організація із стандартизації, IEC - International Electro technical Com­mission - Міжнародна комісія з електротехніки).

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

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

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

• моделі, орієнтовані на функції систем (функціональні моделі),

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

Першу групу моделей прийнято називати функціональними мо­делями, а другу - моделями даних, або інформаційними моделями. Уфункціональних моделях головну роль відіграють функції, що викону­ють певні частини системи, а об' єкти системи служать інтерфейсами (зв' язками), які об' єднують ці функції. Моделі даних є ніби дзеркальним відображенням функціональних моделей. У них головна роль відво­диться об' єктам системи (їх часто називають даними) а зв' язками між ними служать певні функції. Функціональні моделі відомі під позначен­ням IDFE0 - моделей, моделі даних - IDFEl. Ми обмежимо знайомство з цими технологіями тільки IDEF та деякими іншими найбільш розпо­всюдженими моделями. У цьому курсі ми здійснимо тільки перше зна­йомство з вказаними моделями. Більш детальне вивчення цих моделей є предметом інших дисциплін.

Для практичного використання CASE - технологій розроблені програмні продукти, що розповсюджуються на правах ліцензування. Оскільки кожний з програмних засобів охоплює тільки певне обмежене коло завдань, то засоби CASE - технологій об'єднують у комплекси і видають разом. Приклади таких комплексів наведено в [17 - 20]. Серед вказаних комплексів знаходяться пакети фірми Platinum: Designer/2000, куди входять програми BРwin та ЕRwin. Взаємозв'язок програмних продуктів, показано на рис. 22.

 

Пакет ВРwin дозволяє створювати моделі:

• IDEF0 (Icam DEFinition) - функціональна модель системи;

• IDEF3 - логічна модель послідовності робіт;

• DFD (Data Flow Diagrams) - модель потоків даних,

а також виконувати функціонально-вартісний аналіз (ФВА). Пакет ЕRwin призначений для створення моделей даних, а саме:

• IDEFlx - логічна і фізична моделі даних;

• ERD (Entity-Relationship Diagrams) модель "сутність - зв'язок", а також для встановлення взаємозв' язку між моделями даних і система­ми керування базами даних (СКБД).

Крім програмних продуктів ВРwin та Епуіп, у пакет програм вхо­дять:

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

• Easy ABC - розширений пакет функціонально-вартісного аналі­зу (ФВА), призначений для розширення можливостей виконання ФВА складних систем, коли засоби пакету Врwin недостатні;

• інтерфейси з мовами програмування Power Builder, Visual Basic, Delphi;

• засоби об'єктно орієнтованого програмування Rational Rose UML, Paradigm Plus;

• засоби генерації на основі логічної моделі даних прикладних програм в основних типах систем керування базами даних (СКБД DB2, Oracle, FoxPro, Access та ін.) і зворотної генерації прикладних програм у логічні моделі даних пакету Erwin.

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

Всі найбільш відомі методології структурного програмування ба­зуються на ряді загальних принципів. В якості основних двох базових принципів використовують такі [22]:

ll9

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

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

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

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

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

• принцип узгодженості - полягає в обґрунтованості та узгодже­ності елементів;

• принцип структурування даних - полягає в тому, що усі дані повинні бути структуровані й ієрархічно організовані.

Побудова 8ЛЕ)Т-моделі розпочинається з представлення всієї си­стеми у вигляді найпростішої компоненти - одного блока і дуг, що пока­зують зв'язки системи із зовнішнім середовищем. Оскільки єдиний блок представляє всю систему як одне ціле, ім'я, яке вказують в середині блоку, є загальним і відноситься до всієї системи. Вхідні й вихідні дуги також загальні і дають повний набір зовнішніх зв' язків системи в ціло­му.

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

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

Модель 8ЛЕ)Т являє собою серію діаграм із супровідною доку­ментацією. Ці діаграми розбивають складний об' єкт на складові части­ни, зображені у вигляді блоків. Деталі кожного блоку показані у вигляді діаграм декомпозиції.

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

Під час виконання системного аналізу з використанням вказаних програмних продуктів створюють, як правило, не одну а декілька моде­лей, а саме: модель AS-IS (як є) - модель, що описує систему в тому стані, в якому вона знаходиться в даний момент часу, та моделі TO-BE (як буде) - моделі, що описують систему після того, як будуть впоряд­ковані й удосконалені всі процеси в системі, тобто моделі ідеальної сис­теми, яка, на нашу думку, найбільш раціонально організує роботу сис­теми. Методологія передбачає побудову декількох моделей TO-BE з тим, щоб серед них можна було вибрати кращу за певними критеріями.