
- •2.1. Сложность программного обеспечения
- •2. Перечислите основные причины сложности программного обеспечения.
- •3. Перечислите пять признаков сложной системы.
- •4. Объясните следующие понятия: «декомпозиция», «абстракция», «иерархия» (виды иерархий).
- •5. Объясните понятие «каноническая форма системы».
- •2.2. Введение в объектно-ориентированный анализ и проектирование
- •1. Объясните следующие понятия: «объектно-ориентированный анализ (ооа)», «объектно-ориентированное проектирование (ood)», «объектно-ориентированное программирование (оор)».
- •2. Дайте краткую характеристику основным принципам объектной модели: абстрагирование, инкапсуляция, модульность, иерархия, типизация, параллелизм, сохраняемость.
- •3. Объясните понятие «объект».
- •4. Опишите основные категории объектов.
- •5. Объясните следующие понятия: «состояние», «поведение», «идентичность» и «время жизни» объекта.
- •6. Объясните следующие понятия: «операция», «метод класса», «свободная подпрограмма».
- •7. Опишите назначения следующих операций: модификатор, селектор, итератор, конструктор, деструктор.
- •8. Объясните следующие понятия: «протокол», «роль» и «ответственность» объекта.
- •9. Объясните понятие «класс». Как соотносятся понятия «класс» и «объект»? Описание класса.
- •10. Опишите основные типы классов: параметризованный класс, класс-наполнитель, утилита параметризованного класса, утилита класса-наполнителя, метакласс, абстрактный класс.
- •11. Объясните понятие «стереотип класса». Опишите основные стереотипы классов: «пограничные классы», «классы-сущности», «управляющие классы».
- •12. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы, основанному на использовании uml.
- •13. Дайте краткую характеристику классическим подходам к выявлению ключевых абстракций системы.
- •14. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ поведения».
- •15. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ предметной области».
- •16. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ вариантов».
- •17. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «crc- карточки».
- •18. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Использование неформального описания задачи».
- •19. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Использование структурного анализа».
- •20. Объясните понятие «атрибут класса».
- •21. Опишите основные типы атрибутов (класса).
- •22. Опишите способы выявления атрибутов. В каком случае информация относится к классу, а в каком - к атрибуту.
- •23. Опишите основные типы операций. Опишите основные стереотипы операций.
- •24. Опишите общие этапы выявления операций.
- •25. Объясните понятие «видимость» атрибута и операции класса. Перечислите допустимые значения видимости.
- •26. Опишите основные типы связей между классами (ассоциация, зависимость, агрегация, наследование, полиморфизм). Объясните понятие «дружественный класс».
- •27. Объясните следующие понятия: «стереотип связи», «имя связи» и «элемент связи».
- •28. Выявление связей.
- •29. Опишите основные критерии, используемые для оценки качества классов и объектов.
- •5. Назначение диаграммы Вариантов Использования и краткое описание ее элементов (типы действующих лиц и связей).
- •6. Процесс выявления вариантов использования. Описать этапы создания диаграмм Вариантов Использования (можно на примере своей задачи).
- •7. Связь Диаграмм Вариантов Использования и «Технического задания».
- •8. Назначение потока событий и краткая характеристика его составных частей (краткое описание, предусловие, постусловие, основной поток, альтернативный поток и поток ошибок).
- •9. Привести пример потока событий (можно из своей задачи).
- •10. Назначение и типы Диаграмм Взаимодействия.
- •11. Перечислите основные элементы Диаграммы Последовательности. Назначение синхронизации и скриптов.
- •12. Перечислите основные элементы Кооперативной диаграммы.
- •13. Этапы составления Диаграмм Взаимодействия.
- •14. Двухэтапный подход при составлении Диаграмм Взаимодействия.
- •15. Назначение Диаграммы Классов и этапы ее составления.
- •16. Назначение Диаграммы Состояний и краткое описание ее элементов (состояния (виды состояний), деятельность, входные действия, выходные действия, переходы, события, ограждающие условия, действия).
- •18. Назначение Диаграммы Размещения и краткое описание ее элементов.
- •19. С какой целью на диаграммах uml используются примечания и пакеты.
- •20. Модели и ракурсы. Логическая и физическая модели. Статическая и динамическая модели.
- •4. Процесс объектно-ориентированной разработки по
5. Назначение диаграммы Вариантов Использования и краткое описание ее элементов (типы действующих лиц и связей).
См. 4.
Действующее лицо. Это то, что взаимодействует с создаваемой системой. Варианты использования описывают, что происходит внутри области действия системы; действующие лица определяют все, что находиться вне этой области.
Делятся на: пользовательские системы, другие системы, взаимодействующие с данной и время.
Физические личности. Наиболее типичны и имеются в каждой системе.
Другие системы. Действующие лица, находящиеся вне того, что разрабатывается, и не подлежит контролю.
Время. Действующее лицо, если от него зависит запуск каких либо событий в системе.
Связи:
Связь коммуникации. Связь между вариантом использования и действующим лицом. Показывается стрелкой, направление - кто инициализирует коммуникацию.
Связь использования. Позволяет одному варианту использования задействовать функционал другого. Обычно моделируют многократную применяемую функциональность, встречающеюся в двух и более вар. исп. Обозначается стрелка и <<uses>>.
Связь расширения. В отличие от использования, позволяет варианту использования применять функционал только при необходимости. Обозначается стрелка и <<extends>>.
Связь обобщения. Показывает общие черты нескольких действующих лиц.
6. Процесс выявления вариантов использования. Описать этапы создания диаграмм Вариантов Использования (можно на примере своей задачи).
Обратиться к документации заказчика, рассмотреть области использования системы или документы концептуального характера. Нужно учесть мнения всех заинтересованных лиц и определить их ожидание от продукта и задать вопросы:
- что он хочет делать с системой?
- будет ли он с помощью нее работать с информацией?
- нужно ли будет информировать систему о каких – либо внешних событиях?
- должна ли система информировать пользователя о изменениях и событиях?
Шаг 1. Выявление вариантов использования
Шаг 2. Рассмотрение возможных ролей в системе и определяют действующие лица
Шаг 3. Устанавливаются связи между выявленными элементами системы.
7. Связь Диаграмм Вариантов Использования и «Технического задания».
Диаграммы вариантов использования представляют собой графическое представление взаимодействия пользователя и компьютерной системы. Каждый вариант использования охватывает некоторую очевидную для пользователей функцию системы и решает некоторую дискретную задачу пользователя. Список всех вариантов использования фактически определяет функциональные требования к системе, с помощью которых может быть сформулировано техническое задание.
8. Назначение потока событий и краткая характеристика его составных частей (краткое описание, предусловие, постусловие, основной поток, альтернативный поток и поток ошибок).
Поток событий. Его цель – документирование процесса обработки данных, реализуемого в рамках варианта использования. Описывает, что будут делать пользователи системы и сама система.
Состоит из:
Краткое описание того, что будет делать
Предусловие. Условия, которые должны быть выполнены, прежде чем вариант использования начнет работу.
Постусловие. Условия, которые должны быть выполнены, после завершения варианта
Основной поток, альтернативный поток Поэтапно описывают использование функциональности. Уделяют внимание тому, что будет делать система, описание с точки зрения пользователя.
Содержание:
Описание того, каким образом запускается вариант использования
Различные пути выполнения варианта использования
Основной поток варианта использования
Отклонение от основного потока событий(альтернативные потоки)
Потоки ошибок
Описание того, каким образом завершается вариант использования