Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Самостійна робота № 8
Тема: Моделювання та діаграми класів, взаємодій, станів та переходів
Теоретичні положення
1. Моделювання та діаграми класів
Діаграма класів (class diagram) служить для представлення статичної структури моделі системи в термінології класів об'єктно-орієнтованого програмування.
Клас (class) в мові UML служить для позначення безлічі об'єктів, які володіють однаковою структурою, поведінкою і стосунками з об'єктами з інших класів. Графічно клас зображається у вигляді прямокутника, який додатково може бути роздільний горизонтальними лініями на розділи або секції (рис. 6.1). У цих розділах можуть вказуватися ім'я класу, атрибути (змінні) і операції (методи).
Рисунок 6.1 - Графічне зображення класу на діаграмі класів
Обов'язковим елементів позначення класу є його ім'я.
Передбачається, що остаточний варіант діаграми містить якнайповніший опис класів, які складаються з трьох розділів або секцій. Інколи в позначеннях класів використовується додатковий четвертий розділ, в якому наводиться семантична інформація довідкового характеру або явно вказуються виняткові ситуації.
Ім'я класу має бути унікальним в межах пакету, який описується деякою сукупністю діаграм класів (можливо, однією діаграмою). Воно вказується в першій верхній секції прямокутника. На додаток до загального правила найменування елементів мови UML, ім'я класу записується по центру секції імені напівжирним шрифтом і повинно починатися із заголовної букви. Необхідно пам'ятати, що саме імена класів утворюють словник наочної області при ООАП.
Окрім внутрішнього устрою або структури класів на відповідній діаграмі вказуються різні стосунки між класами. При цьому сукупність типів таких стосунків фіксована в мові UML і зумовлена семантикою цих типів стосунків. Базовими стосунками або зв'язками в мові UML є:
Кожен з цих стосунків має власну графічну виставу на діаграмі, яка відображає взаємозв'язку між об'єктами відповідних класів.
Відношення залежності в загальному випадку вказує деяке семантичне відношення між двома елементами моделі або двома безліччю таких елементів, яке не є відношенням асоціації, узагальнення або реалізації. Воно стосується лише самих елементів моделі і не вимагає безлічі окремих прикладів для пояснення свого сенсу. Відношення залежності використовується в такій ситуації, коли деяка зміна одного елементу моделі може зажадати зміни іншого залежного від нього елементу моделі.
Діаграми станів є добре відомим методом описания поведінки систем. Вони змальовують всі можливі стани, в яких може знаходитися конкретний об'єкт, а також зміни стани об'єкту, які відбуваються в результаті впливу некоторых подій на цей об'єкт. У більшості объектно-ориентированных методів діаграми станів будуються для єдиного класу, аби показати динаміку поведінки єдиного об'єкту
Діаграми дій відображають динаміку системи. Вони є схемами потоків управління в системі. У конкретній точці життєвого циклу діаграми дій можуть зображати потоки між прецедентами або всередині окремого прецеденту. На подальших етапах життєвого циклу діаграми дій можуть створюватися для віддзеркалення послідовності виконання операції.
Завдання до самостійної роботи № 6
Постановка завдання: відеомагазин, що знов відкрився, має намір запропонувати прокат відеокасет і дисків широкій публіці. Спочатку асортимент магазина складає близько тисячі відеокасет і п'ятисот відеодисків. Вже існує замовлення у одного постачальника, проте для майбутніх замовлень директор має намір вдаватися до послуг більшого числа постачальників. Всі відеокасети і диски забезпечені штріх-кодом, так що сканер, інтегрований до системи, може підтримувати операції видачі напрокат і повернення відеофільмів. Членські картки клієнтів також забезпечені штріх-кодом. Існуючі клієнти мають можливість резервувати відео так, щоб комплект відеофільмів був зібраний до певної дати. Система повинна володіти гнучким пошуковим механізмом для відповіді на запити клієнтів, включаючи питання, що стосуються фільмів, яких немає в асортименті магазина (але які він може замовити на прохання клієнта).
Реалізуйте діаграми видів діяльності, що розглядають наступні вимоги до «Магазина відеопрокату»:
Варіант 1. Клієнт може взяти декілька касет або дисків, проте кожному взятому відеоносієві ставиться у відповідність окремий запис. Пізніше запис про прокат оновлюється, щоб відобразити факт повернення відеофільму і факт остаточного платежу (або повернення грошей). За касети і диски, що повернені пізніше за встановлений термін, стягується додаткова плата за період, що перевищує термін прокату. Кожен відеоносій володіє унікальним ідентифікаційним номером. Плата знімається або з рахунку клієнта, або приймається готівкою безпосередньо від клієнта.
Варіант 2. Фільми замовляються у постачальника, який в загальному випадку може поставити касети і диски протягом одного тижня. Зазвичай одне замовлення робиться на декілька фільмів. Коли касета повертається клієнтом або поступає від постачальника, спочатку задовольняються попередні замовлення. Працівники магазина встановлюють контакт з клієнтами, що зробили попереднє замовлення. Для правильної обробки бронювання фільмів інформація, що пов'язана з бронюванням, оновлюється двічі: після встановлення контакту з клієнтом, коли йому повідомляється, що «заброньований фільм прийшов», і після здачі фільму клієнтові напрокат. Ці кроки гарантують правильну поведінку операції бронювання.