Постоянный рост сложносте й комплексности, как целей проектов, так и инструментария их реализации, все чаще приводит к ситуации, когда задействованные в проекте исполнители находятсяна значительном расстоянии друг от другаВ таких условиях для получения необходимых результатов от распределенного коллектива пользователейтребуется слаженная" работа. А одной из основных задач организации взаимодействия распределенного коллектива становится, оперативность, передачи информации от одного участника к другому.
На современном, этапе развития проектной и производственной деятельности предъявляются высокие требования к системам, которые координируют различные работы и автоматизируют процессы взаимодействияраспределенныхколлективов пользователей. Методики организации подобных систем приобретают все большую значимость.
Основнымизадачами, которые должны решать подобные комплексы, являются: возможность оперативного взаимодействия непосредственно из. рабочейсреды, автоматизация планирования и контроля исполненияпоставленных задач, автоматизация контроля-ошибок и коллизий, учет версий, масштабируемость, под объемы и условия конкретных задач, простота интеграции в различные рабочие среды.
Большинство, указанных: задач достаточно часто решаются на: интуитивном уровне при помощи широко распространенных, не предназначенныхдля данных целейпрограммных средств. Постепенно приобретают все большуюпопулярность программные средствапредназначенные для решения одной или нескольких требуемых задач. Наиболее популярными являются следующие системы: управления проектами, учета версий, отслеживания-ошибок, управления взаимодействием с клиентами. Для автоматизации решения максимально возможного количества указанных выше задач приходится сочетать несколько видов: перечисленных систем. При этом не всегда выбранные системы полностью совместимы. Проблемой остается вопрос интеграции данных систем с рабочей средой. Без эффективной интеграции средств автоматизации взаимодействия тяжелее добиться оперативности обмена информацией между участниками. Наличие нескольких видов используемых приложений и необходимость постоянного переключения между ними с целью получения, обработки и передачи информации, существенно усложняет процесс проектирования.
Большинство существующих систем организации взаимодействия являются зарубежными разработками, в то время как основным направлением развития отечественной экономики является внедрение отечественных разработок и инноваций.
Приведенные доводы демонстрируют актуальность задачи совершенствования существующих и разработки новых комплексов, организации и автоматизации процессов проектирования распределенными коллективами пользователей. При этом значимым направлением является интеграция подобных комплексов в рабочие среды участников распределенных коллективов.
Таким образом, целью работы является исследование и разработка встраиваемых в САПР подсистем организации процесса проектирования распределенным коллективом пользователей.
Для достижения поставленной цели были определены следующие задачи исследования:
1. Провести исследование процесса взаимодействия распределенных коллективов пользователей;
2. Выполнить анализ основных требований к процессу взаимодействия;
3. Выполнить анализ основных проблем при организации и автоматизации процесса взаимодействия;
4. Провести исследование возможности интеграции программных модулей в наиболее распространенные САПР;
5. Разработать методику организации взаимодействия распределенных коллективов;
6. На основе разработанной методики создать программный комплекс для организации и автоматизации процесса взаимодействия участников проектирования, повышающий оперативность взаимодействия и снижающий себестоимость организации и реализации проектных работ в САПР.
На основе проведенных исследований была разработана методика организации оперативного обмена данными между участниками распределенного коллектива пользователей непосредственно из рабочей среды. Данная методика была реализована в соответствующем программном комплексе, построенном на базе встраиваемых в САПР подсистем. В реализованном комплексе использованы разработанные алгоритм передачи данных и метод визуализации данных.
Разработанная в рамках работы методика организации оперативного обмена данными отличается от известных большей степенью оперативности обмена информацией между пользователями.
Разработанный и реализованный в программном комплексе алгоритм передачи проектных данных в процессе взаимодействия распределенного коллектива пользователей отличается от известных большей эффективностью и низкой стоимостью реализации.
Разработанный метод визуализации данных, передаваемых в процессе взаимодействия распределенного коллектива, отличается от существующих тем, что позволяет снизить требования к квалификации пользователей.
В первой главе диссертации проводится исследование процесса взаимодействия коллективов распределенных пользователей и анализ проблематики их взаимодействия. Во второй главе проводится исследование существующих программных решений и их анализ. В третьей главе проводится разработка методики организации взаимодействия коллектива распределенных пользователей. В четвертой главе описывается разработка программного комплекса.
Выход.
Рисунок 14. Алгоритмы получения и передачи данных.
3.8 Протокол передачи данных между встраиваемыми подсистемами.
Для упрощения интеграции с различным • программным обеспечением используется распространенный протокол передачи данных ХМРР (так же протокол известен как Jabber).
Отличительной чертой данного протокола является избыточность передаваемых данных. Данный недостаток не является критичным для разрабатываемого комплекса. При этом ХМРР удовлетворяет предъявляемым требованиям к обеспечению безопасности передачи данных.
Основой протокола ХМРР является XML. Выбранный протокол поддерживает как передачу текстовых сообщений, так и видео сообщений, голосовых сообщений и файлов. Стоит отметить такие свойства протокола, как децентрализованность и расширяемость.
Для установки соединений используются порты 5222, 80 и 443. Приоритетным является 5222.
Следует выделить несколько основных видов передаваемых сообщений в рамках реализации протокола и решаемые ими задачи.
Для начала процесса обмена информацией серверу отсылается следующее сообщение: xml version="1.0″ ?> stream: stream xmlns: stream—'http://etherx.jabber.org/streams'' version=" 1.0″ xmlns="jabber:client" to-'domain.name" xml: lang="en" xmlns: xml="http://www.w3.org/XML/1998/namespace" >
Сообщение от сервера, указывающее на доступные режимы передачи данных: xml version- 1.0'?> stream: stream xmlns—jabberxlient' xmlns: stream-http://etherx.jabber.org/streams' id— 3 357 826 913' from-domain.name' version-1.0' xml: lang-en'> starttls xmlnsurn: ietf:params:xml:ns:xmpp-tls7> mechanisms xmlns—urn:ietf:params:xml:ns:xmpp-sasl'> mechanism>PLAIN mechanisms> stream: features>
Данный ответ сообщает о возможности обмена сообщениями по защищенному протоколу. В этом случае для авторизации используется метод sasl PLAIN. При его использовании, данные кодируются с помощью base64. Передаваемые для авторизации данные представляют закодированную строку: х00<�имя пользователя>х00<�пароль>.
Для отправки запроса на получение внутреннего идентификатора используется следующее сообщение: iq type-'set" id="r,>MeTKa.
Передача идентификатора осуществляется в следующем сообщении:
Для открытия сессии передачи данных используется сообщение вида:
Список доступных для обмена сообщениями пользователей можно запросить передачей следующего сообщения: iq type="get" id-'3″ > Для перехода в статус доступности для обмена сообщениями следует отправить сообщение вида: presence>chatтeкcтoвaя запись о.
CTaTyce 10.
Для отправки текстовых сообщений используется следующий шаблон сообщений: message type—" chat" from=" идентификатор отправителя" 1о="адрес получателя" id=" идентификатор сообщения" >
TeKCT cooбщeния
3.9 Визуализация данных.
Все диалоговые окна для взаимодействия пользователей через встраиваемые подсистемы описаны в специальном формате DCL [42]. Загрузка и вызов необходимых диалоговых окон осуществляется посредством дополнительно созданных кнопок [43] .
Основными диалоговыми окнами являются окно ввода данных для авторизации и получения идентификатора пользователя в системе, представленное ниже (рис. 15), окно обмена сообщениями, представленное ниже (рис. 16), и окно редактирования комментариев к документу.
Введите ваши данные Логин userl.
Пароль сж 1.
Отправить.
Отмена.
Рисунок 15. Диалоговое окно авторизации.
Рисунок 16. Диалоговое окно обмена данными При попытке подключения к системе, если пользователь еще не проходил процедуры авторизации и аутентификации, пользователю предлагается ввести свои данные для входа в систему. В случае удачного прохождения пользователем процессов авторизации и аутентификации, пользователю присваивается идентификатор и предоставляется список активных пользователей в рамках текущего проекта.
При выборе любого контакта из списка открывается диалоговое окно обмена сообщениями с соответствующим пользователем. Наличие непрочитанных сообщений обозначается цветовым выделением контакта.
Доступность конкретного пользователя для обмена данными также обозначается цветовым выделением имени контакта в списке.
Для интеграции с системами управления проектами и прочим специализированным программным обеспечением используются технические учетные записи, привязанные к конкретной программе. Посредством данных учетных записей пользователи в автоматическом режиме получают уведомления о поставленных, решенных или измененных задачах, напоминания о сроках исполнения задач, прочие автоматические организационные сообщения.
Реализован механизм передачи и визуализации пометок на чертеже. Пометка устанавливается в виде стандартного объекта системы AutoCADоблако. При работе с близкими версиями документов, один пользователь может установить специальную отметку на чертеже и передать ее другому пользователю. При получении данные будут обработаны, а отметка автоматически будет отображена в документе в соответствующем месте. Пример установки отметок приведен ниже (рис. 17).
Рисунок 17. Размещение отметки.
Заключение
.
В результате работы была разработана методика организации взаимодействия распределенного коллектива в процессе проектирования, отличающаяся от известных большей степенью оперативности обмена информацией между пользователями. Большая оперативность достигается за счет интеграции необходимого инструментария непосредственно в рабочую среду САПР, что позволяет, вести обмен информацией из рабочей среды без 1 необходимости переключения между различными программами.
Был разработан алгоритм обмена информацией между участниками распределенного коллектива пользователей в процессе проектирования, позволяющий сократить время процесса проектирования за счет более высокого уровня оперативности взаимодействия. гг.
Были разработаны встраиваемые в • САПР подпрограммы, предоставляющие возможность оперативного. взаимодействия непосредственно внутри рабочей среды.
Были разработаны методы визуализации проектных данных встраиваемыми подсистемами, снижающие требования к квалификации участников проекта за счет простоты, привычности и удобства представления данных.
На базе разработанных методик и алгоритмов был создан программный комплекс, основанный на интеграции в САПР разработанных встраиваемых подпрограмм, обеспечивающий оперативный обмен информацией в процессе проектирования, повышающий эффективность взаимодействия распределенного коллектива пользователей и снижающий стоимость реализации проекта.
Повышение эффективности процесса проектирования распределенными коллективами пользователей за счет повышения уровня оперативности обмена данными достигается путем интеграции встраиваемых подсистем в рабочие среды САПР. Данные подсистемы представляют инструмент, который удовлетворяет всем сформированным в результате проведенных исследований требованиям.
Разработанные встраиваемые подпрограммы были реализованы на языке Lisp и интегрированы в распространенную САПР AutoCAD.
Разработаны алгоритмы обработки данных встраиваемыми подпрограммами. Разработаны специфические структуры-хранения данных с учетом особенностей построения процесса взаимодействия на базе встраиваемых подсистем. Для решения задачи приведение данных от различных САПР к единому формату разработан специальный алгоритм и реализован для программного продукта Autodesk AutoCAD на языке программирования AutoLisp.
Разработанный алгоритм предполагает деление всех поддерживаемых форматов на группы. Каждой группе сопоставляется своя структура хранения данных и специальный модуль интерпретации, преобразования и визуализации данных, который осуществляет поддержку использования данного формата в программном комплексе. Сопоставленный группе форматов модуль содержит реализацию протокола получения, передачи, хранения и обработки данных, принадлежащих данной группе.
Структура хранения данных конкретной группы позволяет хранить любые форматы, принадлежащие этой группе. Для хранения данных определенного формата могут использоваться базы данных, файловые хранилища и другие способы хранения данных, зависящие от конкретной группы форматов.
Увеличение количества групп уменьшает сложность структуры, но усложняет процесс обработки и передачи данных за счет большого количества преобразований в ходе взаимодействия.
Для обеспечения совместимости программного комплекса предусмотрен специальный функционал подключения внешних сервисов и модулей.