Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билет №14.docx
Скачиваний:
4
Добавлен:
04.08.2019
Размер:
297.07 Кб
Скачать

Заключение

Объектно-ориентированная модель системы PCNC структурирует ее

архитектуру, делает программное обеспечение прозрачным и повышает,

следовательно, его надежность, а также упорядочивает процесс разра-

ботки, создавая предпосылки формирования среды разработки. Рассмот-

ренные элементы базовых абстракций, классы их объектной реализации,

построенные на основе этих классов механизмы,-все это служит осно-

вой для создания элементов системы ЧПУ более высокого уровня. К чис-

лу таких элементов относятся каналы, оси, закрепленные за этими кана-

лами, и т.д.__

2) Инструментальная поддержка объектно-ориентированного проектирования и формализм Буча (CASE-система Rational Rose, диаграмма классов, диаграмма взаимодействия, диаграмма состояния, диаграмма модулей).

Инструментальные CASE-системы (Computer-Aided Software Engineering)

ускоренной разработки программного обеспечения построены на различных нотациях представлений объектно-ориентированных моделей. Одной

из самых распространенных и удачных является нотация Буча [70,71].

Фрагмент нотации Буча рассмотрим на примере диаграммы, которая

отображает классы и их отношении, тем самым раскрывая логику проекта. Класс обозначают в виде облака, в котором представлены имя, атрибуты (данные) и операции (методы) класса. Тип видимости атрибута или операции отображается соответствующей пиктограммой.

Абстрактный класс обозначают буквой ≪А≫ в треугольнике. Наследование показано стрелкой, направленной от производного класса к родительскому. Линии с точкой на одном конце обозначают отношение между классами. Если это отношение включения (агрегации), то линия заканчивается квадратиком. Квадрат закрашен, если включение осуществлено по значению, и не закрашен, если включение осуществлено по ссыпке. В качестве примера на рис. 1 в классе CDrive добавим поле m_Name, соответствующее имени привода. Стандартный класс CString библиотеки MFC обладает набором функций для хранения и работы со строковыми массивами, поэтому он был использован как тип поля m_Name.__

рис. 1.

Для полного описания объектноюриентированной модели нотация Буча

использует диаграммы:

• взаимодействия для описания взаимодействующих групп объектов;

• состояний и переходов для описания возможных состояний объек-

тов и действий при изменении состояний;

• модулей для распределения классов и объектов по модулям;

• процессов для распределения задач по физическим устройствам и

процессорам, обеспечивающих работу системы.

Диаграмма взаимодействия показывает объекты и сообщения, которы-

ми они обмениваются между собой в рамках некоторого конкретного ме-

ханизма, и позволяет проследить выполнение сценария работы механиз-

ма. Диаграммы взаимодействия полезны при описании поведения несколь-

ких объектов в рамках одного варианта использования.

Диаграмма состояния определяет состояния, в которых может нахо-

диться конкретный объект; события, инициирующие переход из одного со-

стояния в другое; действия, инициируемые изменениями состояний. Эти

диаграммы используют для анализа поведения отдельных классов при их

взаимодействии и динамики системы в целом.

Диаграмма модулей демонстрирует архитектуру системы в ее слоях и

разделах. Набор модулей показывает структуру проекта. Модулю главной

программы сопоставлен файл с расширением *.срр, содержащий основ-

ную функцию main() или WinMain() для Windows. Модулю описания соот-

ветствует файл заголовков с расширением *.h, в котором объявляются клас-

сы. Модулю тело.соответствует файл с расширением *.срр, в котором пред-

ставлены классы. Модулю подсистемы соответствует библиотека на языке

C++. В подсистеме размещены логически связанные модули описания и

модули тела.

Диаграмма процессов представляет физическую совокупность процес-

сов и устройств, обеспечивающих работу системы.

Формализм Буча нашел свое отражение в популярной CASE-системе

Rational Rose. Система предполагает применение формализма Буча на эта-

пе анализа и проектирования объектно-ориентированной модели. На ос-

нове модели генерируются исходные C++ коды, после чего программисту

остается придать сгенерированным классам необходимые функциональ-

ные возможности. Реинжиниринг (т.е. обратная генерация объектно-ори-

ентированной модели из исходного кода) позволяет системе Rational Rose

добавлять в модель изменения, внесенные в C++ файлы.