Скачать презентацию ЛК 13 — Моделювання стану програмних систем Скачать презентацию ЛК 13 — Моделювання стану програмних систем

ЛК.13 - Моделювання стану програмних систем.ppt

  • Количество слайдов: 28

ЛК. 13 - Моделювання стану програмних систем ЛК. 13 - Моделювання стану програмних систем

Перелік питань Місце аналізу стану у загальному процесі ОО аналізу і проектування. 2. Визначення Перелік питань Місце аналізу стану у загальному процесі ОО аналізу і проектування. 2. Визначення діаграми стану. 3. Представлення діаграм стану у UML. 4. Основні елементи діаграми стану. 5. Предмет діаграми стану. 6. Деталізація діаграми стану. 7. Об’єкти, які не залежать і залежать від стану. 8. Суперстан. 9. Паралельні стани. 10. Зв’язок діяльності, вхідних, вихідний дій та подій із станом. 11. Побудова діаграм стану для прецедентів. 12. Область використання діаграм стану. 13. Рекомендації стосовно використання діаграм стану в залежності від типу подій, які моделюються. Питання, що виносяться на самостійне вивчення студентом (1 год. ): 1. Моделювання діаграм стану для системи роздрібної торгівлі. 1.

Питання 1. Місце діаграм стану у загальному процесі ОО аналізу і проектування Вимоги Діаграми Питання 1. Місце діаграм стану у загальному процесі ОО аналізу і проектування Вимоги Діаграми прецедентів Діаграми стану Концептуальні діаграми Діаграми класів Діаграми послідовностей Діаграми співробітництва

Питання 2. Визначення діаграми стану Діаграма стану ілюструє події та стани об’єктів. Використання діаграм Питання 2. Визначення діаграми стану Діаграма стану ілюструє події та стани об’єктів. Використання діаграм стану, в основному, орієнтовано на відображення системних подій, описаних у вигляді прецедентів, однак вони можуть бути використані і у ряді інших випадків. Визначення: Діаграма стану – це представлення системи у вигляді кінцевого автомату. Кожен стан – це такий період життєвого циклу об’єкту, який задовольняє певним умовам. Певна подія може привести до такого переходу, у результаті якого об’єкт виявиться у новому стані. Під час переходу може виконуватися відповідна дія.

Питання 3. Представлення діаграм стану у UML Питання 3. Представлення діаграм стану у UML

Питання 4. Основні елементи діаграми стану Подія (event) – важлива подія, яка впливає на Питання 4. Основні елементи діаграми стану Подія (event) – важлива подія, яка впливає на стан об’єкта. Приклад: зняття телефонної слухавки. Стан (state) – умова, в якій знаходиться об’єкт між двома подіями. Приклад: телефон знаходиться в стані очікування з того моменту, як слухавка покладена на важіль і до того моменту, як вона була знята. Перехід (transition) – це таке співвідношення між двома станами, яке вказує на перехід об’єкта із одного стану в інший при виконанні певної події. Приклад: у випадку події “зняття слухавки” телефон переходить із стану очікування в стан активності.

Питання 5. Предмет діаграми стану Діаграми стану можна будувати для різних елементів мови UML, Питання 5. Предмет діаграми стану Діаграми стану можна будувати для різних елементів мови UML, зокрема: Програмні класи; Типи (поняття); Прецеденти. Оскільки всю систему можна представити у вигляді типів (понять), чи набору підсистем предметної області, то система в цілому може бути представлена у вигляді діаграми стану.

Питання 6. Деталізація діаграми стану Діаграма стану відображає життєвий цикл об’єкту. На ній зображуються Питання 6. Деталізація діаграми стану Діаграма стану відображає життєвий цикл об’єкту. На ній зображуються події, в яких приймає участь об’єкт, переходи та стани об’єкта між подіями. На діаграмі не має потреби зображувати всі події. Якщо виникає певна подія, не передбачена діаграмою, то вона ігнорується. Відповідно, можна створювати діаграми стану з довільним ступенем деталізації чи спрощення в залежності від існуючих потреб.

Доріжки У діаграмах діяльності можливо відобразити той факт, що певні сукупності дій в ПС Доріжки У діаграмах діяльності можливо відобразити той факт, що певні сукупності дій в ПС можуть виконуватися деякими суб’єктами, наприклад, окремі бізнес-процеси є асоційованими з конкретними підрозділами компанії або дії щодо обробки даних розподіляються між клієнтським додатком та сервером. Для моделювання цих особливостей в мові UML використовується спеціальна конструкція, що отримала назву доріжки (swimlanes). Мається на увазі візуальна аналогія з плавальними доріжками в басейні, якщо дивитися на відповідну діаграму. При цьому всі стани дії на діаграмі діяльності діляться на окремі групи, які відділяються один від одного вертикальними лініями. Дві сусідні лінії і утворюють доріжку, а група станів між цими лініями виконується окремим суб’єктом: відділом компанії, групою користувачів, програмним додатком тощо.

Доріжки - приклад Доріжки - приклад

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

Питання 8. Суперстан Деякі діаграми можуть бути перевантажені переходами і є складними для розуміння. Питання 8. Суперстан Деякі діаграми можуть бути перевантажені переходами і є складними для розуміння. Суперстан – спосіб об’єднання елементів діаграми стану таким чином, щоб логічно виділити окремі елементи діаграми, які фактично відповідають за перебуття об’єкту у певному стані більш високого рівня абстракції Суперстан дозволяє об’єднати певну групу підстанів. Незалежно від того, в якому із підстанів перебуває об’єкт, якщо виникає подія, зображена за межею суперстану, то відбувається переход у один із станів за межею суперстану

Приклад використання суперстану: діаграма без суперстану Приклад використання суперстану: діаграма без суперстану

Приклад використання суперстану: діаграма із суперстаном Приклад використання суперстану: діаграма із суперстаном

Питання 9. Паралельні стани Деякі об’єкти перебувають у паралельних станах: різні події незалежно впливають Питання 9. Паралельні стани Деякі об’єкти перебувають у паралельних станах: різні події незалежно впливають на різні атрибути об’єкта, однак у певні моменти часу об’єкт може перейти із набору паралельних станів у один загальний стан Паралельні стани можна представити декількома діаграмами стану, однак ці діаграми бажано було б розглядати одночасно За допомогою спеціальної техніки зображення паралельних станів можна вирішити проблему представлення паралельних станів

Приклад представлення паралельних станів Приклад представлення паралельних станів

Питання 10. Зв’язок діяльності, вхідних, вихідний дій та подій із станом. Із станом можна Питання 10. Зв’язок діяльності, вхідних, вихідний дій та подій із станом. Із станом можна пов’язувати наступні дані: Діяльність – поведінка, яка реалізується самим об’єктом, поки він знаходиться у певному стані (позначається “do: ”) Вхідні дії – поведінка, яка виконується, коли об’єкт переходить у певний стан (позначається “entry: ”) Вихідні дії – поведінка, яка виконується, коли об’єкт виходить із певного стану (позначається “exit: ”) Події – поведінка об’єкта під час діяльності при вхідних та вихідних діях може включати відправку події іншому об’єкту (позначається значком “^” перед подією)

Питання 11. Побудова діаграм стану для прецедентів Діаграми стану часто використовуються для опису допустимої Питання 11. Побудова діаграм стану для прецедентів Діаграми стану часто використовуються для опису допустимої послідовності зовнішніх системних подій, які визначаються і обробляються системою в контексті одного прецеденту. Приклад: В процесі реалізації прецеденту Купівля товару в програмі роздрібної торгівлі не можна виконати операцію make. Credit. Payment до виконання події end. Sale. В процесі реалізації прецеденту Обробка документу в текстовому процесорі не можна виконати операцію збереження файлу file. Save до подій file. New чи file. Save. Діаграма стану, яка відображає події системи та послідовність в рамках одного прецеденту, має назву діаграми стану прецеденту (use case state diagram)

Приклад діаграми стану для прецеденту “Купівля товару” Приклад діаграми стану для прецеденту “Купівля товару”

Питання 12. Область використання діаграм стану Діаграми стану є добрим способом опису поведінки певного Питання 12. Область використання діаграм стану Діаграми стану є добрим способом опису поведінки певного об’єкту у різних прецедентах, однак не дуже придатні для опису одночасно декількох об’єктів. Дані діаграми не обов’язово будувати для кожного класу, оскільки далеко не кожен клас має складний набір станів Бажано використовувати лише для тих класів, поведінку яких без наглядного представлення зрозуміти дуже складно Є ефективними для представлення інтерфейсу користувача, оскільки він може володіти складним набором станів і подій, які його змінюють

Приклад Приклад

Питання 13. Рекомендації стосовно використання діаграм стану в залежності від типу подій, які моделюються Питання 13. Рекомендації стосовно використання діаграм стану в залежності від типу подій, які моделюються Типи подій: Зовнішні Внутрішні Часові Основна ідея ОО підходу полягає у використанні об’єктів, які взаємодіють між собою шляхом передачі параметрів (надсилання подій) для виконання поставлених задач. Для моделювання цих подій використовуються діаграми взаємодії і послідовностей. Основне призначення діаграм стану: моделювання стану одного класу в залежності від різних подій. Фактично є аналогом блок-схем у структурному підході.

ПРИКЛАДИ ДІАГРАМ ПРИКЛАДИ ДІАГРАМ