Wydział Informatyki
Kierunek studiów Informatyka Poziom i forma studiów pierwszego stopnia inżynierskie stacjonarne
Specjalność / Ścieżka dyplomowania --- Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Narzędzia procesu tworzenia oprogramowania Kod przedmiotu INF1NPT
Rodzaj przedmiotu obowiązkowy
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 2
15 15 Punkty ECTS 2
Przedmioty wprowadzające Podstawy programowania (INF1PPR),  
Cele przedmiotu

Celem wykładu jest przedstawienie inżynierskich metod i narzędzi wspomagających proces tworzenia oprogramowania. Metody i narzędzia te dotyczą różnych etapów budowania oprogramowania od zbierania wymagań, poprzez implementację i testowania do wdrożenia oprogramowania.

Celem pracowni specjalistycznej jest praktyczne zapoznanie z narzędziami wspomagającym proces tworzenia oprogramowania od momentu określania wymagań do wdrożenia projektu.

Odniesienia do standardu SFIA:
Requirements definition and management REQM - poziom 2
Software design SWDN - poziom 2
Testing TEST - poziom 2

Treści programowe

Wykład: test Joel'a; zintegrowane środowiska wytwórcze (IDEs); systemy kontroli wersji; dynamiczne testowanie aplikacji; profilowanie aplikacji; dokumentowanie kodu; testowanie aplikacji; zarządzanie błędami; zarządzanie wymaganiami; tworzenie prototypu aplikacji; dystrybucja oprogramowania.

Pracowania specjalistyczna: środowiska wytwórcze (np. MS VS, Eclipse, NetBeans, Jupyter), wersjonowanie kodu: SVN, GIT, odpluskwianie kodu (debugowanie), dynamiczne testowanie pamięci w kodzie zarządzanymi i niezarządzanym, profilowanie pamięci i czasu wykonania, tworzenie dokumentacji kodu, zarządzanie testami oprogramowania, narzędzia do zarządzania błędami, zarządzanie wymaganiami aplikacji, narzędzia do tworzenia instalatorów.

Metody dydaktyczne

pokaz,   wykład problemowy,   programowanie z użyciem komputera,  

Forma zaliczenia

Wykład: zaliczenie pisemne
Pracownia specjalistyczna: dwa sprawdziany pisemne, ocena pracy na zajęciach

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 wybrane narzędzia informatyczne do specyfikowania, projektowania, tworzenia i testowania systemów informatycznych ogólnego przeznaczenia i ich komponentów. INF1_W06
INF1_W09
INF1_W12
EU2 rolę narzędzi w inżynierii oprogramowania; zna kategorie narzędzi wspomagających projektowanie; orientuje się w obecnym stanie i najnowszych trendach rozwojowych narzędzi wspomagających tworzenie oprogramowania INF1_W11
EU3 posłużyć się właściwie dobranymi środowiskami programistycznymi, systemami kontroli wersji oraz narzędziami dynamicznego testowania systemów informatycznych oraz ich komponentów; potrafi porównywać wymienione narzędzia procesu tworzenia oprogramowania ze względu na zadane kryteria użytkowe i ekonomiczne (szybkość działania, koszt, funkcjonalność, itp.). INF1_U06
INF1_U13
EU4 posłużyć się właściwie dobranymi narzędziami do profilowania aplikacji, dokumentowania kodu, testowania funkcjonalności, zarządzania błędami i dystrybucji oprogramowania; potrafi porównywać wymienione narzędzia procesu tworzenia oprogramowania ze względu na zadane kryteria użytkowe i ekonomiczne (szybkość działania, koszt, funkcjonalność, itp.) INF1_U07
INF1_U11
INF1_U13
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 zaliczenie pisemne W
EU2 zaliczenie pisemne W
EU3 sprawdzian, ocena pracy na zajęciach Ps
EU4 sprawdzian, ocena pracy na zajęciach Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach 15
2 - Udział w pracowni specjalistycznej 15
3 - Opracowanie sprawozdań z pracowni i wykonywanie zadań domowych 8
4 - Udział w konsultacjach 4
5 - Przygotowanie do zaliczenia wykładu 4
6 - Przygotowanie do zaliczenia Ps 4
RAZEM: 50
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 34
(2)+(4)+(1)
1.4
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 27
(6)+(2)+(3)
1.1
Literatura podstawowa

1. W. Gajda, Git : rozproszony system kontroli wersji, Helion, 2022
2. A. Roman, Testowanie i jakość oprogramowania: modele, techniki, narzędzia, PWN, 2022
3. M. Sobczak, Jakość oprogramowania : podręcznik dla profesjonalistów, Helion, 2020
4. M. Fowler, K. Beck, D. Roberts, E. Gamma, Refaktoryzacja. Ulepszanie struktury istniejącego kodu, WNT, 2017

Literatura uzupełniająca

1. R. S. Pressman, B. R. Maxim Aut., Software engineering : a practitioner's approach, New York : McGraw-Hill, 2019
2. H. van Vliet, Software engineering :principles and practice, John Wiley and Sons, 2008
3. B. Collins-Sussman, B.W. Fitzpatrick, C.M. Pilato, Version Control with Subversion, http://svnbook.red-bean.com/en/1.7/svn-book.pdf

Jednostka realizująca Katedra Oprogramowania Data opracowania programu
Program opracował(a) dr inż. Marcin Czajkowski,dr inż. Krzysztof Jurczuk,prof. dr hab. inż. Marek Krętowski 2023.04.04