СИСТЕМА WEB-SYNDIC: РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
НА ОСНОВЕ ПРЕЦЕДЕНТОВ
Ананьин А.В.
Информатика, математический факультет
Богоявленский Ю.А., к.т.н., доцент;
Корзун Д.Ж., к.ф.-м.н., ст. преподаватель

Целью проекта Web-SynDic [1] является разработка web-системы для демонстрации и тестирования синтаксических алгоритмов решения систем АНЛДУ (ассоциированная с КС-грамматикой система неотрицательных линейных диофантовых уравнений). [1]. Web-система позволяет исследователям через Интернет задавать вручную или генерировать автоматически системы АНЛДУ, находить их базис Гильберта, проверять правильность результата, оценивать потребление ресурсов и сравнивать эффективность алгоритмов.
Одной из важнейших задач проекта была задача разработки модели прецедентов (на стадиях анализа требований и проектирования), а также программной реализации и тестирования системы на основе этой модели.
Под прецедентом понимается логически завершенная последовательность событий, связанных с исполнителем (внешним объектом), который для выполнения требуемой функции использует программную систему. Примером прецедента в системе Web-SynDic может быть прецедент “Solve ANLDE System” (“Решить систему АНЛДУ”), а внешним объектом является Solver (программа, реализующая  алгоритм решения АНЛДУ-систем). На основе языка UML модель прецедентов включает в себя диаграмму прецедентов и описание каждого прецедента в отдельности с соответствующими диаграммами последовательностей.
В рамках проекта Web-SynDic построение модели прецедентов заключалось в следующем: На стадии анализа требований составлялся  список высокоуровневых требований заказчика, на основе которых создавались расширенные требования. Каждое такое требование определяло отдельный прецедент. Затем выполнялось построение диаграммы прецедентов на основе выделения внешних объектов и взаимосвязей между прецедентами.
На стадии проектирования на основе построенной модели прецедентов были созданы модель архитектуры системы, поведенческая модель, а также формы, которые являются основной частью пользовательского интерфейса системы Web-SynDic [3]. 
На стадии тестирования были разработаны базовые системные тесты, основой которых также являлись прецеденты, а именно: было проверено, как реализованы прецеденты, и какова реакция системы на различные действия пользователей. 
Руководство пользователя web-системы также строилось по прецедентам.
Таким образом, при разработке системы были получены следующие результаты, касающиеся модели прецедентов: на стадии анализа требований построена модель прецедентов (10 диаграмм, одно описание прецедента), модель прецедентов успешно применена на последующих стадиях разработки, проведены 32 базовых системных теста на стадии тестирования.
1.  Кулаков К. А., Сало А. Ю., Ананьин А. В., Крышень М. А. Web-SynDic – система демонстрации и тестирования синтаксических алгоритмов решения неотрицательных линейных диофантовых уравнений // Технологии Microsoft в теории и практике программирования. Материалы межвузовского конкурса-конференции студентов и молодых ученых Северо-запада. — Санкт-Петербург, Изд-во СПбГТУ, 2004. — С. 43.
2. Корзун Д.Ж. Синтаксические алгоритмы решения неотрицательных линейных диофантовых уравнений и их приложение к моделированию структуры нагрузки канала Интернет. Дисс. на соиск. канд. физ.-мат. наук. Петрозаводск, ПетрГУ, 2002. 185 с.
3.    Крышень М. А. Система Web-SynDic: разработка сервера и интерфейса пользователя  // Данный сборник.