Inżynieria oprogramowania

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Forma zajęć

Wykład (30 godzin) + laboratorium (30 godzin)

Opis

Przedmiot obejmuje następujące jednostki wiedzy z zakresu inżynierii oprogramowania wymienione w standardzie kształcenia dla studiów I stopnia na kierunku Informatyka: projektowanie oprogramowania; procesy wytwarzania oprogramowania; wymagania i ich specyfikacja; walidacja i testowanie oprogramowania; ewolucja oprogramowania; zarządzanie przedsięwzięciem programistycznym.

Po zaliczeniu przedmiotu student powinien mieć opanowane podstawowe umiejętności w zakresie: posługiwania się wzorcami projektowymi; projektowania oprogramowania zgodnie z metodyką obiektową; dokonywania przeglądu projektu oprogramowania; specyfikowania wymagań dotyczących oprogramowania i przeprowadzania ich przeglądu; tworzenia, oceny i realizacji planu testowania; uczestniczenia w inspekcji kodu; zarządzania konfiguracją oprogramowania.

Zagadnienia dotyczące projektowania oprogramowania będą rozwijane w ramach przedmiotu "Zaawansowane projektowanie obiektowe", natomiast problemy i metody zarządzania przedsięwzięciem programistycznym (ze szczególnym uwzględnieniem planowania) będą szczegółowo dyskutowane w ramach przedmiotu "Zaawansowana inżynieria oprogramowania".

Sylabus

Autorzy

  • Jerzy Nawrocki
  • Łukasz Olek
  • Błażej Pietrzak
  • Bartosz Walter

Wymagania wstępne

  • Podstawy programowania
  • Funkcje, relacje i zbiory. Elementy logiki matematycznej: rachunek zdań i tautologie. Rekurencja.
  • Programowanie obiektowe.

Zawartość

  • Zasady skutecznego działania
  • Specyfikacja wymagań
  • Kontrola jakości artefaktów
  • Język UML
  • Metody formalne
  • Wzorce projektowe
  • Zarządzanie konfiguracą
  • Wprowadzenie do testowania
  • Automatyzacja wykonywania testów
  • Programowanie Ekstremalne
  • Ewolucja oprogramowania i refaktoryzacja

Moduły

  1. Wprowadzenie do przedmiotu (flash / pdf) (Ćwiczenia)
  2. Zasady skutecznego działania (flash / pdf) (Ćwiczenia)
  3. Specyfikacja wymagań (Kolorowy PDF, Cz-B PDF, SWF), Ćwiczenia
  4. Kontrola jakości artefaktów (flash / pdf) (Ćwiczenia)
  5. Język UML, cz. I (flash / pdf) (Ćwiczenia)
  6. Język UML, cz. II (flash / pdf) (Ćwiczenia)
  7. Metody formalne (flash / pdf) (Ćwiczenia)
  8. Wzorce projektowe (flash / pdf) (Ćwiczenia)
  9. Zarządzanie konfiguracją (Kolorowy PDF, Cz-B PDF, SWF), Ćwiczenia
  10. Wprowadzenie do testowania (flash / pdf) (Ćwiczenia)
  11. Automatyzacja wykonywania testów (flash / pdf) (Ćwiczenia)
  12. Programowanie Ekstremalne (Kolorowy PDF, Cz-B PDF, SWF), Ćwiczenia
  13. Ewolucja oprogramowania i refaktoryzacja (flash / pdf) (Ćwiczenia)

Literatura

  1. K.Beck, A.Cynthia. Wydajne programowanie – Extreme Programming. Mikom, 2005.
  2. A. Cockburn, Jak pisać efektywne przypadki użycia, WNT, Warszawa, 2004.
  3. S.Covey. 7 nawyków skutecznego działania. REBIS, 2002.
  4. M.Fowler, K.Scott. UML w kropelce. LTP, 2002.
  5. R. Pressman, Software Engineering, McGraw-Hill, New York, 1997.