Мережі Петрі як засіб побудови динамічних моделей підприємства
Метод моделювання «Мережі Петрі» був розроблений Адамом Петрі у 60-х роках ХХ ст. З того часу він став одним із найбільш визнаних стандартних методів моделювання процесів. У динамічному моделюванні підприємства метод мереж Петрі слугує засобом опису потоків бізнес-процесів.Для здійснення такого опису використовуються чотири базових конструктивних елементи (табл. 2.3).
Таблиця 2.3
КОНСТРУКТИВНІ ЕЛЕМЕНТИ МЕРЕЖ ПЕТРІ
Конструктивний елемент | Характеристика |
Стани: Стани несуть у собі символи роботи, що повинні опрацюватися в діяльності, яка йде за символом стану. Приклад символу в стані — комерційне замовлення, що буде прийняте і підтверджене. Стан може фіксувати певний тип символу роботи, описаний при визначенні стану | |
Дії управління: Дії управління відповідають за пересування символу роботи в потоці процесу. Є три можливості: · (X) OR-розвилка (напрям 1 або 2); · AND-розвилка (паралельний); · AND-поєднання (синхронізація) | |
Процеси: Ручні або автоматизовані дії, що перетворюють символ роботи зі cтану входу в інший символ роботи в стані виходу | |
Підпроцеси: Підпроцеси дозволяють структурувати процеси на більш низькому рівні |
Таблиця 2.4
КОНСТРУКТИВНІ БЛОКИ МЕРЕЖ ПЕТРІ
Конструктивний блок | Характеристика |
Розподіл дій: Діяльність розбита на дві дії B і C, виконані у зазначеному порядку | |
Дії, виконані паралельно: Діяльність розбита на дві дії B і C. Послідовність, у якій виконуються B і C, не має ніякого значення. Проте обидві повинні бути виконані до закінчення процесу | |
Спеціалізовані дії: Діяльність розбита на дві альтернативні дії B або C. На підставі визначеної діяльності стану B або C відібрані (не обидві, тому тільки або) OR-поєднанням — єдиним місцем виходу наприкінці процесу |
Закінчення табл. 2.4
Конструктивний блок | Характеристика |
Ітерація дій: Виконання дії припускає виконання діяльності B один або більшу кількість разів. Число ітерацій урегульоване під час визначення стану |
Моделювання потоку процесу через мережі Петрі базується на декількох принципах:
· діяльність починається, коли є принаймні один символ роботи у всіх поєднаних станах входу діяльності;
· діяльність споживає один символ роботи з кожного стану входу і продукує один символ роботи для кожного поєднаного стану виходу;
· дії управління мають спеціальні можливості (табл. 2.4):
¾ вони можуть множити один символ роботи зі стану входу і поміщати їх у два або більшу кількість станів виходу. Для цього будується конструкція AND-розвилка;
¾ вони можуть маршрутизувати символ роботи через процес, розміщаючи цей символ в один із поєднаних станів виходу, заснованих на певних станах. Цей засіб реалізується через конструкції OR-розвилки;
¾ вони можуть синхронізувати дії, виконані в рівнобіжних кроках. Для цього використовується конструкція AND-поєднання.
На основі досвіду моделювання процесів у потоках мереж Петрі можна зробити кілька рекомендацій:
· кожен потік процесу починається і закінчується тільки одним станом;
· вхід і вихід потоку повинні мати чітке й однозначне формування. Потрібно використовувати лише стандартні блоки. Це гарантує коректні мережі Петрі, що можуть бути реалізовані системою керування потоками;
· процес слід обмежувати п’ятьма-десятьма кроками. Якщо потрібна більша кількість кроків — будується підпроцес;
· поєднання сторінок не використовується. Достатньо структурувати процес ієрархічним методом.
Наведемо приклад бізнес-процесу «Циклічна інвентаризація на складах», скориставшись розглянутими вище засобами та правилами побудови мереж Петрі (рис. 2.14).
2.4. САSЕ-технології — інструментарій підтримки
життєвого циклу інформаційних систем
Практично жоден серйозний проект зі створення АІСУП не здійснюється без використання САSЕ-засобів. САSЕ (Computer-Aided Software / System Engineering) являє собою сукупність методологій аналізу, проектування, розробки і супроводження складних програмних систем, підтриману комплексом взаємопов’язаних засобів автоматизації. САSЕ — це інструментарій для
системних аналітиків, розробників і програмістів, що замінює їм папір і олівець комп’ютером для автоматизації процесу проектування і розробки програмного забезпечення.
Основна мета САSЕ полягає в тому, щоб відокремити початкові етапи (аналіз і проектування) від подальших етапів розробки, а також не обтяжувати розробників усіма деталями середовища розробки і функціонування системи. Чим більший обсяг робіт буде винесений на етапи аналізу й проектування, тим краще. Під час використання САSЕ трансформуються всі етапи життєвого циклу АІСУП, при цьому найбільші зміни стосуються етапів аналізу і проектування.
Крім автоматизації методологій і, як наслідок, можливості застосування сучасних методів системної і програмної інженерії САSЕ мають такі основні переваги:
1) поліпшують якість системи, що створюється, за допо-
могою засобів автоматичного контролю (передусім контролю проекту);
2) дозволяють за короткий час створювати прототип майбутньої системи, що дає змогу на ранніх етапах оцінити очікуваний результат;
3) прискорюють процес проектування і розробки;
4) звільняють розробника від рутинної роботи, дозволяючи йому цілком зосередитися на творчій частині розробки;
5) підтримують розвиток і супровід розробки;
6) підтримують технології повторного використання компонентів розробки.
Зараз існує два покоління САSЕ. Засоби першого покоління призначені для аналізу вимог, проектування специфікацій і структури системи і є першою технологією, адресованою безпосередньо системним аналітикам і проектувальникам. Вони включають засоби для підтримки графічних моделей, проектування специфікацій, редагування словників даних і концентрують увагу на початкових кроках проекту — системному аналізі, визначенні вимог, системному проектуванні, логічному проектуванні БД. Засоби другого покоління призначені для підтримки повного життєвого циклу розробки. В них насамперед використовуються засоби підтримки автоматичної кодогенерації, а також забезпечується повна функціональна підтримка для створення графічних системних вимог і специфікацій проектування; контролю, аналізу і зв’язування системної інформації, а також інформації щодо управління проектуванням; побудови прототипів і моделей системи; тестування, верифікації і аналізу згенерованих програм; генерації документів з проекту; контролю на відповідність стандартам по всіх етапах ЖЦ.
Нижче стисло характеризуються основні функціональні можливості САSЕ-засобів.
1) Спільна графічна мова. САSЕ забезпечує всіх учасників проекту (в тому числі й замовників) спільною мовою, наочною, строгою та інтуїтивно зрозумілою. Це дозволяє залучати замовника до процесу розробки, спілкуватися з експертами предметної області, захищати проект перед керівництвом, поділити діяльність системних аналітиків, проектувальників і програмістів, а також забезпечувати легкість супроводження і внесення змін у цільову систему:
Графічна орієнтація САSЕ полягає в тому, що програми є двовимірними схемами, набагато простішими у використанні, аніж описи на кілька сторінок.
2) Загальна БД проекту.Основа САSЕ — це використання БД-проекту (репозитарію) для зберігання всієї інформації про проект, яка може розподілятися між розробниками відповідно до їхніх прав доступу. Зміст репозитарію включає не тільки об’єкти різних типів, але і відносини між їх компонентами, а
також правила використання або опрацювання цих компонен-
тів. Репозитарій може зберігати понад 100 типів об’єктів, прикладами яких є діаграми, визначення екранів і меню, проекти звітів, описи даних, логіка опрацювання, моделі даних, моделі підприємства, моделі опрацювання, початкові коди, елементи даних і т. ін.
3) Інтеграція засобів. Наоснові репозитарію здійснюються інтеграція САSЕ-засобів і розподіл системної інформації між розробниками. При цьому можливості репозитарію забезпечують кілька рівнів інтеграції: загальний інтерфейс користувача по всіх засобах, передачу даних між засобами, інтеграцію етапів розробки через єдину систему подань фаз ЖЦ, передачу даних і засобів між апаратними платформами.
4) Підтримка колективної розробки й управління проектом. САSЕ підтримує групову роботу над проектом за допомогою засобів роботи в мережі, експорту-імпорту будь-яких фрагментів проекту для розвитку і/або модифікації, а також планування, контролю, управління, взаємодії, тобто функцій, необхідних для розробки і супроводження проектів. Ці функції також реалізуються на основі репозитарію. Зокрема, через репозитарій може здійснюватися контроль безпеки (обмеження доступу, привілеї доступу), контроль версій, контроль змін тощо.
5) Прототипування. Важливу роль в автоматизації ранніх етапів ЖЦ відіграють можливості підтримки прототипування. САSЕ дозволяє будувати швидкі прототипи системи, що дає змогу на ранніх етапах розробки оцінити, наскільки майбутня система влаштовує замовника і наскільки «дружня» вона майбутньому користувачеві.
6) Генерація документації. Вся документація з проекту генерується автоматично на базі репозитарію (як правило, на базі вимог відповідних стандартів). Безперечна перевага САSЕ полягає в тому, що документація завжди відповідає поточному стану справ, оскільки будь-які зміни в проекті автоматично відбиваються в репозитарії. Відомо, що за традиційних під-
ходів до розробки АІСУП документація щонайбільше запізнюється, а ряд модифікацій взагалі не знаходить у ній відображення.
7) Верифікація проекту. САSЕзабезпечує автоматичну
верифікацію і контроль проекту на повноту і спроможність
на ранніх етапах розробки, що впливає на успіх розробки в
цілому.
8) Автоматична кодогенерація. Кодогенерація здійснюється на основі репозитарію і дозволяє автоматично побудувати близько 80—90% об’єктних кодів або текстів програм мовами високого рівня. При цьому різними САSЕ-пакетами підтримуються практично всі відомі мови програмування, однак найчастіше як цільові мови виступають СОВОL, C і АDА.
9) Супроводження і реінжиніринг. Супроводження системи в межах САSЕ характеризується тим, що супроводжується проект, а не програмні коди. Засоби реінжинірингу і реверсного інжинірингу дозволяють продукувати схеми системи з її кодів та інтегрувати отримання схеми в проект, автоматично оновлювати документацію під час заміни кодів, автоматично змінювати специфікації при редагуванні кодів і т. ін.