
- •3 Інженерія вимог
- •3.1 Інженерія вимог як процес
- •3.2 Концептуальне моделювання проблеми
- •3.2.1 Мета
- •3.2.2 Онтологія домену
- •3.2.3 Моделі динамічних явищ домену
- •3.2.4 Модель алгоритмів
- •3.3 Об’єктно-орієнтована інженерія вимог
- •3.4 Метод інженерії вимог с. Шлеєр та с. Меллора
- •3.4.1 Інформаційна модель або онтологія домену. Пошук об’єктів
- •3.4.2 Модель станів
- •3.4.3 Модель процесів
- •3.4.4 Продукти інженерії вимог за методом с. Шлеєр та с. Меллора
- •3.5 Метод інженерії вимог і. Джекобсона
- •3.5.1 Концепція моделі сценаріїв для складання вимог
- •3.5.2 Модель аналізу вимог. Визначення об’єктів
- •3.5.3 Продукти інженерії вимог за методом і. Джекобсона
- •5.2 Діаграми класів
- •5.3 Діаграми сценаріїв
- •5.4 Діаграми моделювання поведінки системи
- •5.5 Діаграми послідовності
- •5.6 Діаграми співробітництва
- •5.7 Діаграми діяльності
- •5.8 Діаграми станів
- •5.9 Діаграми реалізації
- •5.9.1 Діаграми компонент
- •5.9.2 Діаграми розміщення
- •5.10 Пакети в uml
- •Література
- •Глосарій
3.4.3 Модель процесів
Модель станів об’єктів, за допомогою якої висуваються вимоги до поведінки системи (див. п. 3.4.2), передбачає у своєму складі опис певних дій, котрі супроводжують зміни станів об’єктів. Дії є алгоритмами, що виконуються системою як реакції на події і визначають її функціональність. Розуміння вимог до системи передбачає і розуміння зазначених вище дій, інколи досить складних. Способом, що пропонується для подолання труднощів розуміння дій у даному методі, є декомпозиція їх на окремі складові, які отримали назву процесів. Послідовність виконуваних процесів утворює потік керування; воднораз процеси під час виконання обмінюються даними, що утворюють потоки даних; два зазначені типи потоків пропонується використовувати як моделі алгоритмів дій системи, для подання котрих у даному методі передбачено спеціальну нотацію, якій присвоєно назву діаграми потоків даних дій (ДПДД). Як джерела даних допускаються:
атрибути об’єктів (що звичайно зберігаються в архівах - файлах або базах даних, які існують і після завершення роботи системи);
системний годинник як показник системного часу;
таймери (див. п. 3.4.2);
дані подій;
повідомлення зовнішніх об’єктів (людей-операторів, приладів тощо). Правила побудови ДПДД подано нижче:
кожному з ДПС станів може відповідати тільки одна ДПДД;
процес зображається на ДПДД як овал, всередині якого подано зміст або назву процесу;
потоки даних зображено як стрілки, на яких вказуються ідентифікатори даних, що передаються від процесу до процесу; напрямок стрілки до овалу позначає дані, які є входами до процесу, напрямок від овалу - виходи;
джерела даних зображено як прямокутні рамки чи рамки з відкритими сторонами;
якщо джерелами даних є архівні об’єкти, відповідні потоки маркуються назвами атрибутів об’єктів, що передаються потоками, при цьому назва відповідного об’єкта може не вказуватися;
потоки даних від таймера маркуються назвою таймера;
потоки даних від системного годинника маркуються назвами показників часу (час, година, хвилина, день тощо);
подія, повідомлення про яку отримує процес, зображається як стрілка, котра маркується назвами даних подій;
якщо процес, який створив подію, та процес, який приймає повідомлення про подію, обидва належать до тієї самої ДПДД, відповідний потік пов’язує такі процеси;
якщо подія, яку створив процес певної ДПДД, передається до процесу з іншої ДПДД, для першого із вказаних процесів вона позначається стрілкою, котра веде від процесу в "нікуди", а для другого - до процесу з "нізвідки", причому обидва рази стрілка маркується даними події, які передаються.
Процеси розрізняються за такими типами:
так званий аксесор, що здійснює доступ до архівів;
генератор подій;
перетворювач даних (обчислення);
перевірка умов.
Потоки керування на ДПДД позначаються пунктирними стрілками.
Якщо процес являє собою перевірку певної умови, при виконанні котрої здійснюється передавання керування до іншого процесу, то відповідний потік керування зображається перекресленою пунктирною стрілкою.
Приклад ДПДД наведено на рис. 3.6.
Рисунок 3.6 - Приклад ДПДД
До ДПДД додається неформальний опис функцій процесів, які входять до її складу. Нотація для опису подробиць дії процесів у даному методі не регламентується і залежить від смаків авторів.
Після побудови всіх ДПДД для всіх об’єктів системи доцільно побудувати загальну таблицю процесів для станів, до якої входять такі колонки:
- ідентифікатор процесу;
- тип процесу (див. вище);
- назва процесу;
- назва стану, в якому визначено процес;
- назва дії стану.
Створення такої таблиці має декілька цілей. По-перше, таблиця дає можливість перевірити несуперечність назв та ідентифікаторів процесів, по-друге, перевірити повноту визначених подій та процесів, по-третє, перевірити, чи всі визначені події генеруються певним процесом і чи всі згенеровані події обробляються певним процесом. Крім того, наявність такої таблиці дає можливість виявити процеси, спільні для кількох дій чи станів і уніфікувати їх.
Рекомендовано мати три зразки такої таблиці, кожен з яких має бути впорядковано за окремим критерієм (ключем): за ідентифікатором процесу, за моделлю станів, в яких процес використано, та за типом процесу.