Inżynieria Oprogramowania (laboratoria)

dla studentów informatyki (3 rok, inż.).
kod kursu: INEK00011L

Przed rozpoczęciem zajęć proszę zapoznać się z całością tej strony.

Organizacja zajęć

Celem tego kursu jest projektowanie małego systemu informatycznego przy pomocy graficznych języków UML i SysML, jego częściowa implementacja w Javie i testowanie.

Diagramy UML powinny być w pełni zgodne ze specyfikacją tego języka; niestety niektóre książki i strony internetowe wprowadzają w błąd!

Zadania te wykonywane są w 2/3-osobowych zespołach, które same ustalają sobie sposób współpracy i podział zadań, zgodnie z umieszczonym niżej planem zajęć. Skład zespołu  i temat projektu zostaną wylosowane podczas pierwszych zajęć.

Poniżej znajdują się m.in.: plan zajęć (czyli co, jak i do kiedy należy wykonać), wymagania dotyczące zawartości i oddawania sprawozdań oraz sposób oceniania.

Plan zajęć

Tu są linki do instrukcji laboratoryjnych, dodatkowe informacje i wagi ocen za sprawozdania. W trakcie semestru niektóre instrukcje mogą ulec aktualizacji.

Uwaga: proszę unikać błędów i braków, wyliczonych na tej stronie.

  • 1 etap (tydzień 1): Zapoznanie się z narzędziem UML, wprowadzenie do UML i losowanie tematu projektu. Wystarczy wykonać (skopiować) po 1 diagramie każdego rodzaju z tych, przedstawionych w instrukcji. Waga oceny: 1.
  • 2 etap (tydzień 2): Wykonanie opisu biznesowego „świata rzeczywistego” projektowanego oprogramowania. Definicja wymagań funkcjonalnych i niefunkcjonalnych projektowanego oprogramowania. Waga oceny: 2.
    Diagram wymagań: a) objaśnienie i b) przykład:
    a) b) 
  • 3 etap (tygodnie 3–4): Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia. Waga oceny: 4.
    Diagram przypadków użycia: a) objaśnienie:
    a) 
  • 4 etap (tygodnie 5–6): Budowa diagramu czynności reprezentującego model biznesowy „świata rzeczywistego” na podstawie wykonanego opisu procesów biznesowych. Budowa diagramów czynności reprezentujących scenariusze wybranych przypadków użycia. Waga oceny: 4.
  • 5 etap (tydzień 7): Identyfikacja klas reprezentujących logikę biznesową projektowanego oprogramowania. Definicja atrybutów i operacji klas oraz związków między klasami na podstawie analizy scenariuszy przypadków użycia. Opracowanie diagramów klas i pakietów. Zastosowanie projektowych wzorców strukturalnych i wytwórczych. Waga oceny: 5.
  • 6 etap (tydzień 8): Opracowanie diagramów sekwencji dla wybranych przypadków użycia, reprezentujących usługi oprogramowania, wynikających również z wykonanych diagramów czynności. Definicja operacji klas na podstawie diagramów sekwencji w języku Java. Zastosowanie projektowych wzorców zachowania. Ocena wspólna z etapem 7.
  • 7 etap (tygodnie 9–10): Opracowanie diagramów sekwencji dla wybranych przypadków użycia reprezentujących usługi oprogramowania wynikających również z wykonanych diagramów czynności. Definicja operacji klas na podstawie diagramów sekwencji w języku Java. Zastosowanie projektowych wzorców zachowania. Waga oceny: 8.
  • 8 etap (tydzień 11): Opracowanie diagramu stanów dla wybranej klasy, reprezentującego wpływ różnych przypadków użycia na zmiany stanów tej klasy, modelowanych za pomocą diagramów sekwencji. Waga oceny: 4.
  • 9 etap (tydzień 12): Testy jednostkowe z użyciem narzędzi JUnit oraz JMockit. Waga oceny: 3.
  • 10 etap (tydzień 13): Testy akceptacyjne z wykorzystaniem narzędzia FitNesse. Waga oceny: 3.
  • 11 etap (tygodnie 14–15): Testy funkcjonalne z wykorzystaniem narzędzia Selenium IDE. Waga oceny: 4.

Narzędzia

Należy zainstalować sobie jedno z poniższych IDE:

Należy zainstalować sobie edytor UML Visual Paradigm. Następnie należy zintegrować ten program ze swoim IDE.

Pod tym adresem dostępna jest wersja Standard – za darmo i na czas całego roku akademickiego – oraz instrukcja instalacji.

Przydatne strony

Sprawozdania

Każdy etap zajęć kończy się oddaniem sprawozdania z tego etapu.

Sprawozdanie ma być w pliku pdf, w którym należy umieścić to, co wykonano w ramach danego etapu. W szczególności: specyfikacja słowna, diagramy, kod programu i testów, wyniki testów. Teoria do zajęć i wnioski są zbędne.

Sprawozdania wykonuje się z każdego etapu (etapy 5 6 i 7 są powiązane i mają wspólne sprawozdanie); każde ma być w 1 pliku pdf. Proszę podać swoje imię, nazwisko i nr indeksu w lewym górnym rogu pierwszej strony. Na pierwszej stronie proszę podać też nr i tytuł etapu, którego dotyczy sprawozdanie. Proszę nie robić strony tytułowej.

Sprawozdanie z etapu n należy przysłać mailem najpóźniej w trakcie pierwszych zajęć z etapu n+1. Sprawozdanie z ostatniego etapu należy przysłać mailem najpóźniej w trakcie ostatnich zajęć.

Oceny

Etap prac n oceniany jest na początku pierwszych zajęć z etapu n+1.

Etapy 1–8 oceniane są na podstawie sprawozdań, wykonanego projektu i posiadanej wiedzy.

Etapy 9–11 oceniane są na podstawie sprawozdań i pokazania na swoim komputerze i wyjaśnienia wykonanych testów oprogramowania.

Ocenę niższą od 4,0 należy poprawić w ciągu tygodnia od jej otrzymania (maksymalnie na 4,5 (mogą być wyjątki; poprawiać można tylko raz). Ocen 4,0 i wyższych nie można poprawiać.

Za oddanie sprawozdania po terminie ocena jest obniżana o 1 stopień.

Ocena końcowa to ważona średnia ocen za wszystkie etapy.

Comments are closed.