11675

Створення діаграми класів

Лабораторная работа

Информатика, кибернетика и программирование

Тема: Створення діаграми класів. Мета роботи: отримати навички побудови діаграм класів створення пакетів і угруповання класів у пакети. Завдання: створити діаграму класів. Для одного зі сценаріїв діаграми прецедентів створеної в попередній лабораторній робот...

Украинкский

2013-04-10

65.38 KB

23 чел.

Тема: Створення діаграми класів.

Мета роботи: отримати навички побудови діаграм класів, створення пакетів і угруповання класів у пакети.

Завдання:

  1.  створити діаграму класів. Для одного зі сценаріїв діаграми прецедентів, створеної в попередній лабораторній роботі. Для кожного класу необхідно задати атрибути та операції. Кожен клас повинен бути детально задокументовано - необхідно задати текстовий опис самого класу, опису його атрибутів і операцій;
  2.  створити пакети для угруповання класів, створених в пункті 1;
  3.  згрупувати класи з пункту 1 в пакети;
  4.  для кожного пакета створити свою діаграму класів.
  5.  розробити головну діаграму класів.

Примітка: розглядати діаграму класів рекомендується з концептуальної точки зору, яка використовується на початкових етапах моделювання і розробки.

Зміст звіту:

  1.  створені діаграми класів (для діаграми класів з пункту 2 завдання повинен бути вказаний сценарій, для якого ця діаграма побудована);
  2.  короткий опис кожного створеного класу і відносин між класами.

Діаграми класів (діаграми класів) використовуються для моделювання статичного вигляду системи з точки зору проектування. Діаграма класів - діаграма, на якій показано безліч класів, інтерфейсів, кооперацій і відносин між ними. Використовується в наступних цілях:

  1.  для моделювання словника системи: передбачає ухвалення рішення про те, які абстракції є частиною системи, а які - ні. За допомогою діаграм класів можна визначити ці абстракції та їх обов'язки;
  2.  для моделювання простих кооперацій. Кооперація - це спільнота класів, інтерфейсів та інших елементів, що працюють спільно для забезпечення деякого кооперативного поведінки;
  3.  для моделювання логічної схеми бази даних.

Згідно Мартіну Фаулеру існують три різні точки зору на побудову діаграм класів або будь-який інший моделі:

  1.  концептуальна точка зору - діаграми класів служать для представлення понять досліджуваної предметної області. Ці поняття будуть відповідати реалізують їх класам, але пряме відповідність може бути відсутнім. Концептуальна модель може мати слабке відношення або взагалі не мати ніякого відношення до реалізує її програмному забезпеченню, тому її можна розглядати без прив'язки до якогось мови програмування;
  2.  точка зору специфікації - розглядається програмна система, при цьому розглядається лише її інтерфейси, але не реалізація;
  3.  точка зору реалізації - класи діаграми відповідають реальним класам програмної системи.

Приклад виконання роботи.

1. Створення діаграми класів для сценарію "Додати нове замовлення" прецеденту "Робота із замовленням"

Діаграми класів будемо розглядати з концептуальної точки зору. Для спрощення завдання і щоб не захаращувати діаграми несуттєвими деталями методи безліч Х, GetX для кожного атрибута Х класів ставити не будемо.

Створимо в Логічному поданні браузера нову діаграму класів і назвемо її "Add New Order". В поле документації запишемо для неї наступний текст: "Діаграма класів для сценарію" Додати нове замовлення "прецеденту" Робота із замовленням "".

Заповнення діаграми почнемо з визначення класів-сутностей. Розглянутий сценарій складається з:

  1.  самого замовлення;
  2.  клієнта, який робить замовлення;
  3.  комплектуючих виробів, які входять до замовлення.

Створимо класи-сутності Order (Замовлення), Client (Клієнт) і ComponentPart (комплектуючий виріб). Оскільки в одне замовлення може входити багато різних комплектуючих виробів, і одне комплектуючий виріб може входити в багато замовлень, то введемо ще один клас-сутність OrderItem (Склад замовлення).

Додамо відносини між класами:

  1.  клас клієнта і замовлення - відношення асоціації, оскільки дані два класи просто пов'язані один з одним і ніякі інші типи зв'язків тут застосувати не можна. Один клієнт може зробити кілька замовлень, кожне замовлення надходить тільки від одного клієнта, тому кратність зв'язку з боку класу клієнта - 1, з боку замовлення - 1 .. N;
  2.  клас порядку і OrderItem - відношення композиції, оскільки рядок замовлення є частиною замовлення, і без нього існувати не може. В одне замовлення може входити кілька рядків замовлення, рядок замовлення відноситься тільки до одного замовлення, тому кратність зв'язку з боку замовлення - 1, з боку OrderItem - 1 .. N;
  3.  клас OrderItem і ComponentPart - відношення агрегації, оскільки комплектуючі вироби є частинами рядка замовлення, а й ті, й інші, явлю самостійними класами. Одне комплектуючий виріб може входити у багато рядків замовлення, в один рядок замовлення входить тільки одне комплектуючий виріб, тому кратність зв'язку з боку ComponentPart - 1, з боку OrderItem - 1 .. N.

Додамо тепер на діаграму граничні та керуючі класи. Розглянутий сценарій - це тільки одна з дій, які забезпечує прецедент "Робота із замовленням". Прецедент також дозволяє переглянути, відредагувати або видалити замовлення. Це означає, що необхідно передбачити механізм, який дозволяє вибирати необхідну дію. Створимо для цього граничний клас OrderOptions (Параметри роботи із замовленням) з коментарем "Клас, що забезпечує механізм роботи із замовленнями". Також створимо граничний клас AddNewOrder (Додавання нового замовлення), який буде служити для додавання нових замовлень (коментар - "Клас служить для додавання нових замовлень" Відношення між цими класами -. Агрегація, оскільки в даному випадку клас AddNewOrder розглядається як частина класу OrderOptions, частинами якого також будуть класи для перегляду, редагування і видалення замовлень. Кратність зв'язку 1 до 1, оскільки до складу класу OrderOptions входить тільки один клас AddNewOrder.

Перейдемо тепер до керуючих класам. Додамо керуючий клас OrderManager (Менеджер по роботі з замовленнями) з коментарем "Керуючий клас для обробки потоку подій прецеденту" Робота з замовленнями "", який буде забезпечувати обробку потоку подій для розглянутого прецеденту. Даний клас буде пов'язаний з класами AddNewOrder та Order. Відношення між класами AddNewOrder і OrderManager - односпрямована асоціація з кратністю зв'язку 1 до 1, оскільки один примірник класу AddNewOrder взаємодіє тільки з одним екземпляром класу OrderManager. Відношення між класами і OrderManager замовлення - односпрямована асоціація з кратністю зв'язку 1 до 1 .. п, оскільки один клас OrderManager може взаємодіяти з кількома класами замовлення.

2. Створення пакетів

Пакети призначені для групування елементів у групи за певними критеріями. У простому випадку класи можна групувати по їх стереотипам. Створимо три пакети: Entities (класи-сутності), Boundaries (граничні класи) та Control (керуючі класи). Для цього необхідно натиснути правою кнопкою миші на Логічному поданні браузера (Logical View), в контекстному меню вибрати пункт New> Package (Створити> Пакет), і ввести ім'я пакета.

В поле документації (документації) для кожного пакета задамо коментар:

  1.  для пакета Entities коментар: пакет містить класи-сутності;
  2.  для пакета Boundary коментар: пакет містить граничні класи;
  3.  для пакета Control коментар: пакет містить керуючі класи.

3. Угрупування класів у пакети

Угрупування класів у пакети здійснюється шляхом перетягування в Логіческоі поданні Брауер відповідного класу до відповідного пакет. Групувати створені класи будемо наступним чином:

  1.  класи клієнта, замовлення, OrderItem і ComponentPart перенесемо в пакет Entities;
  2.  класи OrderOptions і AddNewOrder перенесемо в пакет Boundary;

клас OrderManager перенесемо в пакет Control.

4. Додавання діаграми класів для кожного пакета

Для додавання діаграми до пакету слід натиснути правою кнопкою миші по пакету, в контекстному меню вибрати пункт New> Class Diagram (Створити> Діаграма Класів), ввести ім'я класу Main (Головна), далі відкрити діаграму, двічі клацнувши по ній, і перенести на неї потрібні класи. Відносини між класами, що належать одному пакету, будуть перенесені автоматично.

Висновок: виконавши лабораторну роботу, я отримав навички побудови діаграм класів, створення пакетів і угруповання класів у пакети.


 

А также другие работы, которые могут Вас заинтересовать

80370. ФІНАНСИ ЖИТЛОВО-КОМУНАЛЬНОГО ГОСПОДАРСТВА 226 KB
  Сутність види та галузева структура житловокомунального господарства. Сутність та особливості організації фінансів житловоексплуатаційних підприємств. Необхідність і зміст реформи житловокомунального господарства в Україні. Сутність види та галузева структура житловокомунального господарства.
80371. Домогосподарство в системі економічних відносин 159.5 KB
  Мета заняття: розглянути сутність і функції домогосподарств; визначити походження доходів та витрат домогосподарств; означити та зясувати сутність диференціації доходів населення а також поняття Крива Лоренца. На самостійне опрацювання виносяться такі питання: Місце домогосподарства в кругообігу продуктів ресурсів і доходів. Диференціація доходів населення. Щоб домогосподарства успішно виконували свої функції вони повинні отримувати певний обсяг доходів.
80372. Підприємство як товаровиробник. Валовий дохід і прибуток 112 KB
  Види підприємницької діяльності. їх можна класифікувати за різними критеріями: 1 формами власності; 2 формами організації; 3 розмірами; 4 сферами діяльності. Розрізняють такі види партнерства: повне товариство товариство з необмеженою відповідальністю; товариство з обмеженою відповідальністю; змішане командитне товариство; асоціації об\'єднання створені з метою постійної координації господарської діяльності вони не повинні втручатися у виробничу або комерційну діяльність будького з учасників; корпорації акціонерні...
80373. Галузеві особливості виробництва і функціонування капіталу. Форми прибутку, процент і рента 110 KB
  Галузеві особливості виробництва і функціонування капіталу. Форми прибутку процент і рента Вступ до теми Метою заняття є визначити сутність понять господарський комплекс галузь сектори економіки господарська одиниця також національне господарство; охарактеризувати особливості функціонування капіталу у виробничій сфері торгівлі та сфері послуг; означити поняття прибуток та рентабельність; з’ясувати стан розвитку кредитних відносин в Україні. Особливості функціонування капіталу у виробничій сфері торгівлі та сфері послуг. На самостійне...
80374. Суспільне відтворення. Суспільний продукт і його основні форми 154.5 KB
  Будьякий процес виробництва має бути безперервним тобто повинен періодично проходити одні й ті самі стадії. Відтворення постійне відновлення та повторення процесу виробництва. Вищим інтересом підприємства є максимізація прибутку а суспільного виробництва максимізація добробуту населення Підприємство орієнтується на ринковий попит а суспільне виробництво на сукупний попит і т. Суспільне економічне відтворення основане на органічній єдності всіх частин що його утворюють: – виробництва розподілу обміну споживання; – домогосподарств...
80375. Економічний розвиток. Зайнятість, відтворення робочої сили та їх регулювання державою 185.5 KB
  Зайнятість відтворення робочої сили та їх регулювання державою Вступ до теми Метою сьогоднішнього заняття План 1. Проблеми зайнятості та відтворення робочої сили в Україні. Фактори та показники розширеного відтворення робочої сили. Якщо економіка має недостатньо робочих місць для бажаючих працювати то формується неповна зайнятість: певна кількість робочої сили вимушено залишається без роботи.
80376. Господарський механізм у системі регулювання суспільного відтворення. Держава та її економічні функції 253 KB
  Господарський механізм у системі регулювання суспільного відтворення. Ринковий і державний механізми регулювання економіки. На самостійне опрацювання Форми і методи державного регулювання економіки. Основні теорії державного регулювання.
80377. Сучасні економічні системи. Особливості розвитку перехідних економік 258 KB
  Особливості розвитку перехідних економік Вступ до теми Мета заняття: охарактеризувати економічну систему капіталізму вільної конкуренції з’ясувати сутність монополістичного капіталізму; означити сутність та моделі змішаної економіки; охарактеризувати економічну систему сучасного капіталізму визначити механізм її функціонування розглянути еволюцію та перспективи розвитку сучасного капіталізму. Моделі змішаної економіки. Механізм функціонування соціалістичної економіки. Особливості ринкової трансформації української економіки.
80378. Економічні аспекти глобальних проблем та їх вплив на економічний розвиток України 121 KB
  Глобальні проблеми — це всезагальні проблеми, що відзначаються загальнопланетарним за своїми масштабами і значенням характером, повязані з життєвими інтересами народів усіх країн, становлять загрозу життю для всього людства і можуть бути вирішенні спільними діями всіх країн світу.