====== Specyfikacja i systemy wspomagania projektowania oprogramowania ====== ===== Cel zajęć ===== Cykl życia oprogramowania (w ujęciu tradycyjnym) składa się z kilku faz: *specyfikacji wymagań, *projektowania, *implementacji *konserwacji. Celem zajęć jest zrealizowanie projektu polegającego na sporządzeniu dokumentacji obejmującej etapy: specyfikacji (analizy) wymagań i projektowania oprogramowania. Uczestniczy zajęć powinni wykazać się znajomością języka modelowania UML oraz umiejętnością jego praktycznego zastosowania przy sporządzaniu dokumentacji projektowej. Celem zajęć nie jest wykonanie programu; niemniej, doświadczenia programistyczne, znajomość konkretnych technologii mogą być znaczną pomocą podczas projektowania aplikacji ===== Organizacja ===== Projekty są wykonywane w grupach. Zaleca się, aby były to grupy 3-4-osobowe. Grupa powinna [[specif:tematy_projektow|wybrać temat projektu z listy i zarezerwować za pomocą formularza rejestracji]]. Tematy projektów muszą być unikalne. Możliwe jest zaproponowanie własnego tematu po uprzedniej akceptacji przez prowadzącego. Jeżeli na liście pojawią się dwie rezerwacje tego samego projektu -- późniejszy wpis zostanie usunięty. Zakres projektu pokrywa się z prowadzonymi wcześniej zajęciami [[http://home.agh.edu.pl/~pszwed/wiki/doku.php?id=amo:start|Analiza i modelowanie oprogramowania (AMO)]] dla kierunku Informatyka. W ramach AMO dodatkowo prowadzone było laboratorium. Materiały do laboratorium mogą być przydatne przy realizacji projektu. ==== Link do zespołu na MS Teams ==== [[https://teams.microsoft.com/l/team/19%3Ag3FgzyhcL6Tom-Rj3tO63hscmPLxyYw7wHQ97vWGZJ41%40thread.tacv2/conversations?groupId=89413b1c-8e5d-47e7-9770-ae6de5734631&tenantId=80b1033f-21e0-4a82-bbc0-f05fdccd3bc8]] ==== Kurs na UPEL ==== Po wybraniu tematu i wstępnym zarejestrowaniu członków grupy [[https://home.agh.edu.pl/~pszwed/wiki/doku.php?id=specif:tematy_projektow]] - utworzona zostanie grupa na UPEL i przekazany kod do zapisu - po wprowadzeniu tego kodu członkowie zostaną dopisani do odpowiedniej grupy - w terminach ustalonych w harmonogramem należy przesyłać dokumenty (wpierw do konsultacji, potem wersje po poprawkach) [[https://upel.agh.edu.pl/group/index.php?id=7449]] ===== Harmonogram ===== Wykonanie projektu podzielone jest na etapy zgodnie z [[https://home.agh.edu.pl/~pszwed/wiki/doku.php?id=specif:harmonogram|harmonogramem]]. Dokumenty będą dostarczane przez UPEL (kiedy zgłębię temat indywidualnego tworzenia grup przez studentów). Składniki oceny *60% - pierwsze 5 etapów *40% - dokumentacja końcowa ===== Narzędzia ===== Językiem używanym w dokumentacji może być wyłącznie język UML. Nie jest akceptowane zastosowanie Analizy Strukturalnej (diagramy DFD). W rozdziale dotyczącym projektu bazy danych można użyć notacji ERD. Do sporządzania diagramów można użyć dowolnego programu pozwalającego na sporządzanie diagramów UML. AGH jako posiadacz licencji MSDN dla całej uczelni udostępnia program Visio, zawierający bibliotekę (przybornik) do rysowania diagramów UML. Wiele innych, w tym bezpłatnych programów, np.: ArgoUML, ma podobne możliwości. Bardzo polecam: [[http://plantuml.com/|Plant UML]] >> [[http://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000|Edytor online]] Plant UML jest szczególnie przydatny przy rysowaniu diagramów sekwencji (rozdział SDD - projekt oprogramowania) ===== Dokumentacja ===== Dokumentacja powinna być sporządzana zgodnie z podanym dalej układem ([[specif:template|Szkielet dokumentacji]]). Powinna stanowić jeden plik, najchętniej w formacie PDF. Nie należy dostarczać plików źródłowych wymagających dalszego przetwarzania lub otwierania za pomocą specyficznych narzędzi. Uwaga - dostarczając dokumentację zgodnie z etapami realizacji projektu, zachowujemy wszystkie wcześniejsze rozdziały. Czyli dokument stopniowo przyrasta, ale oceniany będzie przyrost. ===== Informacje merytoryczne ===== [[amo:start|Laboratoria z Analizy i modelowania oprogramowania]] - proszę przewinąć do linków do laboratoriów w lewym dolnym rogu