К.т.н. Жирякова І.А., Філіпов Є.Ю.

Східноєвропейський університет економіки і менеджменту, Україна

Використання CASE-систем при проектуванні інформаційних систем

В сучасних інформаційних технологіях важливе місце приділяється інструментальним засобам і середовищам розробки автоматизованих систем, зокрема, системам розробки й супроводу їх програмне забезпечення. Ці технології й середовища утворюють системи, що мають назву CASE-систем [1].

Використовується двояке тлумачення абревіатури CASE, що відповідає двом напрямкам використання CASE-систем. Перше з них – Computer Aided System Engineering – підкреслює спрямованість на підтримку концептуального проектування складних систем, переважно слабо структурованих. Далі CASE-системи цього напрямку будемо називати системами CASE для концептуального проектування. Друга назва – Computer Aided Software Engineering – переводиться, як автоматизоване проектування програмного забезпечення.

Серед CASE-систем для концептуального проектування розрізняють системи функціонального, інформаційного або поведінкового проектування. Найбільш відомою методикою функціонального проектування складних систем є методика SADT (Structured Analysis and Design Technique), запропонована в 1973 році Р.Росом [2], яка згодом стала основою міжнародного стандарту IEEE 1320.1-1998 IDEF0 (Integrated Definition 0).

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

Основні положення стандартів IDEF0 і IDEF1X використані також при створенні комплексу стандартів ISO 10303, що лежать в основі технології STEP для виводу в комп'ютерних середовищах інформації, що відноситься до проектування й виробництва в промисловості.

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

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

Серед інструментальних CASE-систем розрізняють інтегровані комплекси інструментальних засобів для автоматизації всіх етапів життєвого циклу програмного забезпечення (такі системи називають Workbench) і спеціалізовані інструментальні засоби для виконання окремих функцій (Tools). Засоби CASE-систем по своєму функціональному призначенню належать до однієї з наступних груп:

-засоби програмування;

-засоби керування програмним проектом;

-засоби верифікації (аналізу) програм;

-засоби документування.

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

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

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

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

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

CASE-система, як система проектування програмного забезпечення, містить компоненти для розробки структурних схем алгоритмів і "екранів" для взаємодії з користувачем в інтерактивних процедурах, засоби для інфологічного проектування баз даних, налагодження програм, документування, збереження "історії" проектування і т.п.

На ринку програмних продуктів є багато CASE-систем для концептуального проектування програмних систем. Найчастіше в них підтримується методологія IDEF. Широко відомі програми BPwin, ERwin, ООwin фірми Platinum Technology, Design/IDEF фірми Meta Software і інші.

BPwin (Business Processing) призначена для розробки функціональних моделей за методикою IDEF0.

ERwin призначена для розробки інформаційних моделей за методикою IDEF1X. В ній є засоби, що забезпечують інтерфейс із серверами баз даних (від користувача приховане спілкування на SQL-мові), переклад графічних зображень ER-діаграм в SQL-форми або у формати інших популярних систем керування базами даних, передбачено інтерактивні процедури для зв'язування дуг IDEF0 із атрибутами IDEF1X, тобто для встановлення зв'язків між BPwin і ERwin. У систему включені також типові для CASE-засобів розробки екранних форм.

OOwin служить для підтримки об’єктно-орієнтовних технологій проектування інформаційних систем. Один зі способів використання OOwin – деталізація об’єктно-орієнтовної моделі на базі створеної ER-моделі. При перетворенні ER в OO-подання сутності й атрибути стають класами (множинами подібних об'єктів). Класи можуть бути доповнені описом послуг класу, тобто виконуваних операцій, переданих параметрів і параметрів, що повертають події. Інший спосіб використання OOwin – реінжиніринг, адже модернізація проводиться на рівні існуючої моделі.

Система Design/IDEF (фірма Meta Software) призначена для концептуального проектування складних систем. З її допомогою розробляються специфікації, IDEF0- і IDEF1X-діаграми, словники даних, проводиться документування й перевіряється несуперечність проектів. Є додаткова система Design/CPN, що дозволяє проводити імітаційне моделювання на основі моделей, перетворених у мережі Петрі.

Методологія об’єктно-орієнтованого аналізу і проектування програмного забезпечення за методикою Г.Буча [3] з використанням мови UML реалізована в системах Rational Rose (фірма Rational Software Corporation), Platinum Paradigm Plus і Together (фірма Platinum Technology). В Rational Rose підтримується генерація коду по побудованих діаграмах класів, зворотне моделювання (тобто побудова UML-моделі по програмному коду на таких мовах, як C++, Java, Visual Basic, IDL CORBA), візуальне програмування. Мову UML застосовують і в ряді інших систем, наприклад, в інструментальному середовищі об’єктно-орієнтованого проектування програмного забезпечення Objecti (фірма Micro TOOL), у якій автоматично генерується програмний код по графічному UML-опису.

Ряд програмних продуктів, що реалізують IDEF-моделі, розроблені фірмою KBSI, зокрема, ProSim реалізує IDEF3, SmartER - IDEF1 і IDEF1X, SmartClass - IDEF4.

Поведінкове моделювання підприємств передбачене також у деяких системах реінжинірингу, наприклад, у системі BAAN IV.

Для перетворення функціональних або поведінкових моделей в імітаційні застосовують спеціальні програми. Так, разом із програмою BPWin для одержання імітаційних моделей використовують програму BPSimulator.

В своїй роботі ми скористалися однією з відомих CASE-систем візуального моделювання бізнес-процесів компанії Computer Associates, що реалізує методологію проектування IDEF0 та дає можливість доповнення моделей процесів діаграмами DFD та WorkFlow (IDEF3) – AllFusion Process Modeler (BPwin). Він дозволяє полегшити проведення обстеження підприємства та побудувати функціональні моделі для проведення функціонально-вартісного аналізу, який доцільно використовувати для оцінки ефективності бізнес-процесів.

При проектуванні автоматизованої інформаційної системи оперативного планування та управління транспортуванням продукції нами була створена модель бізнес-процесів, які відбуваються в підрозділах ТОВ «Нафтида» (м. Черкаси) з використанням стандарту IDEF0 [4], а саме: на рис. 1 представлено методи, ресурси, вхідні та вихідні дані, що вливають на функціонування системи та є життєво необхідними; на рис. 2 представлена поетапна структура процесів автоматизації, які здійснюються на підприємстві. Дані моделі допомагає більш чітко представити послідовність дій та операцій, які відбуваються під час функціонування системи. Ця картина не повна, але відображає всі найбільш важливі та вагомі процеси і не включає в себе форс мажорні ситуації, такі як розлив нафтопродукту чи вагомі недостачі при прийомі пального.

Рис. 1. Модель бізнес-процесів ТОВ «Нафтида».

Рис. 2. Поетапна структура процесів автоматизації ТОВ «Нафтида».

Література:

1.            Федорова Д.Э., Семенов Ю.Д., Чижик К.Н. CASE-технологии. - М.: Горячая линия Телеком, Радио и связь, 2005.

2.            Маклаков С.В. BPwin и ERwin: CASE-средства для разработки информационных систем. - М.: Диалог-МИФИ, 1999.

3.            Методология функционального моделирования. - М.: ИПК, Издательство стандартов, 2001.

4.            Пономаренко B.C. Проектування інформаційних систем: посібник - К.: Видавничий центр „Академія", 2002.