Учебный курсОбъектно-ориентированный анализ и программирование
Лекция 1
Программа как модель предметной области
2
Информационные процессы
Информационный процесс - процесс получения, хранения, обработки и передачи информации с помощью компьютерных и других технических средств
Данные - информация любой природы, зафиксированная тем или иным способом
Алгоритм – это точное описание последовательности действий над входными данными, выполнение которых исполнителем приводит к получению выходных данных.
3
Жизненный цикл программы
Реальный мир
Предметная область
Логическая модель
Разработчик
Физическая модель
Среда исполнения
Прагматика
Семантика
Модель – формализованное описание предметной области.
Логическая модель отражает взгляд на предметную область со стороны заказчика
Физическая модель отражает взгляд на предметную область со стороны разработчика
Жизненный цикл программы - совокупность взаимосвязанных и следующих во времени этапов, начиная от разработки требований к программе и заканчивая полным отказом от ее использования
Жизненный цикл программы формально можно рассматривать как переход от логической модели предметной области к физической модели предметной области через промежуточные модели. Каждая из моделей отражает точку зрения на разрабатываемую программу определенного участника процесса разработки.
4
Каскадная модель жизненного цикла
Анализ
Проектирование
Разработка
Внедрение
Эксплуатация
Сопровождение
Анализ – разработка логической модели и определение спецификации.
Проектирование – определение структуры программы и распределение функциональности по элементам этой структуры.
Разработка – определение способа реализации требуемой функциональности в каждом из элементов структуры и разработка физической модели предметной области на некотором языке программирования.
Внедрение – конфигурирование программы под конкретную среду исполнения и проведение испытаний на соответствие программы требованиям заказчика.
Эксплуатация – применение программы по назначению.
Сопровождение – модификация программы с целью исправления ошибок, выявленных при эксплуатации.
ГОСТ 34.601-90
6
Каскадная модель жизненного цикла
Анализ
Проектирование
Разработка
Внедрение
Эксплуатация
Сопровождение
Анализ – разработка логической модели и определение спецификации.
Проектирование – определение структуры программы и распределение функциональности по элементам этой структуры.
Разработка – определение способа реализации требуемой функциональности в каждом из элементов структуры и разработка физической модели предметной области на некотором языке программирования.
Внедрение – конфигурирование программы под конкретную среду исполнения и проведение испытаний на соответствие программы требованиям заказчика.
Эксплуатация – применение программы по назначению.
Сопровождение – модификация программы с целью исправления ошибок, выявленных при эксплуатации.
ГОСТ 34.601-90
7
Завершение фазы
Начало фазы
Итерационная модель жизненного цикла
Rational Unified Process (RUP)
Анализ и определение требований
Проектирование
Разработка
Фазы
Инициализация программа
Усовершенствование программа
Создание программа
Переход программа
Заказчик
Время
8
Понятие парадигмы программирования
Парадигма программирования - понятийный аппарат, используемый для разработки модели предметной области
Object Pascal
C++
Visual Basic
9
Процедурно-ориентированное программирование
Предметная область – множество процессов, воздействующих на входные данные с целью их преобразования в выходные данные
Логическая модель ( диаграмма потоков данных) определят:
- Входные данные
- Источники входных данных
- Выходные данные
- Потребители выходных данных
- Данные, подлежащие долговременному хранению (накопители данных)
- Процессы преобразования входных данных в выходные данные
10
Структура процедурно-ориентированной программы
Запуск Main
Вызов P1
Обработка данных в Р1 и возврат в Main
Вызов P2
Обработка данных в Р2 и возврат в Main
Завершение программы
ГОСТ 19.701-90
11
Объектно-ориентированное программирование
Предметная - множество взаимодействующих объектов.
Цель взаимодействия – достижение заданной функциональности
Объект - мыслимая или реальная сущность, обладающая характерным поведением и характеристикой и являющаяся важной для данной предметной области.
Поведение – набор операций, которые может выполнять объект
Характеристика – атрибуты, отличающие данный объект от других объектов
Класс объектов - множество объектов, которые имеют одинаковый набор операций и одинаковый набор атрибутов
Модель системы – совокупность логически взаимосвязанных диаграмм.
Диаграммы разрабатываются в нотации языка UML
(Unified Modeling Language)
13
Диаграмма вариантов использования
Определяет функциональность программы в терминах актеров и вариантов использования.
Актер - инициатор выполнения варианта использования
Вариант использования - заданная функциональность
14
Диаграмма классов
Определяет структуру предметной области (программы) в виде набора классов, находящихся между собой в определенных отношениях
Имя класса
Операции
(Методы)
Атрибуты
(Поля)
Объектные языки | UML | Процедурные языки |
Поле | Атрибут | Данные |
Метод | Операция | Подпрограмма |
Только в составе объекта или класса ( ИНКАПСУЛЯЦИЯ )
Самостоятельныесущности
15
Отношения между классами
Предок
Потомки
Контейнер
Части
Ассоциация
Классы относятся к одной предметной области
Наследование
Классы-потомки являются разновидностями класса-предка
Агрегация
Класс-контейнер включает классы-части
17
Диаграмма кооперации
Определяет динамические свойства предметной области в виде взаимодействия между объектами в конкретном варианте использования
Взаимодействие - передача сообщений между объектами. В ответ на полученное сообщение объект выполняет операцию и может изменить свое состояние.
Состояние объекта – текущее значение его атрибутов.
Изменение состояния объекта может привести к передаче сообщения другому объекту
UML | Сообщение |
Объектные языки | Вызов метода |
19
Постановка задачи
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.