- •Iм. Олеся Гончара
- •Реферат
- •1. Літературний огляд Сучасні технології об'єктно-орієнтованого аналізу та проектування інформаційних систем
- •Введення
- •1.1. Методологія об'єктно-орієнтованого програмування
- •1.2. Методологія об'єктно-орієнтованого аналізу і проектування
- •2. Постановка завдання
- •3. Теоретична частина Визначення візуального моделювання програмного забезпечення
- •3.1. Аналіз та проектування
- •3.2. Візуальне моделювання. Історія мови uml
- •3.3. Структура мови uml
- •3.4. Навчальний приклад. Постановка завдання
- •3.5. Візуальний опис функціональної моделі засобами uml
- •Узагальнення (успадкування)
- •4. Практична частина
- •4.1. Використання uml в проектуванні пз
- •4.2. Загальна характеристика case-засобів Visual Paradigm
- •4.3. Інтерфейс програми vp-uml
- •Головне меню програми
- •Стандартна панель інструментів
- •Вікно браузера
- •Спеціальна панель інструментів
- •Вікно діаграми
- •Вікно документації
- •4.4 Принцип роботи в vp-uml
- •4.5. Лабораторний практикум
- •4.5.1.Лабораторная робота № 1 «Діаграма прецедентів»
- •Приклад виконання лабораторної роботи
- •4.5.2. Лабораторна робота № 2 «Діаграми класів»
- •Типові прийоми моделювання
- •Моделювання логічної схеми бази даних
- •Моделювання словника системи
- •Приклад виконання лабораторної роботи.
- •4.5.3. Лабораторна робота № 3 «Діаграма послідовності».
- •Приклад виконання лабораторної роботи.
- •4.5.4. Лабораторна робота № 4 «Діаграма комунікацій»
- •Висновок
- •Література
Моделювання словника системи
За допомогою класів зазвичай моделюють абстракції, витягнуті з розв'язуваної задачі або технології, що застосовується для її вирішення. Такі абстракції є складовою частиною словника вашої системи, тобто представляють сутності, важливі для користувачів і розробників.
Для користувачів не складає труднощів ідентифікувати велику частину абстракцій, оскільки вони створені на основі тих сутностей, які вже використовувалися для опису системи. Для розробників же абстракції є зазвичай просто елементами технології, яка була задіяна при вирішенні задачі.
Моделювання словника системи включає в себе наступні етапи:
1. визначте, які елементи користувачі та розробники застосовують для опису задачі або її розв'язання. Для відшукання правильних абстракцій використовуйте аналіз прецедентів;
2. виявите для кожної абстракції відповідне їй безліч обов'язків. Прослідкуйте, щоб кожен клас був чітко визначений, а розподіл обов'язків між ними добре збалансовано;
3. розробіть атрибути та операції, необхідні для виконання класами своїх обов'язків.
На рисунку 4.30 показаний набір класів для системи роздрібної торгівлі: «Customer» (Клієнт), «Order» (Замовлення) і «Product» (Товар). Представлено кілька співвіднесених з ними абстракцій, взятих із словника проблемної області: «Shipment» (Відвантаження), «Invoice» (Накладна) і «Warehouse» (Склад). Одна абстракція, а саме «Transaction» (Транзакція), що застосовується до замовлень і відвантажень, пов'язана з технологією виконання завдання.
Рисунок 4.30 - Моделювання словника системи
У міру того як ви будете будувати все більш складні моделі, виявиться, що багато класи природним чином поєднуються в концептуально і семантично споріднені групи. У мові UML для моделювання таких груп класів використовуються пакети. Як правило, моделі не бувають статичними. Навпаки, більшість абстракцій зі словника системи динамічно взаємодіє один з одним. В UML існує кілька способів моделювання такого динамічного поведінки, які будуть розглянуті пізніше.
Приклад виконання лабораторної роботи.
Після запуску програми VP-UML, для початку побудови діаграми класів, необхідно обрати діаграму class diagram (рисунок 4.31).
Рисунок 4.31 - Діаграма класів.
На панелі інструментів для даної діаграми присутні всі необхідні умовні позначення об'єктів діаграми (таблиця 4.3).
Таблиця 4.3 - Умовні позначення на спеціальній панелі інструментів
Побудова діаграми класів починається з нанесення на діаграму умовних позначень класів системи (рисунок 4.32).
Рисунок 4.32 - Нанесення класів на діаграму
Для кожного створеного класу визначаються необхідні атрибути і операції.
Новий атрибут класу створюється послідовністю дій:
1. в браузері виділяється клас;
2. натисканням правої кнопки миші викликається контекстне меню;
3. вибирається пункт меню Attribute.
Нова операція класу створюється послідовністю дій:
1. в браузері виділяється клас;
2. натисканням правої кнопки миші викликається контекстне меню;
3. вибирається пункт меню Operation.
При створенні операцій і атрибутів необхідно враховувати:
1. видимість атрибута;
2. тип операції;
3. тип атрибута.
Дані параметри настроюються в специфікації необхідного параметра кожного класу (рисунок 4.33).
Рисунок 4.33 - Параметри атрибута
Після створення всіх необхідних атрибутів і операцій у класів діаграма виглядає, як показано на рисунку 4.34.
Рисунок 4.34 - Класи з створеними атрибутами і операціями
Наступним кроком для створення діаграми є визначення зв'язків між класами та їх множинності. Зв'язок створюється за допомогою кнопки «Unidirectional Association» на панелі інструментів.
Для визначення множинності виконується наступна послідовність дій:
1. на діаграмі вибирається клас, з боку якого виставляється множинність;
2. правою кнопкою миші викликається контекстне меню;
3. в пункті multiplicity вибирається потрібне значення множинності (рисунок 4.35).
Рисунок 4.35 - Установка множинності
Діаграма зі зв'язками та відповідними типами множинності показана на рисунку 4.36.
Рисунок 4.36 - Зв'язки з означеної множинністю
Діаграма після поділу класів на категорії показана на рисунку 4.37. Належність класу до потрібної категорії визначається настройками в специфікації класу (рисунок 4.37).
Рисунок 4.37 – Вибір категорії класу
Рисунок 4.38 - Діаграма класів
Готова діаграма класів для варіанту використання «Зняти гроші» показана на рисунку 4.38. На цій діаграмі класів показані зв'язки між класами, що реалізують варіант використання «Зняти гроші». У цьому процесі задіяні чотири класи: Card Reader (пристрій для читання карток), Account (рахунок), ATM Screen (екран АТМ) та Cash Dispenser (касовий апарат). Кожен клас на діаграмі виглядає у вигляді спеціального об'єкта, розділеного на три частини. У першій міститься ім'я класу, у другій - його атрибути. В останній частині містяться операції класу, що відображають його поведінку (дії, що виконуються класом).
Зв'язують класи лінії відображають взаємодію між класами. Так, клас Account пов'язаний з класом ATM Screen (екран АТМ), тому що вони безпосередньо повідомляються і взаємодіють один з одним. Клас Card Reader (пристрій для читання карток) не пов'язаний з класом Cash Dispenser (касовий апарат), оскільки вони не повідомляються один з одним безпосередньо.