[PP] Projekt programistyczny

ZAŁOŻENIE I CELE PRZEDMIOTU:

  • Celem tego przedmiotu jest zrealizowanie przez studentów dużego projektu programistycznego. Powinno być to podsumowanie i praktyczne zweryfikowanie wiedzy programistycznej nabytej przez studentów na etapie licencjackim.
  • Studenci powinni w trakcie tych zajęć przejść przez pełen cykl produkcji oprogramowania: od specyfikacji wymagań po testowanie (ze względów organizacyjnych zagadnienia takie jak pielęgnacja oprogramowania czy szkolenie użytkowników, choć ważne, są pomijane lub przedstawiane w bardzo ograniczonym zakresie).
  • Zaleca się, by studenci w trakcie prac nad projektem poznawali (sami) nowe technologie konieczne do realizacji zadania. Faza pozyskiwania specyfikacji powinna być jak najbardziej zbliżona do rzeczywistości (tzn. studenci nie powinni dostawać gotowej specyfikacji wymagań, lecz stworzyć ją na podstawie rozmów z prowadzącym zajęcia — pełniącym wówczas rolę klienta).
  • W ramach zajęć studenci wykonują złożony projekt programistyczny zgodnie ze standardami inżynierii oprogramowania. Przewiduje się, że w każdej grupie po wspólnym wykonaniu projektu i specyfikacji projektowej następuje podział zadań miedzy uczestników grupy i wykonanie oprogramowania poszczególnych zadań.
  • Etap końcowy polega na uruchomieniu zadania, wykonaniu testowania i wdrożeniu projektu.

WYMAGANIA:

  • Stworzenie specyfikacji wymagań na podstawie kontaktów z użytkownikiem.
  • Przygotowanie dokumentacji projektowej.
  • Zaimplementowanie systemu połączone z tworzeniem odpowiedniej dokumentacji (technicznej i użytkownika).
  • Przeprowadzenie testów.

TEMATY PROJEKTÓW:

  • Metody rozwiązywania problemu maksymalizacji czasu życia sieci sensorowej – metody dokładne (podziału i ograniczeń, programowanie liniowe) [WWW];
  • Metody rozwiązywania problemu maksymalizacji czasu życia sieci sensorowej – metody heurystyczne i metaheurystyczne (symulowane wyżarzanie, algorytmy genetyczne) [WWW];
  • Metody rozwiązywania problemu maksymalizacji czasu życia sieci sensorowej – metody heurystyczne i metaheurystyczne (automaty uczące i komórkowe) [WWW];