(ДВ3) Архітектура програмного забезпечення (са)
Тип: На вибір студента
Кафедра: прикладної математики
Навчальний план
| Семестр | Кредити | Звітність |
| 6 | 5 | Залік |
Лекції
| Семестр | К-сть годин | Лектор | Група(и) |
| 6 | 32 | Шунькін Ю. В. | ПМа-31, ПМа-32 |
Лабораторні
| Семестр | К-сть годин | Група | Викладач(і) |
| 6 | 32 | ПМа-31 | Шунькін Ю. В. |
| ПМа-32 | Шунькін Ю. В. |
Опис курсу
Дисципліна розроблена для того, щоб забезпечити студентів всебічними знаннями та навичками, необхідними для проектування складних програмних систем. Курс зосереджений на вивченні сучасних методів і технологій проектування архітектури програмного забезпечення, а також практичних аспектів втілення цих методів у професійній діяльності. Студенти досліджують різні архітектурні стилі, патерни проектування та підходи до створення масштабованих та ефективних систем. Окрім теоретичної бази, курс надає можливість практичного застосування здобутих знань через розробку проектів і роботу з передовими інстр
Мета: Поглибити знання студентів у галузі архітектури програмного забезпечення, надати їм інструменти та методології для проектування ефективних та масштабованих програмних систем.
Цілі: Ознайомити студентів з фундаментальними принципами і підходами до створення архітектури програмного забезпечення. Надати знання про сучасні архітектурні стилі, патерни проектування та технології, які використовуються у професійній практиці. Розвинути у студентів навички аналізу, проектування та оцінки програмних систем.ументами і платформами.
В результаті вивчення даного курсу студент повинен
знати:
- основні архітектурні стилі та патерни в програмному забезпеченні
- методології та підходи до проектування програмного забезпечення, включаючи Domain-Driven Design
- методологію та технологію збору основних вимог до програмного забезпечення та методи їх аналізу
- принципи та практики, що стосуються забезпечення якості програмного забезпечення та тестування
- сучасні технології та інструменти для реалізації архітектурних рішень, включаючи використання облачних платформ як AWS, Azure, та GCP
- теорію та практику інтеграції та взаємодії компонентів програмної системи
вміти:
- розробляти стійкі та масштабовані архітектури програмного забезпечення, які відповідають вимогам бізнесу
- застосовувати сучасні методології проектування та архітектурні стилі для розв’язання практичних задач
- оцінювати та оптимізувати архітектуру існуючих систем з метою підвищення їх ефективності та надійності
- проектувати компоненти архітектурного рішення
- використовувати інструментальні засоби для моделювання, проектування та документування програмного забезпечення
- критично оцінювати різні архітектурні рішення та обирати оптимальні підходи для конкретних бізнес-задач
вести документацію проекту та забезпечувати її актуальність та відповідність стандартам якості. результаті вивчення даного курсу студент повинен.
Рекомендована література
Базова:
- Martin R.C. Clean Architecture: A Craftsman’s Guide to Software Structure and Design. Pearson, 2017. – 432 p.
- Clements P., Bachmann F., Bass L. Documenting Software Architectures: Views and Beyond (2nd Edition). Boston: Addison-Wesley Professional, 2010.
- Gomaa H. Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures. NY: Cambridge University Press, 2011. – 578 p.
- Gough J., Bryant D., Auburn M. Mastering API Architecture: Design, Operate, and Evolve API-Based Systems. O’Reilly Media; 1st edition, 2022. – 286 p.
- Evans E. Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston: Addison-Wesley Professional, 2003. – 560 p.
Інтернет ресурси:
- Software Architecture Guidehttps://martinfowler.com/architecture/
- AWS Architecture Centerhttps://aws.amazon.com/architecture/
- Microsoft Azure Architecture Centerhttps://docs.microsoft.com/en-us/azure/architecture/
Google Cloud Architecture Center https://cloud.google.com/architecture