PO: Java PROJEKTY. Małgorzata Janik. Zakład Fizyki Jądrowej

Podobne dokumenty
PO: Java PROJEKTY. Małgorzata Janik. Zakład Fizyki Jądrowej

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

PRZEWODNIK PO PRZEDMIOCIE

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Projekt zespołowy D1_10

Modelowanie i analiza systemów informatycznych

KARTA PRZEDMIOTU. Projekt zespołowy D1_10

Inżynieria oprogramowania II

Inżynieria oprogramowania (Software Engineering) Wykład 1

PRZEWODNIK PO PRZEDMIOCIE

Zajęcia trwają 15 tygodni (2 godziny wykładu, 2 godziny laboratorium tygodniowo) Zaliczenie zajęć jest uwarunkowane zaliczeniem zajęć laboratoryjnych

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Inżynieria oprogramowania, C12

Podstawy programowania III WYKŁAD 4

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

NAZWA PRZEDMIOTU/MODUŁU KSZTAŁCENIA:

Inżynieria oprogramowania (Software Engineering)

KARTA MODUŁU KSZTAŁCENIA

Projektowanie oprogramowania

PRZEWODNIK PO PRZEDMIOCIE

Instrukcja instalacji serwera bazy danych Microsoft SQL Server Express 2014

Egzamin / zaliczenie na ocenę*

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Opis. Liczba godzin zajęć dydaktycznych z

PRZEWODNIK PO PRZEDMIOCIE

Programowanie obiektowe

Inżynieria wymagań. Wykład 3 Zarządzanie wymaganiami w oparciu o przypadki użycia. Część 5 Definicja systemu

Informatyczne fundamenty

Projektowanie baz danych za pomocą narzędzi CASE

tel. (+48 81) tel. (+48 81) Wykład Ćwiczenia Laboratorium Projekt

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Dokument Detaliczny Projektu

Współczesne modele oprogramowania

Wykład 1 Inżynieria Oprogramowania

SCENARIUSZ LEKCJI. TEMAT LEKCJI: O czym mówią współczynniki funkcji liniowej? - wykorzystanie arkusza kalkulacyjnego na lekcjach matematyki

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa

Inzynieria Oprogramowania 2... nazwa przedmiotu SYLABUS A. Informacje ogólne. Wydział Ekonomiczno-Informatyczny w Wilnie

Tworzenie wersji demonstracyjnych enova365 na potrzeby prezentacji u Klienta

Pytania z przedmiotów kierunkowych

Załącznik 1 instrukcje instalacji

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa

Inżynieria oprogramowania - opis przedmiotu

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol

Rok I, semestr I (zimowy) Liczba godzin

Załącznik 1 instrukcje instalacji

Model przestrzenny Diagramu Obiegu Dokumentów. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Doskonalenie warsztatu dydaktycznego i podnoszenie jakości kształcenia

Podstawy informatyki i algorytmizacji. Wykład 1 organizacja zajęć

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Informatyczne podstawy projektowania Kod przedmiotu

PRZEWODNIK PO PRZEDMIOCIE

Dokumentacja projektu Makao karciana gra sieciowa

Projektowanie oprogramowania

Programowanie sieciowe Network programming PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Program nauczania informatyki w gimnazjum Informatyka dla Ciebie. Modyfikacja programu klasy w cyklu 2 godzinnym

PRZEWODNIK PO PRZEDMIOCIE

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa, Inżynieria oprogramowania, Technologie internetowe

INFORMATYKA PLAN STUDIÓW NIESTACJONARNYCH. Podstawy programowania Systemy operacyjne

Studentom zostaną dostarczone wzory lub materiały opisujące. Zachęcamy do wykonania projektów programistycznych w postaci apletów.

SCENARIUSZ LEKCJI. Czas realizacji. Podstawa programowa

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

Regulamin przedmiotów: Modelowanie symulacyjne

PRZEWODNIK PO PRZEDMIOCIE

Modelowanie obiektowe - Ćw. 1.

Programowanie zespołowe

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Gry komputerowe i multimedia, GKiM studia niestacjonarne Dla rocznika:

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Zakładanie konta w serwisie Canva i opcje interfejsu

Instalacja pakietu MS SQL Server 2012 Express Edition with Advanced Service

PRZEWODNIK PO PRZEDMIOCIE

SCENARIUSZ LEKCJI Przesuwanie paraboli - wykorzystanie arkusza kalkulacyjnego na lekcjach matematyki

Inżynieria wymagań. Wykład 2 Proces pisania przypadków użycia. Część 6 Wskazówki i sugestie

Instrukcja instalacji oprogramowania dla środowiska Windows

Liczba godzin w semestrze II r o k. Nazwa modułu. PLAN STUDIÓW (poziom studiów) I STOPNIA studia (forma studiów) niestacjonarne

Dokument Detaliczny Projektu

WYKAZ PRZEDMIOTÓW I PLAN REALIZACJI

Obowiązkowy A. Przedmioty kształcenia ogólnego 1 Etykieta w życiu publicznym wykład 9 zaliczenie tak 1 B. Przedmioty podstawowe

INFORMATYKA. PLAN STUDIÓW NIESTACJONARNYCH 2-go STOPNIA (W UKŁADZIE ROCZNYM) STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM A K L S P

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NYSIE

KARTA MODUŁU KSZTAŁCENIA

Projekt systemu informatycznego

KARTA PRZEDMIOTU. 1. NAZWA PRZEDMIOTU: Zespołowy projekt informatyczny. 2. KIERUNEK: Matematyka. 3. POZIOM STUDIÓW: I stopnia

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Projektowanie oprogramowania

PRZEWODNIK PO PRZEDMIOCIE

MŁODY PROGRAMISTA WARSZTATY PROGRAMOWANIA DLA UCZNIÓW KLAS MŁODSZYCH

Modelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Języki programowania I - opis przedmiotu

STUDIA STACJONARNE I STOPNIA Przedmioty kierunkowe

edycja 3 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012

Technologie informatyczne

INSTRUKCJA UŻYTKOWNIKA

Rok I, semestr I (zimowy) Liczba godzin

Transkrypt:

PO: Java PROJEKTY Małgorzata Janik Zakład Fizyki Jądrowej malgorzata.janik@pw.edu.pl

Projekty Po co? Etapy kontrolne Tematy i Ocena

Programowanie Obiektowe Strona internetowa przedmiotu http://java.fizyka.pw.edu.pl/ Projekt realizowany w domu, specyfikacja + trzy zajęcia projektowe sprawdzające postępy prac Szczegoły na temat projektów można znaleźć na stronie: http://java.fizyka.pw.edu.pl/projekty Na stronie można znaleźć również przykładowe tematy Temat projektu każdy zespół ustala indywidualnie z prowadzącym laboratoria 3/17

Po co robimy projekty? Abyście Państwo: napisali kawałek kodu, który ma kilka tysięcy lini: do tej pory Wasze największe projekty informatyczne miały zwykle kilkaset linii kodu teraz możemy to zmienić przećwiczyli pracę samodzielną (tj. bez ciągłego wsparcia prowadzącego) przypomina rzeczywistą pracę w relacji klient - wykonawca będziecie musieli sami rozwiązywać napotkane problemy korzystanie ze stack overflow oraz zwykłego google a to powszechna praktyka wśród programistow przećwiczyli pracę w zespole Do tej pory Państwa projekty były pisane dla Państwa, miały jednego użytkownika; praca w zespole to (bardzo porządana) umiejętność pisanie kodu dla szerszego odbiorcy musi zawierać odpowiednie nazewnictwo oraz być odpowiednio okomentowany 4/17

Wymogi biznesowe Praca dla biznesu jest specyficzna Klient biznesowy często nie do końca wie czego potrzebuje, a już na pewno nie wie jak to uzyskać Prowadzący zamienia się dla Państwa w klienta biznesowego i podaje przykładowe wymagania Jeśli potrzebujecie pomocy: Formalnej (zaliczenie projektu, przedłużenie terminu, zmiana wymagań ): konsultacje z prowadzącym laboratoria Programistycznej: Http://stackoverflow.com/ - "forum" ogólnoświatowe, mediana czasu oczekiwania na pierwszą odpowiedź to 21 minut Google Konsultacja z prowadzącym jest ostateczną instancją, jeśli pozostałe metody zawiodły 5/17

Realizowane zespołowo zespoły dwuosobowe Zaliczenie czterech etapów kontrolnych: I. Specyfikacja (3 zajęcia), 10% oceny II. Prototype - User Interface (5 zajęcia), 20% oceny [zajęcia projektowe] III. Release Candidate (10 zajęcia), 20% oceny [zajęcia projektowe] IV. Final (15 zajęcia). 50% oceny [zajęcia projektowe] Zaliczenie polega na: I. Oddanie dokumentu specyfikacji prowadzącemu laboratoria II IV. Zajęcia projektowe Projekty Prezentacja: (5-12 min na grupę) pierwsza godzina zajęć Omówienie kodu druga godzina zajęć 6/17

Realizowany Zespołowo W drugim tygodniu zajęć należy wysłać prowadzącemu e-mail z informacją o: Członkach zespołu Pomyśle na projekt Temat projektu powinien zostać uzgodniony z prowadzącym laboratoria przed przygotowaniem specyfikacji Przykłady tematów na stronie http://java.fizyka.pw.edu.pl/lista-projektow Zawsze można wybrać własny projekt Tematy w danej grupie nie mogą się powtarzać (kto pierwszy ten lepszy) Wystarczy OK od prowadzącego Projekt jest realizowany zespołowo, ale uzyskana ocena jest indywidualna. Wkład każdego z członków zespołu będzie oceniany indywidualnie przez prowadzącego. 7/17

Specyfikacja Określenie, które wymagania państwo spełniają Dokładnie opisać działanie programu Model matematyczny; wzory Szkice interfejsu Scenariusze użycia + diagramy UML (dodatkowe punkty) Listę dodatkowych funkcjonalności Należy określić ocenę, jaką Państwo chcielibyście uzyskać Jak długa? Jak najkrótsza, ale musi byż zrozumiała i zawierać wszystkie niezbędne elementy Specyfikacje poniżej 2 stron A4 prawdopodobnie nie będą wystarczająco dokładne Jakość specyfikacji (język, edycja) też jest oceniana 8/17

Szkic interfejsu przykład 9/17

Scenariusze użycia Sceriusze (przypadki) użycia (ang. Use cases) to technika stosowana w inżynierii oprogramowania w celu opisania wymagań tworzonego systemu Określają cel jaki użytkownik chce osiągnąć Określają kroki jakie w tym celu wykonuje = opis typowej interakcji między aktorem a systemem 10/17

Scenariusze użycia: efekt Comptona Sceriusz: zebranie statystyki CEL: użytkownik chce zebrać istotny statystycznie rozkład przekrojów czynnych Kroki: Użytkownik wybiera rodzaj źródła Użytkownik ustala energię fotonu padającego Użytkownik naciska przycisk szybka animacja System iteracyjnie oblicza wartość energii rozproszonego fotonu metodą Monte-Carlo i modyfikuje wykres zliczeń Dodatkowe punkty 11/17

UML: Class Diagrams Dodatkowe punkty 12/17

Funkcjonalności dodatkowe dostępne dla niemal wszystkich projektów Program można zainstalować za pomocą java web start Program można zainstalować za pomocą instalatora w systemie Windows Skorzystanie z technik/bibliotek nie omawianych na wykładzie Program wykorzystuję bazę danych SQL Użycie systemu kontroli wersji GIT / svn Projekt jest dostępny na licencji open source Program jest napisany w Javie FX, w zależności od jakości animacji Program jest wielojęzyczny (ma wersje językowe przynajmniej polską i angielską) Wielojęzyczność zaimplementowano za pomocą mechanzmu internacjonalizacji wbudowanych w JDK: http://docs.oracle.com/javase/tutorial/i18n/resbundle/index.html 13/17

Zaj. Proj. II - Prototype Prezentacja zespołu zawierająca: Opis projektu skrót specyfikacji Wykorzystana fizyka (z wzorami / wykresami) można poprzeć wzory wstępnymi obliczeniami z arkusza kalkulacyjnego (dodatkowe punkty) Zrzut ekranu interfejsu użytkownika GUI (interfejs użytkownika) Okienko, wszystkie przyciski, suwaki, menu, panele 8 12 min na zespół Będzie sprawdzany również kod, łącznie z weryfikacją wkładu członków zespołu 14/17

Zaj. Proj. III Release Candidate Prezentacja Krótki wstęp Przypomnienie o czym jest projekt Opis osiągniętych funkcjonalności Jasna lista co udało się osiągnąć / zaprogramować Zrzuty ekranu i/lub przykłady kodu Wersja beta projektu Spodziewany prototyp projektu (działająca wersja) Przynajmniej część obliczeń zaimplemenentowana Przynajmniej część funkcjonalności działa całkowicie poprawnie Oczekiwania: minimum połowa projektu powinna być skończona 5 8 min na zespół Będzie sprawdzany kod, łącznie z weryfikacją wkładu członków zespołu 15/17

Zaj. Proj. IV - Final Prezentajca 5 8 min na zespół Krótki wstęp Przypomnienie o wszystkich założeniach projektu Weryfikacja założeń Jasna lista co udało się osiągnąć z założonych funkcjonalności Opis ewentualnych zamian czy różnic Prezentacja projektu Uruchomić napisany projekt i zaprezentować jak działa całej grupie Wersja finalna projektu Spodziewana ostateczna werja projektu Finalna ocena kodu, łącznie z weryfikacją wkładu członków zespołu 16/17

Tematy Projektów Układ słoneczny w 3D Fizyka ruchu wielu ciał Modelowanie ruchu cząstki w polu EM Rzut ukośny wraz z oporami powietrza Można symulować pociski artylerii Symulacja gry w bilard Model bomby atamowej Twój Własny Pomysł Kilka przykładów 17/17

Ocena? Zależy od Was sami określacie, ile i jakie funkcjonalności chcecie oprogramować więcej funkcjonalności/lub ambitny projekt = wyższa ocena prowadzący może zasugerować dodatkowe funkcjonalnosci I od waszej pracy Ocena będzie obniżana za niespełnienie warunków formalnych (styl kodu, itp), brak założonych funkcjonalności oraz nieterminowość Ocena indywidualna dla każdego członka zespołu 18/17

Weryfikacja wkładu Omówienie kodu wraz z prowadzącym na zajęciach "projektowych" ma za zadanie zweryfikować wasz wkład w napisany kod. Przykłady pytań: Jaką rolę pełni ta klasa w projekcie? Co robi tutaj ten nawias trójkątny? Jaką rolę pełni ta funkcja for? Proszę przepisać tą funkcję by robiła to a to. W przypadku braku satysfakcjonującej odpowiedzi na pytania, prowadzący ma obowiązek nie zaliczyć odpytywanemu studentowi danego etapu projektu (dany etap zostaje oceniony na 0 punktów). Zalecane jest więc, by klarownie wyjaśnić prowadzącemu podział obowiązków w zespole zanim pytania zostaną zadane Zalecane jest oznaczanie autorstwa klas w kodzie Odpowiedzi, które nie będą uznawane za satysfakcjonujące: "Już dawno to pisałem, nie pamiętam dokładnie co ta funkcja robi..." "Siedziałem do 4 w nocy nad kodem, teraz już nie mogę się skupić..." 19/17

GIT Bardzo silnie polecane jest wykorzystanie systemu kontroli wersji GIT w trakcie przygotowywania projektu powszechnie wykorzystywane narzędzie zarówno w biznesie jak i w nauce często używane również do dzielenia się kodem 20/17

Więcej informacji http://java.fizyka.pw.edu.pl/projekty Wymogi formalne Przykładowe tematy Zawsze programuj jak gdyby osoba zajmująca się twoim kodem w przyszłości była agresywnym psychopatą, który wie gdzie mieszkasz. Podział pracy w zespole, plagiaty Proponowane dodatkowe funkcjonalności 21/17