Главная » Просмотр файлов » Сосонкин_Системы_ЧПУ

Сосонкин_Системы_ЧПУ (1087166), страница 38

Файл №1087166 Сосонкин_Системы_ЧПУ (Книга - Системы СЧПУ) 38 страницаСосонкин_Системы_ЧПУ (1087166) страница 382018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 38)

Системы поддержки проекта Source Safe ипроектирования Rational Rose встраиваются в Visual C++ как внешниеГлава 4. Технологии разработки программного обеспечения систем управления211приложения. Определим функции перечисленных систем и общую схему интеграции.В проект создания системы PCNC вовлечены десятки человек, в негопостоянно вносятся изменения и коррекции. Конечные пользователи системы нуждаются в поддержке релизов и обновлении версий, что определяет направление развития проекта. Поэтому проект нельзя начинать безсистемы поддержки проекта Source Safe (Microsoft).

Как компонент MSDNона наилучшим образом интегрируется с Visual C++ и реализует простую концепцию работы с исходными кодами: в любой момент временифайл доступен для изменения только одному разработчику с помощьюфункций CheckOut и Checkln. Во время работы с файлом другие разработчики, как правило, пользуются его копией. Пример проекта системыPCNC приведен на рис. 129. Использование Source Safe предполагаетвыделение администратора, который распределял бы права пользователей, маркировал релизы и архивировал версии, отслеживал корректностьбазы данных.Архитектор проекта не в состоянии отследить взаимосвязь между используемыми классами и довести до программиста детали их реализации.Проблемы подобного рода решаются с помощью систем CASE. Одной изнаиболее удачных среди них является Rational Rose [78].

Система позволя|ГГ Visual SouiceSdle E«ploiei -VSSНИИDataBase, - jl"•"---•--'•.8|?J1!Alpi4K& -•; ' ;\',\; :—at..:•„..;,"ilChed;.©ABSFIINTRCPPMattinov4.06 99 23.38D.VPCJ»©ABSRINTP HWariinov4.06.99 23 38D.SPC]-acFG©ABSTRDINCPPMaiiinov4 06.33 23.38DAPCQABSTROIN.H^AdvancedException.cppMarlinov4 06 99 23 38Mariinov4 06.99 23 38DAPC^AdvancedExceplionhMartinov4 06 99 23:38DAPCD.\PC•O-Jtf CooidSpcN a m a•••'•••.jUter-•••D:\PC« j f l DOCS• : - i l Drw3DC0M•'•Ив IndNcsCl^AdvancedFiteExcepttoncppMartinov4.06.99 23.38SjJfAdvancedFiteException hMattinov4 06 93 23 38D\PCS'AdvancedOSEifotException.cpp Mailincv4.06 99 23:38DAPC\-<Ц IntMpol©AdvancedO S E rrotE xception. h M artmov4 06 99 23.38DAPC•'-И NcEdtConi.OANDRON.CPPMattinov4 06.9S 23:38DAPC@BA2ATYPE CPPMarlinov4 06 99 23 38DAPC©BAZATYPE.HM ar linov4.06.99 23 3BЭАРС©BUFFER CPPMarlinov4 OS 99 23 38D \PC©BUFFER HMartinov4.06 99 23 38DAPC^CFGREAD CPPMariinov4 06.99 23 38DAPC•:-Si SMBU:LDM©CFGREAD.HMattinov4.06.99 2338DAPC- - f e l VdmQfCOMPLPRM HMartinov4.06.99 23.38DAPCiJfCSRCHRRY CPPMartin ov4.06 99 23.38DAPC^J+ЧЙ NC"S• r i a NcsRICLk f f l NcsRlSrvhaROSEp a RES,fl«*tDate-Tfcw :Pc nc*> I B I AppNcsCL^f-Jtf BasNcsCL• :•.:£-,-i l «1- ..

.. .•-•:. (SotUw№ton /..Рис. 129. Ведение проекта PCNC с помощью Source SafeВ.Л. Сосонкин, Г.М. Мартинов. Системы числового программного управления212ет вести итеративное проектирование, осуществлять генерацию каркасаисходного кода, а также предусматривает интеграцию с Visual C++ и использование Source Safe.Rational Rose поддерживает практически все распространенные нотации представления моделей, в том числе и UML (Unified Modeling Language)[71].

Фрагмент диаграммы классов в нотации Воосп для модуля интерпретатора системы PCNC, разработанного в Rational Rose, представлен на рис.130. Прикладные компоненты описываются системой Rational Rose с помощью четырех представлений объектно-ориентированного подхода [70](рис. 131). Логическое представление задает ключевые абстракции и механизмы, формирующие предметную область и архитектуру системыPCNC.

Физическое представление определяет конкретную программноаппаратную платформу. Все это описывается диаграммами классов, объектов, модулей, процессов.Если рассматривать систему со стороны статики-динамики, то здесьинтерес представляют диафамма переходов из одного состояния в другоеи диаграмма взаимодействия и обмена сообщениями, определяющая порядок их передачи.*\ Rational Rose - [Class Diagram: Platform Depend Level / Main]шьшттт*:(from Platform Independ Level)m_pOutRingBufP Arraym CommonlSOData \m_HistFile" \_• CRingBuffer ',CHistorylPD '•/CISOData\,'•' POINT DEFj"\Puc. 130. Проектирование системы PCNC с помощью Rational RoseГлава 4. Технологии разработки программного обеспечения систем управления213ДинамическоепредставлениеСтатическоепредставлениеЛогическоепредставлениеСтруктура классов PCNCСтруктура объектов PCNCФизическоепредставлениеАрхитектура модулей PCNCАрхитектура процессов PCNCРис.

131. Основные представления системы PCNC,поддерживаемые Rational Rose4.3.6. Использование оригинальных инструментальныхсредств поддержания открытой архитектуры системы ЧПУИспользование лишь стандартных средств ОС и инструментальныхсредств для разработки системы PCNC недостаточно. Опыт показывает,что ряд задач в системе PCNC поддаются формализации. При этом наиболее актуальны такие задачи, как создание каркаса модулей или внешних приложений, подключаемых к объектно-ориентированной магистрали, и создание каркаса машины состояния любого модуля или внешнегоприложения системы PCNC.

Под созданием каркаса программного модуля понимаем добавление в проект или подпроекттех классов и их объектов, которые реализуют базовые функциональные возможности, практически однотипные для подобных же программных модулей. Во всех случаях формализации процесса разработки системы PCNC необходимосоздавать собственный инструментарий.Создание скелета модуля системы PCNC с помощью мастера приложения NcsAppWizard. В общем случае АррWizard представляет собойсредство создания и конфигурирования нового проекта в среде MicrosoftVisual C++. NCsAppWizard, в частности определяет в интерактивной форме свойства и функциональные возможности будущего модуля системыPCNC.

Скелет модуля создается на базе классов коммуникационной среды, при этом осуществляется генерация большей части необходимых программных кодов. Сведения о создаваемом приложении запрашиваются вдиалоге с пользователем, а в результате генерируется исходный код. Таким образом, разработчик избавляется от одной из самых трудоемких работ по созданию скелета нового приложения.214вп- Сосонкин, Г.М. Мартинов. Системы числового программного управленияУстановка NcsAppWizard в систему разработки состоит в копированиифайла с расширением «AWX» в директорию Template Microsoft Visual C++.После этого NcsApp Wizard становится доступным в качестве одного из мастеров создания приложений.

Создание нового приложения при помощиNcsAppWizard представляет собой обработку последовательно сменяющихсядиалогов. На первом шаге вводят информацию о типе приложения и целесообразности генерации примера. На втором шаге осуществляют ввод расширенных свойств приложения (например, для генерации обработчиков исключений), а также информацию для начального конфигурирования тулбара (количество кнопок и их расположение). На третьем шаге определяют стиль иобозначают права на приложения. Четвертый шаг задает размеры главногоокна (при его наличии), возможности изменения размеров, автоматическогоцентрирования и коррекции размеров окна при изменении разрешения экрана.

Далее настраивают статусбар, параметры подключения к коммуникационной среде и т.д. В заключительном диалоге описывают те параметрыпроекта в текстовом виде, которые будут сгенерированы. В случае необходимости можно вернуться к предыдущим шагам и внести исправления.В результате использования мастера разработки NCsAppWizard генерируется скелет модуля системы PCNC, в который добавлены классы иинициализированы их объекты для работы с общей объектно-ориентированной магистралью. На следующем этапе разработки осуществляется наполнение модуля функциональными возможностями.

Частью этого этапаявляется разработка машины состояния.Создание скелета машины состояния с помощью State MachineBuilder. Под машиной состояния в системе управления понимают конечный автомат, реагирующий на управляющие воздействия и инициирующий необходимые действия [79]. Управляющими могут быть действия состороны оператора (нажатие кнопки), события (например, поступлениесигнала отдатчика), возникновение ошибки.

В результате управляющеговоздействия машина состояния переходит в новое состояние, при этом выполняются функции, предусмотренные при переходе. Машину состоянияописывают с помощью графа. Графы были использованы при разработкеState Machine Builder (генератора машины состояния) - визуального инструментария разработки машины состояния. При этом были предложеныновые понятия.

Сложное состояние - логически обособленный фрагментграфа с иерархическими вложениями. Порты входа и выхода из сложногосостояния - узлы, определяющие связь уровней сложного состояния. Этипонятия лежат в основе иерархических графовых структур, причем в вершине иерархии находится единственное сложное состояние. На каждойследующей ступени иерархии сложные состояния раскрываются в видесовокупности простых и сложных состояний.Глава 4. Технологии разработки программного обеспечения систем управления215Инструмент State Machine Builder позволяет не только визуально представить машину состояния в виде иерархического графа, но и задать имена классов, реализующих состояния и переходы, а также определить файлы их расположения.

В результате инструментарий генерирует C++ коддля машины состояния и встраивает его в Visual C++ проект системы PCNC.Инструментарий маркирует в генерируемом коде защищенные секции, вкоторых программисты реализуют функциональные наполнения переходов.4.3.7. Формирование окружения разработкиСуществуют два метода разработки программного обеспечения [80].Метод «сверху вниз» характерен для процедурного подхода разработки.Метод итеративной разработки тех же фаз, но для последовательно детализируемых структур проекта наиболее удобен для объектно-ориентированного подхода (рис. 132). Итеративность процесса разработки PCNC обеспечивает ряд преимуществ. Она позволяет принимать во внимание изменение требований в процессе разработки, предъявляемых к отдельномумодулю или системе в целом.

Она предполагает постепенную интеграциюкомпонентов и модулей, которая может начинаться с меньшего количестваинтегрируемых элементов и позволяет свести риск разработки системыPCNC к минимуму, поскольку на этапе интеграции возможно обнаружение концептуальных ошибок.Инвариантность создает возможность выпуска системы PCNC до общего завершения проекта с уменьшенными функциональными возможностями. Она также облегчает многократное использование компонентов путем анализа проектных решений на начальных итерациях, что позволяетРис.

Характеристики

Тип файла
PDF-файл
Размер
5,83 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6489
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее