
- •Проектирование информационных систем
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Развитие языков и парадигм программирования связано с решением проблемы постоянно увеличивающейся сложности программ.
- •Машинное программированиеАлгоритмическое П/ПСтруктурное П/ПМодульное П/П
- •Э. Дэйкстра (60-е годы):
- •Простая программа – ровно один вход и один выход.
- •Стандартизация и линейность программы – снижение сложности.
- •Данные не защищены от неправильного использования.
- •Основная идея: разбиваем сложную задачу на
- •Структурное программирование – универсальный базис алгоритмических конструкций.
- •Модули вынуждены модифицировать данные за
- •Дальнейшая борьба со сложностью
- •Основные принципы объектной модели:
- •Компонентный подход – развитие объектно- ориентированной идеологии;
- •Компонент:
- •Unified Modeling Language
- •Древние греки – «мир можно рассматривать в терминах объектов и событий»
- •1980е – начало 90х – гг.
- •OOSE – средства представления вариантов использования
- •1995-96 гг. – “Три Амиго” работают над предварительными версиями UML в Rational Software
- •ООП как развитие структурного анализа данных
- •Поведение реализуется через набор операций
- •Модель есть упрощение исходного объекта
- •Объект - это экземпляр класса.
- •Наследование – уточнение задаваемого множества объектов
- •ВидТранспорта
- •«Один интерфейс – много реализаций»
- •Переопределение методов (override): в унаследованном классе можно переопределить метод базового класса.
- •А) Процесс разделения элементов абстракции, которые образуют ее структуру и поведение.
- •Внешний вид класса, объекта или модуля, выделяющий его существенные черты и не показывающий
- •Служит для представления статической структуры модели системы
- •Класс может не иметь конкретных экземпляров. Такой класс называют абстрактным.
- •ассоциация (именованная связь)
- •Возникает, когда один класс использует другой
- •Бинарная ассоциация
- •Каждый экземпляр n-арной ассоциации представляет собой n-арный кортеж значений объектов из соответствующих классов
- •из нескольких потенциально возможных вариантов данной ассоциации в каждый момент времени может использоваться
- •имеет место между несколькими классами в том случае, если один из классов представляет
- •частный случай агрегации
- •между более общим элементом (предком) и более частным или специальным элементом (потомком)
- •{complete} - указаны все классы-потомки, и других потомков быть не может.
- •Предоставить в распоряжение пользователей легко воспринимаемый и выразительный язык визуального моделирования, специально предназначенный
- •Описание языка UML должно включать в себя семантический базис для понимания общих особенностей
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма состояний (statechart diagram)
- •Диаграмма состояний (statechart diagram)
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма компонентов (component diagram)

Древние греки – «мир можно рассматривать в терминах объектов и событий»
Декарт (XVII): люди обычно имеют объектно-ориентированный взгляд на мир
Основы ООП сформулированы в 1970е- 80-е годы независимо разными авторами (Джонс, Вильямс, Дейкстра, Буч др.)
ООА, ООПроек, ООПрог – язык Simula.

1980е – начало 90х – гг.
OOSE (Ivar Jacobson)
OMT (James Rumbaugh),
Booch (Grady Booch).

OOSE – средства представления вариантов использования
ОМТ-2 –анализ процессов обработки данных в информационных системах
Booch'93 – нашел наибольшее применение на этапах проектирования и разработки различных программных систем.

1995-96 гг. – “Три Амиго” работают над предварительными версиями UML в Rational Software Corporation
1996-97 гг. – представители софтверной
индустрии организуют консорциум для работы над проектом стандарта UML
1997 г. – OMG принимает стандарт UML 1.1
2005 г. UML 1.4.2 принят в качестве международного стандарта ISO/IEC 19501:2005
2005 г. – опубликована версия 2.0.
2011 г. – опубликована версия 2.4.1.
2012 г она получила статус ISO/IEC 19505

ООП как развитие структурного анализа данных
Моделирование объектов РМ при помощи «объектов» - конструктов языка программирования
Объект представляет собой модель объекта РМ, с выделенным набором
атрибутов (свойств) и операций
Нечто, чем можно оперировать.
Имеет состояние, поведение и идентичность.
Термины "экземпляр" и "объект" взаимозаменяемы.

Поведение реализуется через набор операций
Операция, operation - нечто, проделываемое одним объектом над другим, чтобы вызвать реакцию
Термины "операция", "метод" и "сообщение" взаимозаменяемы.

Модель есть упрощение исходного объекта
Абстракция = выделение необходимых свойств объекта
Необходимость набора свойств определяется решаемой задачей
Однотипные объекты, обладающие одинаковыми наборами характеристик, объединяются в группы
В ООП такие группы называются
Классами
Объект = экземпляр класса.

Объект - это экземпляр класса.
В качестве экземпляра класса объект обладает всеми характеристиками своего класса
Наследовать могут не только объекты, но и классы.

Наследование – уточнение задаваемого множества объектов
Более общий класс – «базовый» класс или «суперкласс»
Более частный класс – наследник.

ВидТранспорта
-средняяСкорость -количествоПассажиров
+вычислитьРасстояние()
+уехать()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Самолет |
|
|
|
|
|
|
Велосипед |
|
Корабль |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-максВысота |
|
|
-количествоПередач |
|
|
|
|||||||||||
|
|
-тоннаж |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+взлетать() |
|
|
+сменитьСкорость() |
|
|
|
|||||||||||
|
|
+плыть() |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+приземляться() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|