При поиске максимального аргумента, для которого значение функции вычисляется системой, применяли метод дихотомии. Начальный отрезок натурального ряда был выбран в виде [0, 50000]. Одновременно оценивали время вычисления системой выбранного значения. Как было установлено в результате эксперимента, максимальный аргумент, воспринимаемой системой, равен 13512. При этом система затрачивает на вычисления 0,03 секунды (расчеты проводились с процессором типа Pentium-4). Система давала количество цифр в значении факториала - 49889. Отклик системы в случае отказа вычислений занимал от 0,08 секунды (для числа 13513, следующего за максимально вычисляемым аргументом) до 0,19 секунды (для числа 50000) выдавался в виде сообщения об отказе.
Далее эксперимент провели в системе Gap, хотя особых результатов для нее не ожидали, ведь основное назначение системы - решение задач теории групп. Система и материалы по ее изучению (в основном англоязычные) доступны по адресу http://www.gap-system.org. Несмотря на направленность системы на конкретный класс математических задач, функция для вычисления факториала Factorial(N) является встроенной в ядро системы. Как показал эксперимент, максимальный аргумент для этой функции равен 1712, при этом система выводит результат на 62 строках по 78 позиций, причем последние 428 цифр - нули. При попытке вычислить Factorial(1713) система выдает сообщение «an integer too large to be printed», что мы расценили как предел возможностей вычислений с целыми числами.
Систему SciLab непосредственно к системам символьных вычислений не относят, но среди свободных специальных математических систем она занимает такое же место, как система MatLab среди систем лицензионного класса. Вычислительные возможности системы огромны, она имеет большую библиотеку функций, но для проведения нашего эксперимента пришлось работать с функцией пользователя, так как среди функций из библиотек для вычисления факториала специальной функции не оказалось. После задания функции в виде function [x] = fact(k) k = int(k) if k < 1 then k = 1, end x = 1; for j = 1:k, x = x*j; end endfunction в результате эксперимента нами было найдено число 170 - максимальное значение аргумента созданной функции. Результат система выдавала в приближенном виде как 7.257+306. Попытки вычислить fact(171) приводят к сообщению «Inf».
Таким образом, «лидером» в нашем эксперименте стала система Maxima, что еще один раз подтверждает ее статус реальной альтернативы признанным лицензионным системам. Результаты других систем вовсе не говорят об их ущербности, а лишь подтверждают идею о том, что системы должны уметь решать различные задачи, но могут делать это по-разному в силу своей специфики.
Таким образом, системы свободного программного обеспечения представляют исследователям возможно -сти, сравнимые с возможностями лицензированного программного обеспечения. Потенциал применения таких систем как для научно-исследовательской работы, так и при обучении математике и физике, значителен. Особенно привлекательны возможности проведения аналитических вычислений и серьезные средства визуализации.
Литература
1. Алексеев, Е.Р. Scilab: Решение инженерных и математических задач / Е.Р. Алексеев, О.В. Чеснокова, Е.А. Рудченко. - М.: ALT Linux: БИНОМ. Лаборатория знаний, 2008. - 200 с.
2. Коновалов, А.Б. Система компьютерной алгебры GAP. Методические указания / А.Б. Коновалов. - Запорожье: ЗГУ, 1998.- 42 с.
3. Павлова, М.И. Руководство по работе с пакетом Scilab / М.И. Павлова. - Режим доступа: http://www.csa.ru/~zebra/my_scilab/
Информационные технологии в образовании:
сервис-ориентированная архитектура
М.В. Кузин ([email protected])
Калужский государственный педагогический университет им. К.Э.Циолковского, г. Калуга
Сегодняшнее мировое цивилизованное сообщество во многом базируется на информационных технологиях (ИТ), роль которых в современном обществе чрезвычайно важна.
Занимая центральное место в процессе развития общества, ИТ не могли не коснуться системы образования. В учебном процессе используются различные программные обучающие системы, однако их активное применение сдерживается рядом факторов, в числе которых длительность разработки и программный код (написанный для решения задачи с конкретными условиями), что в совокупности ведет к высокой стоимости и отсутствию программного продукта, отвечающего всем требованиям какой-либо области науки.
84
ИТО Марий Эл - 2009
По мнению ряда специалистов, в большей степени данную ситуацию позволяет решить сервис-ориентированная архитектура (80Л), которая предоставляет возможность «... ухода от проблем с интеграцией имеющихся программных решений и неудачно реализованных ранее ИТ-проектов.» [1].
Джерими Уэстерман (представитель компании ВЕЛ) определяет 80Л как парадигму, предназначенную для проектирования, разработки и управления дискретных единиц логики (сервисов) в вычислительной среде [2]. На рисунке 1 показано место 80Л в развитии архитектуры программного обеспечения [3].
Продуктивность
* А Сервис-ориентированное
Компонентное Объектно-ориентированное Функциональное А Процедурное Линейное Ассемблер Машинные коды
_Время
А
1960 1970 1980 1990 2000
Рис. 1. Эволюция парадигм программирования
В самом общем виде 80Л предполагает наличие трех основных участников: поставщика сервиса, потребителя сервиса и реестра сервисов (рис. 2).
Рис. 2. Общая схема сервис-ориентированной архитектуры
Принцип работы участников 80Л заключается в следующем: поставщик сервиса размещает информацию о своих сервисах в реестре, а потребитель обращается к реестру с запросом [2]. Таким образом, нет необходимости вносить изменения в код приложения или разрабатывать новое: если произошло изменение в образовательном процессе, достаточно произвести изменение параметров связи, что требует гораздо меньше времени и затрат. Кроме того, сервисы обретают способность перемещаться с одного сервера на другой, не требуя согласования и координации со всеми потребителями. В этом и заключается главное преимущество 80Л -слабая связанность [4].
Даниил Фейгин выделяет ряд принципов ограничивающих 80Л, среди которых:
• Распределенное проектирование. Решения относительно внутренних особенностей информационных систем принимаются различными группами людей, имеющими собственные организационные, политические и экономические мотивы.
• Постоянство изменений. Отдельные участки архитектуры могут претерпевать изменения в любой момент времени.
• Последовательное совершенствование. Локальное улучшение компонентов архитектуры должно приводить к совершенствованию всей архитектуры в целом - к росту суммарной полезности компонентов того же уровня, что и изменяемый, равно как и компонентов более низкого и более высокого уровня.
• Рекурсивность. Однотипные решения имеют место на различных уровнях архитектуры [4].
Однако на практике внедрение SOA проходит очень сложно. Как отмечают эксперты, количество удачно внедренных SOA-проектов составляет примерно 50%. По даным CNews Analytics, российские заказчики пока не проявляют большой активности к внедрению SOA-проектов и в большинстве своем готовы приступить реализации данных проектов лишь в перспективе (3-5-лет) [1].
Как полагает Сергей Борзов, сложность внедрения SOA-проектов во многом объясняется отсутствием достаточного опыта, «заточенностью» SOA под конкретные процессы, а также возникновением больших затрат на этапе внедрения [3].
Отсутствие достаточного опыта по внедрению сервис-ориентированной архитектуры тесно связано с дефицитом специалистов. В 2006 году IBM и Джорджтаунский университет представили две новые учебные программы, которые должны помочь организациям быстрее реагировать на меняющиеся условия. Обе программы направлены на устранения недостатка квалифицированных ИТ-специалистов в области SOA (одна - для действующих ИТ-специалистов, другая - для студентов/выпускников). Все участники проекта смогут обмениваться ценной информацией по вопросам SOA на он-лайновой площадке [5].
Рост использования методов сервис-ориентированной архитектуры также сдерживается вопросами безопасности. По мнению А. Дорнана (Andy Dornan), для снижения рисков, связанных с открытием доступа к внутренним сервисам через web, всем участникам SOA необходимо принять и выполнять единые правила (соглашение) по технологиям и политике безопасности. Данные правила должны устанавливать решения по шифрованию, уровни полномочий и способы опознавания пользователей [6].
Применительно к образованию, В.М. Соловьев, на примере внедрения SOA в Саратовском государственном университете, выделяет три категории трудностей развития SOA:
1) трудности внедрения (организация подключения к действующим приложениям и формирование логической структуры сообщений);
2) трудности производительности (обеспечение и поддержка реальной рабочей нагрузки и обеспечение приемлемого времени отклика);
3) трудности управления - администрирования (необходимый уровень информационной безопасности во всей среде).
Тем не менее, автор считает, что SOA может стать основой образовательных технологий будущего, быстро адаптирующихся к изменяющемуся социальному заказу [7].
Сервис-ориентированную архитектуру наиболее актуальной ИТ-концепцией в ближайшие годы считают также ИТ-директора и топ-менеджеры четырех крупнейших отраслей (госсектор, банки, промышленность, торговля) [1].
Литература
1. Круглый стол CNews: «Сложности продвижения СОА в России» [Электронный ресурс]. - 2009. - 24 фев. - http://iqgadget.ru/kruglyj-stol-cnews-slozhnosti-prodvizheniya-soa-v-rossii.
2. Сервис-ориентированная архитектура [Электронный ресурс]. - Клуб знатоков DATAWAREHOUSE, OLAP, XML. - 2005. - фев. -http://www.iso.ru/journal/articles/374.html.
3. Борзов, С. 11 мифов SOA [Электронный ресурс]. - ERPNEWS. - 2007. - 15 нояб. - http://erpnews.ru/doc2821.html.
4. Фейгин, Д. Концепция SOA [Электронный ресурс].- Открытые системы.- http://www.osp.ru/os/2004/06/184447/.
5. Данилина, Г. IBM и Джорджтаунский университет запускают учебную программу для ликвидации дефицита квалифицированных специалистов в области сервис-ориентированных архитектур (SOA) [Электронный ресурс]. - Электронное научно-техническое издание «Наука и образование». - 2006. - 14 сен. - http://technomag.edu.ru/doc/70970.html.
6. Дорнан, А. Непростое путешествие по проблемам безопасности в SOA [Электронный ресурс]. - ERPNEWS. - 2007. - 03 окт. -http://erpnews.ru/doc2720.html.
7. Соловьев, В.М. Средства сервис-ориентированной архитектуры в образовании [Электронный ресурс]. - XVI Всероссийская научно-методическая конференция «Телематика 2007». - СПб.: 2007. - http://knit2007.sgu.ru/docs/2.doc