Inżynieria oprogramowania
Informacje ogólne
Kod przedmiotu: | 1000-I1IOP |
Kod Erasmus / ISCED: |
(brak danych)
/
(0613) Tworzenie i analiza oprogramowania i aplikacji
|
Nazwa przedmiotu: | Inżynieria oprogramowania |
Jednostka: | Wydział Matematyki i Informatyki |
Grupy: | |
Punkty ECTS i inne: |
4.00
LUB
3.00
(zmienne w czasie)
|
Język prowadzenia: | polski |
Wymagania wstępne: | Zaliczenie przedmiotu Podstawy programowania i Programowanie I. |
Rodzaj przedmiotu: | przedmiot obligatoryjny |
Całkowity nakład pracy studenta: | 1. Godziny realizowane z udziałem nauczycieli - 30 godzin, w tym * wykład - 15 godzin; * laboratorium - 15 godzin. 2. Czas potrzebny na pracę indywidualną studenta - 20 godzin, w tym * 10 godzin na przygotowanie się do laboratorium (wykonywanie zadań); * 10 godzin na powtórzenie materiału z wykładu. 3. Czas potrzebny na przygotowanie się do zaliczenia oraz przygotowanie projektu - 50 godzin, w tym * 30 godzin na przygotowanie projektu zaliczeniowego laboratorium; * 15 godzin na powtórzenie materiału do zaliczenia wykładu; * 5 godzin na przygotowanie się do zaliczenia laboratorium. |
Efekty uczenia się - wiedza: | 1. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie języków i paradygmatów programowania oraz inżynierii oprogramowania (K_W02). 2. Ma ogólną wiedzę na temat różnych paradygmatów programowania i języków programowania (imperatywny, obiektowy), szczegółowo zna metody projektowania i programowania obiektowego (kapsułkowania i ukrywania informacji, klasy i podklasy, dziedziczenie, polimorfizm, hierarchie klas) (K_W10). 3. Ma wiedzę na temat inżynierii oprogramowania, w tym projektowania (wzorce projektowe, architektura oprogramowania, analiza i projektowanie obiektowe), wykorzystania API, narzędzi i środowisk wytwarzania oprogramowania (narzędzia do analizy wymagań i modelowania, narzędzia do testowania, narzędzia do podglądu kodu, narzędzia do zarządzania konfiguracjami i wersjami oprogramowania), cyklu życia projektu informatycznego, specyfikacji oprogramowania, walidacji i weryfikacji, utrzymywania oprogramowania (refaktoryzacji) (K_W11). |
Efekty uczenia się - umiejętności: | 1. Potrafi pracować indywidualnie i w zespole informatyków, w tym także potrafi zarządzać swoim czasem oraz podejmować zobowiązania i dotrzymywać terminów (K_U03). 2. Potrafi porozumiewać się przy użyciu różnych technik w środowisku zawodowym oraz w innych środowiskach, w tym w języku angielskim oraz z wykorzystaniem narzędzi informatycznych (K_U04). 3. Potrafi stworzyć model obiektowy prostego systemu (np. w języku UML) (K_U16). 4. Ocenia przydatność różnych paradygmatów i związanych z nimi środowisk programistycznych do rozwiązywania różnego typu problemów (K_U21). 5. Projektuje oprogramowanie zgodnie z metodyką obiektową (K_U22). 6. Potrafi ocenić, na podstawowym poziomie, przydatność rutynowych metod i narzędzi informatycznych oraz wybrać i zastosować właściwą metodę i narzędzia do typowych zadań informatycznych (K_U23). 7. Potrafi wykonać prostą analizę sposobu funkcjonowania systemu informatycznego i ocenić istniejące rozwiązania informatyczne, przynajmniej w odniesieniu do ich cech funkcjonalnych (K_U25). 8. Tworzy, ocenia i realizuje plan testowania oprogramowania (K_U26). 9. Ma umiejętność posługiwania się przynajmniej jednym z najbardziej popularnych systemów zarządzania wersjami (K_U27). 10. Posługuje się wzorcami projektowymi (K_U28). |
Efekty uczenia się - kompetencje społeczne: | 1. Nawiązuje i utrzymuje długotrwałą i efektywną współpracę z innymi, dąży do realizacji celów zespołu poprzez odpowiednie zaplanowanie i organizację pracy swojej i innych, motywuje współpracowników do zwiększenia wysiłku w celu osiągnięcia założonych celów (K_K01). 2. Skutecznie przekazuje innym swoje myśli w zrozumiały sposób, właściwie posługuje się terminologią fachową, potrafi nawiązać kontakt w obrębie swojej dziedziny i z osobą reprezentującą inną dziedzinę (K_K02). 3. Jest nastawiony na nieustanne zdobywanie nowej wiedzy, umiejętności i doświadczeń, rozumie potrzebę ciągłego doskonalenia się i podnoszenia kompetencji zawodowych (K_K03). |
Metody dydaktyczne: | * Wykład. * Laboratorium. * Stworzenie projektu systemu informatycznego w grupach. * Pisanie programów zgodnych z wzorcami architektonicznymi. |
Pełny opis: |
|
Literatura: |
Literatura podstawowa:
Literatura uzupełniająca:
|
Metody i kryteria oceniania: |
Zaliczenie laboratorium odbywa się na podstawie zadań rozwiązywanych przez studentów w ciągu całego semestru. Ocena z zaliczenia wykładu ustalana jest przez koordynatora przedmiotu (zwykle osoba prowadząca wykład) na podstawie wyników osiąganych przez studenta podczas laboratorium oraz na podstawie ustnych odpowiedzi na pytania dotyczące treści wykładu. |
Zajęcia w cyklu "Semestr zimowy 2022/23" (zakończony)
Okres: | 2022-10-01 - 2023-02-19 |
Przejdź do planu
PN WT LAB
LAB
ŚR WYK
CZ LAB
LAB
LAB
PT |
Typ zajęć: |
Laboratorium, 30 godzin, 16 miejsc
Wykład, 15 godzin, 150 miejsc
|
|
Koordynatorzy: | Rafał Bocian | |
Prowadzący grup: | Jerzy Białkowski, Rafał Bocian | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie Wykład - Zaliczenie na ocenę |
Zajęcia w cyklu "Semestr zimowy 2023/24" (zakończony)
Okres: | 2023-10-01 - 2024-02-19 |
Przejdź do planu
PN LAB
LAB
WT LAB
LAB
LAB
ŚR LAB
WYK
CZ PT |
Typ zajęć: |
Laboratorium, 15 godzin, 16 miejsc
Wykład, 15 godzin, 150 miejsc
|
|
Koordynatorzy: | Rafał Bocian, Anna Gogolińska | |
Prowadzący grup: | Jerzy Białkowski, Rafał Bocian | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie Wykład - Zaliczenie na ocenę |
Zajęcia w cyklu "Semestr zimowy 2024/25" (zakończony)
Okres: | 2024-10-01 - 2025-02-23 |
Przejdź do planu
PN WT LAB
LAB
ŚR LAB
LAB
LAB
CZ WYK
LAB
PT |
Typ zajęć: |
Laboratorium, 15 godzin, 16 miejsc
Wykład, 15 godzin, 150 miejsc
|
|
Koordynatorzy: | Anna Gogolińska | |
Prowadzący grup: | Jerzy Białkowski, Anna Gogolińska, Jakub Narębski | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie Wykład - Zaliczenie na ocenę |
|
Skrócony opis: |
Zapoznanie się z metodykami tworzenia oprogramowania. Tworzenie kompleksowych projektów systemów informatycznych, obejmujących między innymi specyfikację, dokumentację i testowanie. Używanie wzorców projektowych. |
|
Pełny opis: |
Wykład. 1. Wprowadzenie i przedstawienie podstawowych koncepcji. 2. Systemy kontroli wersji. 3. Klasyczne i zwinne metodyki tworzenia oprogramowania. 4. Specyfikacja wymagań. 5. Język UML. 6. Testowanie oprogramowania. 7. Wzorce projektowe. Laboratorium. 1. Zarządzanie projektem z wykorzystaniem systemu GIT. 2. Rysowanie diagramów UML. 3. Implementacja wzorców projektowych. |
|
Literatura: |
Literatura podstawowa: 1. E. Gamma, R. Helm, R. Johnson, J. Vlissides, Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, Helion, 2010 2. https://git-scm.com/book/pl/v1/Pierwsze-kroki 3. A. Jaszkiewicz, Inżynieria oprogramowania, Helion, Gliwice 1997. 4. M. Krzemiński, Agile: szybciej, łatwiej, dokładniej, Helion, Gliwice, 2014. 5. https://www.scrumguides.org/docs/scrumguide/v2017/2017-Scrum-Guide-Polish.pdf Literatura uzupełniająca: 1. M. Bays, Metodyka wprowadzania oprogramowania na rynek, WNT, Warszawa 2001. 2. G. Booch, J. Rumbaugh, I. Jacobson, UML Przewodnik użytkownika wyd. 3, WNT, Warszawa 2002. 3. Eric Freeman, Kathy Sierra, Bert Bates, Elisabeth Robson, Head First Design Patterns, 2004 4. R. V. Binder, Testowanie systemów obiektowych. Modele, wzorce i narzędzia, WNT, Warszawa 2003. |
Zajęcia w cyklu "Semestr zimowy 2025/26" (jeszcze nie rozpoczęty)
Okres: | 2025-10-01 - 2026-02-22 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Laboratorium, 15 godzin, 16 miejsc
Wykład, 15 godzin, 150 miejsc
|
|
Koordynatorzy: | (brak danych) | |
Prowadzący grup: | Jerzy Białkowski, Anna Gogolińska | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Zaliczenie na ocenę
Laboratorium - Zaliczenie Wykład - Zaliczenie na ocenę |
|
Skrócony opis: |
Zapoznanie się z metodykami tworzenia oprogramowania. Tworzenie kompleksowych projektów systemów informatycznych, obejmujących między innymi specyfikację, dokumentację i testowanie. Używanie wzorców projektowych. |
|
Pełny opis: |
Wykład. 1. Wprowadzenie i przedstawienie podstawowych koncepcji. 2. Systemy kontroli wersji. 3. Klasyczne i zwinne metodyki tworzenia oprogramowania. 4. Specyfikacja wymagań. 5. Język UML. 6. Testowanie oprogramowania. 7. Wzorce projektowe. Laboratorium. 1. Zarządzanie projektem z wykorzystaniem systemu GIT. 2. Rysowanie diagramów UML. 3. Implementacja wzorców projektowych. |
|
Literatura: |
Literatura podstawowa: 1. E. Gamma, R. Helm, R. Johnson, J. Vlissides, Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, Helion, 2010 2. https://git-scm.com/book/pl/v1/Pierwsze-kroki 3. A. Jaszkiewicz, Inżynieria oprogramowania, Helion, Gliwice 1997. 4. M. Krzemiński, Agile: szybciej, łatwiej, dokładniej, Helion, Gliwice, 2014. 5. https://www.scrumguides.org/docs/scrumguide/v2017/2017-Scrum-Guide-Polish.pdf Literatura uzupełniająca: 1. M. Bays, Metodyka wprowadzania oprogramowania na rynek, WNT, Warszawa 2001. 2. G. Booch, J. Rumbaugh, I. Jacobson, UML Przewodnik użytkownika wyd. 3, WNT, Warszawa 2002. 3. Eric Freeman, Kathy Sierra, Bert Bates, Elisabeth Robson, Head First Design Patterns, 2004 4. R. V. Binder, Testowanie systemów obiektowych. Modele, wzorce i narzędzia, WNT, Warszawa 2003. |
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.