Music Store Support App Dokumentacja projektu



Podobne dokumenty
Music Store Support App Dokumentacja projektu

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Politechnika Koszalińska Wydział Elektroniki i Informatyki

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

Konspekt pracy inżynierskiej

REFERAT O PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ

OPIS PRZEDMIOTU ZAMÓWIENIA

Wypożyczalnia samochodów

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Strona wizytówka od 400 zł

TEMAT1 DZIENNIK OCEN STUDENTÓW

Protokół założycielski

Zasady organizacji projektów informatycznych

SKRÓCONY OPIS systemu lojalnościowego

Dokument Detaliczny Projektu Temat: Gra karciana Makao Colakao

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4

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

PRZEWODNIK PO PRZEDMIOCIE

RFP. Wymagania dla projektu. sklepu internetowego B2C dla firmy Oplot

Przegląd i ewaluacja narzędzi do szybkiego tworzenia interfejsu użytkownika (RAD).

GoBiz System platforma współpracy marektingowej

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

Projekt zespołowy Osoby wykonujące projekt:

REFERAT PRACY DYPLOMOWEJ

egroupware czy phpgroupware jest też mniej stabilny.

Wykład 1 Inżynieria Oprogramowania

Narzędzia CASE dla.net. Łukasz Popiel

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

TEMAT1 DZIENNIK OCEN STUDENTÓW. Projekt aplikacji bazodanowej w środowisku INTERNET

PRZEWODNIK PO PRZEDMIOCIE

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

VALIO Sp. z o.o. Załącznik nr 1 do Zapytania ofertowego dotyczącego zakupu licencji części systemu B2B oraz wykonania Warstwy Prezentacyjnej.

SPECYFIKACJA WDROŻENIA SKLEPU MAGENTO

SPECYFIKACJA WYMAGAŃ

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

INŻYNIERIA OPROGRAMOWANIA

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

DOKUMENTACJA ZBIORCZA APLIKACJI ORGANIZER

Projekt przejściowy 2015/2016 BARTOSZ JABŁOŃSKI, TOMASZ JANICZEK

SVN. 10 października Instalacja. Wchodzimy na stronę i pobieramy aplikację. Rysunek 1: Instalacja - krok 1

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

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

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA

Podstawy programowania III WYKŁAD 4

ZAŁĄCZNIK NR 3 OPIS PRZEDMIOTU ZAMÓWIENIA DOTYCZĄCY WDROŻENIA PLATFORMY ZAKUPOWEJ

JavaFX. Technologie Biznesu Elektronicznego. Wydział Informatyki i Zarządzania Politechnika Wrocławska

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

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

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

PRZEWODNIK PO PRZEDMIOCIE

Usługi analityczne budowa kostki analitycznej Część pierwsza.

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

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

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Usługa: Testowanie wydajności oprogramowania

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Opis Architektury Systemu Galileo

Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania

NASZA MISJA. wszystkie nasze dzialania sfokusowane sa na efektywną, partnerską współprace.

Wstęp do Informatyki. Klasyfikacja oprogramowania

OfficeObjects e-forms

Tworzenie oprogramowania

SklepEF moduł sklepu i zamówień internetowych do programu Hermes SQL firmy Humansoft

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Zarządzanie zadaniami w projektach informatycznych na przykładzie systemu Trac. Integracja z Eclipse.

IO - Plan przedsięwzięcia

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

ActiveXperts SMS Messaging Server

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

KOMPUTEROWE WSPOMAGANIE ZARZĄDZANIA

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

Specyfikacja techniczna GoBiz Virtual Office - systemu dostępu do zasobów wirtualnego biura przez Internet

I. Opis przedmiotu zamówienia

PRZEWODNIK PO PRZEDMIOCIE


ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

CMS, CRM, sklepy internetowe, aplikacje Web

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

Dokumentacja projektu QUAIKE Architektura oprogramowania

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

WYKONANIE OPROGRAMOWANIA DEDYKOWANEGO

Specyfikacja dla Zadania 1: Kurs programowania sterowników PLC dla uczniów grupy I w ZSP nr 2 w Brzesku.

Agencja Interaktywna

Procesowa specyfikacja systemów IT

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

Plan testów. Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski. 4 czerwca 2006

Zmiana logo. Dziękujemy za wybór naszych rozwiązań. apjoo od Apláuz. Wspólnie przebrniemy przez proces konfiguracji strony www i wstawiania treści.

Tomasz Grześ. Systemy zarządzania treścią

Szczegółowy harmonogram rzeczowy realizacji prac systemu B2B

PRZEWODNIK PO PRZEDMIOCIE

Plan Testów Systemu SOS

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Transkrypt:

2013 Music Store Support App Dokumentacja projektu Dorota Chyła Tomasz Bednarski Wojciech Florkowski Łukasz Gąsiewicz 2013-06-03

Spis treści 1. Protokół założycielski grupy projektowej... 4 2. Raport o wybranym instrumentarium zespołu projektowego... 7 2.1. Narzędzia projektowe... 7 2.2. Aktualizacja... 8 3. Raport klienta... 9 3.1. Określenie wymagań właściciela sklepu... 9 3.2. Słownik terminów... 10 4. Raport dla zleceniodawcy... 11 4.1. Cele przedsięwzięcia... 11 4.2. Zakres przedsięwzięcia... 11 4.3. Systemy zewnętrzne... 11 4.4. Szkicowy opis wymagań... 11 4.5. Szkicowy opis modelu systemu... 12 4.6. Szkicowy opis rozwiązań... 12 4.7. Szacunkowe koszty projektu... 12 4.8. Harmonogram prac... 13 5. Specyfikacja wymagań systemowych... 14 5.1. Słownik pojęć... 14 5.2. Wymagania funkcjonalne... 15 5.3. Wymagania niefunkcjonalne... 16 5.4. Charakterystyka użytkowników... 16 6. Styl firmowy projektu... 17 6.1. Papier firmowy... 17 6.2. Logo... 18 6.3. Wizytówka... 18 7. Notatka z uzasadnieniem wyboru metodologii, narzędzia CASE i techniki modelowania.... 19 7.1. Metodologia... 19 7.2. Narzędzia CASE... 19 7.3. Technika modelowania... 20 8. Komplet diagramów do projektu... 21 8.1. Diagram przypadków użycia... 21

8.2. Diagram klas... 22 8.3. Model biznesowy właściciela i klienta sklepu... 23 8.4. Konceptualny oraz fizyczny model bazy danych... Błąd! Nie zdefiniowano zakładki. 9. Opis tekstowy stworzonego logicznego modelu aplikacji... 24 9.1. Słownik danych projektu... 24 9.2. Opis słownika danych... 26 9.3. Model konceptualny bazy danych... 27 9.4. Model fizyczny bazy danych... 28 10. Notatka tekstowa uzasadniająca wybór narzędzi RAD... 29 11. Dokument detaliczny projektu (DDP)... 30

1. Protokół założycielski grupy projektowej W dniu 26.02.2013 została zawiązana grupa projektowa w składzie: Członek zespołu Index Stanowisko Tomasz Bednarski U-1139 Projektant DBMS, programista, grafik Dorota Chyła U-1164 Kierownik projektu, programista, grafik Wojciech Florkowski U-1189 Dokumentalista, tester, analityk, projektant Łukasz Gąsiewicz U-1199 Programista, analityk, projektant Grupa projektowa zobowiązuje się do zrealizowania wybranego zadania projektowego w terminie do dnia 30.06.2013. 1 2 3 Grupę projektową uważa się za rozwiązaną w dniu zrealizowania zadania projektowego, nie później niż w dniu 30.06.2013. Obowiązkiem każdego członka zespołu jest terminowe wykonanie wyznaczonych mu celów projektowych oraz obowiązkowe uczestnictwo w ćwiczeniach projektowych z przedmiotu Projekt Zespołowy 4 5 Dla członka zespołu przewiduje się kary określone w 6 w przypadku niewywiązywania się z obowiązków określonych w 4 pkt. niniejszego protokołu. Określa się następujące kary: 6 W przypadku nieobecności na zajęciach, na członka grupy zostanie nałożona kara w postaci dwóch punktów karnych. W przypadku niewykonania wyznaczonego zadania w określonym terminie ustala się pięć punktów karnych. W przypadku dalszego niewywiązania się z zadanego zadania w wyznaczonym polubownie terminie, wartość kary zostaje zwiększana do czasu wykonania zadania. W przypadku nie stawienia się na spotkanie grupy zostanie nałożona kara w postaci jednego punktu karnego.

W przypadku przekroczenia dwudziestu punktów karnych członek zostanie usunięty z grupy projektowej przez kierownika projektu. Kierownik zespołu zastrzega sobie prawo do zmniejszenia oceny końcowej członkom zespołu, którzy zdobyli dużą ilość punktów karnych i jednocześnie nagradzanie poprzez podwyższenie oceny członków, który nie otrzymali punktów karnych bądź zgromadzili ich małą ilość. 7 Grupa projektowa drogą demokratyczną ustaliła kierownika projektu w osobie Dorota Chyła. Kierownik zastrzega sobie prawo do tymczasowego wyznaczenia danemu pracownikowi innej roli, niż określona w umowie (w zależności od etapu prac). Tematem pracy jest: Aplikacja wspomagająca pracę muzycznego sklepu internetowego. 8 9 10 Zebrani członkowie grupy projektowej ustalili obowiązki stanowisk: 1. Kierownik projektu: kontrolowanie postępów pracy przydzielanie zadań projektowych ustalanie harmonogramu zadań 2. Programista: wykonywanie zadania zlecone przez kierownika pisanie kodu programu obsługa repozytorium 3. Projektant: wykonywanie zadania zlecone przez kierownika ustalanie wymagań wobec aplikacji obsługa repozytorium pomoc w tworzeniu dokumentacji

4. Analityk: wykonywanie zadania zlecone przez kierownika ustalanie wymagań wobec aplikacji analiza funkcji aplikacji obsługa repozytorium 5. Dokumentalista: wykonywanie zadania zlecone przez kierownika tworzenie dokumentacji obsługa repozytorium 6. Tester: wykonywanie zadania zlecone przez kierownika testowanie aplikacji obsługa repozytorium 7. Programista DBMS: wykonywanie zadania zlecone przez kierownika testowanie aplikacji testowanie połączeń z bazą danych 8. Grafik: wykonywanie zadania zlecone przez kierownika projektowanie interfejsu aplikacji wykonywanie grafiki do interfejsu

2. Raport o wybranym instrumentarium zespołu projektowego 2.1. Narzędzia projektowe Kierownik zespołu projektowego po konsultacji z zespołem, ustala listę narzędzi z której będą wykorzystywane do ukończenia projektu Aplikacja wspomagająca pracę muzycznego sklepu internetowego. Podczas projektowania będziemy korzystać z repozytorium online - http://code.google.com/p/music-store-support-app/ oraz systemem kontroli wersji SVN (Subversion). Testy projektowanej aplikacji będą przeprowadzone na systemach operacyjnych takich jak: Windows 7 Home Premium, Windows 7 Professional, Windows 8 Professional. Podczas testowania zespół projektowy będzie korzystał z systemowego Menadżera Zadań jak i narzędzia Process Explorer 15.3 na licencji Freeware. Zespół projektowy będzie pracował na systemach operacyjnych takich jak: Windows 7 Home Premium / Windows 7 Professional / Windows 8 Professional, licencja komercyjna na 4 stanowiska Do projektowania i zarządzania bazą danych użyte zostaną narzędzia: PowerDesigner 15, licencja komercyjna na 2 stanowiska Posiada funkcję wielowymiarowego modelowania danych(obsługuje ponad 60 platform bazodanowych). MySQL 5, licencja GPL Narzędzie do zarządzania relacyjnymi bazami danych dostępne dla wielu platform(windows, Linux) i języków programowania(c++, Java) Do realizacji projektu będzie użyty język Java. Będziemy korzystać ze środowiska RAD w postaci: Eclipse Juno (4.2) SR2, licencja EPL(Eclipse Public License)

Podczas tworzenia dokumentacji, będą wykorzystywane programy m.in.: PowerDesigner 15, licencja komercyjna na 2 stanowiska Przydatne funkcje: modelowania procesów biznesowych, modelowanie aplikacji za pomocą języka UML. FreeMind 0.9.0, licencja Freeware GanttProject 2.5.5, licencja Freeware - Aplikacją do tworzenia i planowania projektów przy użyciu specjalnych wykresów Gantta. StarUML 5.0, licencja GNU - Szybkie, elastyczne, funkcjonalne i rozszerzalne środowiska modelowania UML (Unified Modeling Language) pod platformę Windows. Yaoqiang BPMN Editor 2.1.24, licencja GPLv3 - Edytor graficzny pozwalający na projektowanie diagramów biznesowych zgodnych ze specyfikacją OMG (BPMN 2.0). Narzędzie do tworzenia grafiki: Adobe Photoshop CS3/CS5, licencja komercyjna na 2 stanowiska - Adobe Photoshop to najpopularniejszy program do obróbki graficznej zdjęć, map bitowych, grafik rastrowych, itp. 2.2. Aktualizacja W trakcie pracy zespołu projektowego nastąpiła zmiana komercyjnego oprogramowania Adobe Photoshop na jego odpowiednik z licencją GNU Gimp. Oprogramowanie PowerDesigner zostało wykorzystane na licencji trial. Taka decyzja zespołu projektowego umożliwiła zdecydowane zredukowanie kosztów wykonywanego projektu. Zmiany uwzględniono w dalszej części niniejszej dokumentacji.

3. Raport klienta Aplikacja wspomagająca pracę muzycznego sklepu internetowego Aplikacja ma ułatwiać zarządzanie pracą internetowego sklepu muzycznego według preferencji i wymagań klienta. Program docelowo ma działać w środowisku Windows 7. Zakładamy, że użytkownikiem aplikacji będzie właściciel sklepu. 3.1. Określenie wymagań właściciela sklepu Prowadzony przez właściciela sklep muzyczny zajmuje się sprzedażą albumów muzycznych w postaci płyt CD. Właściciel sklepu ma możliwość w pełni zarządzać asortymentem sklepu. Z poziomu aplikacji oprócz przeglądania, możliwe jest dodawanie produktów do bazy danych, ich modyfikacja oraz usuwanie. Poprzez modyfikację rozumiemy zmianę ceny, opisu produktu, czy zdjęć poglądowych. Podobnie jest z klientami sklepu właściciel sklepu ma pełny wgląd do ich kont, może tworzyć nowe, modyfikować już istniejące lub usuwać je z systemu. Modyfikacja umożliwia zmianę danych klienta, tj. adresu i numerów kontaktowych. Produkty znajdujące się w sklepie mogą posiadać promocje, które to są ustalane przez właściciela sklepu w niniejszej aplikacji. Promocje mogą polegać np. na gratisowej dostawie w przypadku zakupu wielu produktów rodzaj promocji ustala właściciel. Z pojęciem promocji związany jest również rabat, który może obowiązywać w danym okresie lub w określonych przez właściciela warunkach na przykład 5% zniżki dla stałych klientów. Aplikacja wspomagająca pozwala na prowadzenie wszelkich statystyk sprzedaży w danym okresie wraz z ich graficzną prezentacją w postaci konkretnych raportów. Właściciel określa jakie raporty mają być dostępne.

Wymagania właściciela sklepu: Przeglądanie płyt CD (zawartości sklepu) Zarządzanie płytami CD (dodawanie, usuwanie, edytowanie) Dodawanie zdjęć albumów Zarządzanie kontami klientów (przeglądanie, dodawanie, usuwanie, modyfikowanie) Kontakt z klientem poprzez link mailto Zarządzanie zamówieniami (przeglądanie, realizacja, finalizacja) Włączanie / wyłączanie promocji Zarządzanie rabatami Sporządzanie statystyk (sprzedaży w danym okresie, odwiedzin produktu, utargu) Sprawdzanie dostępności płyt CD na magazynie 3.2. Słownik terminów Finalizacja zamówień nadanie zamówieniu statusu zrealizowano, oznaczające wykonanie przez właściciela niezbędnych czynności związanych z wysyłką przedmiotu. Klient osoba dokonująca zakupów w internetowym sklepie muzycznym. Realizacja zamówień proces polegający na przygotowaniu towaru do wysyłki, przekazaniu go do firmy kurierskiej oraz poinformowaniu klienta o statusie zamówienia. Aplikacja wyświetla właścicielowi sklepu dane klienta niezbędne do wysyłki oraz informuje o wpłynięciu zapłaty za towar. Zarządzanie rabatami ustalanie warunków, na podstawie których przyznawane są rabaty (np. 5% zniżki dla 15% najlepszych klientów).

4. Raport dla zleceniodawcy 4.1. Cele przedsięwzięcia Celem projektu jest stworzenie aplikacji wspomagającej zarządzanie internetowym sklepem muzycznym. Aplikacja ma ułatwiać właścicielowi sklepu zarządzanie płytami CD, danymi klientów oraz zamówieniami. 4.2. Zakres przedsięwzięcia Określenie wymagań właściciela sklepu Analiza przedstawionych zagadnień Projekt aplikacji zgodnie z ustaleniami z właścicielem sklepu Implementacja funkcjonalności w aplikacji Dokumentacja całego projektu Testowanie aplikacji Wdrożenie aplikacji 4.3. Systemy zewnętrzne Aplikacja docelowo ma działać w środowisku Microsoft Windows 7 (wersja x86), jednakże wykorzystana technologia Java umożliwia jej uruchamianie na innych systemach wspierających tę technologię (wymagane JRE). Aplikacja współpracuje z systemem DBMS MySQL w wersji 5.5.27. 4.4. Szkicowy opis wymagań Przeglądanie płyt CD (zawartości sklepu) Zarządzanie płytami CD (dodawanie, usuwanie, edytowanie) Dodawanie okładek albumów Zarządzanie kontami klientów (przeglądanie, dodawanie, usuwanie, modyfikowanie) Kontakt z klientem poprzez link mailto Zarządzanie zamówieniami (przeglądanie, realizacja, finalizacja) Aktywowanie / dezaktywowanie promocji Zarządzanie rabatami Sporządzanie statystyk (sprzedaży w danym okresie, odwiedzin produktu, utargu) Sprawdzanie dostępności płyt CD na magazynie

4.5. Szkicowy opis modelu systemu System składa się z bazy danych MySQL oraz z aplikacji Java. Baza danych obsługiwana jest przez aplikację, która stanowi przyjazny interfejs. Zapytanie do bazy Start (działanie aplikacji) Odpowiedź serwera Zakończenie pracy lub kontynuacja Wyświetlenie informacji 4.6. Szkicowy opis rozwiązań Aplikacja będzie zrealizowana w technologii Java przy użyciu narzędzia Eclipse. Wykorzystanie biblioteki Swing zapewni aplikacji prosty interfejs (przy założeniu, że właściciel sklepu potrafi swobodnie poruszać się w środowisku Windows). Aplikacja łączy się z bazą danych MySQL w wersji 5.5.27 przy użyciu JDBC. 4.7. Szacunkowe koszty projektu Pensje pracowników Ilość pracowników Koszt zł/m-c Czas pracy (m-c) Całkowitykoszt pracy [zł] Programiści 3 5000 2 30000 Analityk 1 4000 2 8000 Kierownik projektu 1 13000 2 26000 Grafik 1 3500 2 7000 Testerzy 2 3200 2 12800 Projektant aplikacji 1 7000 2 14000 Projektant DBMS 1 3900 2 7800 Razem: 105600

4.8. Harmonogram prac

5. Specyfikacja wymagań systemowych 5.1. Słownik pojęć Właściciel sklepu użytkownik aplikacji. Płyta CD album muzyczny zawierający utwory danego autora. Autor muzyk albo zespół muzyczny. Zamówienie zestaw danych o płytach, ich ilości i cenie, które klient chce kupić, jak i danych o kliencie niezbędnych do realizacji zamówienia. Klient osoba dokonująca zakupów w internetowym sklepie muzycznym. Konto klienckie zbiór danych klienta. Dyskografia - zbiór wszystkich płyt danego autora. Utwór produkt stworzony przez autora. Gatunek gatunek muzyki (np., rap, disco polo, reggae, rock, pop). Rabat zniżka oznaczona procentowo lub kwotowo od ustalonej ceny określonego zamówienia stałych klientów. Promocja reklama produktu charakteryzująca się np. zniżką ceny produktu, darmową wysyłką. Cena koszt (cena jednostkowa) określający wartość pieniężną, którą należy uiścić w przypadku zakupu płyty CD. Koszt zamówienia suma cen wszystkich zmówionych płyt. Stały klient klient mogący otrzymać rabat na zamówienie, nadawany przez właściciela sklepu. Finalizacja zamówień nadanie zamówieniu statusu zrealizowano, oznaczające wykonanie przez właściciela niezbędnych czynności związanych z wysyłką przedmiotu. Realizacja zamówień proces polegający na przygotowaniu towaru do wysyłki, przekazaniu go do firmy kurierskiej oraz poinformowaniu klienta o statusie zamówienia. Aplikacja wyświetla właścicielowi sklepu dane klienta niezbędne do wysyłki oraz informuje o wpłynięciu zapłaty za towar.

5.2. Wymagania funkcjonalne 1. Zarządzanie kontami klientów a) Przeglądanie kont b) Wyszukiwanie kont według imienia, nazwiska, adresu, adresu e-mail c) Dodawanie kont d) Usuwanie kont e) Modyfikacja danych kont f) Kontakt z klientem poprzez link mailto 2. Zarządzanie zamówieniami a) Przeglądanie zamówień b) Przeglądanie historii zamówień klienta c) Wyszukiwanie zamówień według daty zamówienia, daty finalizacji d) Informowanie klienta o etapie realizacji zamówienia 3. Zarządzanie rabatami a) Ustawianie warunków rabatów dla stałych klientów b) Top kupujących c) Ustawianie warunków rabatów dla hurtowych zamówień d) Przeglądanie ustawionych rabatów e) Przeglądanie historii hurtowych zamówień z otrzymanymi rabatami 4. Zarządzanie płytami CD a) Przeglądanie danych o płytach b) Wyszukiwanie płyt według nazwy wykonawcy, nazwy zespołu, gatunku muzyki, nazwy albumu, ceny, nazwy utworu c) Dodawanie nowych płyt do bazy danych d) Usuwanie płyt z bazy danych e) Edytowanie danych o płytach f) Dodawanie okładek albumów g) Sprawdzanie dostępności płyt CD na magazynie 5. Zarządzanie promocjami a) Ustawianie warunków promocji b) Rozpocznij okres promocji/ Zakończ okres promocji c) Przeglądanie aktywowanych promocji d) Przeglądanie deaktywowanych promocji e) Usuwanie promocji 6. Sporządzanie statystyk a) Generowanie statystyk sprzedaży za okres tygodnia b) Generowanie statystyk sprzedaży za okres miesiąca c) Generowanie statystyk sprzedaży za okres roku d) Zapis wygenerowanych statystyk do pliku HTML Wojciech Florkowski Zespół projektowy: 29 marca 2013

5.3. Wymagania niefunkcjonalne Możliwość używania myszki lub klawiatury w obsłudze programu Aplikacja musi być kompatybilna z Windows 7 Aby korzystać z aplikacji użytkownik powinien: a) Mieć zainstalowane aktualne środowisko Java na komputerze b) Posiadać dostęp do Internetu c) Być zalogowanym Prosty i przejrzysty interfejs dla Właściciela sklepu Jasne i zrozumiałe komunikaty dla Właściciela sklepu Baza danych nie może być zainstalowana na serwerze lokalnym Możliwość korzystania z aplikacji na wielu komputerach Szyfrowanie haseł Stworzenie tylko jednego aktora systemu 5.4. Charakterystyka użytkowników Właściciel sklepu jedyna osoba korzystająca z aplikacją, posiadająca dostęp do wszystkich możliwych funkcjonalności po uprzednim zalogowaniu. Wojciech Florkowski Zespół projektowy: 29 marca 2013

6. Styl firmowy projektu 6.1. Papier firmowy Wojciech Florkowski Zespół projektowy: 29 marca 2013

6.2. Logo 6.3.Wizytówka Wojciech Florkowski Zespół projektowy: 29 marca 2013

7. Notatka z uzasadnieniem wyboru metodologii, narzędzia CASE i techniki modelowania. 7.1. Metodologia W niniejszym projekcie zastosowano metodologię OMT (Object-modeling technique). OMT - Metodyka analizy i projektowania obiektowego zaproponowana przez J. Rumbaugh i innych autorów. Metodyka identyfikuje trzy zadania: analizę, projektowanie systemu oraz projektowanie obiektowe. Wprowadza trzy perspektywy lub modele systemu: model (klas) obiektów, model dynamiczny oraz model funkcjonalny (wariant modelu przepływu danych). Zawiera także wiele rozważań przydatnych dla projektowania i implementacji. Wyróżnione są następujące pojęcia: klucze kandydujące, ograniczenia, obiekty pochodne, homomorfizm, współbieżność, bezpośrednia (peer-topeer) komunikacja. OMT jest bardzo (najbardziej?) popularną metodyką obiektową. Charakteryzuje się dużym poziomem abstrakcji, nie schodzi zbytnio na poziom projektowania i implementacji. Stosowana terminologia jest intuicyjna, ale nie zawsze jasna. 7.2. Narzędzia CASE Podczas projektowania będziemy korzystać z repozytorium online - http://code.google.com/p/music-store-support-app/ Testy projektowanej aplikacji będą przeprowadzone na systemach operacyjnych takich jak: Windows 7 Home Premium/Professional, Windows 8 Professional. Podczas testowania zespół projektowy będzie korzystał z systemowego Menadżera Zadań jak i narzędzia Process Explorer 15.3 na licencji Freeware. Do projektowania i zarządzania bazą danych użyte zostaną narzędzia: PowerDesigner 15, wersja testowa 15-dniowa Posiada funkcję wielowymiarowego modelowania danych (obsługuje ponad 60 platform bazodanowych). MySQL 5, licencja GPL Narzędzie do zarządzania relacyjnymi bazami danych dostępne dla wielu platform (Windows, Linux) i języków programowania (C++, Java) Do realizacji projektu będzie użyty język Java. Będziemy korzystać ze środowiska RAD w postaci: Eclipse Juno (4.2) SR2, licencja EPL (Eclipse Public License) Wojciech Florkowski Zespół projektowy: 29 marca 2013

Podczas tworzenia dokumentacji, będą wykorzystywane programy m.in.: PowerDesigner 15, wersja testowa 15-dniowa Przydatne funkcje: modelowania procesów biznesowych, modelowanie aplikacji za pomocą języka UML. FreeMind 0.9.0, licencja Freeware GanttProject 2.5.5, licencja Freeware - Aplikacja do tworzenia i planowania projektów przy użyciu specjalnych wykresów Gantta. StarUML 5.0, licencja GNU - Szybkie, elastyczne, funkcjonalne i rozszerzalne środowiska modelowania UML (Unified Modeling Language) pod platformę Windows. Yaoqiang BPMN Editor 2.1.24, licencja GPLv3 - Edytor graficzny pozwalający na projektowanie diagramów biznesowych zgodnych ze specyfikacją OMG (BPMN 2.0). Narzędzie do tworzenia grafiki: GIMP licencja GNU. Aplikacja, którą z powodzeniem można wykorzystywać zarówno do zaawansowanej obróbki fotografii jak i do tworzenia grafik na potrzeby Internetu. Alternatywa dla płatnego Photoshopa. 7.3. Technika modelowania W projekcie wykorzystano modelowanie obiektowe przy użyciu języka UML, który jest znany członkom grupy. Wykorzystywane narzędzie to wyżej wspomniany StarUML. Wojciech Florkowski Zespół projektowy: 29 marca 2013

8. Komplet diagramów do projektu 8.1. Diagram przypadków użycia Wojciech Florkowski Zespół projektowy: 29 marca 2013

8.2. Diagram klas Wojciech Florkowski Zespół projektowy: 29 marca 2013

8.3. Model biznesowy właściciela i klienta sklepu Wojciech Florkowski Zespół projektowy: 29 marca 2013

9. Opis tekstowy stworzonego logicznego modelu aplikacji 9.1. Słownik danych projektu KLIENCI Nazwa atrybutu Opis atrybutu Format danych id_klienta Numer identyfikacyjny klienta Liczbowy imie Imię klienta Tekstowy(20) nazwisko Nazwisko klienta Tekstowy(25) email Email klienta, wykorzystywany jako login Tekstowy(30) telefon Numer telefonu klienta Tekstowy(15) miasto_zamieszkania Miejscowość, gdzie mieszka klient Tekstowy(25) ulica Ulica, na której mieszka klient Tekstowy(30) nr_domu Numer domu klienta Liczbowy ZAMOWIENIA Nazwa atrybutu Opis atrybutu Format danych id_zamowienia Numer identyfikacyjny zamowienia Liczbowy data_zamowienia Data złożenia zamówienia przez klienta Data etap_realizacji Atrybut określający czy zamówienie zostało zrealizowane czy nie Tekstowy(15) WYKONAWCY Nazwa atrybutu Opis atrybutu Format danych id_wykonawcy Numer identyfikacyjny wykonawcy Liczbowy nazwa_wykonawcy Nazwa wykonawcy Tekstowy(20) opis Opis, któtkie informacje o wykonawcy Tekstowy(2000) ZNIZKI Nazwa atrybutu Opis atrybutu Format danych id_znizki Numer identyfikacyjny zniżki Liczbowy wartosc_znizki Wartość liczbowa zniżki Liczbowy(5,2) Wojciech Florkowski Zespół projektowy: 29 marca 2013

ALBUMY Nazwa atrybutu Opis atrybutu Format danych id_albumu Numer identyfikacyjny albumu Liczbowy nazwa_albumu Nazwa albumu Tekstowy(25) ilosc_w_magazynie Aktualna ilość albumów w magazynie Liczbowy cena_jednostkowa Cena za jeden album Liczbowy(6,2) GATUNEK_MUZYKI Nazwa atrybutu Opis atrybutu Format danych id_gatunku Numer identyfikacyjny gatunku muzyki Liczbowy nazwa_gatunku Nazwa gatunku Tekstowy(20) ALBUMY_W_ZAMOWIENIU Nazwa atrybutu Opis atrybutu Format danych ilosc_zamowionych Ilość danych albumów w danym zamówieniu Liczbowy koszt_zamowienia Łączna cena danych albumów w danym zamówieniu Liczbowy(8,2) Wojciech Florkowski Zespół projektowy: 29 marca 2013

9.2. Opis słownika danych Właściciel sklepu jedyna osoba korzystająca z aplikacją, posiadająca dostęp do wszystkich możliwych funkcjonalności po uprzednim zalogowaniu. Płyta CD album muzyczny zawierający utwory danego autora. Wykonawca muzyk albo zespół muzyczny. Zamówienie zestaw danych o płytach, ich ilości i cenie, które klient chce kupić, jak i danych o kliencie niezbędnych do realizacji zamówienia. Klient osoba dokonująca zakupów w internetowym sklepie muzycznym. Konto klienckie zbiór danych klienta. Dyskografia - zbiór wszystkich płyt danego autora. Gatunek gatunek muzyki (np., rap, disco polo, reggae, rock, pop). Rabat zniżka oznaczona procentowo lub kwotowo od ustalonej ceny określonego zamówienia stałych klientów. Promocja reklama produktu charakteryzująca się np. zniżką ceny produktu, darmową wysyłką. Cena koszt (cena jednostkowa) określający wartość pieniężną, którą należy uiścić w przypadku zakupu płyty CD. Koszt zamówienia suma cen wszystkich zmówionych płyt. Stały klient klient mogący otrzymać rabat na zamówienie, nadawany przez właściciela sklepu. Finalizacja zamówień nadanie zamówieniu statusu zrealizowano, oznaczające wykonanie przez właściciela niezbędnych czynności związanych z wysyłką przedmiotu. Realizacja zamówień proces polegający na przygotowaniu towaru do wysyłki, przekazaniu go do firmy kurierskiej oraz poinformowaniu klienta o statusie zamówienia. Aplikacja wyświetla właścicielowi sklepu dane klienta niezbędne do wysyłki oraz informuje o wpłynięciu zapłaty za towar. Wojciech Florkowski Zespół projektowy: 29 marca 2013

9.3. Model konceptualny bazy danych

9.4. Model fizyczny bazy danych Wojciech Florkowski Zespół projektowy: 29 marca 2013

10. Notatka tekstowa uzasadniająca wybór narzędzi RAD Rapid Application Development (również RAD) oznacza "szybkie tworzenie aplikacji". Jest to ideologia i technologia polegająca na udostępnieniu programiście dużych możliwości prototypowania oraz dużego zestawu gotowych komponentów (np. zapewniających dostęp do bazy danych). Umożliwia to uzyskanie pewnego efektu już w pierwszych krokach programistycznych, jednocześnie stanowi poważne zagrożenie dla projektów o większych rozmiarach ze względu na łatwość nieprzemyślanego modyfikowania. Narzędzia RAD są rozwinięciem pomysłu IDE (zintegrowanego środowiska programistycznego) i doskonale nadają się do tworzenia prototypów. Wygląd aplikacji projektuje się ustawiając kontrolki w obszarze okna projektowanego programu (na przykład przy użyciu myszy - przeciągnij i upuść). Eclipse to rozbudowane środowisko programistyczne stworzone przez firmę IBM i przekazane następnie społeczności Open Source, którego główna zaletą jest obsługa wtyczek rozszerzających jego możliwości o obsługę wielu języków tworzenia kodu. Wśród wielu pluginów znajdziemy m.in. odpowiedzialne za wspomaganie pisania aplikacji w języku Java, C, C++, PHP, JavaScript, Actionscript 2, AmigaDT, tworzenie GUI itp. Eclipse posiada takie funkcje jak weryfikacja błędów, auto uzupełnianie kodu czy podświetlanie składni. Program został napisany w Javie dzięki czemu jest bardzo elastyczny i można go uruchomić na różnych platformach systemowych (Windows, Linux). Jako zespół projektowy zgodnie wybraliśmy oprogramowanie Eclipse, ponieważ mamy doświadczenie w jego obsłudze z racji wykorzystywania go w innych projektach oraz w procesie zdobywania wiedzy programistycznej.

11. Dokument detaliczny projektu (DDP) Streszczenie Dokument Detaliczny Projektu (DDP) to szczegółowy opis rozwiązania problemu określonego w dokumencie wymagań na oprogramowanie. Opisuje detale pracy zespołu projektowego, który tworzy aplikację wspomagającą pracę muzycznego sklepu internetowego. DDP jest centralnym dokumentem, w którym zgromadzone są wszystkie informacje odnośnie budowy i działania oprogramowania. DDP powinien być zorganizowany w taki sam sposób, w jaki zorganizowane jest oprogramowanie. DDP powinien być kompletny, odzwierciedlający wszystkie wymagania zawarte w specyfikacji wymagań. Materiał, który nie mieści się w podanej zawartości dokumentu, powinien być załączony jako dodatek. DDP musi uwzględniać wszystkie wyspecyfikowane wymagania. Powinien być wystarczająco detaliczny aby umożliwić implementację i pielęgnację kodu. Styl DDP powinien być systematyczny i rygorystyczny. Język i diagramy użyte w DDP powinny być klarowne. Dokument powinien być łatwo modyfikowalny. Struktura DDP powinna odpowiadać strukturze projektu oprogramowania. Język powinien być wspólny dla całego dokumentu. Wszystkie użyte terminy powinny być zdefiniowane i użyte w zdefiniowanym znaczeniu. Wprowadzenie Cel Zakres Definicje, akronimy, skróty Odsyłacze Omówienie Standardy projektu, konwencje, procedury Standardy projektowe Standardy dokumentacyjne Konwencje nazwowe Standardy programistyczne Narzędzia rozwijania oprogramowania Specyfikacja komponentów Typ Wojciech Florkowski Zespół projektowy: 29 marca 2013

Cel Funkcja Komponenty podporządkowane Zależności Interfejsy Zasoby Odsyłacze Przetwarzanie Dane Wojciech Florkowski Zespół projektowy: 29 marca 2013