АНАЛІЗ ФАКТОРІВ ВПЛИВУ НА АРХІТЕКТУРИ ПРОГРАМНИХ СИСТЕМ

Автор(и)

DOI:

https://doi.org/10.32782/IT/2022-1-7

Ключові слова:

фактори впливу, програмні системи, архітектура.

Анотація

У статті авторами досліджено існуючі підходи та рекомендації для побудови архітектур програмного забезпечення. Створення нового програмного продукту це завжди ризик. Обрання правильної архітектури є суттєвим кроком до успіху. Проаналізовано процес розробки, побудови та змін в архітектурі існуючого програмного комплексу. Виявлено зовнішні чинники, які впливали на процес розробки. Ними виявилися наступні: постійні зміни функціональних і нефункціональних вимог до розроблюваної системи; архітектурні тренди, які існували на момент проектування первинної архітектури; зміни фінансових умов розгортання та подальшої підтримки; зміна суб’єкта відповідальності за подальшу розробку системи. Було проведено аналіз деяких існуючих на сьогоднішній день досліджень у сфері програмних архітектур. З цього можемо зробити висновок про те, що дана сфера є досить широкою, а також є актуальним предметом для проведення наукових досліджень. Деякі дослідження вивчають економічні аспекти та корпоративні архітектури, причини архітектурних змін на пізніх фазах розробки або способи оцінки їх впливу на системну архітектуру. Кожен раз протягом усього процесу розробки програмного забезпечення існує низка факторів, які впливають на неї і, зокрема, призводять до прийняття певних архітектурних рішень. Розділимо умовно дані чинники на дві категорії: внутрішні та зовнішні. Провівши аналіз специфіки реалізації архітектур на основі конкретного прикладу довготривалої розробки, визначимо, що конкретна реалізація кожного з виду архітектур є досить масштабним та кропітким процесом, який вимагає ретельного планування та попереднього аналізу. Архітектурні помилки та фактори, що не були взяті до уваги або були недооцінені, можуть призвести до нівелювання попереднього прогресу або значної переробки існуючої системи. Це призводить до значного збільшення загальної вартості розроблюваної системи.

Посилання

System Architecture. URL: https://rubygarage.org/blog/monolith-soa-microservices-serverless (дата звернення: 01.11.2021).

Monolithic architecture definition. URL: https://whatis.techtarget.com/definition/monolithic-architecture (дата звернення 16.11.2021).

GitHub: ZSTU-App. URL: https://github.com/unsinedz/ZSTU-App (дата звернення: 05.11.2021).

What is SOA. URL: https://www.ibm.com/cloud/learn/soa (дата звернення: 05.11.2021).

GitHub: ScheduleManager. URL: https://github.com/unsinedz/ScheduleManager (дата звернення: 05.11.2021).

Horizontal vs Vertical scaling. URL: https://touchstonesecurity.com/horizontal-vs-vertical-scaling-whatyou- need-to-know (дата звернення: 05.11.2021).

Database normalization basics. URL: https://docs.microsoft.com/en-us/office/troubleshoot/access/ database-normalization-description (дата звернення: 14.11.2021).

An overview of sharding and partitioning. URL: https://hazelcast.com/glossary/sharding (дата звернення 14.11.2021).

GitHub: Zhytomyr-polytechnic. URL: https://github.com/unsinedz/zhytomyr-polytechnic/tree/develop (дата звернення: 14.11.2021).

What is the CAP theorem. URL: https://www.ibm.com/cloud/learn/cap-theorem (дата звернення: 05.11.2021).

Nick Rozanski, Eóin Woods. Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives. Addison-Wesley, 2011, 704 p. URL: https://books.google.com/books?id=ka4QO9kXQFUC (дата звернення: 19.11.2021).

Eoin Woods. Top 10 Architecture Mistakes, 2008. 42 p. URL: http://jaoo.dk/dl/jaoo-aarhus-2008/slides/ EoinWoodsTop10Mistakes.pdf (дата звернення: 19.11.2021).

Byron J. Williams, Jeffrey C. Carver. Characterizing software architecture changes: a systematic review. Information and Software Technology.Volume 52, Issue 1, January 2010, Pages 31-51. https://doi. org/10.1016/j.infsof.2009.07.002

Jianjun Zhao, Hongji Yang, Baowen Xu. Change impact analysis to support architectural evolution. Journal of Software Maintenance and Evolution Research and Practice, Vol. 14(5), 2002. Pp. 317-333. DOI: 10.1002/smr.258

##submission.downloads##

Опубліковано

2022-09-08