Розподілена вебсистема для обліку професійних навичок - Єріс Євген (My University, 2023)
У ході виконання роботи було розроблено застосунок для ведення обліку професійних навичок користувача. Він дозволяє створювати уміння, додавати їх до власного публічного профілю, оцінювати знання інших користувачів. Для розробки були досліджені й використані підходи проєктування мікросервісних систем. При плануванні організації системи було створено окремі сервіси для реалізації функцій системи, що не є тісно пов’язаними між собою. Це вилилося у розробку трьох REST API : SkillApp, який пропонує засоби для роботи з навичками та публічними даними користувачів; Identity – забезпечує token-based автентифікацію, реєстрацію користувачів і зберігання даних для входу; CVGenerator, призначений для генерування резюме користувачів на базі збережених шаблонів. Реалізація згаданих вище компонентів системи передбачила розробку окремої БД для кожного сервісу для зберігання призначених йому даних. Сервіси SkillApp і Identity покладаються на реляційне сховище даних SQL Server, коли CVGenerator використовує NoSQL MongoDB. Сервіс SkillApp, як основний носій бізнес-логіки системи, створений розширюваним і підтримуваним. Його розробка базувалась на створенні моделі домену предметної області із застосуванням шаблону «Специфікація». На рівні бізнес-логіки забезпечено розділення операцій читання й запису, згідно CQRS. Слідуючи принципам архітектури портів і адаптерів, далі був створений адаптер для сховища даних та презентаційний рівень у вигляді API. Ключові слова : професійнійний розвиток, мікросервіси, вебсистема, паттерн проєктування, .NET, ANGULAR.