МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ТЕХНІЧНИЙ КОЛЕДЖ НУ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
КАФЕДРА ІНФОРМАЦІЙНИХТЕХНОЛОГІЙ ТАКОМП’ЮТЕРНОЇ ТЕХНІКИ
Звіт
на тему:
“Відслідковування життєвого циклу проекту в програмі керування проектами Microsoft Project”
з дисципліни “Конструювання програмного забезпечення”
Діаграма діяльності (activity diagram)
При моделюванні поведінки проектованої або аналізованої системи виникає необхідність не тільки уявити процес зміни її станів, але і деталізувати особливості алгоритмічної та логічної реалізації виконуваних системою операцій. Для моделювання процесу виконання операцій в мові UML використовуються діаграми діяльності. Застосовувана в них графічного багато в чому схожа на нотацію діаграми станів, оскільки на цих діаграмах також присутні позначення станів і переходів. Кожен стан на діаграмі діяльності відповідає виконанню деякої елементарної операції, а перехід в наступний стан виконується тільки при завершенні цієї операції. Таким чином, діаграми діяльності можна вважати окремим випадком діаграм станів. Вони дозволяють реалізувати в мові UML особливості процедурного і синхронного управління, обумовленого завершенням внутрішніх діяльностей і дій.Основним напрямком використання діаграм діяльності є візуалізація особливостей реалізації операцій класів, коли необхідно представити алгоритми їх виконання. У контексті мови UML діяльність (activity) являє собою сукупність окремих обчислень, виконуваних автоматом, що призводять до деякого результату або дії (action). На діаграмі діяльності відображається логіка і послідовність переходів від однієї діяльності до іншої, а увага аналітика фокусується на результатах.Результат діяльності може призвести до зміни стану системи або поверненню деякого значення.
Стан дії
Стан дії (action state) є спеціальним випадком стану з деяким вхідним дією і, принаймні, одним виходять зі стану переходом. Цей перехід неявно припускає, що вхідна дію вже завершилося. Стан дії не може мати внутрішніх переходів, оскільки воно є елементарним. Звичайне використання стану дії полягає в моделюванні одного кроку виконання алгоритму (процедури) або потоку керування. Графічно стан дії зображується прямокутником із закругленими кутами (рис. 5).Усередині цього зображення записується вираз дії (action-expression), яке повинно бути унікальним в межах однієї діаграми діяльності.
Рис. 5. Изображение состояния действия
Дія може бути записано на природній мові, деякому псевдокоді або мовоюпрограмування. Ніяких додаткових або неявних обмежень при записі дій ненакладається. Рекомендується в якості імені простого дії використовуватидієслово з пояснювальними словами. Якщо ж дія може бути представлене в деякій формальній вигляді, то доцільно записати його на тій мові програмування, наякому передбачається реалізовувати конкретний проект.Іноді виникає необхідність подати на діаграмі діяльності деякий складна дія, яке, у свою чергу, складається з декількох більш простих дій. У цьому випадку можнавикористовувати спеціальне позначення стану під-діяльності (subactivity state).Такий стан є графом діяльності і позначається спеціальною піктограмою управому нижньому куті символу стану дії (рис. 6). Ця конструкція можезастосовуватися до будь-якого елементу мови UML, який підтримує вкладеністьсвоєї структури. При цьому піктограма може бути додатково позначена типомвкладеної структури.
Рис. 6. Изображение состояния под-деятельности
Кожна діаграма діяльності повинна мати єдине початкове і єдине кінцевий стани.Вони мають такі ж позначення, як і на діаграмі станів. При цьому кожна діяльність починається в початковому стані і закінчується в кінцевому стані. Саму діаграму діяльності прийнято розташовувати таким чином, щоб дії слідували зверху вниз. У цьому випадку початковий стан буде зображуватися у верхній частині діаграми, а кінцеве у нижній. Переходи Перехід як елемент мови UML було розглянуто в діаграмах станів. При побудові діаграми діяльності використовуються тільки нетріггерние переходи, тобто такі, які виконуються відразу після завершення діяльності або виконання відповідної дії. Цей перехід переводить діяльність у подальший стан відразу, як тільки закінчиться дія в попередньому стані. На діаграмі такий перехід зображується суцільною лінією зі стрілкою. Якщо зі стану дії виходить єдиний перехід, то він може бути ніяк не позначений.Якщо ж таких переходів декілька, то виконуватися може тільки один з них. У цьому випадку для кожного з таких переходів повинна бути чітко записано сторожове умова в прямих дужках. Умова ж істинності має здійснюватися лише одного з них.Подібний випадок зустрічається тоді, коли послідовно виконувана діяльність повинна розділитися на альтернативні гілки в залежності від значення деякого проміжного результату. Така ситуація отримала назву розгалуження, а для її позначення застосовується спеціальний символ. Графічно розгалуження на діаграмі діяльності позначається невеликим ромбом, всередині якого немає ніякого тексту. У цей ромб може входити лише одна стрілка від того стану дії, після виконання якого потік управління повинен бути продовжений за однією з взаємно виключають гілок. Прийнято вхідну стрілку приєднувати до верхньої або лівої вершині символу розгалуження. Виходять стрілок може бути дві або більше, але для кожної з них явно вказується відповідне сторожове умова у формі булевского вираження. Один з недоліків звичайних блок-схем алгоритмів пов'язаний з проблемою зображення паралельних гілок окремих обчислень. Оскільки розпаралелювання обчислень істотно підвищує загальну швидкодію програмних систем, необхідні графічні примітиви для подання паралельних процесів. В UML для цієї мети використовується спеціальний символ для розділення і злиття паралельних обчислень або потоків управління. Таким символом є пряма риска. Як правило, така риска зображується відрізком горизонтальної лінії, товщина якої дещо ширше основних суцільних ліній діаграми діяльності. При цьому поділ (concurrent fork) має один вхідний перехід і кілька вихідних, а злиття (concurrent join) має кілька вхідних переходів та один виходить. Доріжки Діаграми діяльності можуть бути використані не тільки для специфікації алгоритмів обчислень або потоків управління у програмних системах. Не менш важлива область їх застосування пов'язана з моделюванням бізнес процесів.Дійсно, діяльність будь-якої організації також являє собою сукупність окремих дій, спрямованих на досягнення необхідного результату. Однак, стосовно до бізнес процесів, бажано виконання кожної дії асоціювати з конкретним підрозділом компанії. У цьому випадку підрозділ несе відповідальність за реалізацію окремих дій, а сам бізнес процес представляється у вигляді переходів дій з одного підрозділу до іншого. Для моделювання цих особливостей у мові UML використовується спеціальна конструкція, що отримало назву доріжки (swimlanes). Мається на увазі візуальна аналогія з плавальними доріжками в басейні, якщо дивитися на відповідну діаграму. Усі стану дії на діаграмі діяльності діляться на окремі групи, які відокремлюються один від одного вертикальними лініями. Дві сусідні лінії утворюють доріжку, а група станів між цими лініями виконується окремим підрозділом (відділом, групою, відділенням, філією) організації. Назви підрозділів явно вказуються у верхній частині доріжки. Перетинати лінію доріжки можуть тільки переходи, які, в цьому випадку, позначають вихід або вхід потоку керування у відповідний підрозділ. Порядок проходження доріжок не несе будь-якої семантичної інформації і визначається міркуваннями зручності. Об'єкти У загальному випадку дії на діаграмі діяльності виконуються над тими чи іншими об'єктами. Ці об'єкти або ініціюють виконання дій, або визначають деяке їх результат. Дії специфікують виклики, які передаються від одного об'єкта графа діяльності до іншого. Оскільки в такому ракурсі об'єкти відіграють певну роль у розумінні процесу діяльності, іноді виникає необхідність явно вказати їх на діаграмі. Для графічного представлення об'єктів використовується прямокутник класу, з тією відмінністю, що ім'я об'єкта підкреслюється. Далі після імені може вказуватися характеристика стану об'єкта в прямих дужках. Такі прямокутники об'єктів приєднуються до станів дії відношенням залежності пунктирною лінією зі стрілкою. Відповідна залежність визначає стан конкретного об'єкту після виконання попередньої дії. На діаграмі діяльності з доріжками розташування об'єкта може мати деякий додатковий сенс. А саме, якщо об'єкт розташований на кордоні двох доріжок, то це може означати, що перехід до наступного станом дії в сусідній доріжці асоційований з готовністю деякого документа (об'єкт в деякому стані). Якщо ж об'єкт цілком розташований всередині доріжки, то й стан цього об'єкта цілком визначається діями даної доріжки. Для синхронізації окремих дій на діаграмі діяльності жодних додаткових позначень не використовується, оскільки синхронізація паралельних процесів може бути реалізована за допомогою переходів «поділ-злиття».