Uniwersytet Marii Curie-Skłodowskiej w Lublinie - Centralny System Uwierzytelniania
Strona główna

Współczesne techniki wytwarzania oprogramowania

Informacje ogólne

Kod przedmiotu: MFI-I.4Z.127
Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Współczesne techniki wytwarzania oprogramowania
Jednostka: Instytut Informatyki
Grupy:
Punkty ECTS i inne: 0 LUB 5.00 (w zależności od programu) Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: polski
Wymagania wstępne:

Umiejętność programowania obiektowego w jednym z języków wysokopoziomowych.

Przedmioty wprowadzające:

- Programowanie obiektowe

- Inżynieria oprogramowania.

Godzinowe ekwiwalenty punktów ECTS:

• Czas pracy z udziałem nauczycieli: 60 godzin - 2,5 punktu


• Zadania utrwalające: 40 godzin - 1,5 punktu


• Przygotowanie do egzaminu: 25 godzin - 1 punkt


Łączna suma punktów: 5

Sposób weryfikacji efektów kształcenia:

Warunkiem zaliczenia przedmiotu jest udział studenta w przewidzianych planem studiów zajęciach dydaktycznych oraz uzyskanie pozytywnych ocen z prac objętych tymi zajęciami.


1. Zaliczenie laboratorium (max 110 pkt).


a) aktywność w trakcie zajęć (10 pkt).


b) sprawdziany pisemne (2x50 pkt).


Próg zaliczenia: pow. 50% punktów.


(W1, W2, W3, W4, W5; U1, U2, U3, U4; K1)


2. Egzamin pisemny (max 50 pkt)


Próg zaliczenia: pow. 50% punktów


(W1, W2; U1, U2, U3, U4)

Pełny opis:

Celem wykładu jest zapoznanie studentów z etapami procesu wytwarzania oprogramowania oraz zasadami projektowania oprogramowania zgodnie z metodyką obiektową. Szkieletem przedmiotu jest metodyka Agile i wszystkie aspekty z nią związane, jednak tematyka sięga również do innych przestrzeni związanych z aktualnymi trendami w wytwarzaniu oprogramowania. Drugim, równoległym nurtem jest przypomnienie podstaw i rozszerzenie tematyki wzorców projektowych oraz ich rola i zastosowanie w ramach współczesnych technik wytwarzania oprogramowania.

Zakres treści:

1. SOLID. Wzorce: Strategia, Fabryka, Adapter.

2. Domain Driven Design

3. Behavior Driven Development. Wzorce: Budowniczy. Komenda.

4. Test Driven Development

5. Agile. Wzorce: Kompozyt. Dekorator. Wizytator.

6. Czysty kod. Testy jednostkowe.

7. Webserwisy.

8. Mikroserwisy.

9. Continuous Integration. Wzorce: Fasada. Stan.

10. Synchroniczność. Asynchroniczność. AJAX. Callbacks.

11. Zdarzenia. Wzorce: Obserwator. Event Bus. Event Broker.

12. Event Sourcing. Event Storming.

13. Wirtualizacja. Orkiestracja. Wzorce: Łańcuch zobowiązań. Mediator.

Celem laboratoriów jest zapoznanie i utrwalenie umiejętności związanych z zastosowaniem wzorców projektowych, TDD, DDD, BDD, webserwisami, mikroserwisami, zapytaniami asynchronicznymi, architekturą opartą o zdarzenia oraz z Event Stormingiem.

Literatura:

Zwinne wytwarzanie oprogramowania. Najlepsze zasady, wzorce i praktyki. Robert C. Martin

Head First Design Patterns by Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra

Materiały firmy Bottega (http://bottega.com.pl/)

Strategy Design Pattern by Derek Banas

https://sourcemaking.com/design_patterns/

Efekty uczenia się:

Wiedza

W1 - zna zaawansowane wzorce projektowe i ma wiedzę na tematy związane z zaawansowanymi aspektami języków programowania wysokiego poziomu (K_W01, K_W08)

W2 - zna rolę uczenia maszynowego, bazy danych wielu rodzajów, a także ma wiedzę na temat zarządzania i inżynierii danych (K_W03, K_W09)

W3 - ma rozszerzoną wiedzę w zakresie wydajności i skalowalności oprogramowania, testów performance'owych (K_W04, K_W09)

W4 - ma rozszerzoną wiedzę w zakresie budowania projektów, CI i CD (K_W04, K_W09)

W5 - ma rozszerzoną wiedzę na temat komunikacji między modułami i systemami na różnych poziomach (m.in. na tematy webserwisów, mikroserwisów) oraz o konsekwencjach zastosowania wybranych rozwiązań (zaletach i wadach) (K_W04, K_W09)

Umiejętności

U1 - potrafi zaprojektować i zamodelować architekturę zaawansowanego systemu (K_U01, K_U04)

U2 - potrafi zaimplementować działającą funkcjonalność wytwarzanego systemu z zastosowaniem zaawansowanych technik (K_U01, K_U04)

U3 - ma umiejętność zaprojektowania planu budowania, tworzenia i testowania zaawansowanych systemów (K_U01, K_U04)

U4 - potrafi identyfikować i dobierać właściwe dla tworzonego systemu wzorce projektowe (K_U01, K_U04)

Kompetencje społeczne

K1 - jest gotów do krytycznej oceny własnej wiedzy, rozumie potrzebę dalszego pogłębienia i unowocześniania wiedzy ze świadomością rozległości tematów (K_K01, K_K02, K_K06)

Zajęcia w cyklu "Semestr zimowy 2022/2023" (zakończony)

Okres: 2022-10-01 - 2023-02-01
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Adam Kobus
Prowadzący grup: Adam Kobus
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę

Zajęcia w cyklu "Semestr zimowy 2023/2024" (zakończony)

Okres: 2023-10-01 - 2024-02-04
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Adam Kobus
Prowadzący grup: Adam Kobus
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Marii Curie-Skłodowskiej w Lublinie.
kontakt deklaracja dostępności USOSweb 7.0.3.0-cf0b884f2 (2024-04-02)