Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

ОМПС. Діаграми діяльності




При моделюванні поведінки системи виникає необхідність деталізувати особливості алгоритмічної та логічної реалізації операцій. Традиційно з цією метою використовують блок-схеми або структурні схеми алгоритмів. Кожна така схема акцентує увагу на послідовності виконання певних дій (або елементарних операцій),

які в сукупності спричинюють до отримання бажаного результату.

Для моделювання процесу виконання операцій у мові UML використовують діаграму діяльності, яка зображається графом, вершинами якого є стани (дій і/або видів діяльності), а дугами – переходи від одного стану (дій/виду діяльності) до іншого стану (дій/виду діяльності).

Головним напрямом використання діаграм діяльності є візуалізація особливостей реалізації операцій класів, коли необхідно зобразити алгоритми їхнього виконання. При цьому кожен стан дії може бути виконанням операції деякого класу, а вид діяльності –

послідовністю таких дій.

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

декілька прецедентів або протікати у рамках одного прецеденту.

У контексті мови UML вид діяльності (асtivity) є деякою сукупністю окремих елементарних обчислень. Щодо цього окремі елементарні обчислення можуть спричинювати до деякого результату або дії (асtion). На діаграмі діяльності відображається логіка або послідовність переходу від однієї діяльності до іншої, у цьому

випадку увага фіксується на результаті діяльності, який може спричинити зміну стану системи або повернення деякого значення.

Елементи діаграми діяльності: стани видів діяльності (асtivity), стани дій (асtion state, чи state), переходи (transition), точки прийняття рішення або галуження (decision), вертикальна/горизонтальна смуги синхронізації (synchronization) і доріжки (swimlanes).

Після того, як діаграму діяльності буде активовано, панель інструментів набуде такого вигляду (рис. 3.9).

Рис. 3.9. Панель інструментів діаграми діяльності

Наведемо детальні характеристики виду діяльності:

• послідовність дій, яка виконується об’єктом регулярно;

• неатомарний (тобто його можна перервати);

• можна розбити на декілька дрібніших видів діяльності;

• записують на природній мові.

Дія є атомарною, тобто її перервати не можна. Стан дії не може мати внутрішніх переходів, оскільки він є елементарним. Звичне використання станів дії полягає в моделюванні одного кроку виконання алгоритму (процедури) або потоку керування. Водночас вид діяльності моделює блок, процедуру чи потік керування як єдине ціле.

Дія може бути записана на природній мові, на деякому псевдокоді або мові програмування. Жодних додаткових або неявних обмежень під час запису дій не накладається. Рекомендується для назви простої дії використовувати дієслово зі словами пояснень.

Якщо ж дію можна представити в деякому формальному вигляді, то доцільно записати її на тій мові програмування, на якій передбачено реалізацію конкретного проекту.

У мові UML вид діяльності та стан дії позначають однаково:

прямокутником з вигнутими назовні бічними сторонами (для виду діяльності ця випуклість є більшою порівняно з дією). Різниця між видом діяльності та станом дії є очевидною за контекстом.

Кожна діаграма видів діяльності повинна мати єдиний початковий (start state) і єдиний кінцевий стан (end state). Саму діаграму діяльності прийнято розташовувати так, щоб види діяльності/дії слідували зверху вниз. У цьому випадку початковий стан зобража-

тиметься у верхній частині діаграми, а кінцевий – в її нижній частині.

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

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

Подібний випадок трапляється тоді, коли послідовно виконувана діяльність повинна розділитися на альтернативні гілки залежно від значення деякого проміжного результату. Таку ситуацію називають галуженням.

Графічно галуження на діаграмі діяльності позначається невеликим ромбом, усередині якого немає жодного тексту. В цей ромб може входити тільки одна стрілка від того стану дії, після виконання якого потік керування повинен бути продовжений однією

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

Приклад галуження наведено на рис. 3.10.

 

Рис. 3.10. Діаграма видів діяльності розв’язування квадратного рівняння

Станами діаграми діяльності на рис. 3.10 є тільки види діяльності. На рис. 3.11 діаграма містить стани дій і видів діяльності.

Рис. 3.11. Детальна діаграма видів діяльності розв’язування квадратного рівняння

Для відображення на діаграмах діяльності моментів розділення і злиття паралельних обчислень чи потоків керування використовують горизонтальну/вертикальну товсту лінію (смугу синхронізації). На рис. 3.10 і 3.11 горизонтальну смугу синхронізації використовують для злиття паралельних обчислень.

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

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

цем. У цьому випадку підрозділ чи окремий виконавець несе відповідальність за реалізацію окремих дій, а сам бізнес-процес зображається як перехід дій з одного підрозділу/виконавця до іншого.

Для моделювання цих особливостей у мові UML використовують спеціальну конструкцію – доріжку (swimlanes). Щодо цього всі дії на діаграмі діяльності діляться на окремі групи, які відокремлено одну від одної вертикальними лініями. Дві сусідні лінії утворюють доріжку, а група станів між цими лініями виконується окремим підрозділом (відділом, групою, філіалом) компанії.

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

Рис. 3.12. Діаграма видів діяльності Створення каталогу курсів

 

 




Поделиться с друзьями:


Дата добавления: 2015-05-07; Просмотров: 7461; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.018 сек.