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

Autorem sylabusa jest dr hab. inż. Jerzy Nawrocki, prof. PP.

Moduły związane z tym przedmiotem zostały opracowane przez zespół z Instytutu Informatyki Politechniki Poznańskiej w składzie: Jerzy Nawrocki, Mirosław Ochodek, Łukasz Olek, Błażej Pietrzak i 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 (swf, pdf)
  2. Zasady skutecznego działania (swf, pdf), (Ćwiczenia)
  3. Specyfikacja wymagań (swf, pdf, pdf kolor), (Ćwiczenia)
  4. Kontrola jakości artefaktów (swf, pdf, pdf kolor), (Ćwiczenia)
  5. Język UML, cz. I (swf, pdf), (Ćwiczenia)
  6. Język UML, cz. II (swf, pdf), (Ćwiczenia)
  7. Metody formalne (swf, pdf), (Ćwiczenia)
  8. Wzorce projektowe (swf, pdf), (Ćwiczenia)
  9. Zarządzanie konfiguracją (swf, pdf, pdf kolor), (Ćwiczenia)
  10. Wprowadzenie do testowania (swf, pdf), (Ćwiczenia)
  11. Automatyzacja wykonywania testów (swf, pdf), (Ćwiczenia)
  12. Programowanie Ekstremalne (swf, pdf, pdf kolor), (Ćwiczenia)
  13. Ewolucja oprogramowania i refaktoryzacja (swf, 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.