Крок 4. Довизначення функцій

Лабораторна робота № 7

Методика Джексона аналізу та проектування ПС.

 

Завдання. Розробити комп’ютерну систему для обслуговування університетських перевезень.

Опис системи:

  • Університет розміщується на двох територіях.
  • Для переміщення студентів використовується один транспорт. Він переміщується між двома фіксованими зупинками. На кожній зупинці є кнопка виклику. При натисканні кнопки:

- Якщо транспорт на зупинці, то студенти заходять в нього та переміщуються на іншу зупинку.

- Якщо транспорт зайнятий, то студенти чекають прибуття на іншу зупинку прийому студентів і повернення на поточну зупинку.

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

  • Транспорт повинен стояти на зупинці д появи запиту на обслуговування.

Розв’язання.

Крок 1. Об’єкт – дія.

Об’єкти:

1) __________________________________________________________________

2) _________________________________________________________________

3) _________________________________________________________________

4) _________________________________________________________________

5) _________________________________________________________________

(-) – позначили об’єкти, які не належать області моделі.

Дії:

1) __________________________________________________________________

2) _________________________________________________________________

3) _________________________________________________________________

4) _________________________________________________________________

5) _________________________________________________________________

(-) – позначили дії, які відносяться до об’єктів, що не належать області моделі.

 

Крок 2. Об’єкт – структура.

Об’єктна структура для транспорту має вигляд:

 
 

 


Опис: Початок і кінець історії транспорту у першої зупинки. Діями, що впливають на об’єкт, являються “Покинути” та “Прибути”.

Структурна діаграма для об’єкту кнопка:

 

 

Крок 3. Початкове моделювання.

Діаграма системної специфікації для системи обслуговування перевезень має вигляд:

   
 
 
 

 


Структурний текст для моделі Кнопка-1 має вигляд:

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

Структурний текст моделі транспорт-1 з введенням функцій чекати(зміна стану транспорту) та транзит(операція затримки в моделі на рух між зупинками) має вигляд:

Трананспорт-1

Опитування SV;

Чекати цикл доки прибув(1)

Опитування SV;

Кінець чекати;

Покинути(1);

Транзит цикл доки відбув(1)

Опитування SV;

Кінець транзит;

Транспорт цикл

Зупинка

Прибути(і);

Чекати цикл доки прибув(і)

Опитування SV;

Кінець чекати;

Покинути(і);

Транзит цикл доки відбув(і)

Опитування SV;

Кінець транзит;

Кінець зупинка;

Кінець транспорт;

Прибути(1);

Кінець транспорт-1.

Відповідна структурна діаграма:

 

 

Крок 4. Довизначення функцій

Убудовану функцію введемо в модель Транспорт-1. Припустимо, що в моделі є панель з лампочкою, що сигналізує про прибуття. Лампочка включається командою LON(і), а виключається командою LOFF(і). В міру переміщення транспорту між зупинками формується потік LAMP-команд. Модифікований структурний текст моделі Транспорт-1 приймає вид:

ТРАНСПОРТ-1

LON(1);

опитування SV;

чекати цикл доки прибув(1)

опитування SV;

кінець чекати;

LOFF(1);

залишити(1);

транзит цикл доки відбув(1)

опитування SV;

кінець транзит:

транспорт цикл

зупинка;

прибути(і);

LON(і);

чекати цикл доки прибув(i)

опитування SV;

кінець чекати;

LOFF (і);

Залишити(і);

транзит цикл доки відбув(і)

опитування SV;

кінець транзит;

кінець зупинка;

кінець транспорт;

прибути(і);

кінець ТРАНСПОРТ-1:

Введемо функцію враження. У нашому прикладі вона може формувати команди для мотору транспорту: START, SТОР.

Умови вироблення цих команд.

  • Команда SТОР формується, коли датчики реєструють прибуття транспорту на зупинку.
  • Команда START формується, коли натиснута кнопка для запиту транспорту і транспорт чекає на одній із зупинок.

Для реалізації функції враження уведемо функціональний процес М-КЕРУВАННЯ. Він буде обробляти зовнішні дані і формувати команди START н SТОР.

Ясно, що процес М-КЕРУВАННЯ повинен мати зовнішні зв'язки з моделями ТРАНСПОРТ-1 і КНОПКА. З'єднання з моделлю КНОПКА організуємо через вектор стану ВV. З'єднання з моделлю ТРАНСПОРТ-1 організуємо через потік даних S1D.

Для забезпечення М-КЕРУВАННЯ необхідною інформацією знову треба змінити структурний текст моделі ТРАНСПОРТ-1. У ньому передбачимо занесення повідомлення Прибув у буфер S1D:

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

Очевидно, що при такому зв'язку процесів необхідно гарантувати, що процес ТРАНСПОРТ-1 виконує операції опитування SV, а процес М-КЕРУВАННЯ читає повідомлення Прибуття в S1D з частотою, достатньої для своєчасної зупинки транспорту. Тимчасові обмеження, планування і реалізація повинні розглядатися на наступних кроках проектування.

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

Діаграма додаткового процесу КНОП КА-2, у якому враховане це уточнення, показана на мал.

Зовнішні зв'язки моделі КНОПКА-2 повинні включати:

  • одне з'єднання з моделлю КНОПКА-1 - організується через потік даних B1D (для прийому повідомлення про натискання кнопки);
  • Два з'єднання з процесом М-КЕРУВАННЯ - одне організується через потік даних МВD (для прийому повідомлення про прибуття транспорту), інше організується через вектор стану ВV (для передачі стану перемикача Запит).

У такий спосіб. КНОПКА-2 читає два буфери даних, заповнюваних процесами КНОПКА-1 і М-КЕРУВАННЯ, і формує стан внутрішнього електронного перемикача Запит. Вона реалізує функцію діалогу.

 

 


Структурний текст моделі КНОПКА-2 може мати наступний вид:

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

 

Діаграма системної специфікації, що відбиває всі зміни, представлена на мал.

 

 

 


Вбудована в ТРАНСПОРТ-1 функція виробляє Lамр-команды, функція враження моделі М-КЕРУВАННЯ генерує команди керування мотором, а модель КНОПКА-2 реалізує функцію діалогу (разом із процесом М-КЕРУВАННЯ).