ostatnia aktualizacja |
|
10.2023 - Inżynieria oprogramowania W04ITE-SI0011G
10.2022 - Praca dyplomowa inżynierska
|
|
|
|
|
ogłoszenia |
Terminy egzaminu:
Informacje dotyczące laboratoriów:
- Wybrane informacje dotyczące sposobu dostarczania materiałów do oceny.
Wyniki egzaminów:
materiały do zajęć |
Narzędzia do zainstalowania:
- Java SE Development Kit 8u201. Kolejność instalacji: jako pierwsza instalacja Java - wersja Windows x64.
- Środowisko NetBeans 8.2 - wersja ALL. Kolejność instalacji: jako druga instalacja NetBeans.
- Visual Paradigm for UML 15.2 Community Edition
Materiały pomocnicze:
- Dokument zawierający kartę przedmiotu INP002017
- Strona UML - OMG (Object Management Group)
- Materiały pomocnicze - Visual Paradigm 15.2
Wykłady - strona w trakcie tworzenia
- Wykład 1
- Wprowadzenie do inżynierii oprogramowania.
Pytania kontrolne
- Pytania kontrolne dotyczące wykładu 1.
- Wykład 2
- 7 nawyków skutecznego działania wg S. Coveya
jako zasada efektywnej realizacji złożonych projektów informatycznych.
Pytania kontrolne
- Pytania kontrolne dotyczące wykładu 2
- Wykład 3
- Specyfikowanie wymagań - diagramy wymagań SysML
Pytania kontrolne
- Pytania kontrolne dotyczące wykładu 3
- Wykład 4
Model przypadków użycia - rola diagramów przypadków użycia i aktywności UML
- Diagramy przypadków użycia UML
- Diagramy aktywności UML
Pytania kontrolne
- Pytania kontrolne dotyczące przypadków użycia
- Pytania kontrolne dotyczące diagramów aktywności
- Wykład 5
Diagramy klas i sekwencji UML
- Modelowanie i projektowanie - zastosowanie diagramów UML: klas i sekwencji do budowy modeli analizy i
projektu.
Pytania kontrolne
- Pytania kontrolne dotyczące diagramów klas
- Pytania kontrolne dotyczące diagramów sekwencji
- Wykład 6
UML- Rozwijanie modeli analizy i projektu, zastosowanie diagramów stanów
- Modelowanie zachowania obiektów za pomocą diagramów aktywności i sekwencji, zastosowanie diagramów stanów.
Pytania kontrolne
- Pytania kontrolne dotyczące porównania roli diagramów czynności i diagramów sekwencji
- Pytania kontrolne dotyczące diagramów stanów
- Wykład 7
Wybrane aspekty projektowania - budowa wielowarstwowego modelu implementacji, zastosowanie wzorców projektowych
- Przegląd standardowych wzorców projektowych
- Wybrane aspekty projektowania - budowa wielowarstwowej aplikacji Enterprise.
Pytania kontrolne
- Pytania kontrolne dotyczące wzorców projektowych
- Pytania kontrolne dotyczące budowy wielowarstwowej aplikacji typu Enterprise
- Wykład 8
Kolokwium sprawdzające I
- Wykład 9
- Prowadzenie projektu programistycznego, modele procesów tworzenia oprogramowania
Pytania kontrolne
- Pytania kontrolne dotyczące prowadzenia projektu oraz procesów tworzenia oprogramowania
- Wykład 10
- Sprawdzanie poprawności oprogramowania - przegląd metod testowania oprogramowania
Pytania kontrolne
- Pytania kontrolne dotyczące testowania
- Wykład 11
- Jakość oprogramowania - część 1
Pytania kontrolne
- Pytania kontrolne dotyczące 5 zasad programmowania zwinnego
oraz metryk jakości oprogramowania
- Wykład 12
- Jakość oprogramowania - część 2.
Pytania kontrolne
- Pytania kontrolne dotyczące wdrażania jakości oprogramowania
- Wykład 13
- Środowiska programistyczne.
- Wdrażanie i pielęgnacja oprogramowania.
- Cechy charakterystyczne tworzenia oprogramowania w Inżynierii Biomedycznej.
Pytania kontrolne
- Pytania kontrolne dotyczące trzech części wykładu 13.
- Wykład 14
Kolokwium sprawdzające II
- Wykład 15
- Wybrane aspekty Inżynierii Oprogramowania - tworzenie i śledzenie harmonogramów.
Harmonogram prac laboratorium - strona w trakcie tworzenia
- Laboratorium 1
- Instrukcja_1
Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium.
- Materiały pomocnicze - Visual Paradigm 15.2
- Laboratorium 2 - ocena1
- Instrukcja_2
Praktyczna ewaluacja umiejętności. Badanie poprawności kodu.
- Materiały pomocnicze
- Laboratoria 3, 4 - ocena2
Specyfikowanie wymagań – przypadki użycia.
- Instrukcja_3 - definiowanie wymagań
- Instrukcja_4 - specyfikacja wymagań za pomocą diagramu przypadków użycia.
- Dodatkowa instrukcja tworzenia diagramów przypadków użycia.
Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia
- Materiały pomocnicze - Visual Paradigm 15.2
- Laboratoria 5-7 - ocena3
Projektowanie oprogramowania – diagramy klas i inne.
- Instrukcja - część 1
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.
- Instrukcja - część 2
Wykonanie 4 iteracji programu, opartego na projekcie realizowanym za pomocą diagramu klas i sekwencji i kodu programu, napisanego w Javie.
Program powinien realizować logikę biznesową. Uruchomienie i działanie programu powinno być możliwe za pomocą metod klasy zarządzającej
- przez podstawienie przykładowych danych, umieszczonych w programie.
- Materiały pomocnicze - Visual Paradigm 15.2
- Laboratoria 8-9 - ocena4
Implementacja w oparciu o wzorce projektowe - kontynuacja prac projektowych i programistycznych. Uzupełnienie projektu przez dodanie diagramu aktywności modelującego
zrealizowany złożony przypadek użycia. Należy wykonać diagram stanów wybranej klasy.
- Instrukcja do lab8 - wykonanie diagramów aktywności
- Instrukcja do lab9 - wykonanie diagramu stanów
- Laboratoria 10-11 - ocena5
Sprawdzanie poprawności oprogramowania.
- Instrukcja do lab10 - wykonanie testów jednostkowych
za pomocą narzędzia JUnit
- Instrukcja do lab11 - wykonanie testów akceptacyjnych
za pomocą narzędzia Fitnesse.
- Laboratorium 12 - ocena6
Tworzenie dokumentacji systemu.
- Instrukcja do lab12 -
dodanie do projektu informacji przydatnej przy tworzeniu dokumentacji dla programisty.
- Materiały pomocnicze - Visual Paradigm 15.2
- Laboratoria 13-14 - ocena7
Refaktoryzowanie systemu.
- Instrukcja do laboratorium 13
- Instrukcja do laboratorium 14.
- Materiały pomocnicze - Tutorial Java 8 SE
- Laboratorium 15
Zaliczenie.
Harmonogram prac projektu 2019
I. Przebieg projektu wg karty przedmiotu (2018)
- Wprowadzenie do projektu. Zasady obowiązujące na zajęciach.
- Faza strategiczna projektu
- Specyfikowanie wymagań - przypadki użycia
- Projektowanie oprogramowania - diagramy klas i inne
- Implementacja w oparciu o wzorce projektowe
- Sprawdzanie poprawności oprogramowania
- Tworzenie dokumentacji systemu
- Zaliczenie
Harmonogramy projektów 2019
- Harmonogram prac grupy projektowej 1: czwartek nieparzysty, 11.15-13.00. Wersja: 12.03.2019
- Harmonogram prac grupy projektowej 2: czwartek nieparzysty, 11.15-13.00. Wersja: 12.03.2019
- Harmonogram prac grupy projektowej 1: czwartek nieparzysty, 13.15-15.00. Wersja: 12.03.2019
- Harmonogram prac grupy projektowej 2: czwartek nieparzysty, 13.15-15.00. Wersja: 12.03.2019
- Harmonogram prac grupy projektowej 1: czwartek parzysty, 13.15-15.00. Wersja: 12.03.2019
- Harmonogram prac grupy projektowej 2: czwartek parzysty, 13.15-15.00. Wersja: 12.03.2019
Instrukcje pomocnicze
- Instrukcja 1 - opisująca przebieg prac podczas 1- 8 tygodnia.
Kod do pobrania: Kod dwuwarstwowej aplikacji dla 1-go użytkownika, na platformie Java SE
Materiały pomocnicze: Java Platform, Enterprise Edition: The Java EE Tutorial - Part VII Enterprise Beans
- Instrukcja 2 - opisująca przebieg prac podczas 13- 15 tygodnia.
Materiały pomocnicze: Java Platform, Enterprise Edition: The Java EE Tutorial - Part VIII Persistence
II. Materiały pomocnicze: UML, JavaEE, wspieranie pracy zespołu
- Tutorial Java EE 7.0
- Visual Paradigm.
- Pomoc: Drawing use case diagrams.
- Pomoc: Use case diagram notations guide.
- Pomoc: Documenting use case details.
- Pomoc: Creating requirement diagram.
- Pomoc: Drawing class diagrams.
- Pomoc: Drawing sequence diagrams.
- Pomoc: Drawing activity diagrams.
- Pomoc: Drawing state machine diagrams.
- Pomoc: Generate/Update UML classes from Java code.
- Pomoc: Instant reverse Java sources to sequence diagram.
- Pomoc: Generate/Update Java code.
- Metodyka typu Agile określająca pracę zespołu: Scrum
- The Scrum Guide.
- Środowisko wspierania pracy zespołu
- Tutorial: Learn Git with Bitbucket Cloud.
- Basic Git commands.
- Bitbucket Cloud Documentation Home.
- Tutorial: Learn SourceTree with Bitbucket Cloud.
III. Przykłady projektów (2017)
literatura |
literatura podstawowa
- Jaszkiewicz A., Inżynieria oprogramowania, Helion 2000.
- Sacha K., Inżynieria oprogramowania, PWN 2010
- Somerville J., Inżynieria oprogramowania, WNT 2003.
literatura uzupełniająca
- Grady Booch, James Rumbaugh, Ivar Jacobson: UML przewodnik użytkownika, Seria: Inżynieria oprogramowania, Warszawa : WNT, 2002.
- Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, 2004
- Robert C. Martin, Czysty kod. Podręcznik dobrego programisty, Helion 2010
- Robert C. Martin, Micah Martin, Agile, Programowanie zwinne. Zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C#, Gliwice, Helion, 2008.
- Martin Fowler, Kendall Scott, UML w kropelce, wersja 2.0, Warszawa, Oficyna Wydawnicza LTP, 2005
- Martin Fowler, i in., Refaktoryzacja: ulepszanie struktury istniejącego kodu, Helion 1991, 2011
- Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Wzorce projektowe.
Elementy oprogramowania obiektowego wielokrotnego użytku. Seria: Inżynieria oprogramowania, Warszawa, WNT, 2008.
- Shalloway A.,Trott James R.,Projektowanie zorientowane obiektowo. Wzorce projektowe. Gliwice, Helion, 2005
- Alur D., Crupi J.,Malks D., Core J2EE. Wzorce projektowe. Gliwice, Helion, 2004
- Robert J. Muller: Bazy danych, język UML w modelowaniu danych, Warszawa, Mikom, 2000
- Paul Beynon-Davies: Inżynieria systemów informacyjnych, Warszawa, WNT, 2004
- James Martin, James J.Odell: Podstawy metod obiektowych, Warszawa, WNT, 1997.
|