Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Копия Диплом Кілесо.doc
Скачиваний:
16
Добавлен:
16.09.2019
Размер:
7.62 Mб
Скачать

Узагальнення (успадкування)

TFirst и TSecond выведены из TSomeClass

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

4. Практична частина

4.1. Використання uml в проектуванні пз

UML 2.0 включає набір діаграм (рисунок 4.1), що використовуються для розробки різних моделей програмних і бізнес систем. Як видно з малюнка 1.1 діаграми поділяються на дві групи: структурні діаграми і процесні діаграми.

До структурних діаграм належать:

• діаграма класів;

• діаграма об'єктів;

• діаграма композитної структури;

• діаграма компонент;

• діаграма розміщення;

• діаграма пакетів.

До процесних діаграм належать:

• діаграми взаємодії;

• діаграми діяльності;

• діаграми функцій;

• діаграми станів.

У свою чергу діаграми взаємодії поділяються на:

• діаграми послідовностей;

• оглядові діаграми потоків управління;

• комунікаційні діаграми;

• тимчасові діаграми.

На різних етапах створення програмної системи можуть використовуватися діаграми UML для створення різних моделей.

Рисунок 4.1 - Діаграми UML 2.0

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

Мова UML не містить поняття процесу розробки програмної системи. Методи моделювання не мають сенсу без знання того, як вони можуть бути використані процесом розробки. З мовою UML можна уявити будь-який процес на діаграмах, які залежно від ситуації здатні описувати різні дії:

• Use case diagram (діаграма прецедентів) - діаграма, на якій відображені відносини, що існують між акторами і прецедентами;

• Class diagram (діаграма класів) - статична структурна діаграма, що описує структуру системи, що демонструє класи системи, їх атрибути і залежності між класами;

• Sequence diagram (діаграма послідовності дій) - діаграма, на якій зображено впорядковане в часі взаємодія об'єктів. Зокрема, на ній зображуються беруть участь у взаємодії об'єкти і послідовність повідомлень, якими вони обмінюються;

• Communication diagram (діаграма комунікації) - діаграма, на якій зображуються взаємодії між частинами композитної структури або ролями кооперації. На відміну від діаграми послідовності, на діаграмі комунікації явно вказуються відносини між елементами (об'єктами), а час як окремий вимір не використовується (застосовуються порядкові номери викликів);

• State machine diagram (діаграма станів) - діаграма, на якій представлено кінцевий автомат з простими станами, переходами і композитними станами. Кінцевий автомат (англ. State machine) - специфікація послідовності станів, через які проходить об'єкт або взаємодія у відповідь на події свого життя, а також відповідні дії об'єкта на ці події. Кінцевий автомат прикріплений до вихідного елементу (класу, кооперації або методу) і служить для визначення поведінки його примірників;

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

• Component diagram (діаграма компонент) - статична структурна діаграма, показує розбиття програмної системи на структурні компоненти та зв'язку (залежності) між компонентами. В якості фізичних компонент можуть виступати файли, бібліотеки, модулі, виконувані файли, пакети і т. п.;

• Deployment diagram (діаграма топології) - служить для моделювання працюючих вузлів (апаратних засобів, англ. Node) і артефактів, розгорнутих на них. В UML 2 на вузлах розвертаються артефакти (англ. artifact), в той час як в UML 1 на вузлах розгорталися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, встановлюється залежність маніфестації;

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

• Object diagram (діаграма об'єктів) - демонструє повний або частковий знімок модельованої системи в заданий момент часу. На діаграмі об'єктів відображаються екземпляри класів (об'єкти) системи з зазначенням поточних значень їх атрибутів і зв'язків між об'єктами;

• Composite structure diagram (діаграма композитної / складовою структури) - статична структурна діаграма, демонструє внутрішню структуру класів і, по можливості, взаємодія елементів (частин) внутрішньої структури класу. Підвидом діаграм композитної структури є діаграми кооперації (Collaboration diagram, введені в UML 2.0), які показують роль і взаємодія класів у рамках кооперації. Кооперації зручні при моделюванні шаблонів проектування. Діаграми композитної структури можуть використовуватися спільно з діаграмами класів;

• Timing diagram (діаграма синхронізації) - альтернативне подання діаграми послідовності, явно показує зміни стану на лінії життя із заданою шкалою часу. Може бути корисна в додатках реального часу;

• Interaction overview diagram (діаграма огляду взаємодії) - різновид діаграми діяльності, що включає фрагменти діаграми послідовності та конструкції потоку управління.

В якості переваг мови UML можна виділити наступне:

• UML об'єктно-орієнтована, в результаті чого методи опису результатів аналізу і проектування семантично близькі до методів програмування на сучасних об'єктно-орієнтованих мовах;

• UML дозволяє описати систему практично з усіх можливих точок зору і різні аспекти поведінки системи;

• Діаграми UML порівняно прості для читання після досить швидкого ознайомлення з його синтаксисом;

• UML розширюємо і дозволяє вводити власні текстові та графічні стереотипи, що дозволяє застосовувати не тільки в сфері програмної інженерії;

• UML отримав широке поширення і динамічно розвивається