Integracja Systemów Informatycznych - wykład

  • Obecność na wykładzie nie jest obowiązkowa.

  • Kolokwium zaliczeniowe na ostatnim wykładzie (23.06.2026), do zdobycia jest 20 punktów (80% punktów oceny końcowej).

  • Ocena z projektu (20% punktów oceny końcowej) - pozytywna ocena zaokrąglana w dół.

  • Końcowa ocena jest ustalana na podstawie sumy punktów z kolokwium i projektu oraz poniższej tabeli:

    Punkty 13-15 16-18 19-21 22-23 24-25
    Ocena dst dst+ db db+ bdb

Literatura

  • Simon Brown, Software architecture for developers
  • Sam Newman, Budowanie mikrousług
  • Kent Beck, Test-Driven Development by Example
  • Ben Stopford, Designing Event-Driven Systems
  • Susan Fowler, Mikrousługi : wdrażanie i standaryzacja systemów w organizacji inżynierskiej
  • Kevin Howard Goldberg, XML: przewodnik po świecie XML.
  • Bruce Morgan, Mikroserwisy w akcji
  • Matjaz B. Juric, Business process driven SOA using BPMN and BPEL.
  • Kasun Indrasiri, Prabath Siriwardena, Microservices for the Enterprise: Designing, Developing, and Deploying
  • Thomas Hunter, Advanced Microservices: A Hands-On Approach to Microservice Infrastructure and Tooling
  • Sanjay Patni, Pro RESTful APIs: Design, Build and Integrate with REST, JSON, XML and JAX-RS

Integracja Systemów Informatycznych - projekt

W ramach zajęć studenci realizują projekt informatyczny o dowolnej tematyce oraz w dowolnie wybranej technologii.

Wymagania projektowe

Projekt powinien spełniać następujące wymagania:

  • Zaprojektowanie i implementacja rozproszonego systemu informatycznego, którego moduły komunikują się ze sobą za pomocą zaprojektowanego API.
  • Zamodelowanie procesów biznesowych związanych z planowaną integracją systemów przy użyciu wybranej notacji modelowania procesów.
  • Zaprojektowanie systemu w taki sposób, aby konieczne było rozróżnienie co najmniej trzech ról użytkowników.
  • Opracowanie architektury systemu w notacji C4 (na poziomie Context oraz Container).
  • Integracja systemu z co najmniej dwiema usługami zewnętrznymi (np. PayU lub inne API).
  • Implementacja komunikacji w stylu REST oraz przygotowanie specyfikacji OpenAPI dla wszystkich udostępnianych endpointów.
  • Implementacja walidacji danych wejściowych po stronie backendu z wykorzystaniem:
    • XML i XML Schema, lub
    • JSON i JSON Schema.
  • Wykorzystanie kolejek komunikatów (np. RabbitMQ lub równoważne rozwiązanie).
  • Implementacja dwóch niezależnych procesów integracyjnych z wykorzystaniem mechanizmów:
    • choreografii,
    • orkiestracji.

Organizacja pracy projektowej

  • Temat projektu jest unikatowy dla każdej grupy projektowej.
  • Grupy projektowe składają się z 3–4 osób.
  • Podczas każdych zajęć (z wyjątkiem pierwszych) zespoły prezentują postęp prac nad projektem.

Zasady oceniania

  • Na każdych zajęciach (z wyjątkiem pierwszych) można uzyskać od 0 do 10 punktów za postęp prac projektowych.
  • Warunkiem koniecznym zaliczenia przedmiotu jest przygotowanie działającego projektu.
  • Samo uzyskanie wymaganej liczby punktów za kolejne etapy projektu nie jest wystarczające, jeżeli projekt końcowy nie jest funkcjonalny.
  • Końcowa ocena jest ustalana na podstawie poniższej tabeli:
    Punkty 71-84 85-98 99-112 113-126 127-140
    Ocena dst dst+ db db+ bdb

Obecność na zajęciach

  • Dopuszczalne są dwie nieusprawiedliwione nieobecności.
  • Każda kolejna nieobecność skutkuje obniżeniem oceny końcowej o 0.5.

Harmonogram prac (ogólny i przykładowy)

  1. Zajęcia organizacyjne.
  2. Prezentacja wybranego tematu, analiza tematu, dyskusja.
  3. Identyfikacja podstawowych procesów. Modelowanie procesów integracyjnych w BPMN.
  4. Identyfikacja wykorzystywanych struktur wymiany danych, standardów oraz protokołów. Architektura systemu.
  5. Prace implementacyjne.
  6. Prace implementacyjne.
  7. Prace implementacyjne.
  8. Prace implementacyjne.
  9. Prace implementacyjne.
  10. Prace implementacyjne.
  11. Prace implementacyjne.
  12. Prace implementacyjne.
  13. Prace implementacyjne.
  14. Prace implementacyjne.
  15. Prace implementacyjne.