Отчётная конференция лаборатории НГУ-Параллелз
15 декабря 2009, вторник, 9:30,
ауд.317а (зал заседания Учёного совета) главного корпуса НГУ
1) Testing systems for programming contests NSUts. Olympic project group: A. Kirov (speaker), E. Konysheva, A. Voronkov, tutors D. Irtegov, T. Churina, T. Nesterenko, E. Bozhenkova
Доработка системы тестирования для олимпиад по программированию NSUts. Группа проекта Olympic: А. Киров, Е. Конышева, А. Воронков, руководители Д.В. Иртегов, Т.Г. Чурина, Т.В. Нестеренко, Е.В. Боженкова
The testing system is the heart of any Olympic programming contests. NSUts stands for Novosibirsk State University Testing System for programming contests. It solves all necessary tasks for carrying out the Olympic programming contests and has a number of advantages over alternative testing systems. The new architecture of the system helped to improve system's efficiency and to realize new features which were not accessible earlier. The majority of the Novosibirsk programming contests and some big programming contests of Russia are carrying on with NSUts, such as The Pottosin's All-Siberian Programming contest, Municipal stages of the All-Russia school programming contest.
Система тестирования – это сердце любой олимпиады по программированию.
Система NSUts – Novosibirsk State University Testing System – решает все необходимые задачи для проведения олимпиад по программированию и имеет ряд преимуществ перед альтернативными системами тестирования.
Новая архитектура позволила поднять работу системы на существенно более высокий уровень и реализовать новые возможности, которые не были доступны раньше. На системе NSUts проводится большинство олимпиад Новосибирска и некоторые крупные олимпиады России, такие как Открытая Всесибирская олимпиада по программированию имени И.В.Поттосина, Муниципальные этапы Всероссийской олимпиады школьников.
2) Parallels HRSOFT V 3.0. System for Parallels employee attestation. HRSOFT project group: E. Lihtansky (speaker), V. Lihtansky, A. Goryachkin, A. Baturin, tutors D. Irtegov, M. Kutov.
Разработка ParallelsHRSOFTV.30. Оценка работы сотрудников компании Parallels. Группа проекта HRSOFT: Е. Лихтанский, В. Лихтанский, А. Горячкин, А. Батурин, руководители Д.В. Иртегов, М.В. Кутов.
Parallels HRSOFT is the Human Resources Information System, originally requested by Human Resources department, Parallels Novosibirsk.
System consists of three weakly dependent modules: Performance Review, Recruitment and Shared Resources catalog which respectively automate performance review process, recruiting activity of HR department and shared resources usage control.
System was originally developed as Recruitment module, and then the Performance Review and Shared Resources catalog were integrated into it. Project exists for almost 5 years; system is actively used in three Parallels offices (Moscow, Novosibirsk and Lviv). HRSOFT is developed and maintained by students group, which now consists of 4 persons. Students team regularly (each half of the year) releases new version of the product, bound to a new performance review period in Parallels.
Parallels HRSOFT – система поддержки деятельности отдела по работе с персоналом.
На данный момент система состоит из трех крупных, слабо связанных модулей: Оценка персонала, Найм и Каталог ресурсов, которые соответственно автоматизируют процесс аттестации, найм сотрудников и контроль за использованием ресурсов Компании.
Изначально система заказывалась в новосибирском офисе и состояла только из блока «Найм», остальные модули были разработаны и интегрированы в общую оболочку позднее. Проект HRSOFT существует около 5 лет, система активно используется в трех офисах Компании (Москва, Новосибирск и Львов). Продукт разрабатывается и поддерживается группой студентов из 4-х человек, регулярно (каждые полгода) выпускаются новые версии, релизы, как правило, привязаны к началу оценочного периода в Компании.
3) Load prediction for technical support service. Forecast project group: Y. Nikiforov (speaker), S. Pyankov, tutor S. Krendelev
Предсказание нагрузки службы технической поддержки. Группа проекта Forecast:
Ю. Никифоров, С. Пьянков, руководитель С.Ф. Кренделев
The main purpose of the project is to build a system of efficient forecasting of technical support service engineers optimum number. This goal implies the development of the load analysis and prediction tool. The requirements for the program are the following:
1) Statistics data reading and processing
1) Analysis the events which influence on forecasting
1) Forecasting the load using different algorithms
During the work on the task we have analyzed the statistics of the calls and emails, studied different existing forecasting systems, developed two forecasting algorithms and an editable events database. The interface of the program was developed conforming the needs of the actual user: Parallels technical support analyst.
The work on the project continues as we develop new features and improve the usability of the program.
Целью работы было построение системы оперативного прогнозирования оптимального количества инженеров службы технической поддержки в данную смену. В связи с этим была поставлена задача разработки инструмента для анализа и предсказания нагрузки на данную службу. Требования к функционалу разрабатываемой системы:
– Чтение и обработка исходных данных
– Анализ и обработка событий, влияющих на предсказание
– Предсказание нагрузки на заданный период с использованием различных алгоритмов
При решении поставленной задачи были проанализированы и обработаны исходные данные, изучены ранее реализованные системы в области прогнозирования, реализованы два алгоритма предсказания, разработана редактируемая база данных событий. Разработано наглядное средство визуализации и интуитивный интерфейс ввода данных, в соответствии с требованиями непосредственного пользователя. Работа над проектом продолжается: ведется улучшение интерфейса и улучшение работы алгоритмов.
4) Technology demo of workflow engine based on XPDL/BPMN interpreter. BPMN project group: I. Popov (speaker), tutor D. Irtegov.
Прототип (technology demo) интерпретаторадиаграмм XPDL/BPMN. Группа проекта BPMN: И. Попов, руководитель Д.В. Иртегов.
The goal of the project is to create a workflow system based on processes defined by Business Process Modeling Notation (BPMN), the most human-readable notation for business processes. Such system, in contrast with the majority of existing solutions (which are based on XML-like Business Process Execution Language – BPEL) will enforce no limitations on process structure, particularly on implementing concurrent processes. At the moment only a prototype is available. It demonstrates execution of a diagram with arbitrary
concurrent processes structure.
Цель проекта – создать систему электронного документооборота, которая бы основывалась на бизнес-процессах, описанных по стандарту BPMN – Business Process Modelling Notation, самому удобному для понимания человеком.
Такая система, в отличие от большинства имеющихся решений (основанных
на XML-подобном языке BPEL – Business Process Execution Language), не будет налагать ограничений на структуру процесса, в частности на представление
параллельных процессов. В настоящее время имеется лишь прототип, демонстрирующий выполнение бизнес-процесса с произвольной структурой параллельных процессов.
5) Data replication in applications with object-relational mapping layer. RDBMS Replicator project group: V. Ippolitov (speaker), N. Tischenko, V. Veldyaksov, N. Bazhenov, O. Kremennaya, tutors D. Irtegov, A. Chernyshov, S. Krendelev.
Репликация данных в приложениях с объектно-реляционным слоем. Группа проекта RDBMSReplicator: В. Ипполитов, Н. Тищенко, Н. Баженов, В. Вельдяксов, О. Кременная, руководители Д.В. Иртегов, А.В. Чернышев, С.Ф. Кренделев.
The relational database replication project develops a replication system for applications which rely on an object-relational mapping layer. The system is intended to work efficiently over slow and unstable networks, be easy to integrate and administrate. Changes to the ORM layer remain transparent to the application, if it meets well-defined criteria. Currently a working prototype exists, which uses Xwiki as the business application and Hibernate as the ORM layer.
В рамках проекта разрабатывается система репликации для приложений, использующих слой объектно-реляционного отображения для доступа к СУБД. Система рассчитана на эффективное использование в сетях с низкой пропускной способностью и низкой отказоустойчивостью. Систему легко интегрировать и администрировать. Изменения, вносимые в ORM-слой, прозрачны для бизнес-приложения, если оно удовлетворяет заявленным требованиям. На данный момент существует рабочий прототип, использующий Xwiki в качестве бизнес-приложения и Hibernate для объектно-реляционного отображения.
6) Control panel for running automated tests. ATCC project group: A. Afonina (speaker), N. Zhelyakov, T. Zolotukhin, tutor D. Korolkov.
Разработка контрольной панели для запуска автоматизированных тестов. Группа проекта ATCC: А. Афонина, Н. Желяков, Т. Золотухин, руководитель Д.Ю. Корольков.
Automated testing of large distributed systems is rather complex task: automated tests require number of configuration actions related to testing environment, system-under-test itself and external systems. Tests execution requires number of auxiliary instances starting.
POA is a rather complex distributed system, its test installation contains about 50–100 virtual and real nodes, which provide number of various services (web, mail, MS collaboration services, applications provisioning and so on). POA testing requires some auxiliary external services starting and configuring. The aim of ATCC project is to automate POA tests management process in order to reduce manual efforts. For now ATCC is WEB-interface, which supports different kinds of tasks:
1) adding configuration for test node
2) selecting required set of tests
3) starting Selenium Server and tests launching on remote machine
4) monitoring tests execution
5) etc.
Fulfillment of all those tasks considerably accelerates testing process and will reduce manual efforts significantly.
At this moment all main use-cases are implemented in the system, constraints implementation and system testing is in progress. Current goal is to make stable version of GUI. One module of ATCC is currently used in POA automated testing.
Тестирование больших распределенных систем – достаточно сложная задача, во многом из-за того, что выполнение тестов часто подразумевает предварительную настройку тестирующей среды, тестируемого продукта и внешних систем. Кроме этого для выполнения некоторых тестов должны быть запущены и сконфигурированы дополнительные внешние сервисы.
POA – это достаточно сложная распределенная система. Типичная тестовая инсталляция POA включает в себя 50–100 виртуальных и реальных нод, предоставляющих различные сервисы (web, mail, MS collaboration services, applications provisioning, etc.). Цель ATCC – автоматизация процессов запуска и мониторинга тестов и, как следствие, снижение затрат на соответствующие активности.
На данный момент ATCC предоставляет удобный WEB-интерфейс, который позволяет выполнять следующие операции:
1) добавление, удаление и редактирование конфигураций тестовых нод
2) выбор набора требуемых тестов, запуск Selenium Server и исполнение тестов на удаленной машине
3) наблюдение за процессом тестирования
4) и т.д.
Данные функции могут существенно ускорить процесс тестирования и значительно уменьшить трудозатраты на запуск тестов.
На текущем этапе уже реализована основная функциональность, идет процесс тестирования и добавление ограничений, необходимых для обеспечения стабильности работы. В данный момент основной задачей является создание стабильной версии GUI. В настоящее время один из модулей АТСС используется в POA Automated Testing.
7) Win32 syscall emulator based on OpenSolaris BrandZ zone. Chimera project group:
N. Vizovitin (speaker), M. Sizov, D. Kolbin, tutor D. Irtegov.
Разработка эмулятора системных вызовов Win32 на основе Brandz зоны OpenSolaris. Группа проекта Chimera: Н. Визовитин, М. Сизов, Д. Колбин, руководитель
Д.В. Иртегов.
Majority of modern operating systems have some kind of abstraction layer between the system call dispatcher and the kernel. Such abstraction layer allows creation of different system call interfaces for a single kernel. Each differing set of system calls may be called a kernel personality.
OpenSolaris operating system has native support for multiple personalities and includes Solaris 8 and Linux kernel 2.4 non-native personalities. This project focuses on creating Win32 personality for OpenSolaris. This would allow running Windows userspace applications within OpenSolaris. Suggested approach would make feasible full application binary interface compatibility with Windows applications on the lowest possible level. This will render such system superior to most of other Win32 emulators, first of all Wine.
To facilitate project development we are provided with the source code of Windows Server 2003 SP1 kernel via the Windows Research Kernel (WRK) part of Windows Academic Program.
The complete system would enable various comparisons between OpenSolaris and Windows kernel as well as benchmarking Windows kernel against OpenSolaris kernel. E.g. one could compare Windows and OpenSolaris kernel performance under identical load, using the exact same set of applications.
Большинство современных операционных систем имеет слой абстракции между диспетчером системных вызовов и собственно ядром. Наличие такого слоя абстракции теоретически позволяет создавать различные интерфейсы системных вызовов у одного ядра – так называемые personality.
Современная версия ОС Open Solaris? поддерживает несколько personality, среди них эмуляторы Solaris 8 и Linux (kernel 2.4). Цель данного проекта состоит в разработке полноценной Win 32?-personality для ядра OpenSolaris. Это позволит запускать пользовательские приложения Windows из OpenSolaris’а. В отличие от других эмуляторов Win 32?, в первую очередь Wine, такая подсистема обеспечивала бы полную совместимость ABI для приложений на наиболее низком уровне.
При разработке используются исходные тексты ОС OpenSolaris и ядра Windows Server 2003 SP1. Последние доступны как часть Windows Research Kernel (WRK) программы Windows Academic Program.
Разрабатываемую подсистему можно было бы использовать для сравнения производительности ядер Windows и OpenSolaris под идентичными загрузками при исполнении одной и той же смеси приложений.
8) Implementation of protocol for probability games without third party for cellular phones. Mental Games project group: E. Spitsyna (speaker), L. Safina, V. Skuridina, R. Miftahutdinov, D. Polyakov, tutor S. Krendelev.
Реализация протокола игры без посредника для сотового телефона. Группа проекта MentalGames: В. Скуридина, Л. Сафина, Е. Спицина, Р. Мифтахуддинов, Д. Поляков, руководитель С.Ф. Кренделев
Project “Mental Games” is about implementation of protocols for games without third party for mobile devices. Authors developed realization of protocols for devices with weak computational power. Another part of this project is the implementation of protocol for concrete devices which support of Bluetooth connection. Now there are realizations of following games – “Battleships” “Blackjack” and “City Hunter”. Programs are written on
Java 2 M E?. The main problem is to prepare the list o suitable devices.
Проект “Mental Games” посвящен реализации криптографических протоколов для игры по сети в азартные игры без посредников. Под «азартной игрой» в данном случае подразумевается не обязательно игра на деньги, но игра, ход которой существенным образом зависит от случайных параметров, известных каждому из игроков лишь частично. Например, большинство карточных игр зависят от расклада карт, scrabble " и домино – от расклада костей и т.д. Важным аспектом является возможность проверки правильности результатов и обнаружения подлогов. Теоретическая часть посвящена разработке алгоритмов, не требующих больших вычислительных мощностей. Вторая часть работы заключается в программной реализации алгоритмов для конкретных мобильных устройств. Приложения написаны на Java 2 M E? для устройств поддерживающих Bluetooth соединение. На данный момент в стадии тестирования находятся игры для мобильных телефонов “Морской бой” и “Покер на костях”, в стадии разработки – игры “Blackjack” и “City Hunter”. Ближайшие планы – это определение списка устройств, на которых тестируемые игры работают без проблем.
9) Nano Football game. A. Zelenchuk (speaker), A. Ivliev, tutor S. Krendelev.
Игра NanoFootball. А. Зеленчук, Ивлев А., руководитель Кренделев С.Ф.
Net game designed on base of realistic physical model. Authors develop methods of computer simulation and usage net technology.
На базе корректной физики строится сетевая игра. Это позволяет с одной стороны изучить методы компьютерного моделирования, а с другой стороны сетевые технологии.
10) NP-games. Constructions and realizations. О. Коsurkova (speaker),А. Jirov,
tutor S. Krendelev.
NP-игры. Построение и реализация. О. Косырькова, А. Жиров,
руководитель С.Ф. Кренделев
This project concerns the visualization of NP problems. Assumed that after visualization it’s easier to find an heuristic solution of this problem. Authors take the problem of finding the solution of system of polynomial equations. The visualization is performed as the game looks like bowling.
NP задачи возникают во многих прикладных проблемах. Есть подход в котором NP задачи визуализируется, в этом случае считается, что легче найти какой-нибудь вариант эвристического решения. Обычно визуализация сводится к игре. В данном проекте рассматривается задача о решении систем нелинейных уравнений над конечными полями. Про это задачу точно известно, что она класса NP. В качестве визуализации приводится игра типа боулинга. Пока получены только предварительные результаты.
Продолжительность доклада – 10 минут, 5 минут на вопросы.