“MANAGER-DISPATCHER”:ПАТЕРН ЗАБЕЗПЕЧЕННЯ АДАПТИВНОЇ ПОВЕДІНКИ ПРОГРАМНИХ СИСТЕМ НА ОСНОВІ ПОДІЙ
Автор є членом редколегії видання, тому не брав участі у рецензуванні та прийнятті рішення щодо публікації цієї статті
DOI:
https://doi.org/10.17721/AIT.2024.1.07Ключові слова:
патерни проєктування, адаптивна поведінка, оброблення подій, автономні системи.Анотація
В с т у п . Адаптивна поведінка сучасних програмних систем стає ключовим чинником їх успішного функціонування в умовах зовнішніх і внутрішніх дестабілізуючих факторів. Програми, які працюють із критичними даними або виконують важливі операції, повинні забезпечувати безперервність роботи, незважаючи на збої, атаки чи помилки. Для досягнення цієї мети пропонують різні підходи. Одним із них є застосування патернів проєктування, які дозволяють забезпечити надійність та адаптивність системи. У цій статті представлено патерн “Manager-Dispatcher”, який поєднує властивості патернів “Publish-Subscribe” та “Strategy” для забезпечення адаптивної поведінки програмних систем за рахунок оброблення подій. М е т о д и . Для розроблення патерну “Manager-Dispatcher” використано методи модульного проєктування та динаміч- ного оброблення подій. Патерн передбачає автоматичний вибір стратегії функціонування модуля на основі подій, що відбуваються у системі. Проведено теоретичний аналіз існуючих підходів до адаптації поведінки системи і на основі цього розроблено новий патерн, який дозволяє динамічно змінювати стратегії роботи модулів у відповідь на змінні умови середовища, які визначаються подіями у системі. Розглянуто кілька гіпотетичних сценаріїв застосування для ілюстрації роботи патерну. Розроблено й описано приклад програмної системи із застосуванням патерну. Р е з у л ь т а т и . Розроблений патерн “Manager-Dispatcher” дозволяє програмним модулям автоматично адаптувати стратегії функціонування на основі подій у системі. Основні переваги патерну включають модульність, розширюваність та адаптивність поведінки. Патерн може бути корисним у вбудованих системах, системах реального часу й інтерактивних інтерфейсах, де важливо забезпечити швидку та гнучку реакцію на події. В и с н о в к и . Патерн “Manager-Dispatcher” пропонує перспективний підхід до проєктування адаптивних програмних систем, орієнтованих на події. Завдяки можливості динамічної зміни стратегій функціонування, патерн забезпечує високий рівень гнучкості в умовах динамічних змін. У подальших дослідженнях планується вдосконалення патерну та розроблення інструментів для його полегшеного впровадження і тестування. Запропонований підхід сприяє побудові модульних та адаптивних систем, здатних забезпечувати стабільне функціонування навіть у складних умовах.Завантажити
Посилання
Bruns, R., & Dunkel, J. (2013). Towards pattern-based architectures for event processing systems. In R. Buyya, N. Horspool, A. Wellings (Eds.), Software: Practice and Experience, 44(11), 1395–1416. https://doi.org/10.1002/spe.2204
Buschmann, F., Sommerlad, P., Stal, M., Rohnert, H., & Meunier, R. (1996). Pattern-Oriented software architecture volume 1. A system of patterns. Wiley. Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1995). Design patterns: Elements of reusable object oriented software. Addison-Wesley.
Mannava, V., & Ramesh, T. (2011). A Novel Event Based Autonomic Design Pattern for Management of Webservices. In D. C. Wyld, M. Wozniak, N. Chaki,N. Meghanathan, D. Nagamalai (Eds.) Advances in Computing and Information Technology. Communications in Computer and Information Science. 198 (pp. 142–151). Springer. https://doi.org/10.1007/978-3-642-22555-0_16
Mannava, V., & Ramesh, T. (2012). A novel adaptive re-configuration compliance design pattern for autonomic computing systems. In E. P. Sumesh (Ed.).Procedia Engineering, 30, 1129–1137. https://doi.org/10.1016/j.proeng.2012.01.972
Moroz, M. (2024). An example of using the “Manager-Dispatcher” pattern [in Ukrainian]. https://github.com/mr-holodok/director-dispatcher-pattern-example
Ramirez, A. J. (2008). Design patterns for developing dynamically adaptive systems [Master’s thesis]. Michigan State University. https://doi.org/doi:10.25335/ttfn-qx40
Ramirez, A. J., & Cheng, B. H. C. (2010). Design patterns for developing dynamically adaptive systems. In the 2010 ICSE workshop on Software Engineeringfor Adaptive and Self-Managing Systems (pp. 49–58). ACM Press. https://doi.org/10.1145/1808984.1808990
Завантаження
Опубліковано
Номер
Розділ
Ліцензія
Авторське право (c) 2025 Сучасні інформаційні технології
Ця робота ліцензується відповідно до ліцензії Creative Commons Attribution 4.0 International License.