- •Лабораторная работа №5
- •Основы объектной технологии
- •Объект-экземпляр
- •Объектная нотация
- •Как объекты кооперируются
- •Как объекты идентифицируют друг друга
- •Постоянная связь
- •Временная связь
- •Атрибуты
- •Тип атрибута, обозначающий класс
- •Видимость атрибутов
- •Операции
- •Видимость операций
- •Ассоциации
- •Порядок ассоциации
- •Кратность ассоциации
- •Ассоциативная связь и объем ассоциации
- •Ассоциативный класс
- •Наставление по моделированию анализа
- •Internet-магазин
- •Моделирование прецедентов
- •Субъекты
- •Прецеденты
- •Распределение требований по субъектам и прецедентам
- •Документирование прецедентов
- •Моделирование видов деятельности
- •Виды деятельности
- •Диаграмма видов деятельности
- •Моделирование классов
- •Соответствие функциональных требований и классов-сущностей (Іnternet - магазин)
- •Ассоциации
- •Агрегации
- •Обобщения
- •Диаграмма классов
- •Моделирование взаимодействий
- •Взаимодействия
- •Диаграмма последовательностей
- •Моделирование состояний
- •Состояния и переходы
- •Диаграмма состояний
Лабораторная работа №5
Тема: Основания анализа требований
Цель: Получить знания в области анализа требований. Четко разобраться в особенностях моделирования анализа.
ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ:
В качестве основного метода создания ПО принят объектно-ориентированный подход. Этот подход не дается легко, поскольку объектно-ориентированная разработка требует хорошего знания объектной технологии. Без глубокого понимания тонкостей объектной технологии разработчик не сможет правильно применять язык UML в качестве универсального и привычного средства моделирования.
Основная трудность изучения объектной технологии связана с отсутствием очевидной отправной точки и ясного направления исследования. Это подходы к изучению систем "сверху-вниз" или "снизу-вверх". По существу, рассматриваемый подход представляет собой что-то наподобие "все время со средины". Не зависимо от того, насколько мы продвинулись в процессе изучения, кажется, что мы всегда находимся посередине этого процесса (поскольку все время возникают новые вопросы). Можно считать, что в процессе изучения достигнут первый успех, когда читатель осознает глубинный смысл того факта, что в объектно-ориентированной системе "все есть объект".
Основы объектной технологии
Для объяснения сути объектной ориентации информационных систем воспользуемся аналогией с объектами реального мира. Окружающий мир состоит из объектов (object), пребывающих в состоянии (state), которое определяется текущими значениями атрибутов объекта.
Например, кружка на столе находится в состоянии filled (наполнена), поскольку она приспособлена для хранения жидкостей и в ней есть кофе. Когда в ней нет больше кофе, состояние кружки можно определить как empty (пуста). Если она упадет на пол и разобьется, она перейдет в состояние broken (разбита).
Все объекты реального мира обладают также идентичностью (identity)— постоянным свойством, с помощью которого мы отличаем один объект от другого.
Реальные объекты, обладающие тремя свойствами (состояние, поведение, идентичность), образуют системы с естественным поведением. Естественные системы безусловно являются самыми сложными системами из всех известных. Никакая компьютерная система не может сравниться по сложности с животным или заводом.
Несмотря на сложность, естественные системы способны работать: они демонстрируют интересное поведение, могут приспосабливаться к внешним и внутренним изменениям, могут эволюционировать со временем и т.д [1].
Объект-экземпляр
Объект — это экземпляр (instance) некоей "сущности". Он может быть одним из множества экземпляров одной и той же "сущности". Моя Чашка — экземпляр множества всевозможных чашек.
Общее описание "сущности" называется классом (class). Поэтому объект является экземпляром класса. Однако, как мы увидим в разделе 2.1.6, класс также может нуждаться в конкретизации — он может быть объектом. Поэтому нам необходимо различать объект-экземпляр (instance object) и объект-класс (class object).
Для краткости объект-экземпляр часто называют объектом или экземпляром. Название "экземпляр объекта" сбивает с толку. Объектно-ориентированная система состоит из взаимодействующих объектов. В объектно-ориентированной системе нет ничего, кроме объектов, будь-то объект экземпляра (объект-экземпляр) или объект класса (объект-класс) [10].