Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектування інформаційних систем.doc
Скачиваний:
95
Добавлен:
21.09.2019
Размер:
28.77 Mб
Скачать

20.3.3.Вираз дії

Вираз дії (action expression) виконується в тому й лише в тому випадку, коли перехід спрацьовує. Являю собою атомарну операцію (достатньо просте обчислення), що виконується відразу після спрацьовування відповідного переходу до початку яких би то не було дій в цільовому стані. Атомарність дії означає, що вона не може бути перервана ніякою іншою дією до тих пір, поки не закінчиться її виконання. Дана дія може робити вплив як на сам об'єкт, так і на його оточення, якщо це з очевидністю виходить з контексту моделі. Вираз записується після знаку "/" в рядку тексту, приєднаному до відповідного переходу.

У загальному випадку, вираз дії може містити цілий список окремих дій, розділених символом ";". Обов'язкова вимога – всі дії зі списку повинні чітко розрізнятися між собою й слідувати в порядку їх запису. На синтаксис запису виразів дії не накладається ніяких обмежень. Головне – їх запис має бути зрозумілий розробникам моделі і програмістам. Тому найчастіше цей вираз записують на одній з мов програмування, яку передбачається використовувати для реалізації моделі.

Як приклад виразу дії (див. рис. 20.5) може служити "розірвати телефонне з'єднання” (телефонний номер), яка має бути виконана відразу після встановлення істинності ("істина") сторожової умови "поштова скринька на сервері порожня".

Іншим прикладом може служити очевидна ситуація з виділенням графічних об'єктів на екрані монітора при одноразовому натисненні лівої кнопки миші. Мається на увазі опрацювання сигналів від користувача при виділенні тих або інших графічних примітивів (піктограм). У цьому випадку відповідний перехід може мати наступний рядок тексту: "натиснута і відпущена ліва кнопка миші (координати) [координати в області графічного об'єкту] / виділити об'єкт (колір)”. Результатом цього тригерного переходу може бути, наприклад, активізація деяких властивостей об'єкту (розмір файлу в рядку стану) або подальше його видалення в корзину.

Примітка

Іноді після виразу дії може бути записане повідомлення у форматі: 'Л' <ім'я об'єкту приймача повідомлення> '.' <ім'я посланого повідомлення> '('<параметр>':'<тип>',)'. При цьому повідомлення має чисто інформаційний характер і не передає керування на об'єкт-приймач повідомлення.

15.4. Складений стан і підстан

Складений стан (composite state) – це складний стан, який складається з інших вкладених у нього станів. Останні виступатимуть по відношенню до першого як підстани (substate). Хоча між ними має місце відношення композиції, графічно всі вершини діаграми, які відповідають вкладеним станам, зображаються всередині символу складеного стану (рис. 20.6). У цьому випадку розміри графічного символу складеного стану збільшуються, так щоб вміщати в себе всі підстани.

Рис. 20.6. Графічне представлення складеного стану з двома вкладеними в нього послідовними підстанами

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