Grzegorz Czapla Nr Indeksu: 5950 Grupa: 622. Studio Muzyczne nowa dokumentacja

Podobne dokumenty
Piotr Kopalko Warszawa System obsługi teatru

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Tomasz Kołodziejak. gr. 614 s5206. Imprezogenerator.

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu

Jerzy Skalski s9473, grupa WIs I.6-11c. System wspierający obsługę klienta dla firm sprzedających na Allegro

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

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

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Modelowanie Systemów informacyjnych (MSI)

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

MODEL KONCEPTUALNY DO PROJEKTU "CMENTARZ" ADRIAN MULARCZYK

Diagramy przypadków użycia

MODELOWANIE SYSTEMU INFORMATYCZNEGO WSPOMAGAJĄCEGO DZIAŁALNOŚĆ USŁUGOWĄ W ŚRODOWISKU OBIEKTOWO ZORIENTOWANYM.

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

Baza danych sql. 1. Wprowadzenie

Kasper Lorek gr.112 s6661 PROJEKT STUDIO FOTOGRAFICZNE

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

raporty-online podręcznik użytkownika

Podstawy programowania III WYKŁAD 4

Diagram przypadków użycia

Zasady organizacji projektów informatycznych

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

Modelowanie i Analiza Systemów informacyjnych (MAS)

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

Technologia programowania

MODELOWANIE OBIEKTOWE

TECHNOLOGIE OBIEKTOWE. Wykład 3

Spis treúci. 1. Wprowadzenie... 13

INSTRUKCJA UZYSKANIA DOŻYWOTNIEJ AKTUALIZACJI MAP (LIFETIME MAP UPDATES) W URZĄDZENIACH BECKER

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

Programowanie obiektowe

Grupa treści kształcenia, w ramach której przedmiot jest realizowany Przedmiot kierunkowy

Faza Określania Wymagań

Bazy danych 2. Wykład 1

Specyfikacja wymagań systemowych (może podlegać edytowaniu na kolejnych etapach)

Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny

Analiza i projektowanie aplikacji Java

Wypożyczalnia VIDEO. Technologie obiektowe

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Język UML w modelowaniu systemów informatycznych

Aplikacje w środowisku Java

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Modelowanie i analiza systemów informatycznych

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Programowanie obiektowe

DOTACJE NA INNOWACJE

Programowanie obiektowe

WOJSKOWA AKADEMIA TECHNICZNA

System wspomagania obsługi pracy gabinetu stomatologicznego

Definicja obiektowego modelu danych: struktura i zachowanie

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

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Projektowanie systemów informatycznych. Diagramy przypadków użycia

Inżynieria oprogramowania II

System CRM dla banku. Analiza i projekt. Paulina Grabowska, Piotr Kalański, Marcin Kubacki, Adrian Wiśniewski

Modelowanie i analiza systemów informatycznych Spis treści

Programowanie obiektowe

Case Study. aplikacji Microsoft Dynamics CRM 4.0. Wdrożenie w firmie Finder S.A.

Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C

Praca magisterska Jakub Reczycki. Opiekun : dr inż. Jacek Rumiński. Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska

INSTRUKCJA OBSŁUGI USTAWIEŃ DYNAMICZNIE PRZEDZIELANYCH ADRESÓW IP W URZĄDZENIACH SYSTEMU IP-PRO ORAZ REJESTRATORACH MY-DVR

Tworzenie warstwy zasobów projektowanie metodą strukturalną

Dokumentacja systemu erecepcja.com SYSTEM REJESTRACJI KLIENTÓW PRZEZ INTERNET

REFERAT PRACY DYPLOMOWEJ

System Zarządzania Dystrybucją

IO - Plan przedsięwzięcia

Programowanie obiektowe

Serwery Statefull i Stateless

Bazy danych Wykład zerowy. P. F. Góra

Wykład 1 Inżynieria Oprogramowania

Diagramy klas. dr Jarosław Skaruz

Projektowanie bazy danych przykład

Opis protokołu komunikacji programu mpensjonat z systemami zewnętrznymi (np. rezerwacji online)

Podstawy projektowania systemów komputerowych

Modelowanie danych, projektowanie systemu informatycznego

Inżynierski Projekt Zespołowy

Projekt aplikacji prywatnej przychodni weterynaryjnej

Projektowanie BAZY DANYCH

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Podstawy modelowania programów Kod przedmiotu

KARTA PRZEDMIOTU. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI Ogólne umiejętności posługiwania się komputerem

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Wzorce projektowe. dr inż. Marcin Pietroo

Charakterystyka aplikacji

UML w Visual Studio. Michał Ciećwierz

timetrack Przewodnik Użytkownika timetrack Najważniejsze Funkcje

Rysunek 1: Przykłady graficznej prezentacji klas.

REJESTRACJA W F.A.M.E. KROK PO KROKU DLA INDYWIDUALNYCH UŻYTKOWNIKÓW Z SEKTORA MEDIÓW (MIU)

System zarządzania bazą danych lecznicy dla zwierząt

Politechnika Koszalińska WEiI Katedra Inżynierii Komputerowej (KIK) Tematy projektów aplikacji bazodanowych z przedmiotu SZRBD

Obsługa kalendarza wizyt w serwisie elekarze. Podręcznik użytkownika

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

Jest to program stworzony z myślą o nauczycielach, wykładowcach, trenerach i prezenterach.

Marlena Plebańska. Nowoczesny e-podręcznik

Dokumentacja aplikacji Szachy online

Transkrypt:

Grzegorz Czapla Nr Indeksu: 5950 Grupa: 622 Studio Muzyczne nowa dokumentacja

Spis treści. Use Case... 3 2. Diagram klas... 9 2. Ideowy diagram klas... 9 2.2 Decyzje implementacyjne... 9 2.2. Dziedziczenie overlapping... 9 2.2.2 Asocjacje... 9 2.2.3 Agregacje i kompozycje... 9 2.2.4 Ekstensje... 9 2.3 Diagram klas po uwzględnieniu zmian wynikających z implementacji i przypadku użycia... 0 2.4 Diagram po przejściu na model relacyjny.... 4. Studio Muzyczne dokumentacja z PRI... 3 Spis Treści... 4. Dziedzina Problemowa:... 5 2. Cel:... 5 3. Zakres odpowiedzialności systemu:... 5 4. Użytkownicy systemu:... 5 5. Wymagania użytkownika:... 6 6. Wymagania funkcjonalne:... 7 7. Opis struktury systemu (schemat pojęciowy):... 8 8. Wymagania niefunkcjonalne:... 8 9. Opis przyszłej ewolucji systemu:... 8 0. Słownik:... 9 2

. Use Case. Diagram przypadków użycia z projektu na przedmiot PRI 3

.2 Szczegółowy opis przypadku: Rezerwuj salę.2. Język naturalny. Klient wprowadza swoje dane do systemu. a. Brak klienta w bazie, przejście do Rejestracji. b. Klient jest w bazie. Wybór metody rezerwacji. 2b.. Klient wybrał rezerwację przez zasób. 2b.. Wybór zasobu. 2b.a. Klient wybiera rezerwacje przez zasób: sala. 2b.a.. Klient wybiera reżysera. 2b.a.2. Klient wybiera termin rezerwacji. 2b.a.2a. Brak możliwości rezerwacji w podanym terminie. 2b.a.2a. Zmiana reżysera, powrót do pkt. 2b.a.. 2b.a.2a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.a.3. Klient wybiera salę. 2b.a.3a Brak odpowiedniej sali. 2b.a.3a. Zmiana reżysera, powrót do pkt. 2b.a.. 2b.a.3a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.a.4 Klient wybiera instrumenty. 2b.a.4a Brak odpowiednich instrumentów. 2b.a.4a. Zmiana reżysera, powrót do pkt. 2b.a.. 2b.a.4a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.a.5 Zapisanie rezerwacji w systemie. Koniec przypadku użycia. 2b.b. Klient wybiera rezerwacje przez zasób: reżyser. 2b.b.. Klient wybiera salę. 2b.b.2. Klient wybiera termin rezerwacji. 2b.b.2a. Brak możliwości rezerwacji w podanym terminie. 2b.b.2a. Zmiana sali, powrót do pkt. 2b.a.. 2b.b.2a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.b.3. Klient wybiera reżysera. 2b.b.3a. Brak odpowiedniego reżysera. 2b.b.3a. Zmiana reżysera, powrót do pkt. 2b.a.. 2b.b.3a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.b.4. Klient wybiera instrumenty. 2b.b.4a. Brak odpowiednich instrumentów. 2b.b.4a. Zmiana reżysera, powrót do pkt. 2b.a.. 2b.b.4a.2 Klient rezygnuje z rezerwacji. Koniec przypadku użycia. 2b.b.5. Zapisanie rezerwacji w systemie. Koniec przypadku użycia. 2b.2. Klient wybrał rezerwację przez termin. 2b.3. Klient podaje termin rezerwacji. 2b.3a. Podany błędny termin, powrót do pkt. 2b.3. 2b.4. Klient wybiera potrzebne instrumenty. 2b.4a. Brak potrzebnych instrumentów. 2b.4a. Zmiana terminu rezerwacji, powrót do pkt. 2b.3. 2b.4a.2 Rezygnacja z rezerwacji. Koniec przypadku użycia. 2b.5. Klient wybiera reżysera. 2b.5a. Brak reżysera. 2b.5a. Zmiana terminu rezerwacji, powrót do pkt. 2b.3. 2b.5a.2 Rezygnacja z rezerwacji. Koniec przypadku użycia. 2b.6. Klient wybiera salę. 2b.6a. Brak Sali. 2b.6a. Zmiana terminu rezerwacji, powrót do pkt. 2b.3. 2b.6a.2 Rezygnacja z rezerwacji. Koniec przypadku użycia. 2b.7. Zapisanie rezerwacji w systemie. Koniec przypadku użycia. 4

.2.2 Diagram aktywności znajdź klienta zarejestruj klienta nie znaleziony znaleziony wybierz metodę rezerwacji błędny termin wybierz zasób przez zasoby przez termin podaj termin rezerwacji przez sale wybierz salę tak nie poprawny termin przez reżyserów nie tak wybierz potrzebne instrumenty wybierz reżysera tak nie wybierz termin zmieo termin rezerwacji brak instrumentu Instrumenty wybrane brak terminu wybierz reżysera wybierz termin zmieo reżysera zmieo salę brak reżysera termin wybrany reżyser wybrany brak terminu wybierz reżysera brak sali wybierz salę termin wybrany wybierz salę brak reżysera reżyser wybrany brak sali wybierz potrzebne instrumenty sala wybrana wybierz potrzebne instrumenty brak instrumentu brak instrumentu Instrumenty wybrane Instrumenty wybrane Zapisz rezerwacje sala wybrana 5

.2.3 Diagram stanów: Rezerwacja 6

.2.4 Diagram Sekwencji 7

8

2. Diagram klas 2. Ideowy diagram klas Person -personaldata -phonenumber [] {overlapping} Client -registerdate Employee -/worktime -registerdate +count_worktime() Musician -influence SoundDirector -perhoursalary -speciality +sprawdz_dostepnosc() +usun() SoundTechnician -salary -minsalary := 600 0..* Reservation -reservationfrom -reservationto +anuluj_rezerwacje() * -name Room +roomocupation(wynik reservations) * Idiophone -vibrashape Instrument -name -tone [0..] Electrophone Membraphone -membraneshape 2.2 Decyzje implementacyjne 2.2. Dziedziczenie overlapping Ten typ dziedziczenia nie występuje w języku Java, w związku z tym skorzystałem z zamiany na kompozycję. 2.2.2 Asocjacje Asocjację implementuję za pomocą natywnych referencji języka Java oraz odpowiednich metod. 2.2.3 Agregacje i kompozycje Kompozycję zaimplementuję za pomocą utworzenia specjalnych konstruktorów prywatnych i dodaniem specjalnych metod przypisującej nowy element do kompozycji. 2.2.4 Ekstensje Ekstensje klas zapewniam poprzez klasę ObjectPlus, po której dziedziczy każda z klas wchodzących w skład aplikacji. Trwałość ekstensji będzie zapewniona za pomocą zapisu do bazy danych. 9

2.3 Diagram klas po uwzględnieniu zmian wynikających z implementacji i przypadku użycia Po uwzględnieniu zmian wynikających z implementacji w języku Java i informacji uzyskanych z diagramów: aktywności, stanów i interakcji(diagram sekwencji), diagram klas prezentuje się następująco. Person -personaldata -phonenumber [] 0.. 0.. Client -registerdate +findclient() +registerclient() Employee -/worktime -registerdate +count_worktime() Reservation -reservationfrom -reservationto -state +abortreservation() +choosereservationmethod() +getreservationmethods() +setdirector() +setinstruments() +setreservationfrom() +setreservationto() +testreservationaviability() +savereservation() +setreservationtime() +setroom() +setstate() +getstate() * Musician -influence SoundDirector -perhoursalary -speciality +checkaviability() +delete() +getaviabledirectors() +getdirectors() Instrument -name -tone [0..] +getinstruments() +getaviableinstruments() SoundTechnician -salary -minsalary := 600 0..* -name Room +roomocupation(wynik reservations) +getaviablerooms() +getrooms() Idiophone -vibrashape Electrophone Membraphone -membraneshape * Jak widać dziedziczenie overlapping zostało zamienione na kompozycję, został dodany atrybut state w klase Reservation, oraz wiele metod wynikających z diagramów: aktywności i interakcji. 0

2.4 Diagram po przejściu na model relacyjny. Trwałość ekstensji postanowiłem zapewnić za pomocą relacyjnej bazy danych, co wymusiło na mnie, przejście z modelu obiektowego na relacyjny. Poniżej diagram dla modelu relacyjnego.

3. Projekt interfejsu użytkownika dla przypadku użycia 3. Okno rejestracji użytkownika Rejestracja Klienta Imię Nazwisko PESEL TextBox TextBox TextBox Rejestruj 3.2 Okno wyboru użytkownika Wybór Klienta Wyszukaj: TextBox Klienci Record, TdO Record, TdO Record, TdO Zarejestruj się Przejdź do Rezerwacji 3.3 Okna rezerwacji Rezerwacja Rezerwacja Przez zasoby W terminie Przez zasoby W terminie Reżyser Sala Rezerwacja od: TextBox Reżyser Sala: ComboBox Rezerwacja do: TextBox Rezerwacja od: Rezerwacja do: Dostępne sale reżyserowie: TextBox TextBox ComboBox Dostępne instrumenty Record, TdO Record, TdO Dostępne instrumenty Record, TdO Record, TdO Brak instrumentów Record, TdO Record, TdO Dostępni reżyserowie: Dostępne sale: ComboBox ComboBox Brak instrumentów Rezerwuj Rezerwuj 2

4. Studio Muzyczne dokumentacja z PRI Grzegorz Czapla gr. 422 Studio Muzyczne 3

Spis Treści Spis Treści...4. Dziedzina Problemowa:...5 2. Cel:...5 3. Zakres odpowiedzialności systemu:...5 4. Użytkownicy systemu:...5 5. Wymagania użytkownika:...6 6. Wymagania funkcjonalne:...7 7. Opis struktury systemu (schemat pojęciowy):...8 8. Wymagania niefunkcjonalne:...8 9. Opis przyszłej ewolucji systemu:...8 0. Słownik:...9 4

. Dziedzina Problemowa: Projektowany system mógłby znaleźć zastosowanie w studiu nagraniowym, jako element organizujący i wspomagający prace samego studia. 2. Cel: System ma na celu usprawnienie organizacji pracy w studiu, a także pomoc w rozwoju i klasyfikacji utworów stworzonych przez klientów, w celu lepszej organizacji zakupów sprzętu do studia. 3. Zakres odpowiedzialności systemu: Głównymi zadaniami budowanego systemu są, organizacja pracy i czasu w studiu za pomocą rezerwowania danego czasu w sali nagraniowej, a ponadto wybranie stosownego do nagrywanego dźwięku reżysera dźwięku. Dodatkowo system będzie rejestrował wszystkie prace stworzone w studiu w celu umożliwienia klientom studia szybkiego dostępu do prac, oraz doradztwo odnośnie utworów. Zakłada się też redukcję kosztów, przeznaczając znaczna większość budżetu na sprzęt który jest faktycznie potrzebny klientom studia, na podstawie danych o używanych instrumentach. 4. Użytkownicy systemu: Użytkownikami systemu będą: Właściciel studia, Klienci (Muzyk), Pracownicy (Reżyser dźwięku, Technik dźwięku). 5

5. Wymagania użytkownika: System zapisuje informacje o danych osobowych i numerach telefonów klientów i pracowników systemu, pracownik może też być klientem studia. Zarówno klienci jak i pracownicy dzielą się ze względu na typ. Aktualnie klientami studia są jedynie prywatni muzycy lecz zakłada się możliwość rozszerzenia klasyfikacji o inne typy klientów. Dla każdego z pracowników chcemy pamiętać datę rozpoczęcia współpracy, a także wiedzieć jaki jest ich staż pracy. Pracownicy dzielą się na Reżyserów dźwięku, dla których chcemy pamiętać ich specjalność i stawkę godzinowa, oraz na Techników dźwięku zajmujących się wyposażeniem poszczególnych sal w studiu, chcemy dla nich pamiętać informacje o podstawowym wynagrodzeniu, które nie może być mniejsze od minimalnego wynagrodzenia wspólnego dla wszystkich Techników(aktualnie 600zl), podział jest kompletny i rozłączny. Każda z sal wyposażona jest w wiele Instrumentów(dla których pamiętamy nazwę, oraz jeśli istnieje, barwę), każdy z nich dzieli się ze względu na typ na Idiofony(dla których istotny jest kształt wibratora), Membranofony(dla których istotny jest kształt membrany), oraz Elektrofony. Wymaga się od systemu możliwości wglądu we właściwości każdego z instrumentów. Muzyk może zarezerwować czas w danej sali, a także wybrać jedno z reżyserów który w trakcie tego czasu jest wolny i pomoże mu w stworzeniu utworów, jednocześnie powinien móc skasować rezerwacje na którą nie będzie w stanie się zjawić. Pracownik powinien mieć wgląd w swoje wynagrodzenie, zobaczyć jaki jest jego staż w studiu oraz mieć możliwość rejestracji klienta. Technicy powinni mieć w systemie wgląd w sale którymi się zajmują. Ponadto właściciel powinien mieć dostęp do funkcjonalności wszystkich pracowników. System wymaga komputera klasy PC z szerokopasmowym podłączeniem do internetu który będzie w stanie obsługiwać bazę danych z utworami klientów studia, pozwoli na dostęp do gotowych utworów klienta, a także umożliwi prace nad utworami reżysera dźwięku z poza studia. 6

6. Wymagania funkcjonalne: Use Case Studio Muzyczne skasuj pracownika skasuj klienta pokaz liste pracownikow Wlasciciel pokaz liste klientow rezerwuj sale <<include>> pokaz wolnych rezyserow dzwieku anuluj rezerwacje Klient pokaz wpływy zmien wplywy Muzyk pokaz staz pracownika wprowadz dane klienta pokaz wynagrodzenie pracownika Pracownik pokaz wynagrodzenie rezysera Rezyser dzwieku Pokaz obslugiwane sale Technik dzwieku pracownik rezyser dzwieku wlasciciel klient muzyk technik dzwieku 7

7. Opis struktury systemu (schemat pojęciowy): Person -personaldata -phonenumber [] {overlapping} Client -registerdate Employee -/worktime -registerdate +count_worktime() Musician -influence SoundDirector -perhoursalary -speciality +sprawdz_dostepnosc() +usun() SoundTechnician -salary -minsalary := 600 0..* Reservation -reservationfrom -reservationto +anuluj_rezerwacje() * Instrument -name -tone [0..] Room -name +roomocupation(wynik reservations) Idiophone Electrophone Membraphone -vibrashape -membraneshape * 8. Wymagania niefunkcjonalne: System wymaga komputera klasy PC z technologią wielordzeniową oraz z szerokopasmowym podłączeniem do Internetu za pomocą łącza xdsl który będzie w stanie obsługiwać bazę danych z utworami klientów studia, pozwoli na dostęp do gotowych utworów klienta, a także umożliwi prace nad utworami reżysera dźwięku z poza studia. 9. Opis przyszłej ewolucji systemu: System jest przygotowany do rozszerzenia na nowego rodzaju klientów, planuje się wprowadzenie specjalnej oferty dla tworzenia dźwięków lektora oraz mastering reklam dla 8

klientów firmowych. Dodatkowo system jest przygotowany do rozszerzenia jego funkcjonalności do obsługi wielu studiów muzycznych. 0. Słownik: Reżyser dźwięku osoba zajmująca się montażem oraz aranżacją nagrywanego utworu. Technik dźwięku osoba pomagająca reżyserowi dźwięku w kwestiach przygotowania sprzętu do nagrywania. Idiofon instrument muzyczny w którym źródłem dźwięku jest ciało stałe mające niezmienną, naturalną sprężystość. Membranofon instrument muzyczny w którym źródłem dźwięku jest drgająca membrana. Elektrofon instrument muzyczny w których dźwięk wytwarzany jest za pomocą impulsów elektrycznych. 9