- •1.1. Методологія процедурно‑ орієнтованого програмування
- •1.2. Методологія об'єктно-орієнтованого програмування
- •1.3. Методологія об'єктно-орієнтованого аналізу і проектування
- •1.4. Методологія системного аналізу і системного моделювання
- •Розділ 2
- •2.1. Передісторія. Математичні основи
- •Мал. 2.4. Приклади неорієнтованого (а) і орієнтованого (б) графів
- •Мал. 2.5. Приклади неорієнтованого (а) і орієнтованого (б) дерев
- •Мал. 2.6. Ієрархічні схеми неорієнтованого дерева (а) і орієнтованого дерева (б)
- •2.2. Діаграми структурного системного аналізу
- •I (Input) – вхід, т. Е. Все, що поступає в процес або споживається процесом.
- •2.3. Основні етапи розвитку uml
- •2. Забезпечити початкові поняття язика uml можливістю розширення і спеціалізації для більш точного представлення моделей систем в конкретній наочній області.
- •3. Опис язика uml повинен підтримувати таку специфікацію моделей, яка не залежить від конкретних язиків програмування і інструментальних засобів проектування програмних систем.
- •4. Опис язика uml повинен включати семантичний базис для розуміння загальних особливостей ооап.
- •7. Інтегрувати в себе новітні і якнайкращі досягнення практики ооап.
- •3.2. Загальна структура язика uml
- •3.3. Пакети в язиці uml
- •3.4. Основні пакети метамоделі язика uml
- •3.5. Специфіка опису метамоделі язика uml
- •3.6. Особливості зображення діаграм язика uml
- •4.1. Варіант використовування
- •4.2. Актори
- •4.3. Інтерфейси
- •4.4. Примітки
- •4.5. Відносини на діаграмі варіантів використовування
- •4.6. Приклад побудови діаграми варіантів використовування
- •4.7. Рекомендації по розробці діаграм варіантів використовування
- •5.1. Клас
- •5.2. Відносини між класами
- •5.5. Шаблони або класи, що параметризуються
- •5.6. Рекомендації по побудові діаграм класів
- •6.1. Автомати
- •Include – ця мітка використовується для звернення до підавтомата, при цьому наступний за нею вираз дії містить ім'я цього підавтомата.
- •6.3. Перехід
- •6.4. Складовий стан і підстан
- •6.5. Історичний стан
- •Мал. 6.10. Графічне зображення недавнього (а) і давнього (б) історичного стану
- •6.6. Складні переходи
- •Мал. 6.11. Графічне зображення паралельного переходу з паралельних станів (а) і паралельного переходу в паралельні стани (б)
- •6.7. Заключні рекомендації по побудові діаграм станів
- •7.1. Стан дії
- •7.2. Переходи
- •7.5. Рекомендації по побудові діаграм діяльності
- •8.2. Повідомлення
- •Мал. 8.7. Діаграма послідовності із стереотипними значеннями повідомлень
- •8.3. Приклад побудови діаграми послідовності
- •8.4. Заключні рекомендації по побудові діаграм послідовності
- •9.1. Кооперація
- •9.3. Зв'язки
- •9.4. Повідомлення
- •9.6. Заключні рекомендації по побудові діаграм кооперації
- •10.1. Компоненти
- •10.2. Інтерфейси
- •10.3. Залежність
- •10.4. Рекомендації по побудові діаграми компонентів
- •11.1. Вузол
- •11.2. З'єднання
- •Мал. 11.4. Фрагмент діаграми розгортання із з'єднаннями меходу вузлами
- •11.3. Рекомендації по побудові діаграми розгортання
- •12.1. Загальна характеристика case‑ засобу Rational Rose 98/2000
- •12.2. Особливості робочого інтерфейсу Rational Rose
- •12.3. Початок роботи над проектом в середовищі Rational Rose
- •12.4. Розробка діаграми варіантів використовування в середовищі Rational Rose
- •12.5. Розробка діаграми класів в середовищі Rational Rose
- •12.6. Розробка діаграми станів в середовищі Rational Rose
- •12.7. Розробка діаграми послідовності в середовищі Rational Rose
- •12.8. Розробка діаграми кооперації в середовищі Rational Rose
- •12.9. Розробка діаграми компонентів в середовищі Rational Rose
- •12.10. Розробка діаграми розгортання в середовищі Rational Rose
Мал. 2.4. Приклади неорієнтованого (а) і орієнтованого (б) графів
Графи широко застосовуються для уявлення різної інформації про структуру систем і процесів. Прикладами подібних графічних моделей можуть служити: схеми автомобільних доріг, що сполучають окремі населені пункти; схеми телекомунікацій, що використовуються для передачі інформації між окремими вузлами; схеми програм, на яких указуються варіанти галуження обчислювального процесу. Загальною для всіх конкретних подібних моделей є можливість представлення інформації в графічному вигляді у формі відповідного графа. При цьому окремі моделі, як правило, володіють додатковою семантикою і спеціальними позначеннями, характерними для тієї або іншої наочної області.
Важливими поняттями теорії графів є поняття маршруту і шляху, які асоціюються з послідовним переміщенням від вершини до вершини по сполучаючих їх ребрах або дугах. Для неорієнтованого графа маршрут визначається як кінцева або нескінченна впорядкована послідовність ребер S=‹, esl, es2. esk‑ ‑ , таких, що кожні два сусідні ребра мають загальну вершину. Нас цікавитимуть тільки кінцеві маршрути S=‹es1, es2. esk‑ , т. е. такі маршрути, які складаються з кінцевого числа ребер. При цьому ребро esl прийнято вважати початком маршруту S, а ребро esk – кінцем маршруту S. Для орієнтованого графа відповідна послідовність дуг S=‹es1, es2. esk‑ називається орієнтованим маршрутом, якщо дві сусідні дуги мають загальну вершину, яка є кінцем попередньої і початком подальшої дуги.
Прикладами маршрутів для неорієнтованого графа (мал. 2.4, а) є послідовності ребер: S1=‹e1, e2 e5, e8‑ , S2=‹e1, e2, е3, e1‑ , S3=‹e3, e5, e8‑ . Якщо в маршруті не повторюються ні ребра, ні вершини, як у разі S1 і S3, то такий неорієнтований маршрут називається простим ланцюгом.
Прикладами орієнтованих маршрутів для графа (мал. 2.4, би) є такі послідовності дуг: S1=‹e2, e8, e5‑ , S2=‹e3, e7, e6‑ , S3=‹e8, e3, e7, e4, e8‑ . Якщо в орієнтованому маршруті не повторюються ні ребра, ні вершини, як у разі S1 і S2, то такий орієнтований маршрут називається шляхом. Останнє поняття також іноді застосовується для позначення простого ланцюга в неорієнтованих графах і для визначення спеціального класу графів, так званих дерев. В загальному випадку дерева служать для графічного представлення ієрархічних структур або ієрархій, що займають важливе місце в ООАП.
Деревом в теорії графів називається такий граф D=‹V, E‑ , між будь-якими двома вершинами якого існує єдиний простий ланцюг, т. е. неорієнтований маршрут, у якого вершини і ребра не повторюються. Стосовно орієнтованих граф відповідне визначення є складнішим, оскільки грунтується на виділенні деякої спеціальної вершини v0, яка одержала спеціальну назву кореневої вершини або просто – кореня. В цьому випадку орієнтований граф D=‹V, Е‑ називається орієнтованим деревом або скорочено – деревом, якщо між коренем дерева v0 і будь-якою іншою вершиною існує єдиний шлях, що бере почати в v0. Нижче представлено два приклади дерев: неорієнтованого дерева (мал. 2.5, а) і орієнтованого дерева (мал. 2.5, би).
У разі неорієнтованого дерева (мал. 2.5, а) будь-яка з вершин графа може бути вибрана як корінь. Подібний вибір визначається специфічними особливостями вирішуваної задачі. Так, вершина v1 може розглядатися як корінь неорієнтованого дерева, оскільки між v1 і будь-якою іншою вершиною дерева завжди існує єдиний простий ланцюг за визначенням (або, що менш строге, єдиний неорієнтований шлях).
