Sztuka wytwarzania oprogramowania (SWO) 2024Z

Przedmiot omawia metody wytwarzania i utrzymania oprogramowania, w tym wzorce projektowe. Nacisk położony jest na pracę projektanta kodu i programisty, ukazując kodowanie i testowanie jako element większej całości.

Zespół SWO24Z na MS Teams PW

Wykłady

Wykłady będą odbywały w sali 170 w poniedziałki w godzinach 10:15 - 12:00. Nie jest wymagana obecność na wykładzie i nie będzie ona sprawdzana.

Poniżej jest lista poszczególnych wykładów oraz materiały pomocnicze (slajdy i inne). Slajdy z wykładów w semestrze 2023Z są dostępne tutaj (7MB)

  1. (7 X, Nowak) Organizacja przedmiotu, potok wytwarzania oprogramowania, narzędzia. Programowanie obiektowe, kompozycja, dziedziczenie, slajdy (pdf).
  2. (14 X, Grochowski) Standardy kodowania, SOLID, slajdy (pdf).
  3. (21 X)
  4. (28 X, Nowak) Obiektowe wzorce projektowe cz. 1, slajdy (pdf), kod (zip).
  5. (4 XI, Nowak) Obiektowe wzorce projektowe cz. 2, slajdy (pdf), kod (zip).
  6. (14 XI, Grochowski) Cykl wytwarzania oprogramowania, od wymagań po utrzymanie, slajdy wykładowe (pdf), dokument ESA dotyczący oprogramowania (pdf).
  7. (18 XI, Grochowski) Cykl wytwarzania oprogramowania, od wymagań po utrzymanie, slajdy wykładowe (pdf), przykład kodu (bz2), slajdy wykładowe dodatkowe (pdf), .
  8. (25 XI) Kolokwium nr 1,
  9. (2 XII, Nowak) Współbieżne wzorce projektowe (1), slajdy wykładowe (pdf), kod (zip).
  10. (9 XII, Grochowski) Ocena jakości kodu i testów, analiza statyczna kodu, metryki, slajdy wykładowe (pdf), kod (bz2).
  11. (16 XII, Grochowski) Monitorowanie i analiza aplikacji slajdy wykładowe (pdf).
  12. (8 I, Nowak) Współbieżne wzorce projektowe (2),
  13. (13 I, Grochowski) Refaktoring, praca z kodem zastanym
  14. (20 I) Kolokwium nr 2,
  15. (27 I, Nowak) Zasoby internetowe, standardy języków programowania

Laboratoria

Laboratoria odbywają się w zespołach 2 osobowych w sali 011, we wtorki w godzinach 8:15 -- 12:00 lub 12:15 -- 16:00. Każde labortorium trwa 4 godziny.

  1. (mgr inż. Witold Wysota) Edytor, repozytorium git, praca w parach, rewizja kodu.
  2. (mgr inż. Konrad Grochowski) Zestawienie potoku CI/CD, testy, walidacje.
  3. (dr inż. Michał Chwesiuk) Monitorowanie aplikacji, debuggowanie, profilowanie.
  4. (mgr inż. Katarzyna Nałęcz-Charkiewicz) Praca z kodem zastanym, refaktoring.
GrupaLaboratorium 1Laboratorium 2Laboratorium 3Laboratorium 4
Grupa 101 (N)5 XI 8-12 19 XI 8-12 17 XII 8-12 7 I 8-12
Grupa 102 (P)29 X 8-12 26 XI 8-12 10 XII 8-12 14 I 8-12

Zaliczenie Przedmiot jest zaliczany na podstawie wyników sprawdzianów, przeprowadzanych podczas wykładów ( punktacja 0 - 20pkt.) i wyników ćwiczeń laboratoryjnych (punktacja 0 - 20 pkt.). Ocena końcowa jest określana na podstawie łącznej liczby punktów zgodnie z poniższą tabelą.
liczba punktówocena
37 - 40 pktpięć
33 - 36 pktcztery i pół
29 - 32 pktcztery
25 - 28 pkttrzy i pół
21 - 24 pkttrzy
0 - 20 pktdwa
Do zaliczenia przedmiotu konieczne jest uzyskanie min. 10 pkt z laboratorium.

Bieżące oceny cząstkowe są uzupełniane na serwerze USOS

Konsultacje i kontakt z prowadzącymi

Patrz Baza Wiedzy Politechniki Warszawskiej

Przydatne materiały

Narzędzia (lista)

Literatura

  • Andrew Hunt, David Thomas. Pragmatyczny programista. Od czeladnika do mistrza. Helion 2014
  • Robert C. Martin. Czysty kod. Podręcznik dobrego programisty. Helion 2010
  • Robert C. Martin. Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów. Helion 2013
  • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Wzorce projektowe. Helion 2010
  • Martin Fowler. Refaktoryzacja. Ulepszanie struktury istniejącego kodu. Helion 2011