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

Завдання

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

  2. Проаналізувати архітектурні стилі та шаблони, що розглядалися на лекціях та визначити можливість їх застосування при проектування застосування. Та обрати необхідний шаблон.

  3. Спроектувати загальну архітектуру ПЗ. Визначити тип з’єднувачів, які буде використано.

  4. До звіту необхідно включити таке:

  • Опис того, як були перевірені та протестовані обрані компоненти. Переконатися в тому, що до опису включено посилання на компоненти.

  • Викладка аналізу архітектурних стилів та шаблонів з метою їх застосування, обґрунтування вибору архітектурного стилю та шаблону.

  • Опис обраного архітектурного стилю або шаблону.

  • Основні проектні рішення та обґрунтування вибору з’єднувачів, на основі системи критеріїв, що розглядалися на лекціях.

  • Опис архітектури системи за допомогою мови UML [4] або іншої специфікації. Вказати у звіті компоненти та з’єднувачі обраних компонентів.

Контрольні запитання

  1. Які основні кроки містить інженерний процес проектування?

  2. Які основні інженерні інструменти може бути використано при проектування?

  3. Яким чином проектувальники отримують досвід – основний інструмент проектування?

  4. Що таке архітектурний стиль ПЗ?

  5. Що таке архітектурний шаблон ПЗ?

  6. У чому суть архітектурного стилю «Основна програма та підпрограми»?

  7. У чому суть архітектурного стилю «Об’єктно-орієнтований стиль»?

  8. У чому суть архітектурного стилю «Багаторівнева архітектура»?

  9. У чому суть архітектурного стилю «Клієнт-сервер»?

  10. У чому суть архітектурного стилю «Послідовні партії»?

  11. У чому суть архітектурного стилю «Канали та фільтри»?

  12. У чому суть архітектурного стилю «Шкільна дошка»?

  13. У чому суть архітектурного стилю «На основі правил»?

  14. У чому суть архітектурного стилю «Інтерпретатор»?

  15. У чому суть архітектурного стилю «Мобільний код»?

  16. У чому суть архітектурного стилю «Неявний виклик»?

  17. У чому суть архітектурного стилю «Підписка-публікація»?

  18. У чому суть архітектурного стилю «На основі подій»?

  19. У чому суть архітектурного стилю «Peer-to-peer»?

  20. Що таке з’єднувач та які ролі він може відігравати у ПЗ?

  21. Які типи з’єднувачів вам відомі?

Лабораторна робота №1.3 Моделювання та візуалізація архітектури програмного забезпечення

Мета:отримати практичні навички у архітектурному моделюванні та візуалізації ПЗ.

Теоретичні відомості

Архітектурна модель, це робочий продукт, який охоплює всі, або деякі з проектних рішень, що становлять системну архітектуру [2]. Архітектурне моделювання це подання у зрозумілій формі та документування цих проектних рішень. Те, як архітектуру моделюють, дуже залежить від нотацій, які обертають. Архітектори та інші зацікавлені особо повинні прийняти усі критичні рішення ще перед початком моделювання: які архітектурні рішення та поняття слід моделювати, на якому рівні деталізації, і з яким рівнем формалізації. Це рішення витрат/переваг: переваги від підтримки та розробки архітектурної моделі мають переважувати витрати пов’язані з нею. Щоб розробити архітектуру, необхідно змоделювати компоненти, з’єднувачі, інтерфейси, конфігурації та обґрунтування. Можна також моделювати статичні (не змінюються під час роботи системи), динамічні (змінюються під час роботи системи), функціональні та нефункціональні аспекти. Моделі мають декілька важливих характеристик: неоднозначність, точність, адекватність. Модель є неоднозначною, якщо її значення можна інтерпретувати більш ніж одним способом. Модель є адекватною, якщо вона правильна, відповідає дійсності, чи відхиляється від норм в доступних межах. Модель є точною, якщо строго обмежена та визначена. В цілому неможливо описати все, що ми хочемо від моделі у одному описі моделі, чи документі; модель буде дуже великою та складною. Тому ми створюємо декілька зв’язаних між собою моделей, кожна з яких містить у собі декілька важливих проектних рішень. Як правило, підмножина моделей організована навколо деякого поняття, чи іншого критерію відбору. Модель, що є частиною підмножини називають поданням, а критерій відбору – точкою зору. Існує декілька загально використовуваних точок зору: логічні точки зору – включають логічні об’єкти у систему, враховуючи те, як вони будуть з’єднані між собою; фізичні точки зору – включають фізичні об’єкти у систему, враховуючи те, як вони будуть з’єднані між собою; точки зору розгортання – описують, як логічні точки зору будуть відображені на фізичних точках зору; точки зору паралелізму – описують як у системі буде здійснюватися паралелізм та потоковість; поведінкові точки зори – охоплюють очікувану поведінку системи. Подання можуть містити перекриття проектних рішень. Таким чином, існує можливість, що подання можуть стати несумісними один з одним. Подання сумісні, якщо проектні рішення, які вони містять, узгоджені одне з одним. Подання несумісні, якщо одразу у декількох є проектні рішення, що не можуть бути дійсними одночасно. У своєму розпорядженні архітектори мають декілька нотацій для подання архітектури. Їх можна поділити на наступні групи: загальні підходи (лінгвістична нотація, UML, PowerPoint стиль), ранні мови опису архітектури (Darwin, Rapide, Wright), доменні і стиле-орієнтовані мови (Koala, Weaves, AADL), мови розширюваного опису архітектури (Acme, ADML, xADL).

Візуалізація – це трансформація інформації у візуальну форму, що дозволяє користувачам отримувати графічне зображення. Архітектурна візуалізація визначає, як архітектурні моделі будуть відображені і те, як зацікавлені особи будуть з ними взаємодіяти. Два ключові аспекти: відображення, що є зображенням або іншою візуальною формою проектних рішень; взаємодія, що дозволяє зацікавленим особам працювати з проектними рішеннями у графічному режимі. Існує три наступні типи візуалізації: текстова, графічна та гібридна.

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

Графічна візуалізація відображає архітектуру у вигляді графічних символів: прямокутники, фігури, картинки, кліп арти, лінії, стрілки, фотографічні зображення, затемнення, тіні, 2D чи 3D фігури. Змогу редагувати такий вид візуалізації надають графічні редактори, які мають різні рівні інформованості для усіх цільових позначень. Переваги графічної візуалізації наступні: символи, кольори і т.д., більш зрозумілі для людини, ніж структурований текст. Деякі нотації включають як графічні частини, так і текстові, тому їх називають гібридними.