- •3.Об’єктно-орієнтований підхід до розробки програмного забезпечення. Дайте визначення поняття класу, об’єкту, поля, методу. З чого складається життєвий цикл об’єкту?
- •4.Опишіть внутрішню структуру об’єкта. Що таке інформація про тип під час виконання rtti і як вона використовується?
- •6.В чому полягає принцип спадковості? Що таке одинична та множинна спадковості? Як реалізується принцип одиничної та множинної спадковості в об’єктно-орієнтованих мовах програмування?
- •12. Поняття виключної ситуації, наведіть приклади виключних ситуацій. Як реалізуються виключні ситуації та їх обробка в об’єктно-орієнтованих мовах програмування?
- •13. Основні етапи і задачі об’єктно-орієнтованого аналізу предметної області. Які артефакти розробляються на етапі оОаналізу?
- •14. Визначення прецеденту. Що таке сценарій прецеденту та правила його опису?
- •16. Основні етапи і задачі об’єктно-орієнтованого проектування. Які артефакти розробляються на етапі оОпроектування?
- •18.Як під час проектування здійснюється розподіл обов’язків між класами? що таке шаблони проектування? Наведіть приклади шаблонів з прикладами їх застосування.
- •19. Охарактеризуйте мову uml та її призначення. Які діаграми для подання моделі складної системи надає uml, дайте коротку характеристику діаграм. Для чого на діаграмах uml застосовується мова ocl?
- •20. Призначення та правила побудови діаграми прецедентів uml: типи зв’язків між прецедентами(з прикладами), зображення на діаграмі прецедентів ролей (акторів).
- •24. Різновид діаграм реалізації. Що спільного і в чому різниця в uml діаграмах компонентів та розгортання?
- •26. Призначення компонувальника та завантажувача. В чому різниця між статичним та динамічним компонуванням бібліотек? Дайте порівняльну характеристику програмних модулів та динамічних бібліотек.
- •30. Як організувати багато потокове застосування? Які проблеми можуть виникнути під час взаємодії потоків і які методи їх уникнення?
16. Основні етапи і задачі об’єктно-орієнтованого проектування. Які артефакти розробляються на етапі оОпроектування?
При разработке программного приложения необходимо обеспечить высокий уровень и подробное описание логики решения, удовлетворяющего требованиям к системе и налагаемым ограничениям. В процессе проектирования основное внимание уделяется логическому решению, обеспечивающему выполнение основных требований.
В процессе ОО проектирования должны быть определены логические программные объекты, которые будут реализованы средствами объектно-ориентированного языка программирования. Эти программные объекты включают в себя атрибуты и методы.
Задача:
основной задачей ОО проектирования является создание диаграмм взаимодействий, иллюстрирующих взаимодействие объектов в процессе выполнения системных требований. После создания диаграмм взаимодействий можно построить диаграммы классов и интерфейсов, реализованных в программе.
Этапы:
Анализ требований – выделение экономических процессов и требований и их формулировка в виде прецедентов. Прецедент – это текстовое описание процессов, происходящих в системе.
Распределение обязанностей – выделение задач и обязанностей различных программных объектов в приложении подобно распределению функциональных обязанностей между сотрудниками.
Обязанности объектов и их взаимодействие, как правило, отображаются с использованием диаграмм классов и диаграмм взаимодействий. На этих диаграммах отображаются классы и потоки сообщений между программными объектами.
Артефакт – диаграмма или документ, описывающий определенное понятие.
Артефакты:
Диаграммы взаимодействий – иллюстрирует экземпляры класса и взаимодействие между ними;
Диаграммы классов – описание имени, полей и методов класса, а также типов связей (ассоциация, агрегация, наследование) между классами;
Диаграммы пакетов (программные модули, классы, которые в них описаны, взаимодействия между модулями);
Диаграммы размещений.
17. Які інструментальні програмні засоби використовуються для розробки та подання результатів аналізу та проектування програмного забезпечення? Які з цих засобів надають можливості кодогенерації та реінженірінга програмного забезпечення?
Для анализа требований и проектирования на основе структурной методологии могут быть применены следующие системы:
Silverrun ModelSphere (компании magma solutions GmbH) – поддерживает методы DATARUN, Гейна-Сарсона, Йордона, Мартина и др.;
Oracle Designer (компании Oracle) – поддерживает CASE-Method Бфркера.
CASE.Аналитик (компании Эйтекс) – поддерживает подход Гейна-Сарсона. Ситема работает с иерархией диаграмм, последоватьльно детализирующих модель.
В состав системы CASE.Аналитик входят:
база данных проекта;
графические редакторы потоковых диаграмм и структурограмм;
средства ввода экранных и печатных форм;
документатор;
верификатор, позволяющий вести автоматический контроль выполнения формальный правил построения модели при вводе и редактировании.
Системы для анализа требований и проектирования на основе объектно-ориентированной методологии:
Rational Rose;
Together Control Center.
Основные достоинства и возможности системы Rational Rose:
Система прошла достаточно долгий путь развития и совершенствования. Она поддерживает язык UML и ряд ранних языковых нотаций;
Система реализована на обеих наиболее распространенных операционных системах (Unix, Windows);
Система имеет 3 основные модификации:
- Enterprise – с возможностью генерации кода на языках Visual C++, Visual BASIC, Java, COBRA IDL.
- Professional – возможность генерации кода на одном из перечисленных языков;
- Modeler – без языковой поддержки.
- система поддерживает восстановление спецификации из кода;
- система поддерживает генерацию проектной документации.