- •Распределённые информационные системы.
- •Модель «Сущность-Связь»
- •Объектно-ориентированный подход
- •Объектно-ориентированный анализ
- •Методики объектно-ориентированного анализа
- •Классы и объекты. Отношения между классами.
- •Отношения между классами
- •Вопросы качества при создании классов и объектов.
- •Объектно-ориентированное проектирование и программирование
- •Объектно-ориентированное тестирование
- •Case-технологии Методологические основы Case-средств
- •Унифицированных язык моделирования (uml)
- •Диаграмма деятельности
- •Модульное программирование.
Методики объектно-ориентированного анализа
Классическая методика.
Классы и объекты, которые включаются в классическую методику:
-
Материальные предметы
-
Роли
-
События
-
Взаимодействие
Другие подходы:
-
Структуры
-
Различные системы
-
Устройства
-
События
-
Роли
-
Организационные единицы
-
Система баз данных
Существуют следующие типы анализа
-
Поведения
-
Предметной области
-
Вариантов
-
CRC карточки
-
Неформальные описания
-
Структурный анализ
1)В основе анализа поведения лежит анализ изменения системы в зависимости от тех факторов, вызывающих это поведение. Существует такое понятие, как ответственности объекта – определяет его «знания и умения» - совокупность всех услуг, которые объект должен выполнять.
В иерархии классов каждый подкласс выполняет обязательства суперкласса (родительского) и добавляет свои дополнительные услуги.
2)Анализ предметной области – здесь выделяются объекты, операции и связи, наиболее важные для данной предметной области.
3)Анализ вариантов поведения системы – выбираются наиболее эффективные варианты.
4)CRC-карточки – определённый способ анализа вариантов. На карточке пишется название класса, в левой половине - за что отвечает этот класс, в правой – с какими классами сотрудничает данный. На каждый класс заводится карточка. После анализа ответственности класса возможно что часть ответственности с одного большого класса передастся другому, после чего классы будут описываться заново.
5)Неформальное описание – в описании используются существительные и глаголы. Существительные – это элементы для названий, а глаголы – элементы для операций. Такой подход очень приблизителен и не подходит для сложных систем.
6)Структурный анализ :
-
Внешние сущности
-
Потоки данных
-
Хранилище данных
Классы и объекты. Отношения между классами.
Объект – сущность, имеющая чётко определённые функциональные значения в данной предметной области.
Объект характеризуется:
-
Индивидуальностью
-
Состоянием
-
Поведением
Общее состояние и поведение даёт возможность объединить объекты в классы. Состояние объекта характеризуется перечнем всех его возможных свойств и текущими значениями.
Поведение объекта характеризуется изменением его состояний в процессе взаимодействия с другими объектами посредством передачи сообщений.
Операции в объектах – воздействие одного объекта над другим с целью вызова соответствующей реакции. Выделяют 5 операций над объектами:
-
Модификатор – изменяющий состояние объекта.
-
Селектор – даёт доступ для определения состояния объекта без его изменения.
-
Итератор – доступ к содержимому объекта по частям в определённой последовательности.
-
Конструктор – создание объекта.
-
Деструктор – удаление объекта и/или освобождение памяти.
Для объектно-ориентированного программирования имеет отношение 2 типа отношений:
-
Использование – возможность обмена сообщениями между объектами. Объект может выполнять одну из трёх ролей:
-
Актёр – объект, который воздействует на другие объекты.
-
Сервер – объект, подвергающийся воздействию со стороны других объектов.
-
Агент – может быть и актёром и сервером
-
-
Отношение включения – один объект включает другой.