Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)
specjalność: Inżynieria systemów wbudowanych

Sylabus przedmiotu Wytwarzanie oprogramowania:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Wytwarzanie oprogramowania
Specjalność Inżynieria oprogramowania
Jednostka prowadząca Katedra Inżynierii Oprogramowania i Cyberbezpieczeństwa
Nauczyciel odpowiedzialny Włodzimierz Wysocki <Wlodzimierz.Wysocki@zut.edu.pl>
Inni nauczyciele Maciej Poliwoda <Maciej.Poliwoda@zut.edu.pl>, Tomasz Wierciński <Tomasz.Wiercinski@zut.edu.pl>
ECTS (planowane) 4,0 ECTS (formy) 4,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW5 15 2,00,50zaliczenie
laboratoriaL5 30 2,00,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Inżynieria oprogramowania
W-2Programowanie 2
W-3Bazy danych

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Nabycie wiedzy i umiejętności z zakresu wybranych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Przygotowanie i konfiguracja środowiska i narzędzi wykorzystywanych na laboratoriach2
T-L-2Wzorce architektoniczne4
T-L-3Wzorce projektowe8
T-L-4Techniki i narzędzia refaktoryzacji2
T-L-5Realizacja projektu z wykorzystaniem metodyki XP14
30
wykłady
T-W-1Role, czynności i produkty wytwarzania oprogramowania1
T-W-2Wzorce architektoniczne1
T-W-3Wzorce projektowe2
T-W-4Techniki i narzędzia refaktoryzacji2
T-W-5Metodyka eXtreme Programming1
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development1
T-W-7Przeglądy i inspekcje oprogramowania1
T-W-8Klasyczne błędy i ich wpływ na proces tworzenia aplikacji - błędy wobec ludzi, procesu, produktu, technologii2
T-W-9Reguły efektywnego programowania i dokumentowania1
T-W-10Wzorce i narzędzia integracyjne1
T-W-11Wzorce architektoniczne – systemy rozproszone1
T-W-12Zaliczenie1
15

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Udział w zajęciach30
A-L-2Praca własna20
50
wykłady
A-W-1Udział w wykładach15
A-W-2Praca własna33
A-W-3Udział w konsultacjach2
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny połączony z metodą badania przypadków oraz komputerową demonstracją
M-2Ćwiczenia laboratoryjne
M-3Realizacja projektu

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena za ćwiczenia indywidualne
S-2Ocena formująca: Ocena za realizację i prezentację projektu
S-3Ocena podsumowująca: Ocena końcowa z laboratoriów jako średnia ważona z ćwiczeń indywidualnych oraz z realizacji i prezentacji projektu
S-4Ocena podsumowująca: Zaliczenie wykładów - kolokwium

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_D03.03_W01
Student zna główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
I_1A_W03, I_1A_W05C-1T-W-1, T-W-11, T-W-12, T-W-9, T-W-6, T-W-2, T-W-3, T-W-4, T-W-7, T-W-5, T-W-10, T-W-8M-1S-4

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_D03.03_U01
Student potrafi zastosować metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji zadań inżynierskich
I_1A_U05, I_1A_U06C-1T-L-1, T-L-3, T-L-2, T-L-5, T-L-4M-2, M-3S-1, S-2, S-3

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_D03.03_K01
Student potrafi pełnić różne role w procesie zespołowego wytwarzania oprogramowania
I_1A_K01C-1T-L-1, T-L-3, T-L-2, T-L-5, T-L-4, T-W-1, T-W-11, T-W-12, T-W-9, T-W-6, T-W-2, T-W-3, T-W-4, T-W-7, T-W-5, T-W-10, T-W-8M-1, M-2S-1, S-4, S-3

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_D03.03_W01
Student zna główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
2,0
3,0Student potrafi wymienić i pokrótce scharakteryzować wybrane główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
3,5Student potrafi wymienić i szczegółowo scharakteryzować wybrane główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
4,0Student potrafi wymienić i pokrótce scharakteryzować większość głównych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
4,5Student potrafi wymienić i szczegółowo scharakteryzować większość głównych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
5,0Student potrafi wymienić i szczegółowo scharakteryzować wszystkie główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania; potrafi wskazać szczegółowe ich zalety i wady oraz możliwości zastosowania

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_D03.03_U01
Student potrafi zastosować metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji zadań inżynierskich
2,0
3,0Student potrafi zastosować kilka wybranych reguł, techniki i praktyk oraz jedno narzędzie wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg wybranej metodyki
3,5Student potrafi zastosować wybrane reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg kilku metodyk
4,0Student potrafi zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg kilku metodyk
4,5Student potrafi zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji zadań inżynierskich o średnim poziomie złożoności wg kilku metodyk
5,0Student potrafi dobrać i zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji zadań inżynierskich o średnim poziomie złożoności wg kilku metodyk

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_D03.03_K01
Student potrafi pełnić różne role w procesie zespołowego wytwarzania oprogramowania
2,0
3,0Student potrafi pełnić dwie role w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
3,5Student potrafi pełnić większość ról w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
4,0Student potrafi pełnić wszystkie główne role w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
4,5Student potrafi pełnić wszystkie główne role w procesie zespołowego wytwarzania oprogramowania o średnim poziomie złożoności
5,0Student wykazuje się wysokim poziomem kreatywności w pełnieniu wszystkich głównych ról w procesie zespołowego wytwarzania oprogramowania o średnim poziomie złożoności

Literatura podstawowa

  1. Pressman R.S., Software Engineering: A Practitioner's Approach, McGraw-Hill Education, 2014, 8
  2. Bass L., Clements P., Kazman R., Architektura oprogramowania w praktyce, Helion, Gliwice, 2011, II
  3. Wirfs-Brock R., McKean A., Projektowanie obiektowe. Role, odpowiedzialność i współpraca, Helion, 2005
  4. Freeman E., Bates B., Sierra K., Robson E., Wzorce projektowe. Rusz głową!, Helion, 2010
  5. Erl T., SOA. Koncepcje, technologie i projektowanie, Helion, 2014
  6. Bloch J., Java. Efektywne programowanie, Helion, 2009, II
  7. Patton R., Testowanie oprogramowania, Mikom, 2002

Literatura dodatkowa

  1. Fowler M., Beck K., Brant J., Opdyke W., Roberts D., Gamma E., Refaktoryzacja. Ulepszanie struktury istniejącego kodu, Helion, 2011
  2. Beck K., Wzorce implementacyjne, Helion, 2014
  3. Martin R.C., Clean Architecture: A Craftsman's Guide to Software Structure and Design, Prentice-Hall, 2017
  4. Martin R. C., Czysty kod. Podręcznik dobrego programisty, Helion, 2010
  5. Mitchell R., McKim J., Design by Contract, by Example, Addison-Wesley, 2001

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Przygotowanie i konfiguracja środowiska i narzędzi wykorzystywanych na laboratoriach2
T-L-2Wzorce architektoniczne4
T-L-3Wzorce projektowe8
T-L-4Techniki i narzędzia refaktoryzacji2
T-L-5Realizacja projektu z wykorzystaniem metodyki XP14
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Role, czynności i produkty wytwarzania oprogramowania1
T-W-2Wzorce architektoniczne1
T-W-3Wzorce projektowe2
T-W-4Techniki i narzędzia refaktoryzacji2
T-W-5Metodyka eXtreme Programming1
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development1
T-W-7Przeglądy i inspekcje oprogramowania1
T-W-8Klasyczne błędy i ich wpływ na proces tworzenia aplikacji - błędy wobec ludzi, procesu, produktu, technologii2
T-W-9Reguły efektywnego programowania i dokumentowania1
T-W-10Wzorce i narzędzia integracyjne1
T-W-11Wzorce architektoniczne – systemy rozproszone1
T-W-12Zaliczenie1
15

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Udział w zajęciach30
A-L-2Praca własna20
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Udział w wykładach15
A-W-2Praca własna33
A-W-3Udział w konsultacjach2
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_D03.03_W01Student zna główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W03Ma szczegółową wiedzę w zakresie wybranych specjalności informatyki technicznej.
I_1A_W05Ma wiedzę o nowoczesnych metodach projektowania, analizowania, wytwarzania, testowania oprogramowania oraz rozwiązywania wybranych zadań inżynierskich obejmujących w szczególności narzędzia wspomagające wytwarzanie oprogramowania na różnych etapach powstawania, eksploatacji i rozwoju systemów informatycznych.
Cel przedmiotuC-1Nabycie wiedzy i umiejętności z zakresu wybranych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
Treści programoweT-W-1Role, czynności i produkty wytwarzania oprogramowania
T-W-11Wzorce architektoniczne – systemy rozproszone
T-W-12Zaliczenie
T-W-9Reguły efektywnego programowania i dokumentowania
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development
T-W-2Wzorce architektoniczne
T-W-3Wzorce projektowe
T-W-4Techniki i narzędzia refaktoryzacji
T-W-7Przeglądy i inspekcje oprogramowania
T-W-5Metodyka eXtreme Programming
T-W-10Wzorce i narzędzia integracyjne
T-W-8Klasyczne błędy i ich wpływ na proces tworzenia aplikacji - błędy wobec ludzi, procesu, produktu, technologii
Metody nauczaniaM-1Wykład informacyjny połączony z metodą badania przypadków oraz komputerową demonstracją
Sposób ocenyS-4Ocena podsumowująca: Zaliczenie wykładów - kolokwium
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi wymienić i pokrótce scharakteryzować wybrane główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
3,5Student potrafi wymienić i szczegółowo scharakteryzować wybrane główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
4,0Student potrafi wymienić i pokrótce scharakteryzować większość głównych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
4,5Student potrafi wymienić i szczegółowo scharakteryzować większość głównych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
5,0Student potrafi wymienić i szczegółowo scharakteryzować wszystkie główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania; potrafi wskazać szczegółowe ich zalety i wady oraz możliwości zastosowania
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_D03.03_U01Student potrafi zastosować metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji zadań inżynierskich
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U05Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny wydajności, złożoności, efektywności systemów informatycznych i ich składowych.
I_1A_U06Potrafi pozyskiwać, przesyłać, przetwarzać dane, podsumowywać wyniki eksperymentów empirycznych, dokonywać interpretacji uzyskanych wyników i formułować wynikające z nich wnioski.
Cel przedmiotuC-1Nabycie wiedzy i umiejętności z zakresu wybranych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
Treści programoweT-L-1Przygotowanie i konfiguracja środowiska i narzędzi wykorzystywanych na laboratoriach
T-L-3Wzorce projektowe
T-L-2Wzorce architektoniczne
T-L-5Realizacja projektu z wykorzystaniem metodyki XP
T-L-4Techniki i narzędzia refaktoryzacji
Metody nauczaniaM-2Ćwiczenia laboratoryjne
M-3Realizacja projektu
Sposób ocenyS-1Ocena formująca: Ocena za ćwiczenia indywidualne
S-2Ocena formująca: Ocena za realizację i prezentację projektu
S-3Ocena podsumowująca: Ocena końcowa z laboratoriów jako średnia ważona z ćwiczeń indywidualnych oraz z realizacji i prezentacji projektu
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi zastosować kilka wybranych reguł, techniki i praktyk oraz jedno narzędzie wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg wybranej metodyki
3,5Student potrafi zastosować wybrane reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg kilku metodyk
4,0Student potrafi zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji prostych zadań inżynierskich wg kilku metodyk
4,5Student potrafi zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji zadań inżynierskich o średnim poziomie złożoności wg kilku metodyk
5,0Student potrafi dobrać i zastosować większość głównych reguł, technik, praktyk i narzędzi wytwarzania oprogramowania w realizacji zadań inżynierskich o średnim poziomie złożoności wg kilku metodyk
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_D03.03_K01Student potrafi pełnić różne role w procesie zespołowego wytwarzania oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_K01Jest gotów do krytycznej oceny posiadanej wiedzy oraz ma świadomość jej znaczenia w procesie rozwiązywania szeregu problemów inżynierskich i technicznych w dziedzinie informatyki.
Cel przedmiotuC-1Nabycie wiedzy i umiejętności z zakresu wybranych metodyk, reguł, technik, praktyk i narzędzi wytwarzania oprogramowania
Treści programoweT-L-1Przygotowanie i konfiguracja środowiska i narzędzi wykorzystywanych na laboratoriach
T-L-3Wzorce projektowe
T-L-2Wzorce architektoniczne
T-L-5Realizacja projektu z wykorzystaniem metodyki XP
T-L-4Techniki i narzędzia refaktoryzacji
T-W-1Role, czynności i produkty wytwarzania oprogramowania
T-W-11Wzorce architektoniczne – systemy rozproszone
T-W-12Zaliczenie
T-W-9Reguły efektywnego programowania i dokumentowania
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development
T-W-2Wzorce architektoniczne
T-W-3Wzorce projektowe
T-W-4Techniki i narzędzia refaktoryzacji
T-W-7Przeglądy i inspekcje oprogramowania
T-W-5Metodyka eXtreme Programming
T-W-10Wzorce i narzędzia integracyjne
T-W-8Klasyczne błędy i ich wpływ na proces tworzenia aplikacji - błędy wobec ludzi, procesu, produktu, technologii
Metody nauczaniaM-1Wykład informacyjny połączony z metodą badania przypadków oraz komputerową demonstracją
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena za ćwiczenia indywidualne
S-4Ocena podsumowująca: Zaliczenie wykładów - kolokwium
S-3Ocena podsumowująca: Ocena końcowa z laboratoriów jako średnia ważona z ćwiczeń indywidualnych oraz z realizacji i prezentacji projektu
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi pełnić dwie role w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
3,5Student potrafi pełnić większość ról w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
4,0Student potrafi pełnić wszystkie główne role w procesie zespołowego wytwarzania oprogramowania o niskim poziomie złożoności
4,5Student potrafi pełnić wszystkie główne role w procesie zespołowego wytwarzania oprogramowania o średnim poziomie złożoności
5,0Student wykazuje się wysokim poziomem kreatywności w pełnieniu wszystkich głównych ról w procesie zespołowego wytwarzania oprogramowania o średnim poziomie złożoności