Проблемы распределенных систем
Статья описывает особенности распределенных систем. Раскрывается понятие распределенной системы и распределенной информационной системы.
Дается классификация распределенных систем. В частности, по типу предоставляемых ресурсов: распределенные вычислительные системы, распределенные информационные системы, семантический Трид. По количеству элементов в системе: кластер, распределенная система корпоративного уровня, глобальная система.
Описаны требования, предъявляемые к распределенным системам: прозрачность распределенной системы, прозрачность местоположения, прозрачность доступа, прозрачность параллелизма доступа, прозрачность масштабируемости распределенной системы , прозрачность репликации , открытость системы, безопасность, надежность РС.
Статья описывает проблемы при создании и эксплуатации распределенных систем , такие как: проблемы администрирования системы , проблемы балансирования нагрузки, проблемы восстановления данных в случае возникновения ошибок, проблемы ограниченности масштабируемости (проблема увеличения количество узлов системы , проблема ограниченности возможностей сервера, проблема ограниченности сетей передачи данных , проблема ограниченности алгоритмов обработки данных), проблема переносимости ПО.
Ключевые слова: вычисления,распределенные системы,распределенные вычислительные системы ,распределенные информационные системы
V. Ya. Tsvetkov, A. N. Alpatov Problems of distributed systems
This article describes the features of distributed systems. The notion of distributed systems and distributed information systems. A classification of distributed systems.
In particular , the type of resources: distributed computing systems, distributed information systems, semantic Grid. The number of elements in the system: cluster, distributed, enterprise-level, glob al system.
Describes the requirements for distributed systems: the transparency of distributed system,transparency,location transparency access transparency concurrency of access, transparency scalability of distributed system, replication transparency, openness, security, reliability PC.
This article describes the problems in the creation and operation of distributed systems, such as: problems of administration system,the problem of load balancing problems of data recovery in case of errors, the problem of limited scalability (problem of increasing the number of nodes in the system, the problem of limited server capabilities, the problem of limited data networks, the problem of limited data processing algorithms), the problem of portability PC.
Keywords: computing,distributed systems,distributed computing,distributed information systems
Введение
современном обществе существует необходимость в повышении качества и скорости обработки в первую Очередь «больших данных» [1] и во вторую очередь данных в распределенных системах [2]. В Швязи с этим возрастает значение распределенных систем хранения [3] и обработки данных
[4], как средства решения этой проблемы. Одной из основных задач любой распределенной системы является анализ свойств полученных данных, которые, в силу ряда причин, не могут быть оценены на одном узле. Для достижения поставленной цели и ускорения времени обработки необходимо на первом этапе разослать данные на распределенные узлы системы,
а на вторОМ собраТЬданные из распрвдвленнж^ УЗЛОВ и агрегировать эти данные в общее глобальное представление. Это является сложной задачей из-за часто встречающего в таких ■типах задач динамики, что накладывает очень частые изменения в локальные значения, которые влияют на общие глобальные свойства всей Црдачи. Создание эффективных и адаптивных распределенных систем позволяет значительно ускорить скорость обработки данных. С целью рассмотрения данного вопроса проведем анализ проблем возникающих в ходе проектирования и эксплуатации распределенных систем.
Понятие распределенной системы
На сегодняшний момент в литературе существует большое количество определений понятия «распределенная система». Наиболее полное определение предложил AS Tanenbaum Н5]: «Распределенная система (РС) — это набор независимых компьютеров, который воспринимается его пользователям как единственная последовательная система.» Другое определение предложено в работе [6]: Распределенными системами называются программно-аппаратные системы, в которых исполнение операций (действий, вычислений), необходимых для обеспечения целевой функциональности системы, распределено(физически или логически) между разными исполнителями. В вычислительной сфере под РС в нашем исследовании будем понимать программно—аппаратную систему, созданную для конкретного практического применения, функционал которой распределен на различных узлах.
Классифицировать распределенные системы можно по различным признакам: по количеству элементов в системе, по уровню организации распределенных систем, по типу предоставляемых ресурсов, а также ряду других признаков. По типу предоставляемых ресурсов различают:
• распределенные вычислительные системы (Computational Grid)
• распределенные информационные системы (Data Grid)
• семантический Грид (Semantic Grid)
Основная характеристика вычислительных
систем (Computational Grid) заключается в том, что в качестве основного ресурса предоставляется вычислительная мощность всей системы. Основное направление развития систем подобного типа заключается в наращивании вычислительных мощностей системы, посредством увеличения числа вычислительных узлов. Примером распределенных вычислительных систем являются кластеры.
Распределенные информационные системы (Data Grid) предоставляют вычислительные ресурсы для обработки больших объемов данных, для задач не требующих больших вычислительных ресурсов. Семантический Грид предоставляет не только отдельные вычислительные
ЩоЩяВсТи (базы ^д1нныХ,Ш1рвйСы),Чно И сово—I купность вычислительных систем и информационных систем, для каждой конкретной предметной области [7].
По количеству элементов в системе [8] раЩ личают распределенные системы: кластер, распределенная система корпоративного уровня, глобальная система. Распределенная система является кластером, если общее количество элементов не превышает несколько десятков. Распределенная система корпоративного уровня содержит в своем составе уже сотни, а в некоторых случаях, и тысячи элементов. Глобальной системой называется распределенная система с количеством элементов, входящим в ее состав, более 1000. При этом, зачастую, элементы таких систем глобально распределены. Примером глобальной распределенной сети является Интернет, где в качестве предоставляемого ресурса является информационное поле. Основные требования, предъявляемые к распределенным системам
Основными требованиями, предъявляемыми к распределенным системам, являются: прозрачность, открытость системы, безопасность, масштабируемость РС, надежность. Рассмотрим каждую характеристику подробнее.
Прозрачность распределенной системы. Прозрачность, в общем случае, заключается в том, что распределенные системы должны быть восприняты пользователями системы как однородный объект, а не как набор автономных объектов, которые взаимодействуют между собой между собой. Проектирование распределенной системы является сложной задачей, и соблюдение необходимой прозрачности, является необходимым условием функционирования системы. Существуют различные виды прозрачности [9].
Прозрачность местоположения. В распределенных системах прозрачность местоположения заключается в том, что пользователь не должен знать, где расположены необходимые ему ресурсы. Файлы могут перемещаться на различные узлы распределенной системы, например, если на узле РС произошел сбой, и данные были восстановлены на другом узле РС, но при этом, пользователь не должен замечать эти перемещения. Например, в распределенных информационных файловых системах, пользователь должен видеть лишь единое файловое пространство, притом, что данные могут располагаться физически на разных серверах.
Прозрачность доступа. В распределенных системах наиболее важную роль играет принцип прозрачности доступа. Прозрачность в данном случае заключается в обеспечении сокрытия различий доступа и предоставлении данных.
Прозрачность параллелизма доступа. РаяЯ личные пользователи распределенных систем должны иметь возможность параллельного доступа к общим данным. При этом необходимо
обеспечить параллельное совместное использование ресурсами системы, а соответственно, обеспечить сокрытие факта совместного использования ресурсов.
Прозрачность масштабируемости распределенной системы. Масштабируемость распределенной системы является одной из важнейших характеристик распределенных систем. До недавнего времени основной подход, позволяющий значительно увеличить мощность кластеров, заключался в наращивании различных ресурсов системы, к примеру, оперативной памяти, кВйичества и объема жестких дисков. Данный метод, в ряде случаев, является неэффективным. В частности, в силу ограниченности проектного решения, наращивание вычислительных мощностей не всегда возможно. Но не только ограниченность проектного решения является сдерживающим фактором, обеспечивающим невозможность масштабируемости системы. В программное обеспечение, которое осуществляет взаимодействие всех компонентов системы с операционной системой, зачастую заложено ограничение на общее количество вычислительных узлов системы.
Прозрачность репликации. В целях обеспечения сохранности данных, особенно на распределенных файловых системах, необходимо обе-фечить репликацию данных. Пользователю не должно быть известно, что репликация данных существует. Для сокрытия данного фактора, необходимо, чтобы у предоставляемых данных или ресурсов, были одинаковые имена.
Открытость системы. В отличие от ранних распределенных систем, которые по своей сути были ограниченными и закрытыми, так как они создавались в основном в пределах отдельных организаций и для решения конкретных задач, современные распределенные системы создаются все более открытыми. Применение принципа открытости к распределенным системам стало возможным благодаря развитию линий передачи данных, увеличение производительности процессоров, а также общего развития информационных технологий. Под открытостью распределенных систем понимается возможность взаимодействия с другими открытыми системами. Открытые системы должны иметь следующие характеристики:
• РС должны соответствовать четко определенными интерфейсами
• Системы, входящие в состав РС должны легко взаимодействовать между собой
• Системы должны обеспечивать переносимость приложений.
Открытость системы может быть достигнута с помощью: языков программирования, аппаратных платформ, программного обеспечения.
Безопасность. Особое место в современных распределенных системах занимает их безопас-
■ность Безопасность рс является, в общем слу-
ЧаеребйОкупШстью 3 факторов [10]:
• Обеспечение конфиденциальности данных и ресурсов;
• Обеспечение конфиденциальности доступа к ресурсам для множества пользователей;
• Обеспечение целостности ресурсов и данных.
Необходимость создания распределенных систем, которые обеспечивают необходимую безопасность данных и всей структуры РС, возникает повсеместно. Многие вопросы безопасности могут быть решены на уровне отдельных узлов РС, например, путем установки фаерволов и антивирусного ПО на отдельные узлы системы, введением политики аутентификации пользователей и другими методами. Но в силу особенности архитектуры большинства РС, данный подход не всегда является эффективным. Программное обеспечение не всегда может обеспечить необходимую конфиденциальность данных в распределенной системе. Например, программное обеспечение не всегда может полноценную защиту от MIMT и DDOS атак на распределенную сеть. Зачастую методы защиты от подобных атак не всегда являются приемлемыми для узлов вычислительной сети. Важным показателем, при организации защиты РС, является уровень доступности системы. Уровень доступности распределенной системы определяется не только доступностью ресурса в момент времени t, но и принципами организации защиты РС, так как большинство программных средств, обеспечивающие защиту от атак, направлены на отказ в обслуживании. Большое внимание данному вопросу уделяется многими производителями антивирусного ПО.
Надежность РС. В связи с появлением новых методов и алгоритмов, требовательных к вычислительным ресурсам и, самое главное, к ресурсам времени, необходимость в доступности распределенных систем в момент времени t становится крайне актуальным. Основным показателем, определяющим надежность всей РС, является отказоустойчивость. Отказоустойчивость — это важнейшее свойство вычислительной системы, которое заключается в возможности продолжения действий, заданных программой, после возникновения неисправностей.
Проблемы эксплуатации распределенных систем
Несмотря на все достоинства распределенных систем по сравнению с традиционными централизованными системами (РС обеспечивают значительно меньшую стоимость развертывания и простоту реализации), РС имеют и ряд существенных недостатков. Основными проблемами распределенных систем по сравнению с традиционными системами являются:
• проблемы администрирования системы:
• проблемы ограниченности масштабируемости Цш
рр^проблемы переноссимЬсти программного обеспечения.
Проблемы администрирования системы включают проблемы : проблемы балансирования на-Црузки на узлы системы; проблемы восстановления данных в случае возникновения ошибок. Фрагментация ресурсов в распределенных системах предписывает необходимость создания гибких настраиваемых средств администрирования. Так как в глобально распределенных системах администрирование должно происходить в автоматическом режиме, то в связи с этим возникают следующие основные проблемы администрирования распределенных систем:
• балансировка нагрузки на узлы системы;
• восстановление данных в случае возникновения ошибки;
• сбор статистики с узлов системы;
• обновление программного обеспечения на узлах системы в автоматическом режиме.
Стоит понимать, что данный список является обобщенным, т.е. для каждой конкретной РС возможно возникновение проблем, которые не описаны в данной работе. Но данные проблемы являются наиболее часто встречающимися на практике и заслуживают особого внимания при проектировании РС. Последние две проблемы хорошо изучены, и на рынке программного обеспечения распределенных систем существует множество разработанных программных средств, которые обеспечивают как сбор статистики, так и обновление программного обеспечения. Научный же интерес представляют методы балансирования нагрузки на узлы системы и методы восстановления данных в случае возникновения ошибок. В силу специфики РС, а также гетерогенности оборудования и архитектуры РС, не существует единого метода проектирования, который обеспечивал бы решение этих проблем.
Проблемы балансирования нагрузки. Важной проблемой при проектировании РС является обеспечение эффективной балансировки нагрузки на узлы системы. Правильно выбранная стратегия балансировки нагрузки оказывает решающее влияние на общую эффективность и скорость работы распределенной системы. На сегодняшний момент существует множество подходов [11, 12] к решению данной проблемы.
В общем случае можно выделить обобщенную классификацию методов балансировки загрузки вычислительных узлов. По характеру распределения нагрузки на вычислительные узлы различают: динамическую балансировку (перераспределение); статическую балансировку.
Статическая балансировка, зачастую, выполняется в результате априорного анализа. При распределении ресурсов по вычислительным уз -лам анализируется модель распределенной си-Цтемы, с целью выявления наилучшей стратегии балансировки. При этом необходимо учитывать Ьтржщру РС, а также конфигурацию вычисли-
тельных узлов. Основной недостаток данного метода балансирования нагрузки заключается в необходимости ассоциации узлов с различной конфигурацией оборудования с вычислительной сложностью задачи, что не всегда представляется возможным.
Динамическая балансировка распределенной системы заключается в адаптации нагрузки на узлы распределенной системы в ходе работы, что в свою очередь позволяет эффективнее использовать ресурсы сети. Необходимость динамической балансировки возникает в том случае, когда не возможно изначально априорно предположить общую загрузку сети. Такие ситуации наиболее часто возникают, например, в задачах математического моделирования, когда в ходе вычислений на каждой итерации, сложность вычисления повышается и, соответственно, общее время вычислений также увеличивается. Также динамическая балансировка позволяет использовать программное обеспечение, которое будет инвариантно к архитектуре распределенной системы.
Проблемы восстановления данных в случае возникновения ошибок. В ходе эксплуатации распределенных систем наиболее часто возникает проблема отслеживания сбоев и последующее восстановление данных. Данная ситуация может возникнуть, например, в ходе сбоя питания одного из узлов РС. Автоматическое восстановление данных является сложной задачей, которая включает в себя множество проблем. В ходе восстановления необходимо выяснить характер возникшей ошибки, классифицировать ее и в автоматическом режиме произвести восстановление всех данных. При этом должна быть сохранена не только вся целостность связанных данных, но и доступность остальных данных, так как восстановление должно происходить без блокирования основных ресурсов на чтение-запись, т.е. распределенная система должна функционировать без остановки. На сегодняшний момент существует множество подходов к решению данной проблемы. Например, одним из методов восстановления в информационных распределенных системах (распределенных СУБД) является использование так называемого журнала транзакций, в котором хранится вся информация обо всех изменениях, произошедших в базе данных. Сложность в данном случае заключается в правильной классификации ошибок и правильности применения методов восстановления данных в автоматическом режиме.
Проблемы ограниченности масштабируемо -сти. Масштабируемость распределенных систем одна из первоочередных задач при проектировании РС. Распределенные системы позволили избежать главного недостатка централизирован-ных систем — ограниченности наращивания вычислительных мощностей системы. Существуют! три основных показателя масштабируемости [13] системы:
• масштабируемость РС по отношению к ее размеру. Система считается масштабируемой по отношению к ее размеру, если она обеспечивает ¡простоту подключения к ней новых узлов.
• Географическая масштабируемость. Система считается географически масштабируемой, если к ее сети возможно подключение новых узлов, без привязки к конкретной географической зоне (страна, город, дата — центр и т.д.), то есть глобально распределенных узлов.
• Масштабируемость управления. Система считается масштабируемой в плане управления ресурсами, если при росте общего количества узлов системы, администрирование системы не усложняется.
При решении задачи масштабируемости системы необходимо решить множество проблем. Выделим основные проблемы масштабируемости распределенных систем.
Проблема увеличения количество узлов системы, что не всегда предоставляется возможным, в связи с ограниченностью служб, алгоритмов, так как зачастую многие службы настроены на использование на конкретное количество оборудования, например, на использование только одного конкретного сервера, конкретной архитектуры. То есть мы сталкиваемся с проблемой централизации, как ресурсов, так и служб.
Проблема ограниченности возможностей сервера, который осуществляет агрегирование данных, собранных с узлов системы в общее глобальное представление.
Проблема ограниченности сетей передачи данных. Так как при географической масштабируемости узлы распределенной системы могут находиться в географически отдаленных точках Мира, то при проектировании и эксплуатации РС мы сталкиваемся с проблемами надежности сетей передачи данных. При низких скоростях передачи данных возможно снижение общей надежности и производительности РС.
Проблема ограниченности алгоритмов обработки данных. Необходимо использовать методы и алгоритмы сбора данных с узлов системы, которые минимально перегружают коммуникационную сеть.
Проблема переносимости ПО. Проблема переносимости программного обеспечения является одним из ключевых сдерживающих факторов развития и дальнейшего масштабирования распределенных систем. Проблема переносимости заключается в невозможности запуска создан-
йоге приложения на различных" архитектурах. Стремительное развитие программных архитектур, языков программирования, а также общёе развитие всей IT- индустрии в целом — все это привело к необходимости создания методологий переносимости программного кода.
Особенно остро вопрос переносимости ПО встает в глобально распределенных системах, где в качестве узлов, зачастую, используют различное гетерогенное оборудование с различными операционными системами. Например, для объединения вычислительных машин в одну глобальную вычислительную GRID — сеть требуется написать клиентское приложение для каждого вычислительного узла, с учетом специфики его архитектуры и установленной ОС, что является сложной задачей. Постоянно растущие требования к увеличению мобильности программных продуктов, приводит к необходимости проведения исследований в данном направлении. Проблемам обеспечения крос-сплатформенности программного обеспечения посвящено множество опубликованных научных работ, в которых показаны основные подходы и методы, позволяющие создавать переносимые приложения [14, 15].
Заключение
С одной стороны распределенные системы являются инструментарием позволяющим решать большое количество сложных задач, большинство из которых другими методами не решается. Распределенные системы позволяют устранить главный недостаток централизиро-ванных систем — ограниченности наращивания вычислительных мощностей. В то же время анализ выявил ряд проблем, требующих решения.
Ограниченность использования распределенных систем осложняется использованием в их составе оборудования различных производителей с различными типами архитектур. В связи с большим разнообразием аспектов построения вычислительных систем, а также разнообразие существующих операционных систем, возникает необходимость в создании методов адаптивного планирования распределения потоков в распределенной системе, что позволит значительно ускорить скорость обработки поступающих заявок на обслуживание и увеличению общей производительности системы. Однако в целом существует положительная тенденция к решению проблем и следует считать, что в ближайшие годы в этом нпарвлении произойдет качественный технологический скачек.
ЛИТЕРАТУРА
1. Tsvetkov V. Ya., Lobanov A. A. Big Data as Information Barrier // European Researcher. 2014. Vol.(78). № 7-1. p. 1237-1242.
2. Мартин Д. Вычислительные сети и распределенная обработка данных: Программное обеспечение, методы и архитектура: [В 2-х вып.]: Пер. с англ. Вып. 1. Финансы и статистика, 1985.
3. Цветков В.Я. Базы данных. Эксплуатация информационных систем с распределенными базами данных. М.: МИИГАиК, 2009. 88 с.
й. Шокин Ю.И. и др. Распределенная информационно-аналитическая система для поиска, обработки и анализа} пространственных данных // Вычий|Шея»вые |1Шйлощш2р07. Т. 12. №. 3. С. 108-115.
9.
10.
11. 12.
13.
14.
15.
1. 2.
5. Tanenbaum A., Van 'steen M. Distributed systems.'Pearson Prentice Hall, 2007.
p. ИтБ. Бурдонов, А.С. Косачев, В.Н. Пономаренко, В.З. ШнитмангОбгаор подходов к верификации распределенных сйсТеМЗя М.: Российская Академия Наук. Институт системного программирования (ИСП РАН) 2003. 51 с.
7. Вовченко А.Е., Калиниченко Л.А., Ступников С.А. Семантический грид, основанный на концепции предметныхЯ посредников. Институт проблем информатики РАН. URL: http://83.149.245.107/synthesis/publications/10semgrid/10semgr id.pdf (дата обращения 20.09.2014).
8. Родин А.В., Бурцев В.Л. Параллельные или распределенные вычислительные системы? // Труды Научной сессии МИФИ-2006. Т. 12 Информатика и процессы управления. Компьютерные системы и технологии. с. 149-151. George Coulouris, Jean Dollimore, Tim Kindberg, "Distributed Systems Concepts and Design" 3 rd edition, Addison-Wesley. Blaze M. et al. The role of trust management in distributed systems security // Secure Internet Programming. Springer Berlin Heidelberg, 1999. С. 185-210.
Бабич А.В., Берсенев Г.Б. Алгоритмы динамической балансировки нагрузки в распределенной системе активного мониторинга // Известия ТулГУ Технические науки. 2011. №. 3. С. 251-261.
Daryapurkar A., Deshmukh M. V. M. Efficient Load Balancing Algorithm in Cloud Environment // International Journal Of Computer Science And Applications. 2013. Т. 6. №. 2. p. 308-312.
Распределенные системы. Принципы и парадигмы Э. Таненбаум, М. Ван Стеен. СПб.: Питер, 2003. Tanenbaum A. S., Klint P., Bohm W. Guidelines for software portability // Software: Practice and Experience. 1978. Т. 8. №. 6. С. 681-698.
James D. Mooney. "Bringing Portability to the Software Process". Technical Report TR 97-1, Dept. of Statistics and Computer Science, West Virginia University, Morgantown WV, 1997.
REFERENCES
Tsvetkov V. Ya., Lobanov A.A. Big Data as Information Barrier. European Researcher, 2014, Vol.(78), no. 7-1, pp. 1237-1242. Martin D. Vychislitel'nye seti i raspredelennaia obrabotka dannykh: Programmnoe obespechenie, metody i arkhitektura [Computer networks and distributed data processing: Software, methods and architecture]. Moscow, Finansy i statistika Publ., 1985.
3. Tsvetkov Via. Bazy dannykh. Ekspluatatsiia informatsionnykh sistem s raspredelennymi bazami dannykh [Database. Operation of information systems with distributed databases]. Moscow, MIIGAiK Publ., 2009. 88 p.
4. Shokin Iu.I. i dr. Distributed information-analytical system for searching, processing and analysis of spatial data. Vychislitel'nye tekhnologii - Computational technologies, 2007, V. 12, no. 3, pp. 108-115 (in Russian).
5. Tanenbaum A., Van Steen M. Distributed systems. Pearson Prentice Hall, 2007.
6. I.B. Burdonov, A.S. Kosachev, V.N. Ponomarenko, V.Z. Shnitman. Obzorpodkhodov k verifikatsii raspredelennykh sistem [Overview of approaches to verification of distributed systems]. Moscow, ISP RAN Publ., 2003. 51 p.
7. Vovchenko A.E., Kalinichenko L.A., Stupnikov S.A. Semantic grid based on the concept of subject mediators. Institute of Informatics problems of the Russian Academy of Sciences. Available at: http://83.149.245.107/synthesis/publications/10semgrid/ 10semgrid.pdf (accessed 20 September 2014).
8. Rodin A.V., Burtsev V.L. Parallelnye ili raspredelennye vychislitel'nye sistemy? // Trudy Nauchnoi sessii MIFI-2006. T. 12 Informatika i protsessy upravleniia. Komp'iuternye sistemy i tekhnologii [Parallel or distributed computing system? // Proceedings of the Scientific session MEPhI-2006. V. 2. Informatics and management processes. Computer systems and technology]. pp. 149-151.
9. George Coulouris, Jean Dollimore, Tim Kindberg. Distributed Systems Concepts and Design. 3-rd edition, Addison-Wesley.
10. Blaze M. et al. The role of trust management in distributed systems security. Secure Internet Programming. Springer Berlin Heidelberg, 1999. pp. 185-210.
11. Babich A.V., Bersenev G.B. Algorithms for dynamic load balancing in a distributed system of active monitoring. Izvestiia TulGU. Tekhnicheskie nauki - Bulletin of the Tula State University University. Technical science, 2011, no. 3, pp. 251-261 (in Russian).
12. Daryapurkar A., Deshmukh M.V.M. Efficient Load Balancing Algorithm in Cloud Environment. International Journal Of Computer Science And Applications, 2013, V. 6, no. 2, pp. 308-312.
13. Tanenbaum E., M. Van Steen. Raspredelennye sistemy. Printsipy i paradigmy [Distributed system. Principles and paradigms]. Saint-Petersburg, Piter Publ., 2003.
14. Tanenbaum A.S., Klint P., Bohm W. Guidelines for software portability. Software: Practice and Experience, 1978, V. 8, no. 6, pp. 681-698.
15. James D. Mooney. Bringing Portability to the Software Process. Technical Report TR 97-1, Dept. of Statistics and Computel! Science, West Virginia University, Morgantown WV, 1997.
Информация об авторах Цветков Виктор Яковлевич
(Россия, Москва) Профессор, доктор технических наук, советник ректората Московский государственный технический университет радиотехники, электроники и автоматики E-mail: [email protected]
Алпатоа Алексей Никоалевич
(Россия, Москва) Аспирант
Московский государственный технический университет радиотехники, электроники и автоматики E-mail: [email protected]
Information about the authors
Tsvetkov Viktor Yakovlevich
(Russia, Moscow) Professor, Doctor of technical sciences, Advisor to the Rectorate Moscow State Technical University of Radio Engineering, Electronics and Automation E-mail: [email protected]
Alpatov Aleksei Nikolaevich
(Russia, Moscow) Postgraduate student Moscow State Technical University of Radio Engineering, Electronics and Automation E-mail: [email protected]