|
Веб-сервис представляет собой программную систему, обеспечивающую взаимодействие между поставщиком услуги и ее пользователями. При разработке веб-сервисов важно учитывать его безопасность, одним аспектов которой является отсутствие зацикливаний (livelock) и тупиковых ситуаций (deadlock) между его компонентами. В данной работе рассматривается задача синтеза безопасного серверного приложения веб-сервиса, который должен взаимодействовать с различными клиентскими приложениями без зацикливаний и тупиковых ситуаций.
Предполагается, что поведение веб-сервиса и его известных компонентов описано полностью определенными конечными автоматами; взаимодействие компонентов веб-сервиса описано с помощью операции параллельной композиции. Таким образом, задача синтеза серверного приложения сводится к решению соответствующей системы параллельных автоматных уравнений (неравенств), для которой интерес представляют полностью определенные живые решения, так как использование таких решений для синтеза серверного приложения гарантирует отсутствие зацикливаний и тупиковых ситуаций в работе веб-сервиса.
Как известно, набольшее (общее) решение разрешимой системы уравнений является пересечением наибольших решений всех уравнений системы. Сложность построения наибольшего живого решения более высокая, чем сложность построения «обычного» наибольшего решения. В связи с этим интересной является задача о возможности сведения решения системы автоматных уравнений к решению одного уравнения. Показано, что, подобно случаю нахождения наибольшего решения системы, такое сведение возможно для двух частных случаев, когда необходимо синтезировать безопасное серверное приложение, которое может: 1) работать с разными клиентскими приложениями и предоставлять одинаковый уровень сервиса, и в этом случае рассматривается соответствующая система автоматных уравнений; 2) или работать с одним клиентским приложением и предоставлять разные уровни сервиса, и в этом случае рассматривается соответствующая система автоматных неравенств.
Ключевые слова:веб-сервис, безопасность веб-сервисов, конечный автомат, параллельная композиция автоматов, автоматное уравнение, система автоматных уравнений, живое решение
|