Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)
specjalność: Inżynieria oprogramowania

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
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
laboratoriaL5 30 2,00,50zaliczenie
wykładyW5 30 2,00,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Inżynieria oprogramowania
W-2Programowanie 2
W-3Narzędzia inżynierskie
W-4Zarządzanie informacją 1

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 oprogramowania2
T-W-2Wzorce architektoniczne2
T-W-3Wzorce projektowe6
T-W-4Techniki i narzędzia refaktoryzacji2
T-W-5Metodyka eXtreme Programming3
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development3
T-W-7Przeglądy i inspekcje oprogramowania2
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 dokumentowania2
T-W-10Wzorce i narzędzia integracyjne2
T-W-11Wzorce architektoniczne – systemy rozproszone2
T-W-12Zaliczenie2
30

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

KODForma aktywnościGodziny
laboratoria
A-L-1Udział w zajęciach30
A-L-2Dodatkowa praca nad realizacją zadań20
50
wykłady
A-W-1Udział w wykładach30
A-W-2Samodzielne studiowanie tematyki wykładów i przygotowanie do zaliczenia18
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
I_1A_D02.02_W01
Student zna główne współczesne metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania
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
I_1A_D02.02_U01
Student potrafi zastosować metodyki, reguły, techniki, praktyki i narzędzia wytwarzania oprogramowania w realizacji zadań inżynierskich
I_1A_U10C-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
I_1A_D02.02_K01
Student potrafi pełnić różne role w procesie zespołowego wytwarzania oprogramowania
I_1A_K02C-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
I_1A_D02.02_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
I_1A_D02.02_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
I_1A_D02.02_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 oprogramowania2
T-W-2Wzorce architektoniczne2
T-W-3Wzorce projektowe6
T-W-4Techniki i narzędzia refaktoryzacji2
T-W-5Metodyka eXtreme Programming3
T-W-6Wytwarzanie kodu zarządzane testami - Test Driven Development3
T-W-7Przeglądy i inspekcje oprogramowania2
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 dokumentowania2
T-W-10Wzorce i narzędzia integracyjne2
T-W-11Wzorce architektoniczne – systemy rozproszone2
T-W-12Zaliczenie2
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Udział w zajęciach30
A-L-2Dodatkowa praca nad realizacją zadań20
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ładach30
A-W-2Samodzielne studiowanie tematyki wykładów i przygotowanie do zaliczenia18
A-W-3Udział w konsultacjach2
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_D02.02_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_W05Posiada wiedzę o cyklu życia systemów informatycznych; zna nowoczesne metody projektowania, analizowania, wytwarzania i testowania oprogramowania, w szczególności obejmujące szeroko stosowane narzędzia wspomagające wytwarzanie oprogramowania.
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ęI_1A_D02.02_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_U10Potrafi projektować i implementować systemy informatyczne posługując się narzędziami wspomagającymi proces wytwarzania oprogramowania na różnych jego etapach.
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ęI_1A_D02.02_K01Student potrafi pełnić różne role w procesie zespołowego wytwarzania oprogramowania
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_K02Ma świadomość znaczenia wiedzy (w szczególności jej niewłaściwego użycia) 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