Слайд 1Объектно-ориентированное построение ПО
Введение в UML, part I
Узенцова Наталия
Слайд 2План лекции
Объектно-ориентированный подход
Жизненный цикл продукта
UML, история развития
UML – модель
Структура UML:
строительные блоки
общие механизмы
архитектура
Слайд 3Объектно-ориентированный подход
Необходимые факторы качества ПО:
Корректность и устойчивость
Расширяемость и повторное использование
Дополнительные
факторы качества при использовании ОО подхода:
Совместимость, работа на разных системах
Простота
использования, интерфейс дружественный пользователю
Эффективность, независимость от ресурсов оборудования
Своевременность, экономичность и функциональность
ОО-подход дает возможность тем, кто ее освоил, производить ПО быстрее и по более низкой стоимости; облегчает добавление функций.
Слайд 4ОО и жизненный цикл продукта
Стадии ЖЦ:
Анализ, процесс сбора и формирования
требований к будущей системе
Проектирование, выявление объектов системы и сопоставление с
требованиями
Разработка, создание спроектированного продукта
Тестирование, отладка и выявление ошибок процесса разработки
Ввод в эксплуатацию
Слайд 5Объектно-ориентированный анализ и дизайн
Do the right things, do the things
right
Объектно-ориентированный анализ - это методология, при которой требования к системе
воспринимаются с точки зрения классов и объектов, выявленных в предметной области.
Во время проведения ООА делается акцент на описание и определение объектов в исследуемой сфере
Объектно-ориентированное проектирование - это методология проектирования, соединяющая в себе процесс объектной декомпозиции и приемы представления логической и физической, а также статической и динамической моделей проектируемой системы.
Во время проведения ООД выделяют объекты системы и то, как они соотносятся с предъявленными требованиями
Слайд 6Объектно-ориентированный анализ и дизайн
Анализ заключает в себе раскрытие проблемы
и выявление требований
Дизайн включает в себя принятие концептуальных решений,
которые дополняют собой выявленные требования на этапе анализа
Анализ
Дизайн
Слайд 7UML, история развития
Унифицированный язык визуального моделирования систем
1994 г., Гради Буч(Grady
Booch), Джеймс Рамбо (James Rumbaugh) объединяются в компанию Rational Corporation
для работы над UML
1997 г., Object Management Group (OMG) принимает UML, как ОО язык визуального моделирования
2000г., UML 1.4, добавляется дополнительная семантика действий
2005г., UML 2.0 – сформированный язык моделирования
Слайд 8UML
Является универсальным языком визуального моделирования систем
Имеет широкое применение благодаря своей
расширяемости
Объединяет лучшие современные технические параметры моделирование и разработки программного обеспечения
Слайд 9Важно отметить
UML не предлагает нам никакой методологии моделирования.
UML представляет лишь
визуальный синтаксис, который используется для создания моделей.
UML не привязан
ни к какой методологии или жизненному циклу.
Методологией является унифицированный процесс (Unified Process, UP)
Методология указывает на исполнителей, действия и артефакты, которые необходимо использовать, осуществить или создать для моделирования программной системы.
UML и UP унифицируют опыт предшествующих языков визуального моделирования и процессов разработки программного обеспечения наиболее оптимальным образом.
UP- Software Engineering Process, SEP. Его расширением является RUP, коммерческий продукт компании IBM
Слайд 10UML - модель
Основная идея:
Возможность моделировать ПО и другие и другие
системы как наборы взаимодействующих объектов
Аспекты модели:
Статистическая структура – описывает, какие
типы объектов важны для моделирования системы и как они взаимодействуют
Динамическое поведение – описывает жизненные циклы этих объектов и то, как они взаимодействуют друг с другом для обеспечения требуемой функциональности системы
Слайд 13UML сущности
• структурные сущности – существительные UML модели, такие как
класс, интерфейс, кооперация, прецедент, активный класс, компонент, узел;
• поведенческие сущности
– глаголы UML модели, такие как взаимодействия, деятельности, автоматы;
• группирующая сущность – пакет, используемый для группировки семантически связанных элементов модели в образующие единое целое модули;
• аннотационная сущность – примечание, которое может быть добавлено к модели для записи специальной информации, очень похожее на стикер.
Слайд 17Общие механизмы
Спецификации
Текстовые описания семантики элемента
Набор спецификаций –
это суть модели. Спецификации формируют семантический задний план (semantic backplane),
который объединяет модель и наполняет ее смыслом. Различные диаграммы – это просто представления или визуальные проекции этого плана.
Слайд 18Дополнения
В UML к каждому элементу можно добавлять ряд дополнений, визуализирующие
аспекты спецификации элемента
Слайд 19Общие механизмы
Принятые деления
Классификатор/экземпляр
Абстрактное понятия типа сущности и отдельно конкретные сущности
Интерфейс
и реализация
Отделение того, что выполняет действие(интерфейс) от того как выполняется
действие (реализация)
Механизмы расширения
Ограничения: расширяют семантику элемента, обеспечивая возможность добавлять новые правила.
Стереотипы: возможность определять новые элементы модели
Помеченные значения: расширение спецификации элемента, добавление в него новой специальную информацию.
Слайд 20Архитектура
“4+1” представление архитектуры