Технологии Microsoft в теории и практике программирования

       

Технологии Microsoft в теории и практике программирования


Современный уровень развития компьютерной индустрии и все возрастающее проникновение информационных технологий в повседневную жизнь общества предъявляют все большие требования к ИТ-специалистам – они должны обладать   большим объемом фундаментальных знаний и практических навыков, позволяющих легко ориентироваться в море информации, правильно и своевременно анализировать ее и принимать на ее основе важные решения.

Эти характеристики особенно важны для разработчиков программного обеспечения.

Сегодня уже недостаточно простого умения писать грамотные программы. Прежде всего, создание программных продуктов уже давно перестало быть уделом одиночек, и требует навыков работы в коллективе, умения защищать свои идеи и прислушиваться к мнению соратников по команде. При таком подходе уникальный опыт и идеи каждого программиста находят свое воплощение в конечном программном продукте.

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

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

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

Желаем вам успешной работы и творческих успехов!

А.В. Гаврилов, А.А. Терехов

Московское представительство корпорации Microsoft

Web-система тестирования знаний и психологического тестирования “TESTON” построенная на технологии Microsoft .NET

И.В.Архипов, Д.Б.Давидович, Е.В.Макаров, Н.А.Панферов

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

Научный руководитель: Д.О.Жуков, доцент, к.ф.- м.н.

г. Москва

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

 

Россия стремится интегрироваться в мировое сообщество не только в экономической, политической и культурной сферах, но и в сфере образования. В связи с этим может быть предложена модель системы тестирования, построенная с использованием технологий Web Services  и .NET, применение которых позволит использовать разработанные сервисы в различных  системах. Т.о., независимо от языка программирования, на котором пишет разработчик, появляется возможность интеграции тестирования в своё приложение без написания бизнес-логики с нуля. В качестве сервера баз данных такой системы может быть использован MS SQL Server 2000, обращение к которому производится  через ADO.NET. Для осуществления взаимодействия между пользователем (конечным тестирующимся человеком) и Web-сервисами использование ASP.NET представляется наиболее удобным. Кроме того, расширение такой системы возможно за счет создания WAP-сайта, с помощью которого можно осуществлять психологическое тестирование с любого мобильного устройства, поддерживающего технологию WAP (сотовый телефон, смартфон и т.д.).





Нелегальное копирование программного обеспечения являются одним из самых больших проблем в индустрии. На сегодняшний день не существует открытых систем и механизмов, которые позволяли бы эффективно контролировать распространение и лицензирование программных продуктов. С целью поиска путей решения данной проблемы была построена система защиты и распространения программного обеспечения на основе механизма активации. Данная схема не нова: она реализована корпорацией Microsoft в технологии Windows Product Activation, корпорацией Macrovision в решении FLEXnet, а также рядом других производителей. Однако все эти решения либо очень дороги, либо разработаны для внутреннего использования.

Целью авторов было создание доступной широкому кругу производителей программного обеспечения системы активации, которая была бы интегрирована с большим количеством сервисов по приему платежей через интернет (RegNow, RegSoft и Emetrix компании Digital River, ShareIt компании Element5, росийиского сервиса SoftKey компании "Софткей", SWReg, Kagi, Esselerate) и позволяла бы легко внедрять криптографические схемы создания активационных ключей от сторонних компаний. Также ставилась задача сделать систему как можно более устойчивой и легкой в масштабировании и минимизировать стоимость необходимого для ее установки программного обеспечения. Для этого была выбрана следующая платформа: операционная система: Microsoft Windows 2000; cистема управления базами данных: Microsoft SQL Server 2000; WEB сервер: Microsoft Internet Information Server 5; технология создания серверных сценариев: Active Server Pages; технология поддержки сторонних модулей генерирования активационных ключей: ActiveX DLL. Для защиты данных передаваемых данных используется протокол Secure Socket Layer. Построенный сервис для контроля соблюдения лицензионных соглашений позволяет использовать криптосистемы различной сложности в зависимости от класса защищаемой программы и при этом гибко управлять политикой активации, что позволяет балансировать между интересами производителя и пользователя, избегая ошибок обычно допускаемых при внедрении активационных схем.



Сервис представляет собой защищенную систему обработки информации, прошел тестовые испытания, запущен в коммерческую эксплуатацию и используется рядом производителей программного обеспечения. Как в период тестирования, так и в данный момент, система подвергается атакам (в основном т.н. «Атаки перебором»), однако ни одна атак не была успешной. Конечно ни сервис активации, ни системы крипто защиты не способны полностью уничтожить пиратство, однако позволяют снизить уровень «бытового пиратства» и увеличить прибыль производителей программного обеспечения. Результаты работы сервиса и особенности его разработки представлялись на международных коференциях SIC 2002 и 2003 г. Рочестер, США; ISDEF 2002 и2003 в г. Черноголовка, Россия; EuroShare 2003 в г. Кельн, Германия; Всеросийской конференции «Инфокоммуникационные и вычислительные технологии и системы» в г. Улан-Уде.

Автоматическое обнаружение уязвимостей в программах

Белеванцев А.А, Маликов О.Р

ВМиК МГУ

Научный руководитель: Гайсарян С.С

Москва

Введение и постановка задачи:

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

Целью данного исследования является разработка и тестирование алгоритмов автоматического обнаружения уязвимостей в программах. Для анализа и обнаружения были выбраны 3 класса ошибок:

1.                            переполнение буфера (buffer overflow) – самая распространенная и, пожалуй, самая опасная ошибка, заключающаяся в обращении за пределы границ выделенного участка памяти, что может привести к выполнению произвольного кода.


Первым вирусом, использующим ошибку такого рода был еще легендарный вирус Морриса 1988-го года. Из современных можно отметить крупнейшую эпидемию вируса MSBlast, который пользовался подобной уязвимостью;

2.                            некорректные строки формата вывода (format strings) – проявляет себя в случае, если параметр формата вывода (к примеру, для функций семейства printf/scanf языка C) зависит от входных данных и не проверяется на корректность;

3.                            утечки памяти (memory leaks) – имеют место в случае, когда в программе теряются все ссылки на выделенный участок памяти и предварительно эта память не была освобождена.

Результаты:

Разработан алгоритм обнаружения вышеописанных 3-х видов уязвимостей. Алгоритм анализа является статическим и базируется на итеративном контекстно-зависимом межпроцедурном анализе указателей. Была сделана прототипная реализация алгоритма, которая позволяет осуществлять поиск ошибок в программах, написанных на языке C. Результаты тестирования на наборе приложений с открытым исходным кодом вместе со сравнительными данными для двух наиболее известных систем обнаружения ошибок FlexeLint и ITS4 представлены в таблице.

Приложение

Наш анализ

Обнаруженные FlexeLint’ом истинные ошибки (всего)

Обнаруженные ITS4’ом истинные ошибки (всего)

истинные ошибки

ложные ошибки

всего

bftpd-1.0.24

20(50%)

20(50%)

40

0(2846)

5(82)

polymorph-0.4.0

7(54%)

6(46%)

13

2(129)

3(59)

surfboard-1.1.8

8(44%)

10(56%)

18

3(669)

7(63)

lhttpd-0.1

1(5%)

21(95%)

22

0(597)

1(88)

рЕАЛИЗАЦИЯ Интернет/интранет проекта по созданию информационной подсистемы в среде microsoft windows для решения задач гидрометобеспечения морской деятельности



А. Л. Белинских

ВНИИГМИ-МЦД

Научный руководитель А. А. Воронцов, к.ф.-м.н.,

г. Обнинск

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

В Центре Океанографических Данных ВНИИГМИ-МЦД для разработки распределенного доступа и обработки гидрометеорологических данных был выбран сервер приложений Epsylon Baikonur Super Server, работающий под управлением Microsoft Windows NT, и технология TAXXI Baikonur, продукт российской компании Epsylon Technologies, прекрасно зарекомендовал себя на внутреннем и внешнем рынках программных продуктов. А технология Epsylon TAXXI предназначена для предоставления интерфейса к серверному приложению со стороны пользователя Собственно говоря, под технологиями Baikonur подразумевается применение сервера приложений Baikonur и методика быстрой сборки функциональности серверной части при помощи визуального и невизуального компонентного проектирования, которая позволяет быстро разрабатывать сложные Интернет-проекты и значительно расширить применение интранет в корпоративных сетях.

Реализуемая подсистема для решения задач гидрометобеспечения морской деятельности в рамках российского интернет/интранет проекта по созданию единой системы информации об обстановке в Мировом океане состоит из ряда функциональных блоков:

-                    управляющий комплекс - основной интерфейс для работы с клиентами; выполняет запуск приложений, настроечные и организационные функции;

-                    приложения комплекса - ориентированные на различные задачи Taxxi-приложения, основными задачами которых являются выборка данных, построение отчетов и др.;



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

-                    база данных и др.

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

Для доступа к базам данных используется Microsoft ADO. Для разработки комплекса применяются такие продукты как Borland Delphi, СУБД Oracle, Macromedia Dreamweaver, ГИС ESRI ArcView, ГИС MapServer (University of Minnesota).

IL Shaders: транслятор языка  MSIL для современных графических процессоров.

Березин С.Б. (s_berezin@cs.msu.su)

Московский государственный университет им. М.В. Ломоносова

Факультет Вычислительной математики и кибернетики

г. Москва

Введение.

Почти все современные библиотеки для создания интерактивных графических приложений основаны на единой модели графического конвейера. Графический конвейер состоит из трех основных блоков: блока преобразования и освещения (T&L), блока растеризации и блока пиксельных операций. Блок преобразования и освещения отвечает за преобразование координат вершин объекта и расчет освещенности в вершинах. На этапе растеризации происходит определение растрового образа проекций граней на экран и вычисляются цвета отдельных пикселей, которые записываются в буфер кадра на этапе пиксельных операций.



Ранние версии графических библиотек поддерживали модель фиксированного графического конвейера, где функциональность блоков T&L и растеризации была ограничена небольшим количеством заранее определенных режимов. С появлением современных графических процессоров, таких как NVidia GeForce 4, GeForce FX и ATI R300/R350, модель фиксированного графического конвейера сменилась на модель программируемого графического конвейера. Стало возможным написание программ, которые выполняются непосредственно графическим процессором и выполняют преобразование координат на этапе Т&L и вычисление цветов пикселей на этапе растеризации. Программируемый графический конвейер позволяет получать сложные визуальные эффекты в реальном времени. Программы для блоков графического процессора часто называют шейдерами.

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

Описание проекта. Цели проекта.

Предлагается применять язык MSIL как промежуточный для трансляции высокоуровневых языков платформы .NET (С#, VB.NET и т.д.) в языки шейдеров. Этот подход обладает следующими преимуществами:

1. Становится возможным использование всех компиляторов и другого инструментария разработчика на платформе .NET для программирования современных GPU.

2. Написание шейдерных программ на языке C# должно упростить исходных код в частности и общее управление проектом в целом.

3. Транслятор MSIL в языки шейдеров может оказаться полезным для создания высокоуровневой объектно-ориентированной модели графического конвейера, которая может быть запрограммирована целиком на языке C# или другом языке платформы .NET.



Данный исследовательский проект выполняется при финансовой поддержке Microsoft Research.

К вопросу о реализации инфраструктуры сервисов FIPA-совместимой агентной платформы

С.Н. Воног

Московский физико-технический институт,

Факультет Управления и Прикладной Математики

Научный руководитель: А.Е. Устюжанин

г. Москва

Использование агентного подхода для построения распределенных систем во многом опирается на использование ресурсов и сервисов, специфичных для сетевых узлов, охваченных системой. Под понятием сервиса многоагентной платформы подразумевается набор механизмов,  предоставляющих некоторую функциональность агентам и другим сервисам.  Стандартные спецификации построения многоагентных систем (такие как FIPA) не уделяют достаточного внимания описанию средств реализации доступа агентов к ресурсам и сервисам. За рамками FIPA, также остаются вопросы взаимодействия сервисов друг с другом.

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

Безопасность

Производительность

Отказоустойчивость

Масштабируемость

Расширяемость

Коммуникативность

Каждый из приведенных атрибутов накладывает определенные ограничения на механизмы функционирования сервисной инфраструктуры. Последовательно рассматривая перечисленные требования, авторы описали следующие аспекты, необходимые для построения сервисной инфраструктуры:

Формальный язык описания инфраструктуры сервисов

Базовый набор сервисов, необходимый агентной платформе, для соответствия выбранному спектру требований (надежности, безопасности, производительности и т.д.)

Механизмы сервисной инфраструктуры

создания/регистрации/уничтожения сервисов,

обнаружения новых сервисов агентами и другими сервисами

взаимодействия сервисов и агентов, сервисов друг с другом



взаимодействия сервисов агентной платформы с веб-сервисами, предоставляемых другими приложениями(XML Web Services)

Способы реализации инфраструктуры сервисов

Построение сервисной архитектуры является обязательным шагом, при разработке любой многоагентной системы. Предлагаемый подход к описанию FIPA-совместимой сервисной инфраструктуры позволит разработчикам планировать эффективное взаимодействие между основными сущностями системы, как на этапе проектирования системы, так и на этапе ее поддержки. Предложенный подход к описанию и построению сервисной архитектуры планируется использовать при разработке агентной платформы .NET Agent Platform.

Литература:

1.      FIPA Specifications, http://www.fipa.org

2.      M. Lyell et al. On Software Agents and Web Services: Usage and Design Concepts and Issues, http://www.agentus.com/WSABE2003/program/lyell.pdf

3.      J. Dale, M. Lyell et al. Advanced Web Services, http://www.fipa.org/docs/input/f-in-00080/f-in-00080.pdf

4.      Clemens Vasters, Service Oriented Architectures, EMEA Architect Tour Talk, 10-11 March 2003, Reading-UK

5.      Yasser Shohoud, Service Oriented Architecture and Web Services, TechEd 2003 Europe Presentation

6.      Arvindra Sehmi, An Architecture for Autonomous Computing Agents , EMEA Architect Tour Talk, 10-11 March 2003, Reading-UK

7.      Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. – М.: Эдиториал УРСС, 2002

8.      Тормасов А.Г. Виртуализация сервисов по размещению, хранению и управлению ресурсами и данными – Доклад на конференции «Технологии Microsoft в научных исследованиях и высшем образовании», 15-17 июня 2003 года, Москва

9.      Microsoft Application Blocks for .NET, http://microsoft.com/practices



Электронный журнал «Системотехника» дает возможность ученым и специалистам оперативно опубликовать результаты своих исследований и компьютерных разработок самой  широкой аудитории и установить контакты (например, при помощи электронной почты) с авторами интересующих статей не только в России, но и в других странах. В журнале могут публиковаться результаты докторских и кандидатских диссертаций, что очень важно для соискателей при подготовке своих работ.

Компьютерные приложения к электронном журналу «Системотехника» на компакт-дисках, помимо статей, опубликованных в Интернет, включают демонстрационные, учебные материалы, презентации, демо-версии программ   Эта информация пересылается в редакцию через Интернет записывается на CD-ROM вместе с авторскими статьями и оперативно рассылается  авторам и подписчикам журнала.

Литература

1. Каймин В.А., Касаев Б.С. Информатика: практикум на ЭВМ. – М., ИНФРА-М, 2001–2003.

2. Долматов А.В. Требования к оформлению статей в сетевом электронном журнале «Системотехника». http://systech.miem.edu.ru/treb.html

Построение интеллектуальных систем на основе

графического представления бизнес-процессов.

С. Е. Дубовик.

Московский авиационный институт (МАИ), факультет «Прикладная математика и физика», кафедра «Вычислительная математика и программирование».

Научный руководитель: Сошников Дмитрий Валерьевич.

г. Москва.

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

В настоящее время получили широкое распространением процесс-ориентированные методы организации или реорганизации предприятий на основе современных информационных технологий. В рамках структурного системного анализа предприятие рассматривается не просто как организационная структура, а как система взаимосвязанных бизнес-процессов разных уровней.


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

В настоящий момент IDEF0 - основной стандарт моделирования бизнес-процессов. Методология функционального моделирования IDEF0 основана на военных разработках ВВС США в 1970-х годах, а именно на предложенной Дугласом Россом (Douglas Ross) методологии структурного анализа SADT (Structured Analysis and Design Technique). Основная идея IDEF0 - построение древовидной функциональной модели деятельности, предусматривающей переход от общего к частному – декомпозиция «снаружи вовнутрь» бизнес-процесса на составляющие.

Для визуализации модели бизнесс-процессов в нотации стандарта IDEF0 часто используется система построения диаграмм и бизнес-схем Microsoft Visio. MS Visio – это независимая система построения диаграмм, предлагающая средства для наглядного представления идей, систем, информации, планов зданий, карт web-сайтов и др. Для моделирования бизнесс-процессов используются специальные структурные диаграммы IDEF0. Графическая нотация диаграммы содержит функциональные блоки и стрелки специального вида: входные/выходные данные, управление, механизм исполнения, а также специальную стрелку наследования (child).

Используя встроенный в MS Visio язык программирования – Visual Basic for Applications (VBA), можно использовать объектную модель визуализованного бизнес-процесса для построения базы знаний интеллектуальной компоненты, содержащей формализованные нотацией IDEF0 знания о предметной области. Интеллектуальная компонента использует продукционно-фреймовое представление знаний, т.е. функциональные блоки представляются объектами специального вида – фреймами, которые содержат все характерные для блока признаки. Стрелки на диаграмме рассматриваются, как связи разного вида и представляются набором продукций – правил вида если-то.


Экспертная система, построенная на основе определенного бизнес-процессса, будет иметь возможность моделировать его этапы в режиме help-ассистента или полной автоматизации принятого документооборота.

 

визуальнАЯ средА обеспечения РАСЧЕТА надежности

аппаратуры при проектировании

Жаднов И.В., Лазарев Д.В., Полесский С.Н., Пращикин С.А., Смирнов Н.В.

Московский государственный институт электроники и математики

Научный руководитель: Жаднов В.В., Научный консультант: Каймин В.А.

г. Москва

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

На российском рынке программного обеспечения представлен целый ряд ПС зарубежных производителей (RELEXSoftware, ALD Group и др.), а также отечественная разработка «Автоматизированная система расчета надежности» (АСРН), адаптированных под операционные системы (ОС) Windows 9X-2000 производства Microsoft. Однако применение импортных ПС осложняется языковым барьером, а также отсутствием в их базах данных (БД) моделей надежности ЭРИ российского производства и механизмов их добавления. Отечественная система АСРН, хотя и свободна от указанных недостатков и широко применяется на предприятиях-разработчиках аппаратуры, приборов и устройств военного назначения, но представляет собой полностью закрытую систему, БД которой не может быть обновлена в интерактивном режиме.

Современное развитие сетевых технологий и технологий компьютерной графики позволяет уже сегодня создавать программные средства с использованием технологии клиент – сервер, распределенных систем управления БД, современных средств защиты информации, а также применением анимации для отображения результатов, организацией внутренней самодиагностики и удаленного обновления БД.



Настоящий доклад посвящен вопросам реализации программного комплекса (ПК) АСОНИКА-К для расчетов надежности РЭА на платформе ОС Windows-2000, который может быть легко адаптирован под новые версии ОС, интегрирован в архитектуру САПР предприятия и связан с промышленными PDM-системами, а также ориентирован на инженеров-проектировщиков РЭА (схемотехников и конструкторов).

В представленном докладе рассматриваются вопросы создания ПК и особенности программной реализации его модулей, в том числе:

·                                 Архитектура программного комплекса АСОНИКА-К;

·                                 Система расчета надежности составных частей РЭА;

·                                 Проектирование БД (справочной, проектной и архивной частей);

·                                 Функции системы администрирования БД;

·                                 Функции системы архивации проектов;

·                                 Функции системы администрирования пользователей ПК;

·                                 Архитектура справочной системы АСОНИКА-К;



·                                 Архитектоника алгоритмов функционирования ПК;

·                                 Архитектура программной реализации систем ПК;

·                                 Тестирование и проведение в опытную эксплуатацию ПК.

В докладе обсуждаются перспективы развития ПК АСОНИКА-К, а также вопросы  реализации  системы администрирования БД комплекса и системы анализа результатов БД на платформе MS SQL-Server в ОС Windows-2003.

Обучение программированию студентов вузов: интегрированный подход

С.В. Зыков

Московский инженерно-физический институт (государственный университет)

г.Москва

Систематическое изучение информационных технологий (ИТ) является одним из высших стратегических приоритетов мировой образовательной системы. К сожалению, преподавание программирования во многих вузах России лишено единой теоретической основы, средства реализации программного обеспечения (ПО) зависят от изучаемого языка, студенты не осознают взаимосвязей подходов. По результатам анализа курсов по программированию в США за последние два десятилетия [1] современный подход к преподаванию должен гармонично сочетать освоение практики программирования с серьезным фундаментом теоретической информатики, которую принято называть computer science.

В этой связи предлагается учебный курс «Современные языки программирования и платформа .NET» на основе синтеза избранных разделов computer science и уникальной технологической платформы Microsoft .NET, обеспечивающей практически прозрачную интеграцию кода на различных языках программирования.


С появлением . NET впервые возникает возможность проиллюстрировать современные тенденции и практические приемы программирования в рамках единого учебного курса. С начала обучения в вузе студенты получают возможность параллельно постигать фундаментальные аспекты различных подходов к разработке программных систем. В результате выбор подхода к разработке ПО происходит более осознанно, проектирование программных комплексов и необходимость интегрированного подхода к созданию программ понимается глубже.

            Первый семестр курса посвящен фундаментальному введению в программирование и computer science, а второй – ознакомлению с приемами профессиональной разработки ПО. При таком подходе первый семестр курса целесообразно излагать на примере языка SML, практически не требующем начальных знаний [1]. SML как язык нового поколения предоставляет широкие возможности для погружения в программирование. Основы профессиональной разработки ПО рекомендуется излагать в сравнении языков C# и SML.

Курс реализован в форме лекций и лабораторного практикума. Материалы доступны с сайта факультета информационной безопасности МИФИ [2]. Экспериментальное изложение курса начато в МИФИ в 2003-2004 учебном году. Апробация показала высокую востребованность, теоретическую и практическую значимость подхода. Курс поддержан грантом Microsoft Research на 2003 год, в 2004-05 г.г. планируется продолжение сотрудничества. Концепция и результаты реализации курса докладывались в 2003 г. на  научно-практической конференции Microsoft Research [3]. В 2004 г. планируется дистанционное обучение по курсу в Интернет-университете ИТ [4].

 

Список литературы

1. Рекомендации по преподаванию информатики в университетах: Пер. с англ.– СПб., 2002.– 372 с. ISBN 5-288-03105-3.

2. Информация о курсе доступна с Интернет-ресурса http://www.mephi.edu/projects.htm

3. Зыков С.В. Проектирование и реализация гетерогенных прикладных систем под управлением технологической платформы Microsoft .NET. Конференция Microsoft Research «Технологии Microsoft в научных исследованиях и высшем образовании».


Москва, 2003 г.

4. Информация об Интернет-университете ИТ доступна с Интернет-сайта http://www.intuit.ru.

Корпоративный портал – ключ к интеграции в глобальной среде вычислений

С.В. Зыков

Московский инженерно-физический институт (государственный университет)

г.Москва

Цель данной статьи – анализ тенденций и оценка перспектив и результатов внедрения прикладных систем на базе порталов. Рынок Интернет-порталов стремительно развивается. С наступлением эры глобальных сетевых технологий возникает тенденция сближения традиционных корпоративных информационных систем и порталов, а также новый уровень требований к безопасности программных комплексов. Веб-портал – ключ к безопасной универсализации корпоративных приложений с возможностью глобального доступа.

Требованиям полноты, непротиворечивости, расширяемости и адекватности удовлетворяет вариант концептуальной модели [5], предложенный автором для формализации всех стадий проектирования и реализации высокодинамичных слабоструктурированных предметных областей. Модель основана на схеме двукратной концептуализации [2] и существенно использует фундаментальные положения теории решеток, семантических сетей и конечных последовательностей [1,2,4]. Преимущества модели: сценарно-ориентированное обеспечение безопасности, единообразная обработка данных и метаданных, верифицируемость функций программного обеспечения, адекватность для слабоструктурированных высокодинамичных предметных областей. Предлагаемый механизм соотнесений позволяет адекватно формализовать механизмы поддержки персонализации, гибкого и надежного разграничения доступа к данным. Подход обеспечивает открытость, расширяемость, масштабируемость, переносимость, эргономичность и адаптивность корпоративных порталов.

Спроектирована система с проблемно ориентированным интерфейсом и событийно управляемой архитектурой. Динамически адаптируемые профили доступа обеспечивают высокую отказоустойчивость и безопасность данных в гетерогенной среде. Проект веб-портала успешно реализован в нефтегазовой компании «ИТЕРА» [5].


В 2003 году завершено внедрение корпоративного портала ООО «НГК «ИТЕРА», полномасштабная реализация (www.itera.ru) актуализирована в Интернет. Ведутся работы по созданию Интранет-портала.

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

Список литературы

1.                Х. Барендрегт. Лабда-исчисление. Его синтаксис и семантика.–М.:Мир, 1985.

2.                В.Э. Вольфенгаген. Концептуализация в аппликативных вычислительных системах.– М.: МИФИ, 1990.

3.                D.S.Scott. The lattice of flow diagrams. Lecture Notes in mathematics, 188, Symposium on Semantics of Algorithmic Languages. Springer, 1971,p.p.311-362.

4.                N.D.Roussopulos. A semantic network model of data bases.– Toronto Univ. 1976.

5.                S.V.Zykov. Integrating Enterprise Software Applications with Web Portal Technology. Proc. 5th

International Workshop on Computer Science and Information Technologies, Ufa, Russia, 2003.

СОЗДАНИЕ СИСТЕМЫ ЭЛЕКТРОННОЙ ТОРГОВЛИ С ИСПОЛЬЗОВАНИЕМ НОВЕЙШИХ ТЕХНОЛОГИЙ MICROSOFT

Т.Н. Какарека, А.Л. Качанов, К.П. Черныш,

Научный руководитель: И.Н. Блинов, к.ф.-м.н., доц.

Белорусский государственный университет

г.


Минск

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

Предусмотрено администрирование системы, управление деревом разделов, товарами,  пользователями, настройками прав доступа .

Учтена возможность наличия у сервера только удалённой базы данных.

Создана система безопасности для предотвращения несанкционированного доступа к конфиденциальной информации клиентов.

Архитектура приложения предусматривает расширяемость и адаптацию системы вплоть до функциональности B2B-портала, а также простое добавление новых возможностей.

Разработаны интерфейсы и модули, упрощающие работу с базой данных (процесс программирования), оптимизирующие написание кода web-страниц, создание элементов, упрощающих разработку и программирование интерфейса пользователя.

 

Выводы. В процессе работы создано приложение, отвечающее поставленным требованиям, а также проведён анализ эффективности следующих технологий Microsoft, которые были выбраны для реализации проекта:

            1. язык написания кода C#;

            2. технология WebServices для удалённого доступа;

            3. технология ASP.NET;

            4. технология ADO.NET  для доступа непосредственно к базе данных.

Структура приложения включает ряд интерфейсов и модулей, которые и решают поставленные задачи :

            1. модуль, отвечающий за аутентификацию, авторизацию пользователей и безопасность данных (на базе интерфейсов IHttpHandler и IHttpHandlerFactory)

            2. модуль, отвечающий за доступ к базе данных, получение и обновление необходимой в процессе работы информации (на базе технологий ADO.NET и WebServices)

            3.  модуль, реализующий шаблон страниц .aspx, и комплект контролов для пользовательского интерфейса.



            На примере созданного программного обеспечения показаны уникальные возможности платформы .NET  при написании распределённых Internet-приложений, продемонстрирована возможность достаточного лёгкого решения стандартных проблем программирования и использование концептуально новых  приёмов для создания крупномасштабных, полнофункциональных приложений.

ОСОБЕННОСТИ РАБОТЫ С ФАЙЛАМИ В УПРАВЛЯЕМОМ КОДЕ.

Каменский М.В.

Ставропольский государственный университет, факультет романо-германских языков

г. Ставрополь

С появлением среды программирования Microsoft

Visual

Studio .NET и библиотеки классов .NET

Framework

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

Одна из актуальных проблем связана с использованием строковых полей фиксированной длины. Стандартные классы BinaryReader/BinaryWriter

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



класса String, а затем полученный массив записывается в файл с помощью варианта перегруженного метода Write, принимающего в качестве параметров сам массив символов, индекс первого символа и длину массива. Для достижения фиксированного размера поля может потребоваться дополнить строку некоторым символом-заполнителем с помощью методов PadRight или PadLeft или же обрезать ее до нужной длины методом Substring. Чтение массива символов из файла может быть произведено с помощью метода ReadChars

класса BinaryReader.

Другая проблема возникает в случае, если требуется записать или считать сложную структуру, состоящую из множества полей и вложенных подструктур. Если использование сериализации данных невозможно по любой причине, то может потребоваться написать алгоритм, производящий запись и считывание каждого поля индивидуально. Такой алгоритм может оказаться очень длинным и неэффективным. Возможным решением данной проблемы является использование кода с применением указателей. При этом все поля должны иметь неуправляемый тип данных (то есть: строки должны быть сведены к последовательностям однобайтовых символов, причем каждый символ должен расцениваться как индивидуальное поле; невозможно прямое применение массивов любого вида и т.п.). Для записи сложных структур в файл создается указатель типа byte*, содержащий адрес начала структуры в памяти. При этом используется явное приведение типов для сведения структуры к байтовому типу. Затем производится собственно запись данных с помощью метода Write

класса BinaryWriter. При этом количество записываемых символов определяется оператором sizeof, вычисляющим общую длину структуры в байтах. Считывание данных также производится побайтово с помощью указателя типа byte* на выделенную область памяти размером в длину структуры, вычисленную с помощью оператора sizeof. Затем производится явное приведение считанной структуры к указателю на соответствующий структурный тип и раскрытие ссылки, что позволяет непосредственно обращаться к полям структуры.



Метод модификации программного кода на основе компонентного подхода с применением языка сценариев WSH, как склеивающего инструмента.

(Пример построения системы для модернизации сайта с использованием XML спецификаций и XSLT трансформаций)

Кручинин Алексей Николаевич

Ростовский Государственный Университет, ЮГИНФО РГУ

г. Ростов

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

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

Подход не накладывают какие-либо ограничения на язык написания программы: он не сужает синтаксис и семантику используемых средств, а только предписывает некие требования к структуре программы. Его применение позволяет осуществлять безболезненные модификации существующего кода, повторно использовать полученные модули и отделять логику приложения от содержания.

Приводится последовательность этапов для реализации подхода: выделение постоянной части кода; локализация непостоянного кода и потенциальных мест его появление; параметризация кода и определение структуры спецификации (XML Schema) для подключения компонент; реализация компонент; написание плагин-модулей (конкретная спецификация на основе XML) и их подключение.


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

Взаимодействие модулей осуществляется с применением языков сценариев, которые играют важную роль в процессе построения модульных систем, предоставляя возможность склеивания уже существующих модулей.

Подход был реализован на примере модернизации HTML страниц и предназначен для решения задачи построения сайта на основе компонент — XML спецификаций и XSLT трансформаций. Эти компоненты легко подключаются к некоторой исходной HTML странице. После написания достаточно большого количества таких заготовок и их объединения в хранилище модулей появляется возможность создавать необходимые страницы гораздо быстрее и качественнее, чем это было  раньше. Все это будет достигаться за счет возможностей построенной модели и качественного создания модулей, в которых будут предусматриваться необходимые параметры. Получив доступ к таким хранилищам, пользователь сможет повысить производительность своего труда путем несложного задания тегов XML документа. Система может найти свое применение в различных областях, где запросы на качество и функциональность высоки, а количество времени ограничено.

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

Крыжановский Д.И., Олейников И.В.

Волгоградский государственный технический университет,

факультет электроники и вычислительной техники (ФЭВТ), кафедра САПР и ПК

Научный руководитель – д.т.н. Фоменков С.А.

г. Волгоград

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


Для решения задачи построения математических зависимостей существует большое количество мощных программных средств. Однако все они, разумеется, обладают теми или иными недостатками. С целью ликвидации некоторых из них, а также практической проверки ряда ранее неиспользовавшихся подходов на кафедре САПР и ПК ВолгГТУ ведётся разработка альтернативной системы, предназначенной целиком и полностью для идентификации математических зависимостей, или, в более общей формулировке, для свёртки табличных данных в математические модели без качественной потери информации.

   Общий ход построения модели по заданному набору исходных данных (основная ветвь исследования) представлен в следующем виде: предварительный анализ

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

В настоящий момент работа ведётся по следующим направлениям:

·         изучение, анализ и эксперименты с различными методами идентификации зависимостей (статистические методы, Data Mining, прежде всего, нейронные сети, нечёткие вычисления и т.п.),

·         выработка эффективных модификаций и комбинаций этих методов,

·         разработка автоматизированной системы построения зависимостей, в которой реализовано по возможности больше методов.

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


Во многих модулях программы стандартные алгоритмы были модифицированы, что позволило сократить объём необходимых вычислений (прежде всего за счёт упразднения повторных вычислений одних и тех же величин), и, соответственно, ускорить вычислительный процесс. К тому же сейчас исследуется вопрос о создании версии программы для работы на вычислительном кластере с использованием параллельных вычислений.

Разработка системы ведётся с использованием языков программирования Microsoft Visual C++ 7.1 и C#.

В июле – августе 2003 г. в рамках программы летней школы Intel некоторые модули были апробированы в Нижегородской лаборатории компании Intel. Кроме того, апробация и системы проводится на лабораторных работах по дисциплине «Моделирование» кафедры САПР и ПК, а также во ФГУП НПО «ВНИИТМАШ».

Повышение эффективности отладки DVM-программ

М. В. Кудрявцев

МГУ, факультет ВМиК

Научный руководитель  Крюков Виктор Алексеевич

г. Москва

Система DVM, разработанная в Институте прикладной математики им. М. В. Келдыша РАН в 1998 году предназначена для разработки мобильных и эффективных программ для ЭВМ различной архитектуры. Отладчик системы DVM (входит в состав системы времени выполнения) предназначен для функциональной отладки параллельных программ, написанных на языках системы DVM - Fortran-DVM и C-DVM. В отладчике системы DVM реализовано два метода: динамического контроля DVM-указаний и сравнительной отладки. Второй метод позволяет обнаруживать ошибки в программе при помощи сравнения промежуточных результатов параллельного выполнения с эталонными результатами (например, результатами последовательного выполнения).

Существующие средства сравнительной отладки системы DVM сильно замедляют выполнение программы и используют большое количество памяти для накопления трассировки. В настоящей работе предложены и реализованы в отладчике системы DVM новые возможности, позволяющие существенно повысить эффективность сравнительной отладки DVM-программ.

1.         Разработаны и внедрены в существующий отладчик системы DVM дополнительные возможности управления размером трассировки:



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

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

2.         Разработана и внедрена в существующий отладчик системы DVM трассировка контрольных сумм массивов. По завершении параллельных циклов и областей задач (конструкций, в которых происходит интенсивная работа с массивами) вычисляются и сохраняются в трассировку контрольные суммы элементов массивов, к которым был доступ в текущей конструкции (в режиме сравнения контрольные суммы вычисляются и сравниваются с накопленными в трассировку).

3.         Разработана и внедрена в существующий отладчик системы DVM возможность сохранения элементов массива в заданный файл в заданной точке нумерации, а также в точке обнаружения различия контрольных сумм массивов.

Предложенные возможности были успешно протестированы и подтвердили свою эффективность на демонстрационных программах, поставляемых вместе с системой DVM, а так же на тесте NPB (NAS Parallel Benchmarks) LU.

Компонент аутентификации и авторизации пользователей

Лункин П.Г.

МИФИ, факультет “Кибернетики”

г. Москва

В связи с возросшей необходимостью построения автоматизации информационного обмена между участниками и организаторами научных конференций  и в связи с широким распространением сети Интернет актуальной стала задача проектирования веб-системы поддержки конференций. Так как существующие системы не удовлетворяли требованиям реиспользуемости было принято решение разработать собственную систему. Целью данной работы являлось создать компонент аутентификации и авторизации пользователей для его применения в данной системе поддержки конференций.


На данный компонент было наложено требование реиспользуемости, т.е. требование того, чтобы впоследствии компонент можно было использовать из других приложений.

Для решения поставленной задачи был проведён обзор существующих методов аутентификации и авторизации, и принято решение воспользоваться стандартной схемой проведения процедуры аутентификации – принимать от пользователя комбинацию логин-пароль. В связи с принятым решением возникла необходимость обеспечения конфиденциальности передаваемой информации, поскольку открытая передача информации через интернет не застрахована от возможности её нелегального просмотра. Чтобы обеспечить конфиденциальность передаваемой компоненту информации, был использован протокол безопасной передачи данных SSL.

Компонент обеспечивает доступ к следующим функциям:

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

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

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

Компонент был реализован в среде .Net Framework и оформлен в виде веб-сервиса, что и обеспечило возможность его реиспользуемости. Для организации безопасного канала передачи информации  на интернет-сервер был установлен сертификат сервера, выпущенный при помощи службы Microsoft Certificate Services, входящей в состав Windows 2000 Server. После этого было установлено требование обязательного использования протокола SSL для каталога, в котором находился веб-сервис.

Для того чтобы иметь возможность воспользоваться функциями, предоставляемыми компонентом аутентификации, требуется создать таблицу базы данных с информацией о пользователях. Таблица должно иметь строго определённую структуру. В качестве СУБД требуется использовать SQL Server 2000.


Далее нужно подключить данный компонент к использующему его приложению. Все функции компонента специфицированы.

Созданный компонент был использован в студенческом проекте – системе поддержки конференций.

Основанные на MSF шаблоны процессов разработки

Д.А.Маленко (maldim@gmx.net), В.Л.Павлов (vlpavlov@ieee.org)

Факультет прикладной математики Днепропетровского национального университета, Украина; eLine Software, Inc., Украина/США

Научный руководитель: В.Л.Павлов (vlpavlov@ieee.org)

г. Днепропетровск, Украина

За последнее десятилетие объектно-ориентированное программирование получило широкое распространение как ключевая технология разработки больших программных продуктов. Среди всех подходов, идей и концепций, связанных с ООП, особо выделяются шаблоны проектирования (Design Patterns, http://hillside.net/patterns/

). Они описывают взаимодействие между объектами и классами для решения общей проектной проблемы в некотором контексте.

Подобно шаблонам проектирования, шаблоны процессов (Process Patterns) описывают проверенные подходы и методики, применимые в различных производственных процессах (прежде всего – процессах разработки ПО). Со времени появления шаблонов процессов и родственных им организационных шаблонов (Organizational Patterns) было найдено и документировано большое количество разнообразных шаблонов такого рода. Но, в отличие от шаблонов проектирования, которые традиционно формально вводились с использованием UML, шаблоны процессов подобного уровня формализации не имели.

Некоторые авторы пытались использовать UML для описания шаблонов процессов, но, к сожалению, нотации, используемые разными авторами, были несовместимыми. В 2002 году OMG приняла спецификацию Software Process Engineering Meta-model (SPEM, http://www.omg.org/technology/documents/formal/spem.htm), которая  создавалась для описания процессов разработки ПО. Ожидается, что эта спецификация будет широко применяться при решении разнообразных задач, возникающих в области инженерии процессов.


Одно из интересных приложений данной метамодели – формальное описание организационных шаблонов и шаблонов процессов.

Описываемое в докладе исследование было сосредоточено на Microsoft Solutions Framework (MSF, http://www.microsoft.com/rus/msf) - разработанном и используемом внутри Microsoft подходе к управлению IT-проектами. Создав формальное описание MSF на SPEM, мы попытались выделить шаблоны процессов, которые применимы и к другим процессам разработки ПО, и описать их в классическом стиле GoF (The Gang of Four).

Мы выделили несколько организационных шаблонов и шаблонов процессов. Некоторые из них используются только в MSF, некоторые можно найти и в других SE (Software Engineering) процессах. В докладе подробно рассматривается четыре шаблона: Living Document; Reenterable Process; Smart Lifecycle; Stakeholder-Oriented Organization.

Первые три являются шаблонами процессов и описывают информационные потоки внутри различных фаз процесса разработки ПО. Последний шаблон определяет структуру проектной группы и взаимосвязи между членами команды. Для всех шаблонов приводится формальное описание в виде SPEM-модели. Неформальная часть описания проясняет смысл шаблона и показывает его использование в MSF и других процессах разработки ПО.

Конечно, рассматриваемые четыре шаблона не единственные в MSF. В действительности, их выявление явилось “побочным результатом” процесса создания формальной SPEM-модели MSF. Создание и сравнение моделей различных процессов наверняка приведет к обнаружению новых шаблонов.

Защита ПО от несанкционированного копирования

путём привязки к интеллектуальной карте и протокол удалённая регистрации ПО по каналам связи, налагающих ограничения на размер передаваемых сообщений

Матвеев П.П.,

Научные руководители: к.ф-м.н. Применко Э.А., к.ф-м.н. Пярин В.А.

Московский государственый университет, факультет ВМиК

г. Москва

Целями разработчика системы защиты ПО от несанкционированного копирования являются модификация защищаемого ПО таким образом, чтобы оно не выполнялось без наличия некоего аппаратного компонента (к которому, как принято говорить, «осуществляется привязка») и/или вне привычной для защищаемого кода программно/аппаратной среды, противодействие исследованию и модификации защищающего кода, противодействие эмуляции аппаратных компонентов, к которым осуществляется привязка.



Интеллектуальная карта (smart card) – аппаратный компонент, к которому можно осуществлять привязку не только путём идентификации, но и аутентификации, что исключает возможность для злоумышленника осуществлять его эмуляцию. Чтобы можно было осуществить криптографическую аутентификацию интеллектуальной карты (ИК), защищаемое ПО должно иметь в своей памяти ключ аутентификации. Поскольку память защищаемого ПО открыта для чтения злоумышленником, ключ аутентификации либо не должен там находиться, либо должен быть открытым, т.е. асимметричным. Но по ряду причин использование карт с асимметричной криптографией затруднено. Поэтому остаётся использовать карты, производящие лишь симметричные криптографические преобразования.

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

Также предлагается протокол удалённой регистрации защищаемого ПО, не требующий асимметричных криптографических вычислений, что делает возможным его использование в системах удалённой активации ПО, предъявляющих требования по ограничению сверху размера передаваемых сообщений. Такое свойство позволяет, например, использовать данный протокол при удалённой активации защищаемого ПО голосом по телефонному каналу (в отсутствии сетевого канала связи), избавляя пользователя от необходимости диктовать по телефону последовательности из нескольких десятков знаков, как это происходит в случае использования асимметричных систем удалённой активации.

MICROSOFT WINDOWS MEDIA В СИСТЕМЕ ДЛЯ ИНТЕРАКТИВНОГО ДИСТАНЦИОННОГО ОБУЧЕНИЯ

О.Г. Барбашов, А.Б. Маховиков, А.В. Скобелев, К.В. Столяров, М.А. Чернов

Санкт-Петербургский государственный горный институт (технический университет)



Кафедра информатики и компьютерных технологий

г. Санкт-Петербург

Один из дальнейших путей развития дистанционного обучения заключается в создании и использовании программных комплексов, обеспечивающих интерактивное взаимодействие между преподавателем и студентами и позволяющих максимально приблизить процесс дистанционного обучения к его “локальному” прототипу. Нами был разработан один из таких комплексов, получивший название Mediapage Technology.

В основе программного комплекса Mediapage Technology лежит технология Windows Media фирмы Microsoft. Данная технология обеспечивает организацию аудио- и видео вещания в Интернет с возможностью подключения большого числа слушателей одновременно. Однако Windows Media не приспособлена для целей обучения и не обеспечивает возможность обратной связи от слушателей к ведущему.

Разработанный программный комплекс устраняет перечисленные недостатки Windows Media, т.к. обеспечивает не только передачу изображения и звука, но и демонстрацию различных учебных материалов, и не только возможность увидеть и услышать лектора, но и задать ему вопрос и даже вступить в дискуссию, которую слышат все остальные студенты “виртуальной аудитории”. Лекция автоматически записывается и может быть затем доступна для последующего просмотра.

            Комплекс состоит из двух частей: серверной и клиентской. Серверная часть включает HTTP - сервер, Windows Media - сервер, SMTP - сервер и Управляющий сервер. Клиентская часть включает АРМ лектора, АРМ его ассистента и АРМ студента. Клиентские программы имеют понятный интерфейс и загружаются с сервера автоматически, что позволяет использовать комплекс людям, слабо владеющим компьютером. Дополнительно были разработаны два прокси-сервера, позволяющие работать из-за различных firewalls.

МНОГОПАРАДИГМАЛЬНАЯ СИСТЕМА ПРОГРАММИРОВАНИЯ С ИНТЕГРАЦИЕЙ БАЗ ДАННЫХ И ЗНАНИЙ ДЛЯ ПЛАТФОРМЫ MICROSOFT .NET

Миханов С. В.

Московский авиационный институт, факультет прикладной математики и физики, кафедра вычислительной математики и программирования



Научный руководитель: Сошников Д. В.

Москва

В настоящее время во всём мире наблюдается повышение интереса к интеллектуальным системам и методам их разработки. Одной из главных причин является разработка и внедрение консорциумом W3 модели семантической паутины Semantic Web, в основе которой лежит декларативный язык представления знаний RDF.

При разработке интеллектуальных систем с помощью одного из существующих подходов — с использованием языков на основе алгоритмических моделей, отличных от модели фон Неймана (Prolog), специализированных средств представления знаний (CLIPS, Jess) или внедряемых систем (JULIA) — перед разработчиками встаёт задача интеграции системы с уже написанным императивным кодом. Особую важность она приобретает в последние годы, когда во всём мире наблюдается отчётливая ориентация на слабо связанные системы и значимость повторно используемого кода возрастает.

С учётом данных задач была разработана многопарадигмальная система программирования, объединяющая различные подходы к разработке (объектный, фреймовый, императивный, продукционный, а также возможность привязки реляционных данных к активным знаниям и онтологиям). Ядром системы является язык LIMA, представляющий собой надмножество C#, полученный за счёт его расширения интеллектуальными конструкциями, высокоуровневый семантически?ориентированный транслятор языка LIMA в язык C# и библиотека логического вывода. При использовании данной системы на основе LIMA-описаний базы знаний в фреймовом представлении генерируется C#-код, позволяющий проводить логический вывод (в том числе распределённый с использованием веб-сервисов) по описанной фреймовой иерархии, включение фреймов из удалённых баз знаний, интерпретацию реляционных данных как знаний в рамках выбранной онтологии, а также осуществлять чрезвычайно тесную интеграцию продукционных частей системы с императивным кодом, за счёт использования в качестве основы для языка LIMA языка C#.

Несомненным достоинством данной системы является метод интеграции подходов к программированию на основе высокоуровневой кодогенерации.


Данный метод весьма широко применялся при разработке тех или иных программных систем и за многие годы своего использования успел себя зарекомендовать как весьма надёжный. Например, известно, что первый вариант реализации языка C++ Бьярном Страуструпом был основан на трансляции в C-код; кроме того, на основе кодогенерации в языки высокого уровня построены такие современные технологии, как ASP.NET и ASP компании Microsoft и JSP компании Sun Microsystems.

Предложенная система программирования может использоваться как в качестве платформы для разработки промышленных интеллектуальных систем, так и для реализации более простых интеллектуальных приложений в среде Microsoft .NET с использованием широкого набора средств, доступных в ней. Вариантами использования данной системы могут быть, например, веб-приложения (с применением ASP.NET) для проведения удалённых консультаций или программные веб-интерфейсы (на основе технологии веб-сервисов) для предоставления услуг удалённого использования баз знаний в определённой предметной области.

Моделирование работы сенсорной ad hoc сети с коллективной передачей информации.

К.Г. Мишагин, В.А. Пастухов, А.Н. Садков

Нижегородский госуниверситет им. Н.И.Лобачевкого

Лаборатория физических основ и технологий беспроводной связи

Руководитель: к.ф.-м.н. А.Л. Умнов

г.: Нижний Новгород

В последнее время все большее внимание исследователей привлекают сети, построенные на использовании в качестве узлов миниатюрных интегрированных платформ с беспроводным доступом и способных одновременно выполнять сенсорные, коммуникационные и вычислительные функции[1,2]. Распределенные по пространству автономные узлы-сенсоры способны собирать информацию о параметрах среды и передавать ее по цепочке (от узла к узлу) на точку сбора и обработки информации.

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


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

Для выяснения эффективности предложенного  метода было выполнено компьютерное моделирование ad hoc сети, в которой узлы сети распределены по холмистой поверхности, а конечным узлом всех маршрутов является базовая станция (рис.1). Осуществить моделирование стандартными средствами (например,  с помощью системы NS2) не представлялось возможным, так как  предлагаемая парадигма построения  физического уровня сенсорных сетей отсутствует в этих средствах. Поэтому нами была создана собственная система имитационного моделирования беспроводной сенсорной ad hoc сети. Работа по созданию системы велась с использованием  Microsoft Visual Studio. При проектировании системы использовались структурный и объектно-ориентированный подходы. В состав основных модулей системы входят: блок генерации поверхности, проверка прямой видимости узлов, алгоритм кластеризации[1], расчёт распределения поля от группы узлов, блок формирования маршрута к базовой станции[2]. Для определения преимущества метода коллективной передачи данных производилось большое количество экспериментов, заключающихся в получении параметра связности сети. Получить статистически достоверные данные в приемлемые сроки удалось благодаря тщательно оптимизированному коду системы моделирования. С помощью данной системы были получены результаты, показывающие существенное преимущество метода коллективной передачи данных.

1.      C.R. Lin and M.Gerla // IEEE Journal on Selected Areas in Communications, Vol. 15, No. 7, Sept. 1997, pp. 1265-1275



J.Broch, D.Maltz, D.Johnson, Yih-Chun Hu, J.Jetcheva // A Performance Comparison of Multi- HopWireless Ad Hoc Network Routing Protocols.

MSDN Library. April 2004.

Стратегия построения интерактивных WEB-сайтов

НА ПЛАТФОРМЕ NT

Морозов Р. Л.

Руководитель: профессор д.т.н. Камаев В. А.

Волгоградский государственный технический университет

г. Волгоград

На сегодняшний день WEB-сайты стали достаточно популярным явлением. Масштабы сети Интернет постоянно возрастают. В России рост сети Интернет в значительной степени выше, чем  в США. И создание перспективного и конкурентоспособного WEB-сайта является достаточно сложной задачей.

Главным вопросом здесь остается вопрос об оптимизации, которая и приводит к конкурентоспособности сайта.

Приведем основные принципы создания подобного сайта:

·        Сайт должен достаточно быстро загружаться;

·        Нагрузка на сервер должна быть в пределах нормы;

·        Высокая степень динамичности сайта;

·        Сайт должен обладать конкурентно способным дизайнерским уровнем.

Требуется также максимальная структуризация данных, без которой невозможно выполнение данных принципов.

Минимизировать передачу информации возможно при использовании XML (EXtensible Markup Language) файлов. Данный метод был опубликован на официальном сайте Microsoft в 1998 году.  В основе данного метода, речь идет об использовании двух xml файлов. При использовании этого метода нагрузка на канал связи сокращается примерно на 30 – 40 % , причем передаваемая через Интернет информация носит более структурированный характер.

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


Здесь важную роль играет оценка возможной нагрузки на сервер. Но  увеличить запас ресурсов сервера возможно при оптимизации работы активной части сервера.

Это  возможно при использовании динамически подключаемых библиотек, написанных на языках высокого уровня или с помощью скриптов. Разработка и реализация динамически подключаемых библиотек является более сложным методом по сравнению с использованием ASP скрипов.

Изменение дизайна или структуры сайта, должны проходить быстро и качественно. Для этого требуется  предусматривать высокую динамичность сайта на уровне проектирования:

1)     Установить динамическую структуру

2)     Установить динамический дизайн (на основе разбиения документов на подразделы)

Динамическую структуру можно установить с помощью ASP или ISAPI.

Динамический дизайн можно так же достаточно просто организовать с помощью скриптов.

Обеспечить сайт красивым дизайнерским уровнем это достаточно сложная задача. При реализации данного представления надо обязательно помнить о повышении нагрузки на канал передачи данных.

В настоящие время лучшим решением данной проблемы является использование векторной графики.  Для этого лучше всего использовать пакеты : Direct Animation (сложный при реализации, но максимально эффективный), Macromedia Flash (прост в реализации)

 

Распределенная вычислительная сеть (МетаКомпьютер)

Нижаде-Гавгание Дмитрий Энверович.

МГУ им. Ломоносова, ф-т ВМиК, 3 курс

г. Москва.

Основная идея проекта состоит в создании распределенной общедоступной вычислительной сети, на подобие тех, что уже существуют (RC5, GIMPS, Seti@Home), с одним большим отличием: система способна выполнять любое кол-во самых разных программ. Программы в данную сеть (далее – МетаКомпьютер) сможет загружать любой программист. Т.о., каждый программист не имеющего достаточно средств для закупки дорогостоящего оборудования, предназначенного для обработки больших объемов данных, получает возможность использовать многочисленные ресурсы компьютеров всего мира.



            Программа «MetaComp» может работать в одном из следующих режимов:

1)      постоянное вычисление (постоянно отнимает некоторое процессорное время)

2)      работа в режиме screen-saver (не доставляет неудобств пользователю)

Программы, которые будут загружаться в общую сеть должны быть написаны на специальном Си-подобном интерпретируемом языке. К языку предъявляется ряд требований. Некоторые из них:

1)      безопасность (невозможность совершения нелегальных действий на компьютере пользователя)

2)      адаптация к распределенным вычислениям

Подробней о втором пункте – программа должна быть написана таким образом (все требования являются жесткими и проверяются во время синтаксического анализа), чтобы ее можно было легко распределить на n?ое кол-во компьютеров. Эта цель достигается просто, если учитывать требования и рекомендации в самом начале разработки программы (пример программы – функция, где в качестве входных параметров присутствует номер итерации).

Основные части системы МетаКомпьютер:

1)      центральная часть (координационный центр – сервер в Интернете)

2)      клиентская часть (является непосредственным исполнителем загружаемых программ и позволяет пользователю самому добавлять программы  в сеть, кроме того, исполняет функции регистрации и проверки синтаксиса)

3)      web-представительство системы, через которое можно узнать текущее состояние проекта а также другую информацию необходимую для авторов программ.

Система МетаКомпьютер

является централизованной. В ее задачи входит:

1)      регистрация новых пользователей.

2)      (!) ведение статистики работы каждого компьютера (производительность, время ответа, и т.д.).

3)      на основе собранной статистики, выделение каждой программе нужного кол-ва ресурсов и загрузка ее в соответствующие компьютеры через Интернет.



4)      отслеживание выполнения программы и сообщение этой информации авторам программ.

5)      все остальные операции, которые могут потребоваться программисту (закрытие программы (отгрузка из сети), уточнения диапазона перебора, и т.д.)

Проект находится в стадии написания кода (70% от центральной части) и пошагового уточнения спецификации.

Первоначально весь код пишется для операционной системы Windows XP (в системе Visual Studio .Net). В качестве системы БД будет использоваться MS SQL Server 2000.

Интеллектуальная система управления средой обитания

Борисов Максим, Заруднева Валерия, Лобачов Дмитрий, Остроухов Евгений,

Остроухов Максим, Попов Андрей, Степанов Андрей, Фоменко Алексей

Future House Solutions (http://www.futurehouse.ru)

г. Москва.

В течение лет, только несколько компаний, таких как CRESTRON, AMX, EIB разрабатывали и представляли на рынке домашние системы управления, более известными как "smart homes","digital houses". Эти решения разрабатывались на базе собственных технологий (платформ, стандартов, протоколов и т.д.) А в силу того, что в то время рынок подобных систем был сравнительно мал, и технологический уровень в целом был низок, решения предлагаются на рынке по высоким ценам.

В тоже время большое количество новых технологий были разработаны или реализованы такими гигантами как Intel, Microsoft и  IBM (Web, Wi-Fi, Bluetooth, GSM and CDMA, Windows и Linux embedded platforms, Клиент – Сервер архитектура, Airpanels, Pocket и Tablet PC и т.д.) На основе этих технологий, сейчас представляется возможным предлагать на рынок системы с функциональностью “digital house” в десятки раз дешевле.

Наша команда разрабатывает подобные системы. Основная идея заключается в том, что бы не в ущерб удобству и функциональности, сделать систему настолько простой, что неподготовленный человек с лёгкостью может установить и использовать её у себя дома. Хорошая аналогия  - домашние Интернет роутеры Linksys или D-link.


Система предполагается быть модульной, что позволит клиенту выбрать начальный модуль с требуемой функциональностью (Система видео-наблюдения и охраны, управление светом, управление климатом, управление домашними аудио/видео приборами, GSM/CDMA routing, fax-server) и затем наращивать её по мере желания и возможности. Мы планируем использовать открытые протоколы, а также поддерживать уже используемые протоколы, такие как EIB и AMX. Это позволите системе быть легко модернизируемой и совместимой с системами других производителей.

Мы уже имеем работающий прототип системы на базе PC и Microsoft Windows Advanced Server, покрывающий функциональность управления светом, управления аудио/видео техникой и Internet routing. Мы также имеем партнёра, производящего диммеры, релейные блоки и другие конечные устройства.

Организация команды разработчиков высокого уровня – наша следующая задача. Это позволит нам заняться разработкой бортовых сетей для различных типов транспорта, начиная с велосипеда и заканчивая самолётом. Уже сейчас мы занимаемся разработкой архитектуры системы, позволяющей использовать её различным OEM разработчикам для отображения их собственной информации, получаемой с серии различных датчиков, в удобном только для них виде. Этот проект носит имя “Универсальный индикатор”





Интерпретация иерархической модели в среде ParJava

В. А. Падарян

Институт Системного Программирования Российской Академии Наук

г. Москва

Рассматривается интегрированная среда ParJava, поддерживающая разработку и сопровождение программ, параллельных по данным. Разработка параллельной программы обладает важной особенностью – необходимо обеспечить такие её свойства как эффективность и масштабируемость, что требует дополнительной «доводки» программы.

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

В среде ParJava оценка производительности параллельной программы выполняется с помощью символьной интерпретации, основанной на иерархической модели параллельной программы.


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

Иерархическая модель программы определяется как набор направленных графов, где каждой функции (методу) соответствует её граф потока управления. Каждая вершина графа снабжена заполненным списком атрибутов A. В списке есть атрибут, определяющий время выполнения данной вершины. Вершина представляет собой базовый блок одного из следующих типов: линейный участок – линейная последовательность операторов Java-программы (последним оператором такого базового блока может быть оператор ветвления), вызов метода, вызов коммуникационного метода MPI, вызов служебного метода MPI, вызов метода JDK. Для каждого типа вершины время её выполнения определяется соответствующим образом. Для линейных участков кода и библиотечных функций общего вида время работы определяется заранее – например, через замер. Для коммуникационных функций MPI время работы может быть определено с помощью коммуникационной модели, такой как LogGP. Вершина отвечающая вызову пользовательской функции, получает определённый атрибут как результат символьной интерпретации этой функции.

Символьная интерпретация выполняется через построение цепочки вершин графа управления, по которым пройдёт выполнение программы. Но построение цепочки, в случае большой программы, может выполняться недопустимо долго. Для ускорения интерпретации построение цепочки необходимо сочетать со свёртками подграфов.

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

У программ, написанных на языке Java, граф потока управления сводим, что гарантирует возможность применить операции свёртки.


Введём дополнительные типы вершин для свёрнутых подграфов. Для определения атрибута «время» используются рекурсивные формулы.

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

Компонентное программирование с использованием технологий .NET

Д. Е. Пахомов.

Тверской Государственный Университет, факультет Прикладной математики и кибернетики.

Научный руководитель: к.т.н. доц. Биллиг Владимир Арнольдович

г. Тверь

Развитие идеи компонентного программирования.

C# как язык компонентного программирования.

Использование веб служб(сервисов) в качестве компонент при разработке приложений.

Преимущества веб-сервисов для программ, используемых в мобильных устройствах (смартфонах и КПК)

Использование метаданных и атрибутов. Работа с пространством имен Reflections.

Использование пользовательских атрибутов и технологии отражения для создания «Динамических» приложений.

Написание контрактов, предложенных Бертрандом Мейером (создателем языка Eiffel) для повышения надежности компонентов.

В качестве образца технологии используется проект «Численные методы».

Приложение состоит из веб-сервиса и приложения клиента в виде Windows Application или ASPX страницы. Веб-сервис содержит несколько методов, производящих различные вычисления с данными пользователя (сложение, умножение и.т.д.).

Главная идея состоит в том, что в приложении-клиенте жестко не прописана информация о методах, доступных в веб-сервисе, а информацию о них клиент получает посредством отражения, используя информацию из атрибутов. Становится возможным написание «универсального» клиента, который не нуждается в усовершенствовании при изменении веб-сервиса.


Можно добавлять в веб-сервис, новые методы, а старое клиентское приложение будет уметь с ними работать.

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

Вычисления в XML документах

А. В. Поляков

Физический факультет МГУ им. М.В.Ломоносова

Москва

Предлагается способ выполнения вычислений на основе XML технологий. В данном подходе XML документ приобретает функциональность электронных таблиц. Поскольку вычисления в основном формулируются исходя из структуры XML документа (но при необходимости можно спуститься на уровень самих данных), то в отличие от электронных таблиц, организованные таким образом вычисления более гибкие и менее привязаны к конкретному содержанию документа. Расчеты, описанные однажды, могут применяться к нескольким документам одинаковым по структуре.

Предлагаемый подход состоит из двух частей. Первая часть описывает вычисляемые выражения, которые помещаются в XML документ. Значение любого атрибута или текстового узла XML документа может содержать в качестве подстроки вычисляемое выражение, окруженное фигурными скобками {expr}. Вычисляемое выражение – это XSLT выражение (expression), т. е. выражение, описанное в спецификации XSLT. Значение атрибута или текстового узла, содержащее вычисляемое выражение, интерпретируется и обрабатывается как шаблон значения атрибута (attribute value template) согласно спецификации XSLT. Текущим узлом (относительно которого записывается  XPath выражение, и который возвращает функция current()) является место положения самого выражения {expr}. Подобно электронным таблицам, вычисляемое выражение {expr} может содержать ссылки на атрибуты и/или текстовые узлы, которые сами содержат некоторые вычисляемые выражения.

Пример.

<root a1="{3+4}" a2="{../@a1 + 2}">{../@a1 * ../@a2}</root>



Результат обработки этого файла следующий.

<root a1="7" a2="9">63</root>

Вторая часть служит для вставки вычисляемых выражений в XML документ, позволяя отделить от документа описание расчетов.

Данный способ может использоваться в продукте MS InfoPath и обладает значительными преимуществами по сравнению со способом, реализованным в настоящее время.

ПРОГРАММНЫЙ ПАКЕТ "HYBRID"

А.М. Попов,

Физический Институт им. П.Н. Лебедева, аспирант.

Научный руководитель – к.ф.м.-н. Михеева Е.В.

г. Москва.

Программный пакет HYBRID написан автором в целях численного расчета эволюционных треков в модели гибридной инфляции. Для численного интегрирования уравнений Энштейна используется метод Рунге-Кутта IV

порядка, а для коррекции шага интегрирования – разработанный автором алгоритм ASIA

– “Adaptive Step Integration Algorythm”. Программа реализована на платформе Microsoft Windows-2000 с помощью Microsoft Visual C++ v. 6.0. Классы MFC использовались для организации многопоточной структуры программы и для визуализации данных. В связи с достаточно скромными целями исследования, тип приложения был выбран соответствующим типу "Диалоговое окно".

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


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

Интегрирование уравнений методом Рунге-Кутта реализовано с помощью передачи указателей на массивы функций: основной объект счетного потока для расчета значений функции в следующей точке лишь передает в соответствующую функцию значение текущего шага, указатель на объект с текущими значениями переменных, текущее время интегрирования и указатель на массив функций, по которым и будет рассчитано следующее значение переменных. Таким образом, счетный поток вообще не обладает никакой информацией о том, значения какого количество переменных необходимо получить, каким образом эти значения будут рассчитываться и какой метод интегрирования будет задействован, а функция, в которой реализован метод Рунге-Кутта, также является "слепой" по отношению к тому, что она рассчитывает. Весь соответствующий блок исходного кода программы снабжен подробнейшими комментариями и многочисленными примерами по допустимым модификациям. Подробное описание по практической работе с программой находится в сопровождающем ее информационном файле README.

По материалам проведенного автором совместно с научным руководителем исследования эволюционных треков в модели гибридной инфляции (выполненного, в том числе, и с применением программы HYBRID) к публикации готовиться статья в журнале Physical Review D.

Мониторинг журналов событий с помощью сценариев WMI

А.В. Попов1, Е.А. Шикин2

1

Мордовский государственный университет им. Н.П. Огарева

2

Мордовское отделение №8589 Сбербанка России

г. Саранск

Грамотно построенная политика безопасности операционной системы Windows должна обеспечивать протоколирование всех наиболее критичных с точки зрения информационной безопасности событий (например, попыток несанкционированного доступа) в специальных системных журналах (Event Logs).


Для администратора важно иметь простые, гибкие и удобные средства для анализа информации, хранящейся в этих журналах, а также механизм оперативного оповещения о возникновении наиболее важных событий в системе.

Наиболее привычным и стандартным средством обработки данных в журналах событий является оснастка "Просмотр событий" консоли управления MMC. Она позволяет просматривать произошедшие события (все или удовлетворяющие задаваемому фильтру) на локальном или удаленном компьютере, производить в журнале поиск нужных событий, экспортировать записи журналов в файл с разделителями. Начиная с Windows XP, те же действия можно выполнять из командной строки с помощью входящей в состав операционной системы VBScript-утилиты eventquery.vbs, в которой применяется базовая технология WMI (Windows Management Instrumentation) [1], предназначенная для централизованного управления и слежения за работой различных частей компьютерной сети под управлением Windows. Данная утилита позволяет сохранять выводимую информацию во внешнем файле в форме таблицы или списка с разделителями; применяя ее в командных файлах или сценариях WSH (Windows Script Host), можно автоматизировать выполнение различных запросов к журналам событий на нескольких машинах.

Технология WMI используется и в другой стандартной для Windows XP утилите командной строки eventtriggers.exe, которая позволяет при добавлении в журнал событий локального или удаленного компьютера записи заданного типа (например, события с определенным кодом или события, информирующего о возникновении какой-либо ошибки) автоматически запускать определенную задачу (скажем, командный файл или сценарий WSH). Такая связка "событие–приложение" называется триггером; в системе можно определить несколько триггеров, которые будут действовать постоянно, решая тем самым задачу оперативной обработки событий, информация о которых фиксируется в журналах событий.

Мы предлагаем для автоматической обработки изменений в журналах событий WMI-утилиту EventRegister.hta, которая имеет следующие преимущества по сравнению с eventtriggers.exe:



утилита представляет собой сценарий на языке VBScript, поэтому администратор операционной системы в случае необходимости может легко модифицировать ее;

утилита имеет графический интерфейс, реализованный в виде HTML-формы;

для обработки событий могут использоваться несколько стандартных постоянных потребителей событий WMI, в том числе SMTP-потребитель, что позволяет отправлять извещения о наступлении событий по электронной почте;

в отличие от eventtriggers.exe, утилита EventRegister.hta позволяет получить доступ ко всем полям записи из журнала событий;

связка "событие–обработчик" может находиться в репозитории WMI как в активном, так и в неактивном состоянии, что позволяет временно отключать ненужные обработчики, не удаляя их из системы полностью.

Литература

1. А.В.Попов, Е.А.Шикин. Администрирование Windows с помощью WMI и WMIC. - СПб.: БХВ-Петербург, 2004. - 752 с.

Исследовательская Дейталог-система

А. С. Семенов

ВМиК МГУ

Научный руководитель: дфмн А. С. Марков

г. Москва

Сообщается об открытой реализации Дейталог-системы. Дейталог – это язык  логического программирования реляционных данных. Логическое программирование обладает большей выразительной способностью задания запросов и ограничений в сравнении с традиционными языками определения данных и манипулирования данными систем баз данных. Принципиально важной особенностью Дейталога является способность изображать рекурсию.

Система включает в себя синтаксический разбор программ на Дейталоге, трансляцию программ Дейталога в уравнения реляционной алгебры, слабое связывание Дейталог-системы с СУБД SQLite и исполнение программы Дейталога путем реализации различных методов вычисления, а именно восходящих Якоби, Гаусса-Зейделя, полунепосредственного и нисходящего QSQ (запрос – подзапрос).

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


С другой стороны, эффективность реализаций языков функционального программирования возрастает, что позволяет говорить о практических приложениях.

Языком реализации стал Scheme (современный диалект Лиспа), а точнее, один из самых эффективных компиляторов языка Scheme – Bigloo, который обладает несколькими несомненными достоинствами. Во-первых, в отличие от многих других реализаций Лиспа и Scheme, Bigloo является компилятором. Во-вторых, он позволяет создавать исполняемые файлы для различных платформ, в том числе Windows 2000, XP (без использования Cygwin) и .NET.

Система связана с СУБД SQLite по принципу 'слабого связывания', через стандартный интерфейс Дейталог-система просто выкачивает кортежи из базы данных, а потом обрабатывает. Таким образом, выбор именно СУБД SQLite не имеет принципиального значения. Дейталог-система может быть связана и с другими СУБД, такими как MySQL, PostgreSQL, Oracle и другими.

Экпериментальность, открытость и расширяемость Дейталог-системы делают ее интересным продуктом для научной общественности, позволяя использовать во многих областях научных и технических исследований.

Корректность графических программ на C#

Столяров Денис Игоревич.

Тверской Государственный Университет, ф – т прикладной математики и кибернетики

Научный руководитель: Биллиг Владимир Арнольдович.

г. Тверь.

В докладе рассматривается корректность графических программ на C#. Обсуждаются следующие вопросы:

·             Корректность как контракт, которому удовлетворяет программа.

·             Будет рассмотрен математический аппарат для записи контрактов и доказательства корректности классов. За основу берётся математическая база, предложенная в статье Бертранда Мейера (Bertrand Meyer) “Towards practical proofs of class correctness”.

·             Атрибуты C# как средство записи контрактов и доказательства корректности.


Предлагается один из возможных путей обеспечения стандартного способа документирования программных сущностей – классов – с помощью атрибутов C#.

·             Графические примитивы. Класс Graphics. Контракты и доказательство примитивов. Затрагивается вопрос о том, как доказывать правильность программ использующих вызовы методов принадлежащих классам стандартной библиотеки .Net (class library), в частности рассматриваются некоторые методы класса Graphics.

·             Семейство классов Shapes (графических фигур) на C#. Доказательство корректности проекта Shapes. Рассматривается способ доказательства корректности классов – наследников.

Автоматизация деятельности высшего учебного заведения на основе технологии сканирования документов

В.Н. Трегубов

Саратовский государственный технический университет

г. Саратов

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

Вместе с тем, несмотря на продвинутость университетов в плане теоретической науки и технологий, большинство ВУЗов до настоящего времени не решили проблемы автоматизации своей деятельности. Учет успеваемости, контроль за проведением сессии и другие операции выполняются ручным способом и старыми методами. Хотя необходимость в использовании новых технологий давно назрела.

На сегодняшний момент на рынке не существует качественного программного продукта позволяющего организовать полный цикл документооборота в ВУЗе. Основными причинами этого является то, что для крупных фирм «1С», «Галактика» разработка такого продукта не представляет интереса из-за ограниченности рынка его продажи. С другой стороны до настоящего времени отсутствует должно понимание в необходимости подобной системы со стороны руководства университетов, так как очень сложно оценить, в чем будет выражаться его эффективность.



Особенностью процесса документооборота в ВУЗе является его большая неравномерность. В период сессии в течении 2-3 недель  через каждый деканат  проходит  несколько тысяч ведомостей. Сотрудникам деканата (обычно 2-3 человека),  необходимо обработать эти ведомости и на их основе подготовить различные сводки, ведомости пересдач, приказ об отчислении и другие документы. Кроме того, через деканат проходит информация о болезнях студентов, расписании, изменения в контингента и т.д. Организовать оперативное внесение и обработку информации в автоматизированную систему без использования специальных технологий практически не возможно.

Необходимая технология была разработана в Саратовском государственном техническом университете.  Она основана на использовании технологии сканирования и распознавания документов. Для этого разработана специальная форма ведомости, в которой можно отметить оценку таким образом, чтобы затем можно было распознать ее с помощью сканера. Такие ведомости автоматически создаются на основе учебных планов обучения, контингента студентов и расписания ведомости. Преподаватель, принимая экзамен или зачет, заполняет ведомость и сдает ее в деканат. В деканате ведомости сканируются и  автоматически заносятся в базу данных.

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

Программный комплекс был реализован на основе технологии .Net и базы данных MSDE.  Использование классов для обработки изображений из  библиотеки .Net  Frameworks позволило создать компонент для распознавания ведомостей. Интерфейс работы с программой реализован с использованием технологии ASP.NET.

Проведенный летом 2003 года эксперимент по обработке всех ведомостей для одного факультета  показал высокое качество надежность и описанного подхода.  В ходе эксперимента были определены направления по совершенствованию разработанной системы.


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

Исследование методов сокрытия информации в аудиоданных.

Программный комплекс Steganophony

Устименко Артемий Сергеевич

Руководитель:  Медведев Николай Викторович, к.т.н, доцент, заведующий кафедрой «Информационная безопасность» МГТУ им. Н.Э.Баумана.

г. Москва

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

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

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

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


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

Steganophony обеспечивает сокрытие данных в аудиофайлах формата RIFF, в том числе сжатых с возможностью полного восстановления исходной информации. Кроме PCM Wave реализована поддержка некоторых разновидности формата Windows Media.

Для блочного шифрования пользователем может быть выбран один из реализованных в программе криптоалгоритмов (IDEA, RC6, RC5, Blowfish, ГОСТ 28147-89, AES), работающих в режиме CBC (Ciphertext Block Chaining).  

По мнению автора, программный продукт обладает широкой областью возможного практического применения. В частности, возможно использование Steganophony для установки цифровых меток на аудио компакт-диски стандарта CDDA.

Программный продукт является объектом авторского права и зарегистрирован в Государственном Реестре программ для ЭВМ, о чем выдано свидетельство № 2002610519.

Неявные спецификации асинхронных систем

Хорошилов Алексей Владимирович

МГУ им. Ломоносова, ф-т ВМиК

Петренко А.К.

г. Москва

Формальные методы занимают ключевое место при разработке программных систем с повышенными требованиями к надежности. Примером технологии, сочетающей в себе основательность формальных методов и высокую экономическую эффективность, является технология разработки высококачественных тестов UniTesK (http://unitesk.ispras.ru). Ключевой фактор успеха UniTesK заключается в использовании неявного описания математических моделей с помощью простых нотаций.

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



В группе RedVerst ИСП РАН разработаны математические модели, позволяющие описывать требования к асинхронным системам в неявном виде. Для этого было введено понятие автоматов с отложенными реакциями и разработаны методы неявной спецификации таких автоматов посредством предусловий и постусловий переходов. Кроме этого, на основе автоматов с отложенными реакциями были построены алгоритмы:

·         анализа корректности поведения тестируемой системы

·         анализа качества тестирования в терминах покрытия исходных требований

·         построения сложных и осмысленных цепочек тестовых действий

Задачей данной работы было проектирование и реализация механизма неявной спецификации асинхронных систем в инструменте для тестирования C программ CTesK. В докладе рассматриваются особенности организации процесса тестирования асинхронных систем и их влияние на основные компоненты CTesK:

·         спецификационное расширение языка C (SEC)

·         архитектура тестовой системы

·         транслятор SEC2С

·         библиотеки поддержки процесса тестирования

·         модуль интеграции в Microsoft Visual Studio 6.0

·         генератор отчетов о результатах тестирования и покрытии требований

Расширенная технология CTesK была апробирована на двух проектах проведенных ИСП РАН совместно с Microsoft Research. В рамках первого проекта (MRL Contract No 2000-35)

были разработаны формальные спецификации и проведены тесты реализации стека протоколов MSR IPv6. Цель второго проекта (MSRC Contract No 2002-84) заключалась в тестировании функций Mobile IPv6 на примере реализации Microsoft MIPv6 для Windows CE 4.1 и Windows XP. В настоящее время CTesK используется для верификации TinyOS – распределенной операционной системы для сенсорных сетей.



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

Компонента сбора и публикации метериалов конференции

для системы поддержки конференций

А.В. Чернов

МИФИ, факультет: “Кибернетика”

Научный руководитель: А.В. Гаврилов

г. Москва

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

В данной работе была разработанна компонента сбора и публикации метериалов конференции для системы поддержки конференций.

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

Компонента обеспечивает доступ к следующим функциям:

·                     добавление новой секции

·                     изменение названия секции

·                     удаление секции из списка секций

·                     получение списока секций



·                     замена текущей версии списка тезисов в данной секции

·                     получение текущей версии списка тезисов в данной секции

·                     получение текущего расписания

·                     замена текущей версии расписания в базе данных

·                     добавление нового тезиса

·                     удаление тезиса из секции

·                     получение тезиса из данной секции с данным заголовком доклада

·                     регистрация нового тезиса доклада

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

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

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



·                     добавление новости

·                     замена текущей версии новостей

·                     удаление всех новостей из списка новостей

·                     удаление новости из списка новостей

·                     получение списка новостей

Реиспользуемость достигнута, благодаря возможности организации компоненты как web-сервис.

В процессе реализации модуля сбора и публикации материалов конференции использовались следующие инструментальные средства:

·                         Windows XP (операционная система);

·                         .NET Framework (платформа разработки);

·                         Visual Studio .NET (среда разработки);

·                         C# (язык программирования).

·                         SQL Server 2000(БД)

·                         Internet Information Services(поддержка Web и FTP , а

                также поддержка подключений к БД)



Таким образом в данной работе проведены: обзор существующих решений данной проблемы, проектирование, разработка и тестирование компоненты сбора и публикации материалов конференции.

ОСОБЕННОСТИ ПРОГРАММНОЙ РЕАЛИЗАЦИИ КОМПЛЕКСА «РЕПЕТИТОР»

А.Н. Чурилов

Научные руководители: А.Н. Ходусов, доктор пед. наук, проф.,Э.В. Власов, кфмн, доцент

Курский государственный университет

г. Курск

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

Целью данной работы является разработка и реализация программного комплекса «Репетитор» – инструментальной оболочки для создания и последующего использования в учебном процессе педагогических программных средств (ППС).

Программный комплекс предназначен для решения следующих основных задач:

·         предоставить преподавателю возможность создавать и использовать в учебном процессе ППС по различной тематике, состоящих из трех основных компонентов: «Теория», «Обучение», «Контроль»;

·         обеспечить преподавателю и учащемуся удобный и интуитивно понятный интерфейс для работы с ППС;

·         организовать сбор и хранение информации о результатах обучения для её последующего анализа.

Для вставки в ППС различных объектов используется технология OLE. Имеется возможность использовать внешнюю теорию вместо встроенной теории «Репетитора». Этот режим можно использовать, если теоретический материал уже подготовлен для использования в компьютерном обучении с помощью какой-либо иной технологии (например, Microsoft PowerPoint, редактор Web-страниц и т.д.).



Комплекс «Репетитор» состоит из следующих модулей:

·         «Редактор» – предназначен для создания и редактирования ППС;

·         «Среда ученика» – позволяет использовать в учебном процессе ППС, подготовленные в «Редакторе»;

·         «База данных» – используется для хранения информации о результатах работы с ППС;

·         «Менеджер базы данных» – позволяет преподавателю анализировать информацию о работе обучаемых с ППС и осуществлять оперативный мониторинг учебного процесса.

Основу модулей «Редактор» и «Среда ученика» составляет общее ядро – иерархия классов. Классы представляют как ППС в целом (TRepetitor) так и отдельные его части (TTeor – глава теории, TKontrol – вопрос компонента «Контроль», TObuch - вопрос компонента «Обучение», и т.д.). Все классы имеют методы для записи в файл и загрузки из файла. Класс TRepetitor содержит методы для выполнения ППС.

В качестве сервера баз данных используется InterBase Server 6.0. Модули «Редактор», «Среда ученика» и «Менеджер базы данных» реализованы с помощью Borland Delphi 6.0.

Программный комплекс «Репетитор» успешно используется в учебном процессе Регионального открытого социального института (РОСИ) и Курского государственного университета (до 2003 г. Курского государственного педагогического университета). «Репетитор» зарегистрирован в отраслевом фонде алгоритмов и программ  и отмечен дипломом за высокое качество на «Всероссийском @вгустовском педагогическом совете – 2001» в секции «Авторский программно-методический комплекс – национальное достояние России».

Платформенно-независимая система голосовой аутентификации пользователя

под управлением .NET

Шальнев Александр Анатольевич, аспирант

Руководитель: Крючкова Елена Николаевна

Алтайский государственный технический университет им. И.И. Ползунова

Традиционная парольная защита не всегда выполняет свою функцию, если пользователь не заинтересован в сохранении пароля.


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

 Контрольные фразы подобраны так, чтобы в них было больше гласных звуков А, О, И, т.к. система аутентификации осуществляет работу с этими звуками. Система распознает звуки и делит фразу по звукам. Распознавание звуков производится с помощью обученной трехкаскадной нейронной сети. Далее вся работа идет с отдельными звуками. Система снимает характеристику, которую сравнивает с эталонной характеристикой. В данной работе характеристикой является спектр частот в диапазоне от 20Гц до 20кГц. Разложение звука на частоты производится с помощью ряда Фурье. Проверка правильности порядка следования осуществляется методом сопоставления звуков в контрольной и распознанной последовательности гласных звуков.

Система реализована под платформу .net в целях расширения спектра ОС, под управлением которых можно будет использовать данную систему. Система удовлетворяет трехзвенной архитектуре с использованием   в качестве БД. Серверная часть реализована как ASP.NET Web Service. Клиентская часть построена на основе платформо-независимого пользовательского интерфейса.

Особенностью данной работы является ее платформенная независимость. В данный момент несколько групп разработчиков очень активно начали разрабатывать .net runtime для других ОС. На данный момент существуют бета версии .net runtime: Mono, Portable.NET, DotGNU. Стоит отметить, многие разработчики добились очень неплохих результатов.


Однако все они имеют один недостаток:  не понятно как в них будет работать System.Windows.Forms namespace. Известные решения, как правило, они зависят от ОС, на которой они реализованы.

В данной работе предлагается другой способ реализации System.Windows.Forms namespace. Предлагается использовать уже существующий платформо-независимый  пользовательский интерфейс и написать к нему классы-обертки на C# с интерфейсом, повторяющим интерфейс System.Windows.Forms namespace. На данном этапе частично рассмотрены платформо-независимые  пользовательские интерфейсы: GTK#, QT#, SWT (порт SWT от IBM для Java), реализованы две тестовые библиотеки (с использованием SWT, GTK#), в которых частично реализованы классы: Button, EditBox, Label. Эти библиотеки подтверждают принципиальную возможность предлагаемого способа решения проблемы System.Windows.Forms namespace.

Реализация системы аутентификации потребовали разработки алгоритмов быстрой вставки с использованием индекса. В данной работе реализован класс на языке C# для платформы .net для работы с такой структурой данных. Этот класс реализует стандартный интерфейс IList, что позволяет расширить область применения этой структуры данных. Тестирование класса производилось с помощью NUnit. Было проведено тестирование алгоритма  на производительность (данные приведены ниже в таблице).

Тип теста

Размерность

Время работы ArrayList в мс

Время работы массива с быстрой вставкой в мс

Добавление элементов в нулевую позицию ( Insert( 0, “dat” ) )

40000 элементов int

3645

360

Добавление элементов в конец ( Add( “dat” ) )

300000 элементов int

240

1392

Случайное удаление элементов

1500 элементов из 300000 int

5638

510

Удаление из нулевой позиции ( RemoveAt ( 0 ) )

500 элементов из 300000 int

3915

291

Удаление из конца ( RemoveAt ( n ) )

200000 элементов из 300000 int

20

971

Случайный доступ

30000 раз из 300000 элементов int

20

2013

Прямой проход с помощью For

400000 элементов int

50

91

Прямой проход с помощью Foreach

300000 элементов int

70

90

<


 

СЕМАНТИЧЕСКИЙ АНАЛИЗАТОР

СИСТЕМЫ КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

Пензенский государственный педагогический университет

факультет экономики и менеджмента

Научный руководитель: д.п.н., проф. В.П. Линькова

г. Пенза

Целью данной работы является разработка новой методологии семантического анализа текстов на основе синонимических рядов.

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

Основная идея заключается в следующем – на основе анализа существующих словарей сформировать синонимические ряды терминов для каждой отдельной тематики (предметной области).

Выводы. В работе предлагается новая методология семантического анализа текстов на основе синонимических рядов. Первоочередная направленность – использование в системе дистанционного образования и профессионального тестирования.

СИСТЕМА КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

Пензенский государственный педагогический университет

факультет экономики и менеджмента

Научный руководитель: д.п.н., проф. В.П. Линькова

г. Пенза

Целью данной работы является разработка методики семантического анализа текстов на основе синонимических рядов и программная реализация системы контроля корректности текстов.

В рамках семантического подхода к интерпретации текстовой информации делается попытка выявить смысл текста за счет анализа синонимической близости слов.


Этот подход ориентирован на конкретный язык (русский) и требует выполнения большой работы по составлению специальных словарей и тезаурусов для каждой отдельной тематики (предметной области).

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

Система контроля корректности текста предполагает, что вводится текст ограниченного объема (фактическая формулировка термина либо описание к-л явления, действия). Основная идея заключается в следующем - сопоставить каждой формулировке термина конкретной предметной области ее образ-вектор в некотором пространстве таким образом, чтобы вектора сходных формулировок были близки. В качестве результата выдается список эталонных формулировок, ранжированный по близости образа эталонной формулировки к образу фактического ответа.

Выводы. В работе предлагается новая методика программной реализации семантического анализа текстов на основе синонимических рядов. Первоочередная направленность – использование в системе дистанционного образования и профессионального тестирования.

МАТЕМАТИЧЕСКИЙ АППАРАТ 

СИСТЕМЫ КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

Пензенский государственный педагогический университет

факультет экономики и менеджмента

Научный руководитель: д.п.н., проф. В.П. Линькова

г. Пенза

Целью данной работы является построение математического аппарата системы контроля корректности текстов.

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

Матрица B вхождений термов T в эталонные формулировки терминов коллекции C (термы-на-термины). Ее размерность n x m , где n – число термов в словаре предметной области; m – число терминов в коллекции C (тезаурусе).





Матрица-маска A вхождений T в фактическую формулировку термина d (ответ)  (термы-на-термины). Размерность матрицы n x m , где n – число термов в словаре предметной области; m – число терминов в коллекции C (тезаурусе).



Матрица W синонимичности (термы-на-термы) размерностью n x n , где n – число термов в словаре предметной области.

В результате вычисляется Rj(d, cj) – мера близости фактической формулировки (ответа) d к эталонным формулировкам коллекции C (по всей коллекции), и выдается список эталонных формулировок, ранжированный по близости образа эталонной формулировки к образу фактического ответа. Метод вычисления меры близости – на базе взвешенных оценок.

Предварительные испытания показали хорошее приближение данного метода оценки меры близости фактической и эталонных формулировок коллекции предметной области.

Выводы. В работе описан математический аппарат семантического анализа текстов на основе синонимических рядов. Первоочередная направленность – использование в системе дистанционного образования и профессионального тестирования.

Применение стеганографических и криптографических средств

для защиты электронной корреспонденции

Шашлов Антон Михайлович

Научный руководитель: Медведев Николай Викторович, к.т.н, доцент,

зав. кафедрой “Информационная безопасность”

МГТУ им. Н.Э. Баумана

г. Москва

Автором проведены исследования, в ходе которых разработаны новые алгоритмы сжатия информации, стеганографические алгоритмы, а также спроектирован, создан и отлажен комплекс специальных программных средств (КСПС) Power Tools Data Protection Pack, предназначенный для обеспечения комплексной безопасности информации с целью ее последующего хранения или передачи по линиям связи общего пользования. КСПС сочетает в себе средства сжатия, криптографической и стеганографической защиты данных.  Продукт зарегистрирован в Государственном реестре программ для ЭВМ (свидетельство №2002610518)

Кроме того, автором создано семейство узкоспециализированных почтовых серверов Power Tools Mail Services, позволяющих централизованно производить криптографическую и стеганографическую защиту электронной корреспонденции средствами Power Tools Data Protection Pack, а также обеспечивать автоматизированный контроль содержимого электронных сообщений.



Компоненты Power Tools Data Protection Pack и Power Tools Mail Services:

Power Tools Encryption Engine v 7.8,

Power Tools Packager v 8.1,

Power Tools Steganographic Engine v 8.0,

Power Tools Mail SMTP Server v. 3.0,

Power Tools Mail POP3 Server v. 2.7,

Power Tools Mail IMAP4 Server v. 1.7,

Power Tools Mail HTTP Web Administration Service v. 1.9,

Power Tools Mail Security Services Server v. 3.5

КСПС  выгодно отличается от известных аналогов возможностью совместного использования сжатия данных, стеганографических и криптографических средств защиты информации. Кроме этого, к преимуществам Power Tools Data Protection Pack можно отнести высокий уровень интеграции между компонентами, а также уникальность, комплексность и универсальность использованных решений.

Применение Power Tools Mail Services позволяет организовать защиту электронной корреспонденции при ее передаче по сети Internet без необходимости обучения персонала работе с узкоспециализированным программным обеспечением на рабочих станциях. Power Tools Mail Services поддерживает SSL и современные алгоритмы аутентификации пользователей. При этом учетные записи могут храниться как в отдельной базе данных, так и в каталоге Active Directory. Опционально может применяться имперсонализация потоков на сервере, что позволяет применять ACL для разграничения доступа пользователей. Разработанные средства администрирования Power Tools Mail Services позволяют производить настройку сервера с использованием Web-интерфейса администратора, также возможна настройка сервера  через консоль управления Microsoft Management Console.

Совместное использование различных методов защиты информации, а также тесная интеграция всех компонентов, входящих в пакет делает Power Tools Data Protection Pack и Power Tools Mail Services удобными в использовании и администрировании программными продуктами, успешно выполняющими свои основные задачи.

О комбинаторно-групповых алгоритмах в криптографии

М.В. Шеблаев

Московский государственный университет им.


М.В. Ломоносова,

Кафедра защиты информации.

Научные руководители: проф. Алешин С.В., доц. Попов В.О.

г. Москва

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

-          наличием сильного математического аппарата, разработанного алгебраистами.

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

-          используемые объекты и алгоритмы могут быть эффективно реализованы в виде программного кода как для однопроцессорной, так и для параллельной обработки.

Было предложено несколько  криптосистем с открытым ключом, использующих проблемы из теории групп кос:

-                      криптосистема AAG, основанная на обобщенной задаче поиска сопрягающего элемента в группе кос.

-                      криптосистема, основанная на обобщении задачи по поиска сопрягающего элемента в группе кос Диффи-Хеллману

В докладе рассмотрены алгоритмы построения таких криптосистем, изложены новые результаты, позволяющие уточнить параметры для практической стойкости и сконструировать атаки для описанных криптосистем.

Групповая  разработка мультимедиа

Девиз: От “книжной” к “экранной” культуре

 

Аида Авакимян, Юрий Асерчев, Альфия Бисакова, Алексей Богомол, Алексей Бурбукин, Денис Василевский, Андрей Васильев, Владимир Гусев, Галимжан Иставлетов,

Галия Ищанова, Тарас Максименко, Раушан Мустафина, Гулхан Нурмухамбетова,



Наталья Скворцова, Расул Сулейменов, Асылбек Тасбулатов, Талгат Тасмагамбетов,

Акайша Тастлекова, Арайлым Тулемисова, Жандос Узакпаев, Максим Фоняк,

Набигали Хисмаденов.

Научный руководитель: Насс Оксана Викторовна

Западно-Казахстанский государственный университет им. М. Утемисова,

факультет математики и информатики, кафедра информатики и вычислительной техники

г. Уральск, Республика Казахстан

Современное общество этапа информатизации и глобальной массовой коммуникации характеризует процесс активного использования информационных и коммуникационных технологий, реализованных на базе технологий обработки аудиовизуальной информации и мультимедийного информационного взаимодействия. Появляются новые схемы понимания и усвоения информации, менее связанные с говорением, словом, звуком, и более связанные со зрительным рядом, образом, формой, цветом. Происходит постепенный переход от «книжной» к «экранной» культуре, рождается новая цивилизация с иным набором культурных ценностей и норм.

В этой связи групповая  разработка мультимедиа «Сборник программ группы 04405», где взаимодействуют визуальные и аудио эффекты под управлением интерактивного программного обеспечения представляется важным и актуальным.

Разработанный авторами компьютерный проект представляет собой сборник отдельных программ, собранных в единую оболочку. Оболочка содержит также панель для просмотра авторских рисунков. Программы созданы средствами Microsoft

Visual

Basic, Borland

Delphi. Рисунки созданы средствами CorelDRAW, Adobe Photoshop, экспортированы в стандартные для оформления Web-страниц форматы: JPEG, GIF.

В данном проекте компьютерные технологии используются в рамках деятельностного подхода, главным аспектом обучения здесь становятся не заучивание правил, а сам процесс мышления. Широко используются программные среды, где студенты сами становятся исследователями, учатся делать выво­ды и обобщать, исходя из собственного опыта манипуляции с конкретными предметами, окружающими их.


Данные разработки имеют своей задачей – повышение уровня профессионализма студентов, специалистов в области вычислительной техники, расширить полученные ими знания о стандартном программном обеспечении, изучить основы мультимедиа, записи, хранения и воспроизведения графической информации на современных вычислительных машинах и общей методологией использования компьютерной графики в профессиональной работе.

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

Формальное проектирование компонентной модели

аппликативной вычислительной системы (АВС).

Ю.Я. Гольцер

МИФИ, факультет «Кибернентика»

г. Москва

С развитием computer science и компьютерной техники развиваются и технологии создания программного обеспечения. От процедурного и объектно-ориентированного переходят к компонентному подходу в проектировании и программировании. Компонентный подход упрощает проектирование и создание локальных и распределенных приложений, дает возможность объединять части кода, написанного на различных языках программирования разными группами разработчиков.

С точки зрения компонентной модели компонента

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

Предлагается для формального определения интерфейсов воспользоваться методами ?-исчисления, разработанными для описания традиционной объектной модели. Это возможно, так как объект задается своими методами, свойствами и событиями. Для описания интерфейса достаточно точно определить набор реализуемых в нем функций.


Основное отличие состоит в том, что для интерфейса мы должны четко описать требования к реализации каждого метода, не прибегая к использованию аппаратов делегирования и наследования. Например, простейшую компоненту - вычислитель для редукции комбинаторных выражений (для базиса I, K, S) можно описать так:

IReduction ?

[ term = “”,

comb_I = ?(s) ?(a:String) ?(rest:String) bI. (a + rest):String,

comb_K = ?(s) ?(a:String) ?(b:String) ?(rest:String) bK. (a + rest):String,

comb_S = ?(s) ?(a:String) ?(b:String) ?(c:String) ?(rest:String) bS. (a+c+”(”+b+c+”)”+rest):String,

ReduceStep = ?(s) bRS

FullReduce = ?(s) bFR]

Таким образом, для создания локальной и распределенной систем аппликативных вычислений были формально описаны компоненты этих систем и взаимодействие между ними, доказана корректность разработанной компонентной модели. Кроме того, в целях спецификации программной системы были спроектированы программные интерфейсы каждой компоненты и построен комплекс UML-диаграмм, полностью определяющий технологические аспекты реализации.

Система автоматизации управления кролиководческими фермами «МИАКРО»

Васис Оксана Сергеевна, Крамин Артем Анатольевич

Казанский государственный университет

факультет вычислительной математики и кибернетики

Российское отделение всемирной ассоциации научного кролиководства

Научный руководитель: член совета безопасности РФ, академик, профессор

Михайлов Игорь Николаевич;

г. Казань

            Мы все привыкли, что точкой приложения информационных технологий являются, как правило, высокотехнологичные и наукоемкие отрасли промышленности, например машиностроение, связь, космос. Для среднестатистического же бизнеса область применения программных средств сужается до офисных и бухгалтерских приложений. Наша система приоткрывает совершенно новую область применения IT, область, которая считается наиболее удаленной от современных информационных технологий, сам факт применения программных средств в которой представляется чем то абсурдным.


Революционность « Системы автоматизации управления кролиководческими фермами «МИАКРО» великолепно подчеркивает революционность технологий Microsoft, и является на наш взгляд лучшим из имеющихся практических примеров для демонстрации возможностей последней разработки корпорации – платформы .Net в целом, а также концепции web – сервисов и средств ASP.Net в частности.

            «Система автоматизации управления кролиководческими фермами «МИАКРО» - это инструмент, который позволяет принципиально изменить работу на кролиководческой ферме. Система берет на себя задачи по ведению количественного учета, планированию работ, прогнозированию состояния фермы, подготовке зоотехнических отчетов, помогает наиболее эффективным образом организовать выполнение зоотехнических работ. Очень важной частью Системы является подсистема, отвечающая за ведение генеалогического учета (единственная существующая в российском кролиководстве на данный момент, по информации Племенного объединения РФ).

            Система построена на базе Microsoft SQL server 2000, что делает ее легко масштабируемой. А поддержка обмена кроликов между разными базами данных (т.е. различными кроликофермами), и простота доступа через web – интерфейс (ASP.Net) позволяют выбрать Систему в качестве стандарта для отрасли в целом по России.

            Особо следует подчеркнуть, что «Система автоматизации управления кролиководческими фермами «МИАКРО» уже реально функционирует на двух кроликофермах «МИАКРО», к осени 2004 года планируется подключить к Системе еще пять ферм. Разработка системы поддерживается Российским отделением Всемирной ассоциации научного кролиководства, Ассоциацией крестьянских подворий и фермерских хозяйств Республики Татарстан, фермерским хозяйством «МИАКРО – КАРАТАУ».

            Несмотря на то, что Система уже является законченным проектом, мы не останавливаемся на достигнутом, на данный момент ведется адаптации интерфейса Системы для мобильных устройств (Pocket PC), совместно с зоотехниками ФХ «МИАКРО – КАРАТАУ» разрабатываются новые формы отчетов и прогнозов.



            «Система управления кроликофермами «Зоотехплан 2003» (предыдущая версия « Системы автоматизации управления кролиководческими фермами «МИАКРО»)  заняла 3 место в финале российского тура международного конкурса Microsoft Imagine Cup 2003.

Тестирование Web-служб при помощи технологии UniTesK на платформе .NET

А.С. Камкин, В.С. Мутилин

Научный руководитель: Петренко А.К.

МГУ им. М.В. Ломоносова, факультет ВМК

г. Москва

В настоящее время Web-службы являются одной из основных технологий в области разработки и интеграции корпоративных информационных систем. Это сравнительно молодая, но быстро развивающаяся технология, основанная на открытых стандартах (XML, SOAP, WSDL и UDDI). Именно с ней крупнейшие разработчики программного обеспечения связывают свои стратегические планы.

            Обеспечение качественного тестирования корпоративных приложений, основанных на Web-службах, востребовано современной IT-индустрией. Учитывая высокий уровень сложности таких приложений, ясно, что традиционные методы разработки тестов вручную не могут обеспечить требуемого качества, поэтому необходимо применение технологии автоматизированного тестирования.

В работе была проведена апробация технологии UniTesK для тестирования Web-служб, результаты которой показали эффективность использования технологии для данного класса приложений.

            Технология UniTesK была разработана в ИСП РАН на основе многолетнего опыта верификации промышленного программного обеспечения и предназначена главным образом для тестирования систем, предоставляющих прикладной программный интерфейс (API). Это хорошо согласуется с концепцией Web-служб, по описанию интерфейса которых можно автоматически сгенерировать класс, реализующий методы для доступа к службе.

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


Во втором способе разработка дополнительных компонентов не требуется, поэтому этот способ менее трудоемкий. В работе выделены условия, при которых применение того или иного способа наиболее целесообразно.

            Предложенные способы опробованы на примерах. Для каждого примера приведены данные, позволяющие оценить эффективность тестов и необходимые затраты на разработку.

            Для разработки тестов использовалось спецификационное расширение языка C# и инструмент Ch@se, предназначенный для тестирования .NET компонентов и поддерживающий технологию тестирования UniTesK.

Электронное пособие по высшей математике

Костыгова С.А.

МПГУ

Научный руковолитель: Каймин В.А.

г. Москва

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

"Высшая математика" в ВУЗах предполагает изучение теории и выполнение практических заданий. Последние, как правило, выполняются на основе текстовых методических указаний и заданий для самостоятельных работ. Они содержат условия задач и примеры их решения.

В математике одними из основных тем являются: векторная алгебра, аналитическая геометрия, матрицы и системы линейных арифметических уравнений. Выполнение самостоятельных заданий по данным темам требует проведения трудоемких многоступенчатых  арифметических расчетов, громоздких вычислений и поиска сделанных в них ошибок.

Новизна и оригинальность электронного пособия в отличие от текстовых пособий состоит в возможности введения и исправления исходных данных, а также получении результатов всех промежуточных вычислений на каждом этапе решения задания и получении результатов решения учебных заданий и отчетов по заданной работе.

Программная реализация выполнена в виде книги электронных таблиц Excel "matrici".


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

Электронное пособие служит студентам первого курса и преподавателям вузов, а также лицам, самостоятельно занимающимся изучением высшей математики. Для пользования программой достаточно иметь компьютер с электронными таблицами MS Excel версии не ниже 2000 SP1.

Электронное пособие создано на базе "Методических указаний и заданий для самостоятельной работы по курсу высшей математики. Элементы векторной алгебры, аналитической геометрии. Матрицы. Решение систем линейных арифметических уравнений." (Москва. МИГАИК, 1987. Авторы: Кузьминых В.А., Исиченко И.В.)

Автор электронного пособия постарался сохранить оригинальные обозначения, нумерацию заданий и методику их решения. Пробная версия программного продукта опробована пользователями локальных сетей "Odeskaya" и "МПГУ" и получила положительные отзывы студентов и преподавателей педагогических вузов.

Степень интеллектуальности программного продукта определяется степенью интеллектуальности исходных методических указаний и пособий. Следовательно, степень электронных пособий зависит от интеллектуальности методических указаний. Эффективность программной реализации достигнута за счет использования технологий Microsoft.

Новые возможности Microsoft SharePoint Portal Server 2003

Вежневец А.А., Меденников А.М., Михеев П.Н.

Вычислительный Центр им. А. А. Дородницына РАН

Научный руководитель: проф. В.А.Серебряков, факультет ВМиК МГУ.

г. Москва

Microsoft SharePoint Portal Server 2003 — это мощное современное решение для интеграции информационных ресурсов и обеспечения взаимодействия пользователей организации. Опыт внедрения сервера в нескольких организациях показал, что для более эффективного использования продукта его функциональность требует доработки и расширения. Общее для всех организаций подмножество пожеланий пользователей можно разделить на три направления.


В первое направление выделяются работы, снимающие некоторые ограничения SPPS. Второе направление — это работы по расширению существующей функциональности. Третье направление включает работы по созданию новой функциональности.

Первое направление работ обусловлено тем, что определенные аспекты реализации SPPS, как оказалось, вызывают неудобство у пользователей. В частности, к ним относятся: невозможность навигации на предыдущую страницу в многостраничных представлениях списков; невозможность управления шириной столбцов в табличных формах; невозможность задавать свойства папкам библиотек документов. Первое ограничение снято путем сохранения контекста страницы при переходе на следующую, что позволило добавить ссылку на предыдущую страницу. Для решения проблемы с шириной столбцов изменен административный интерфейс так, чтобы пользователь имел возможность явно указать параметры столбца таблицы. Эти параметры хранятся в определении поля и используются при генерации страницы для управления их отображением. Последняя задача — позволить задавать свойства папкам — решена путем отключения в определенных местах проверок типа объекта.

Второе направление работ объединяет работы по расширению функциональности портала по работе с библиотеками документов. Библиотеки документов предоставляют мощное средство хранения информации, а области обеспечивают удобство поиска и навигации по ней. Недостаток имеющейся реализации заключается в том, что представить список файлов на странице области в табличном виде можно только через создание для этой области отдельной библиотеки документов. Публикация документов посредством механизма ссылок области (area listings) не позволяет просматривать на странице свойства опубликованных документов. Кроме того, для большого количества документов эта операция требует много времени. Для оптимизации процесса публикации были разработаны две веб-части. Первая отображает папку произвольной библиотеки документов, заданную своим URL, в виде, аналогичном виду стандартной веб-части «Библиотека документов».


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

В рамках работ по третьему направлению были созданы новые функциональные элементы. Функция «Отправить ссылку» позволяет отправить по электронной почте ссылку на жлемент любого списка, а также любую страницу портала. В качестве адресата можно выбрать аудиторию, найти пользователей в Active Directory (используется стандартное окно поиска SPPS) или указать адреса непосредственно. Создана веб-часть для отображения различной статистической информации и специальный сервис для ее сбора и кэширования.

Функция «Рейтинг» позволяет пользователям портала выставлять оценки документам в определенных библиотеках и отображает средний рейтинг документов в их свойствах.

Поисково-аналитическая система SIRIUS

Н. В. Сурин, А. В. Ющенко

Научный руководитель: Устюжанин А. Е.

Московский Физико-Технический Институт

Факультет Управления и Прикладной Математики (МФТИ, ФУПМ),

г. Москва.

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

Что же может дать анализ множества текстовых документов, опубликованных в интернете? При достаточно тонкой и точной классификации можно оценить активность общества в различных областях экономики, политики и социальной жизни, сравнивая размеры соответствующих классов документов.


Просматривая эти данные за несколько лет, можно заметить тенденции. Например, переток экономической активности из одной сферы в другую. Сферы для применения анализа и прогнозирования не ограничены практически ничем, и важность построения прогнозов трудно переоценить. Для анализа используется множество методов, такие как построение тематических сетей или самоорганизующиеся карты Кохонена. Тем не менее, идеального во всех отношениях решения до сих пор не найдено.

 

Система SIRIUS (System of Information Retrieval Interactive User-friendly Search) призвана облегчить задачу аналитика, пытающегося выделить закономерности во множестве неструктурированной информации. Набор текстовых документов индексируется специальным образом, в результате чего выделяются основные темы документа (такие как политика, банковское дело и т.д.). Затем пользователь выбирает интересующие его темы, и система возвращает трехмерную сцену с изображением релевантных выбранным темам документов. Документы отображаются в виде точек, координаты которых имеют смысл весов (мер релевантности) документов выбранным темам.

Основные преимущества системы перед альтернативными разработками: визуализация трехмерной сцены, позволяющая более наглядно продемонстрировать связь документов и тем; возможность навигации по сцене, выбора наиболее удобных точек для просмотра; интуитивно понятное расположение объектов — чем больше координата, тем ближе к данной теме; кластеризация результатов поиска облегчает визуальный анализ; возможность просмотра интересующих документов сцены простым щелчком мыши.

Ссылки:

Плешко В.В., Ермаков А.Е., Липинский Г.В. “TopSOM: визуализация информационных массивов с применением самоорганизующихся тематических карт“

http://www.rco.ru/technology.asp?ob_no=50

Добрынин В. Ю.

“Методические указания к курсу «Теория информационно-логических систем. Информационный поиск”.

http://ir.apmath.spbu.ru/publications/dobrynin_ir_intro/

Автоматическая оценка неопределённости вычислений в .Net Framework



Хитрик Д. В.

Обнинский государственный технический университет атомной энергетики (ИАтЭ), Факультет естественных наук

г. Обнинск, Калужская область

Оценка неопределённости вычислений, интервальные вычисления и апостериорный интервальный анализ. Существующие вычислительные программы можно заставить оценивать неопределённость результата автоматически, если вместо стандартного типа чисел с плавающей запятой использовать интервальный тип, для которого переопределены все основные арифметические операции. Этот приём, названный интервальным анализом [1], не требует написания дополнительного кода, а также даёт гарантированную оценку результату. Однако, результирующая погрешность при нарастании количества операций быстро растёт, и рассчитанная оценка может оказаться бессмысленной.

Схема апостериорного интервального анализа [2] учитывает формальные связи между операндами функции, обеспечивая уменьшение погрешности при усложнении оцениваемой функции. Схема состоит из двух этапов, на первом этапе проводятся обычные интервальные вычисления для оценки значения функции и её производных, а также динамически формируется код второй фазы. Во второй фазе производится расчет уточнённой погрешности на основе формулы конечных приращений. Как показывают эксперименты, апостериорный анализ может дать более точную оценку погрешности. Реализация схемы апостериорного анализа предполагает решение задачи автоматического дифференцирования функции, заданной программой.

Почему .Net? Схема апостериорного анализа была реализована для .Net Framework [3] по следующим причинам:

обеспечивается простой доступ к исполняемому коду,

привлекательной оказалась стековая модель вычислений в MSIL,

в рамках .Net Framework уже реализованы множество библиотек, которые избавили от необходимости задумываться над вспомогательным кодом.

Трехадресный код и стековая модель CLR. Разработка схемы апостериорного интервального анализа производилась в терминах трёхадресного кода. Потребовалось перейти от трёхадресной модели к стековой.



Программная реализация. При реализации использовались следующие возможности .Net Framework: загрузка сборки, получение исходного кода, модификация заменой вызываемых методов, динамическое формирование и компиляция кода, динамический вызов методов сборки. Создан прототип, который позволяет автоматически, на основе скомпилированного кода программы, справиться с задачей увеличения точности ответа для сборок, содержащих класс с единственным методом, реализующим вычисление скалярной функции многих переменных.

Литература

1.      Матиясевич Ю. В. Вещественные числа и ЭВМ // Кибернетика и вычислительная техника., 1986 г., вып. 2., с. 104 – 133.

2.      Алефельд Г., Херцбергер Ю. Введение в интервальные вычисления. – 1987 г., М: «Мир»

3.      http://www.gotdotnet.ru

Список авторов тезисов и научных руководителей

 

ФИО

страница

 

ФИО

страница

Аветисян А.

10

Михайлов И.Н.

50

Алешин С.В.

48

Миханов  С.В.

28

Архипов И.В.

4

Михеев П.Н.

52

Баранчук  А.Л. 

5

Михеева Е.В.

35

Барбашов О.Г.

26

Медведев Н.В.

38, 47

Белеванцев А.А

6

Мищагин К.Г.

29

Белинских А. Л.

7

Морозов Р.Л.

30

Березин С.Б.

8

Мутилин В.С.

51

Биллиг В.А.

34, 38

Насс О.В.

50

Блинов И.Н.

20

Нижаде-Гавгание Д.Э.

31

Борисов М.

32

Олейников И.В.

23

Васис О.С.

50

Остроухов Е.

32

Вежневец А.А.

52

Остроухов М.

32

Власов Э.Г.

42

Павлов В.Л.

27

Воловиков В.В.

15

Падарян В.А.

33

Воног С.Н.

9

Пастухов В.А.

29

Воронцов А. А.

7

Панферов Н.А.

4

Гаврилов А.В.

41

Пахомов Д.Е.

32

Гайсарян С

10

Петренко А.К.

40,51

Гайсарян С.С

6

Полесский С.Н.

17

Гольцер Ю.Я.

49

Поляков А.В.

34

Горбунов А.Ю.

11

Попов А.

32

Грачев И.В.

12, 13

Попов А.В.

36

Гура М.Ю.

14

Попов А.М.

35

Давидович Д.Б.

4

Попов В.О.

48

Долматов А.В.

15

Пращикин С.А.

17

Дубовик С.Е.

16

Применко Э.А.

26

Жаднов В.В.

17

Пярин В.А.

26

Жаднов И.В.

17

Садков А.Н.

29

Жуков  Д.О.

4

Самоваров О.

10

Заруднева В.

32

Семенов А.С.

37

Зыков С.В.

18,19

Серебряков В.А.

52

Каймин В.А.

14,15, 17,51

Скобелев А.В.

27

Какарека Т.Н.

20

Смирнов Н.В.

17

Камаев В.А.

30

Сошников Д.В.

16, 28

Каменский М.В.

21

Степанов А.

32

Камкин А.С.

51

Столяров Д.И.

38

Качанов А.Л.

20

Столяров К.В.

27

Костыгова С.А.

52

Сурин Н.В.

54

Кофанов Ю.Н.

15

Трегубов В.Н.

38

Крамин А.А.

50

Умнов А.Л.

29

Кручинин А.Н.

22

Устименко А.С.

39

Крыжановский Д.И.

23

Устюжанин  А.Е.

9, 54

Крюков В.А.

24

Фоменко А.

32

Крючкова Е.Н.

43

Фоменков С.А.

23

Кудрявцев М.В.

24

Хитрик Д.В.

55

Кузьмин О. В.

5

Ходусов А.Н.

42

Лазарев Д.В.

17

Хорошилов А.В.

40

Линькова Д.П.

45, 46

Чернов А.В.

41

Лобачов Д.

32

Черныш К.П.

20

Логинов Т. А.

4

Чурилов А.Н.

42

Лункин П.Г.

25

Шальнев А.А.

43

Макаров Е.В.                              

5

Шаров Д.А.

45, 46

Маленко Д.И.

26

Шашлов А.М.

47

Маликов О.Р

6

Шеблаев М.В.

48

Марков А.С.

36

Шелякин П.Ю.

12, 13

Матвеев П.П.

26

Шикин Е.А.

36

Маховиков А.Б.

27

Ющенко А.В.

54

Меденников А.Н.

52

<


Содержание

Обращение Московского представительства Майкрософт к участникам

3

Web-система тестирования знаний и психологического тестирования “TESTON” построенная на технологии Microsoft .NET

И.В.Архипов, Д.Б.Давидович, Е.В.Макаров, Н.А.Панферов

4

Система лицензирования программного обеспечения на основе механизма активации

А. Л. Баранчук, Т. А. Логинов

5

Автоматическое обнаружение уязвимостей в программах

Белеванцев А.А, Маликов О.Р

6

рЕАЛИЗАЦИЯ Интернет/интранет проекта по созданию информационной подсистемы в среде microsoft windows для решения задач гидрометобеспечения морской деятельности

А. Л. Белинских

7

IL Shaders: транслятор языка  MSIL для современных графических процессоров.

Березин С.Б.

8

К вопросу о реализации инфраструктуры сервисов FIPA-совместимой агентной платформы

С.Н. Воног

9

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

Сергей Гайсарян, Арутюн Аветисян, Олег Самоваров

10

Использование технологии .NET Remoting для решения задачи поисковой оптимизации.

Горбунов А.Ю.

11

Взаимосвязь BPEL4WS-процесса и структурной модели бизнес-процесса

И.В. Грачёв, П.Ю. Шелякин

12

Моделирование долговременных транзакций на языке UML

И.В. Грачёв, П.Ю. Шелякин

13

Архитектура, реализация и продвижение интернет- магазинов

на примере “Brax.ru – автозвук и мультимедиа”

М.Ю. Гура

14

ТЕХНОЛОГИИ MICROSOFT В ПОДГОТОВКЕ

 ЭЛЕКТРОННЫХ НАУЧНЫХ ЖУРНАЛОВ

А.В. Долматов, В.В. Воловиков

15

Построение интеллектуальных систем на основе

графического представления бизнес-процессов.

С. Е. Дубовик.

16

визуальнАЯ средА обеспечения РАСЧЕТА надежности

аппаратуры при проектировании

Жаднов И.В., Лазарев Д.В., Полесский С.Н., Пращикин С.А., Смирнов Н.В.

17

Обучение программированию студентов вузов: интегрированный подход

С.В. Зыков

18

Корпоративный портал – ключ к интеграции в глобальной среде вычислений

С.В. Зыков

19

СОЗДАНИЕ СИСТЕМЫ ЭЛЕКТРОННОЙ ТОРГОВЛИ С ИСПОЛЬЗОВАНИЕМ НОВЕЙШИХ ТЕХНОЛОГИЙ MICROSOFT

Т.Н. Какарека, А.Л. Качанов, К.П. Черныш,

20

ОСОБЕННОСТИ РАБОТЫ С ФАЙЛАМИ В УПРАВЛЯЕМОМ КОДЕ.

Каменский М.В.

21

Метод модификации программного кода на основе компонентного подхода с применением языка сценариев WSH, как склеивающего инструмента.

(Пример построения системы для модернизации сайта с использованием XML спецификаций и XSLT трансформаций)

Кручинин Алексей Николаевич

22

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

Крыжановский Д.И., Олейников И.В.

23

Повышение эффективности отладки DVM-программ

М. В. Кудрявцев

24

Компонент аутентификации и авторизации пользователей

Лункин П.Г.

25

Основанные на MSF шаблоны процессов разработки

Д.А.Маленко, В.Л.Павлов

25

Защита ПО от несанкционированного копирования

путём привязки к интеллектуальной карте и протокол удалённая регистрации ПО

по каналам связи, налагающих ограничения на размер передаваемых сообщений

Матвеев П.П.,

26

MICROSOFT WINDOWS MEDIA В СИСТЕМЕ ДЛЯ ИНТЕРАКТИВНОГО ДИСТАНЦИОННОГО ОБУЧЕНИЯ

О.Г. Барбашов, А.Б. Маховиков, А.В. Скобелев, К.В. Столяров, М.А. Чернов

27

МНОГОПАРАДИГМАЛЬНАЯ СИСТЕМА ПРОГРАММИРОВАНИЯ С ИНТЕГРАЦИЕЙ БАЗ ДАННЫХ И ЗНАНИЙ ДЛЯ ПЛАТФОРМЫ MICROSOFT .NET

Миханов С. В.

28

Моделирование работы сенсорной ad hoc сети с коллективной передачей информации.

К.Г. Мишагин, В.А. Пастухов, А.Н. Садков

29

Стратегия построения интерактивных WEB-сайтов

НА ПЛАТФОРМЕ NT

Морозов Р. Л.

30

Распределенная вычислительная сеть (МетаКомпьютер)

Нижаде-Гавгание Дмитрий Энверович.

31

Интеллектуальная система управления средой обитания

Борисов Максим, Заруднева Валерия, Лобачов Дмитрий, Остроухов Евгений,

Остроухов Максим, Попов Андрей, Степанов Андрей, Фоменко Алексей

32

Интерпретация иерархической модели в среде ParJava

В. А. Падарян

33

Компонентное программирование с использованием технологий .NET

Д. Е. Пахомов.

34

Вычисления в XML документах

А. В. Поляков

34

ПРОГРАММНЫЙ ПАКЕТ "HYBRID"

А.М. Попов,

35

Мониторинг журналов событий с помощью сценариев WMI

А.В. Попов, Е.А. Шикин

36

Исследовательская Дейталог-система

А. С. Семенов

37

Корректность графических программ на C#

Столяров Денис Игоревич.

38

Автоматизация деятельности высшего учебного заведения на основе технологии сканирования документов

В.Н. Трегубов

38

Исследование методов сокрытия информации в аудиоданных.

Программный комплекс Steganophony

Устименко Артемий Сергеевич

39

Неявные спецификации асинхронных систем

Хорошилов Алексей Владимирович

40

Компонента сбора и публикации метериалов конференции

для системы поддержки конференций

А.В. Чернов

41

ОСОБЕННОСТИ ПРОГРАММНОЙ РЕАЛИЗАЦИИ КОМПЛЕКСА «РЕПЕТИТОР»

А.Н. Чурилов

42

Платформенно-независимая система голосовой аутентификации пользователя

под управлением .NET

Шальнев Александр Анатольевич

43

СЕМАНТИЧЕСКИЙ АНАЛИЗАТОР

СИСТЕМЫ КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

45

СИСТЕМА КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

45

МАТЕМАТИЧЕСКИЙ АППАРАТ 

СИСТЕМЫ КОНТРОЛЯ КОРРЕКТНОСТИ ТЕКСТОВ

Д.А. Шаров

46

Применение стеганографических и криптографических средств

для защиты электронной корреспонденции

Шашлов Антон Михайлович

47

О комбинаторно-групповых алгоритмах в криптографии

М.В. Шеблаев

48

Групповая  разработка мультимедиа

Девиз: От “книжной” к “экранной” культуре

49

Формальное проектирование компонентной модели

аппликативной вычислительной системы (АВС).

Ю.Я. Гольцер

49

Система автоматизации управления кролиководческими фермами «МИАКРО»

Васис Оксана Сергеевна, Крамин Артем Анатольевич

50

Тестирование Web-служб при помощи технологии UniTesK на платформе .NET

А.С. Камкин, В.С. Мутилин

51

Электронное пособие по высшей математике

Костыгова С.А.

52

Новые возможности Microsoft SharePoint Portal Server 2003

Вежневец А.А., Меденников А.М., Михеев П.Н.

 

53

Поисково-аналитическая система SIRIUS

Н. В. Сурин, А. В. Ющенко

54

Автоматическая оценка неопределённости вычислений в .Net Framework

Хитрик Д. В.

55

Алфавитный список авторов тезисов и научных руководителей

56