
- •Тема: "Имитационное моделирование динамических систем и процессов с использованием объектно-ориентированного подхода.
- •Задание на курсовой проект
- •Реферат
- •Перечень условных обозначений, символов, единиц, сокращений и терминов
- •Содержание
- •Введение
- •1. Постановка задачи
- •1.1 Описание предметной области
- •1.2 Цели и задачи
- •1.3 Выбор средств
- •2. Выбор метода решения
- •2.1 Теоретические сведения
- •2.2 Описание входных и выходных данных
- •3. Метод решения
- •3.1 Объектно-ориентированный анализ
- •3.2 Объектно-ориентированное проектирование
- •3.2.1 Диаграмма классов
- •3.2.2 Диаграмма объектов
- •3.2.3 Диаграмма состояний и переходов
- •3.2.4 Диаграмма взаимодействия
- •3.3 Объектно-ориентированное программирование
- •3.3.1Диаграмма модулей
- •3.3.2 Диаграмма процессов
- •3.3.3 Протоколы классов
- •Список литературы
- •Приложения Приложение а
- •Приложение б
- •Приложение в
- •Приложение г
3.2 Объектно-ориентированное проектирование
Объектно-ориентированное проектирование - это часть объектно-ориентированной методологии, которая предоставляет возможность программистам оперировать понятием "объект", нежели понятием "процедура" при разработке своего кода. Объекты содержат инкапсулированные данные и процедуры, сгруппированные вместе, отображая сущность объекта. "Интерфейс объекта", описывает взаимодействие с объектом, то, как он определен. Программа, полученная при реализации объектно-ориентированного исходного кода, описывает взаимодействие этих объектов [3].
В данном курсовом проекте ОО проектирование будет проводиться при помощи диаграмм Буча. Для демонстрации взаимодействия элементов программы между собой, будут изображены следующие виды диаграмм: диаграмма классов, диаграмма объектов, диаграмма состояний и переходов, диаграмма взаимодействия, диаграмма модулей, диаграмма процессов.
3.2.1 Диаграмма классов
Диаграмма классов показывает классы и их отношения, тем самым представляя логический аспект проекта. Отдельная диаграмма классов представляет определенный ракурс структуры классов. На стадии анализа мы используем диаграммы классов, чтобы выделить общие роли и обязанности сущностей, обеспечивающих требуемое поведение системы. На стадии проектирования мы пользуемся диаграммой классов, чтобы передать структуру классов, формирующих архитектуру системы [1].
Диаграмма классов для заданной предметной области представлена на рисунке 3.1.
Рисунок 3.1 - Диаграмма классов
3.2.2 Диаграмма объектов
Диаграмма объектов показывает существующие объекты и их связи в логическом проекте системы. Иначе говоря, диаграмма объектов представляет собой мгновенный снимок потока событий в некоторой конфигурации объектов. Существенные элементы диаграммы объектов - объекты и их отношения.
Диаграмма объектов для данной предметной представлена на рисунке 3.2
Рисунок 3.2 - Диаграмма объектов
3.2.3 Диаграмма состояний и переходов
Диаграмма состояний и переходов показывает: пространство состояний данного класса; события, которые влекут переход из одного состояний в другое; действия, которые происходят при изменении состояния.
Выделим состояния конвейера. Для этого определим признаки, по которым эти состояния отличаются. Такими признаками являются: состояния очередей (0 - очередь пуста; 1 - очередь не пуста), состояния контролеров и настройщиков (0 - не работает; 1 - работает). Вышеперечисленных признаков 14, обозначим их номерами. Список состояний приведен в таблице 3.1.
Таблица 3.1 - Состояний конвейера
№ |
Очередь контроля |
Контролер 1 |
Контролер 2 |
Очередь настройки |
Настройщик |
Характеристика |
1 |
0 |
0 |
0 |
0 |
0 |
Конвейер пуст |
2 |
1 |
0 |
0 |
0 |
0 |
Ничего не работает, очередь контроля не пуста |
3 |
1 |
1 |
0 |
0 |
0 |
То же, что и во 2ом, только Контролер 1 занят |
4 |
1 |
1 |
1 |
0 |
0 |
То же, что и 3ем, только Контролер 2 занят |
5 |
1 |
1 |
1 |
1 |
0 |
Очереди не пусты, Контролеры заняты, настройщик свободен |
6 |
0 |
1 |
1 |
1 |
1 |
Очередь контроля пуста, Очередь настройки не пуста, все заняты |
7 |
0 |
0 |
1 |
1 |
1 |
То же, что и в 6, только Контролер1 свободен |
8
|
0 |
0 |
0 |
1 |
1 |
Очередь контроля пуста, контролеры свободны, очередь настройки не пуста, настройщик занят |
9 |
0 |
0 |
0 |
0 |
1 |
Настройщик занят, остальные свободны, очереди пусты |
10 |
0 |
1 |
1 |
0 |
0 |
Все пусто, Контролер 1 и 2 заняты, настройщик свободен |
11 |
0 |
1 |
1 |
1 |
0 |
Очередь контроля и Настройщик пусты, остальные заняты |
12 |
0 |
1 |
1 |
0 |
1 |
Очереди пусты, Контролеры и настройщик заняты |
13 |
1 |
1 |
1 |
1 |
1 |
Очереди не пусты, все работают |
14 |
0 |
0 |
0 |
1 |
0 |
Все пусто, кроме Очереди настройки |
Переходы между этими состояниями осуществляются при наступлении одного из следующих событий:
поступление на конвейер нового телевизора (н);
телевизор прошел проверку у контролера (1);
телевизор прошел настройку у настройщика (2).
Диаграмма состояний и переходов для конвейера представлена на рисунке 3.3, в ней используются вышеперечисленные обозначения.
Рисунок 3.3 - Диаграмма состояний и переходов