Sklep muzyczny Nutka aplikacja desktopowa



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

Sklep muzyczny Nutka aplikacja desktopowa

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu

Projekt zespołowy Osoby wykonujące projekt:

REFERAT PRACY DYPLOMOWEJ

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

REFERAT O PRACY DYPLOMOWEJ

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

TEMAT1 DZIENNIK OCEN STUDENTÓW

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

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

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

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

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

Instrukcja składania wniosku o dofinansowanie w systemie informatycznym IP na potrzeby konkursu nr 1/1.1.1/2015

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

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

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

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

VENUS-BEAUTY.pl. Instrukcja obsługi procesu zamówienia

System epon Dokumentacja użytkownika

REFERAT O PRACY DYPLOMOWEJ

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

EXSO-CORE - specyfikacja

MAMP: Można to pobrać i zainstalować z XAMPP: Można go pobrać i zainstalować z

PRÓBNY EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE CZĘŚĆ PRAKTYCZNA

ELEKTRONICZNA KSIĄŻKA ZDARZEŃ

Instrukcja pobrania i instalacji. certyfikatu niekwalifikowanego na komputerze lub karcie kryptograficznej. wersja 1.4 UNIZETO TECHNOLOGIES SA

Instrukcja obsługi systemu zarządzania treścią dwajeden.pl

Instrukcja. Rejestracji i aktywacji konta w systemie so-open.pl DOTACJE NA INNOWACJE; SOFTWARE OPERATIONS SP. Z O. O.

Specyfikacja implementacyjna aplikacji serwerowej

Profil pracy wariant konfiguracji programu obejmujący m.in język, walutę, konto allegro, szablon aukcji, zdefiniowane koszty wysyłki itp.

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

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

Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny

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

Strona wizytówka od 400 zł

INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ

Politechnika Koszalińska Wydział Elektroniki i Informatyki

Usługa: Testowanie wydajności oprogramowania

1. Logowanie się do panelu Adminitracyjnego

e-awizo SYSTEM POTWIERDZANIA DORĘCZEŃ POCZTY ELEKTRONICZNEJ

Szczegółowy opis zamówienia:

REFERAT PRACY DYPLOMOWEJ

Instrukcja zamawiania usług systemu ASG-EUPOS za pomocą Portalu PZGiK

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

Instrukcja pobrania i instalacji certyfikatu niekwalifikowanego na komputerze lub karcie. Instrukcja dla użytkowników. wersja 1.4

WPROWADZENIE DO BAZ DANYCH

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

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

Instrukcja składania wniosku o dofinansowanie w systemie informatycznym IP na potrzeby konkursu nr 1/1.1.1/2015

Podstawy programowania III WYKŁAD 4

Podręcznik użytkownika Wprowadzający aplikacji Wykaz2

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

I. Raport wykonywalności projektu

Dokumentacja aplikacji Szachy online

Podstawy pracy w systemie Doradca.

Część 3 - Konfiguracja

System magazynowy małego sklepu.

Bydgoskie Centrum Archiwizacji Cyfrowej sp. z o.o.

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

timetrack Przewodnik Użytkownika timetrack Najważniejsze Funkcje

Wdrożenie modułu płatności eservice. dla systemu Zen Cart

Spis treści. Spis treści Wstęp Instalacja nazwa.pl Instalacja Home.pl Edycja grafiki strony logo...

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Instrukcja dla użytkowników serwisu internetowego

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

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Referat pracy dyplomowej

Wdrożenie modułu płatności eservice. dla systemu Magento

Instrukcja użytkownika

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

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Music Store Support App Dokumentacja projektu

e-wsparcie Barbara Muszko Aktualizacja Twojej witryny internetowej tak prosta, jak obsługa Worda

WellCommerce Poradnik: Sprzedaż

Music Store Support App Dokumentacja projektu

Opis Architektury Systemu Galileo

PROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk

Praca Magisterska "System zdalnego składania ofert kupna i sprzedaży za pośrednictwem Internetu" AUTOR PROMOTOR

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Zintegrowany system usług certyfikacyjnych. Dokumentacja użytkownika. Obsługa wniosków certyfikacyjnych i certyfikatów. Wersja dokumentacji 1.

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Instrukcja korzystania z platformy B2B Black Point S.A.

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Instrukcja obsługi platformy B2B

Projektowanie baz danych za pomocą narzędzi CASE

Sklep Internetowy (HTML/xHTML, CSS, JavaScript, PHP, MySQL)

Podręcznik użytkownika Publikujący aplikacji Wykaz2

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

Podręcznik użytkownika Obieg dokumentów

Nabór Bursy/CKU. Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

Języki programowania wysokiego poziomu. Ćwiczenia

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

Transkrypt:

Koszalin, dn. 25.05.2013r. Sklep muzyczny Nutka aplikacja desktopowa Dokumentacja projektowa Zespół projektowy: Natalia Karwecka Daniel Fujczak Mateusz Krukowski Krzysztof Siwek Andrzej Smulczak Prowadzący: dr inż. Walery Susłow 1

Spis treści 1. Protokół założycielski... 3 2. Raport o wybranym instrumentarium zespołu projektowego... 6 3. Raport klienta... 9 4. Harmonogram projektu... 10 5. Raport dla zleceniodawcy... 13 7. Styl firmowy... 22 8. Notatka o narzędziach CASE... 23 9. Opis tekstowy logicznego modelu aplikacji... 24 10. Diagramy... 27 11. Wybór narzędzi RAD.... 31 12. Dokument detaliczny projektu (DDP).... 32 2

Data wykonania: 16.03.2013r. Wykonawca: Natalia Karwecka Wersja: 1.1 1. Protokół założycielski Koszalin, dn. 25.02.2013r. Tytuł projektu: Sklep muzyczny Nutka aplikacja desktopowa. Kierownik projektu: Natalia Karwecka Cel projektu: Głównym celem projektu jest utworzenie aplikacji desktopowej do obsługi sklepu muzycznego Nutka zarządzającego sprzedażą płyt CD, który będzie oferować swoim klientom szeroki asortyment towarów i rodzajów gatunków muzycznych. Aplikacja do obsługi sklepu muzycznego zostanie wykonana zgodnie z wymaganiami stawianymi przez klienta. Zostanie ona przetestowana, wdrożona i opatrzona szczegółową dokumentacją. W przyszłości przewiduje się wdrożenie jej na stronę internetową, która umożliwi klientom dogodniejsze korzystanie ze sklepu z wykorzystaniem stworzonej przez nas aplikacji. Skład grupy projektowej: Daniel Fujczak Natalia Karwecka Mateusz Krukowski Krzysztof Siwek Andrzej Smulczak Podział obowiązków: Natalia Karwecka (kierownik projektu, analityk, projektant, dokumentalista) Analiza wymagań i założeń projektu, sporządzanie i nadzór harmonogramu prac, koordynowanie zespołu i ocena postępów pracy, opracowanie harmonogramu testowania aplikacji, pomoc w opracowywaniu pełnej wersji specyfikacji wymagań. 3

Daniel Fujczak (projektant, programista) Mateusz Krukowski (projektant, tester, programista) Krzysztof Siwek (tester, programista) Andrzej Smulczak (dokumentalista, tester, programista) Projekt interfejsów, oraz szaty graficznej aplikacji, wykonanie prototypu, tworzenie kodu i jego optymalizacja. Projekt interfejsów, oraz szaty graficznej aplikacji, tworzenie kodu i jego optymalizacja, testowanie aplikacji zgodnie z terminami, wykrycie i naprawa błędów. Tworzenie kodu aplikacji i jego optymalizacja, testowanie aplikacji zgodnie z terminami, wykrycie i naprawa błędów. Opracowanie dokumentacji projektu oraz stosownych notatek do każdego etapu projektu, opracowanie diagramów, opracowanie raportu dla zleceniodawcy, tworzenie kodu aplikacji i jego optymalizacja, testowanie aplikacji zgodnie z terminami, wykrycie i naprawa błędów. Powyższy podział obowiązków jest postanowieniem ogólnym i wstępnym. Kierownik projektu polecił każdemu z członków grupy zapoznać się ze swoją rolą i odpowiednie do niej przygotowanie przed przystąpieniem do właściwych prac projektowych. Dodatkowo członkowie grupy projektowej obecni byli podczas trwania spotkania organizacyjnego i brali oni czynny udział we wszystkich dyskusjach i ustaleniach dotyczących projektu. Zobowiązanie: Członkowie grupy podpisując protokół założycielski zgadzają się na wszystkie warunki zawarte w regulaminie projektu sporządzonym podczas spotkania, który będzie obowiązywał w całym okresie trwania przedsięwzięcia wszystkich członków projektu oraz deklarują się do wykonywania projektu według przyjętych postanowień. Podpisy członków zespołu: 4

Regulamin projektu Dział I Członkostwo. Art. 1. 1. Członkiem grupy może być każda osoba pełnoletnia. 2. Członkostwo jest formą zawarcia umowy między pracownikami projektu. 3. Członkowie grupy projektowej na podstawie umowy będą czerpali wymierne korzyści w postaci oceny na poczet wykonanej pracy zleconej. Art. 2. 1. Członkostwo może przestać obowiązywać na podstawie: pisemnej deklaracji zrzeczenia się członkostwa, skreślenie członka przez organ nadzorczy grupy projektowej, inne sytuacje powstałe poprzez zaniedbania członka zespołu. 2. Ustanie członkostwa jest równoważne z utratą wszelkich korzyści osiąganych z projektu, począwszy od dnia złożenia rezygnacji lub skreślenia członka z grupy przez organ nadzorczy. Dział II Struktura organów. 1. Głównym organem nadzorczym, który posiada najwyższą władzę sprawczą jest Kierownik projektu. 2. Członkowie projektu wykonują przydzieloną im pracę przez Kierownika projektu. 3. Członkowie projektu mogą odwołać Kierownika Projektu. 4. Członkowie projektu mogą powołać nowego Kierownika Projektu, rozpatrując złożone kandydatury. Dział III Postanowienia ogólne. 1. W trakcie tworzenia projektu Kierownik zastrzega sobie prawo do tymczasowego wyznaczenia danemu pracownikowi innej roli, niż określona w umowie (w zależności od etapu prac). 2. Zmiany w rolach poszczególnych członków grupy mogą być przeprowadzone jedynie w celu usprawnienia toku powstawania projektu na poszczególnych jego etapach. 3. W przypadku niedotrzymania warunków umowy wyciągnięte zostaną konsekwencje. 4. W razie pojawienia się nowych pomysłów i koncepcji, należy zwołać zebranie członków grupy projektowej dla lepszego wykonania powierzonych zadań. 5. Podpisując dokument każdy członek grupy projektowej zobowiązuje się do należytego wykonania powierzonych mu zadań dotyczących projektu. 5

Data wykonania: 24.03.2013r. Wykonawca: Andrzej Smulczak, Natalia Karwecka Wersja: 1.1 2. Raport o wybranym instrumentarium zespołu projektowego Technologia tworzenia projektu strony internetowej ASP.NET (www.asp.net) ASP.NET jest to zbiór technologii opartych na frameworku zaprojektowanym przez firmę Microsoft. Przeznaczony jest do budowy różnorodnych aplikacji webowych a także aplikacji typu XML Web Services. Technologia ta została przez nas wybrana ponieważ strony ASP.NET są uruchamiane przy użyciu serwera, który umożliwia wygenerowanie treści HTML (CSS), WML lub XML rozpoznawanych oraz interpretowanych przez przeglądarki internetowe. Dodatkowo ASP.NET jest wspierany przez separujący warstwę logiki od warstwy prezentacji, wątkowo kierowany model programistyczny, co poprawi wydajność działania w przyszłości strony internetowej obsługującej stworzoną przez nas aplikację desktopową. Wybrane środowisko programistyczne do stworzenia aplikacji desktopowej NetBeans IDE 7.2.1 (www.netbeans.org). NetBeans IDE jest obecnie jednym z najbardziej znanych i popularnych środowisk programistycznych. Wybraliśmy go ponieważ jest to znane przez nas zintegrowane środowisko programistyczne dla języka Java na licencji freeware. Jego głównym celem jest przyspieszenie budowy aplikacji Java, w tym również usług sieciowych oraz aplikacji mobilnych. Dzięki ogromnej ilości wtyczek, umożliwia nam znaczne zwiększenie funkcjonalności całego środowiska. Dodatkowe wtyczki można pobrać ze strony http://plugins.netbeans.org/pluginportal/. System zarządzania bazą danych XAMPP Control Panel v. 3.1.0 (www.apachefriends.org/en/xampp.html) XAMPP jest to darmowy, wieloplatformowy pakiet narzędzi w skład którego głównie wchodzi serwer typu Apache oraz baz danych MySQL i interpreterów dla skryptów napisanych w PHP i Perlu. Wybraliśmy go ponieważ wielką zaletą tego programu jest to, że jest bardzo przejrzysty i prosty w obsłudze dzięki czemu można szybko i łatwo wrzucić bazę danych na serwer, a następnie ją aktualizować w razie potrzeby. Dodatkowo program posiada wbudowane narzędzia ułatwiające tworzenie zapytań SQL do utworzonej wcześniej bazy, co bardzo ułatwi nam pracę. Można również podglądać, edytować i uzupełniać bazę z poziomu aplikacji. Wybrany przez nas program jest w wersji polskiej, a jego interfejs jest bardzo intuicyjny i przejrzysty, co na pewno ułatwi nam zarządzanie bazą danych. 6

Narzędzie do projektowania bazy danych PowerDesigner 15.1 (www.sybase.com) PowerDesigner to narzędzie typu CASE firmy Sybase służące do modelowania systemów. Wybraliśmy go ponieważ jest znane dla każdego członka zespołu projektowego i zawiera wbudowane funkcje obsługi wszystkich nowoczesnych systemów zarządzania relacyjnymi bazami danych (RDBMS) oraz środowiskami programowania, w tym Java. Jest dostępne na licencji shareware i pozwala nam na łatwe tworzenie modeli baz danych oraz do budowanie relacji między encjami. Za pomocą tego programu możemy wygenerować gotowy kod SQL, który wystarczy wkleić na serwer, aby uruchomić bazę. Takie rozwiązanie pozwala zaoszczędzić czas na etapie projektowania bazy danych. Narzędzie do projektowania diagramów UML Visual Paradigm Community Edition 10.1 (www.visual-paradigm.com) Visual Paradigm Community Edition to narzędzie do modelowania w języku UML, które bardzo dobrze integruje się z różnymi środowiskami IDE dla programistów Java i.net. Wybraliśmy go ponieważ Community Edition to darmowa wersja do użytku nie komercyjnego nie posiadająca ograniczeń czasowych. Idealnie nadaje się dla użytkowników rozpoczynających naukę UML. Poza tym stanowi najlepsze darmowe środowisko, które oferuje nam kompleksowe rozwiązanie i jednocześnie integruje się z wcześniej wybranym przez nas środowiskiem programistycznym NetBeans. Technologia wersjonowania dokumentacji projektowej Subversion SVN (www.subversion.apache.org) SVN (Subversion) to system kontroli wersji, który powstał w celu zastąpienia CVS. Wybraliśmy go ponieważ SVN jest wolnym i otwartym oprogramowaniem na licencji Apache. Służy do łatwego wersjonowania plików, najczęściej źródłowych wersji programów. Dobrze sprawdza się przy równoczesnej pracy wielu użytkowników, pracujących nad wspólnym kodem źródłowym. Oferuje nam następujące funkcje: własny protokół klient/serwer. protokół umożliwia przesyłanie różnic w plikach od klienta do serwera i odwrotnie. rozmiar przesyłanych danych przy zmianie pliku jest proporcjonalny do rozmiaru zmian, a nie pliku. repozytorium przechowywane w bazie danych lub w systemie plików. efektywna obsługa plików binarnych. Adres SVN: http://projekt-case-sklep.googlecode.com/svn/trunk/ 7

Narzędzia do wspomagania pracy grupowej A. GoogleCode (www.code.google.com) GoogleCode to witryna Google z narzędziami programistycznymi, na której prowadzone jest repozytorium projektowe. Wybraliśmy ją ponieważ jest darmowa i daje możliwość pobierania plików lub kodu źródłowego projektu z istniejącego projektu. Po rejestracji i zalogowaniu do konta Gmail oraz wejściu na stronę projektu umieszczoną na tej witrynie mamy od razu możliwość korzystania z: serwera SVN, forum dyskusyjnego, systemu newsów, hostingu plików, miejsca na serwerze WWW. B. GanttProject 2.5.5. (www.ganttproject.biz) GanttProject jest to darmowy program, umożliwiający planowanie projektu za pomocą wykresu Gantta. Wybraliśmy go ponieważ pozwala w łatwy sposób podzielić projekt na zadania, ustalić powiązania między nimi oraz zarządzać zasobami ludzkimi. Jest w całości napisany w języku Java, dzięki temu może być uruchomiony w każdym systemie operacyjnym obsługującym ten język, takim jak: Linux, Windows, Mac OSX i inne. Cały program opiera się na licencji GPL. Narzędzia do tworzenia grafiki Gimp 2.8.4 (http: www.gimp.org) Gimp jest to darmowa aplikacja służąca do tworzenia i edycji grafiki 2D. Wybraliśmy go ponieważ posiada wielkie możliwości dzięki możliwości tworzenia warstw. Jest chyba najczęściej wybieranym i najbardziej rozwiniętym darmowym programem graficznym. Nad GIMP-em pracuje wielu programistów, powstają dla niego ciekawe wtyczki i wciąż rozwijane są nowe narzędzia. Dzięki temu jego możliwości są imponujące, a w razie potrzeb można zasięgnąć porad innych użytkowników. 8

Data wykonania: 15.04.2013r. Wykonawca: Krzysztof Siwek Wersja: 1.2 3. Raport klienta Zlecający: Walery Susłow Nazwa robocza projektu: Sklep muzyczny Nutka Termin rozpoczęcia projektu: 25.02.2013 Termin zakończenia projektu: 10.06.2013 Opracował: Krzysztof Siwek Data opracowania: 15.03.2013r. Założenia ogólne Nasza grupa projektowa jako wykonawca, podjęła współpracę z Panem dr. inż. Walerym Susłowem zwanym dalej zleceniodawcą, który udziela wytycznych dotyczących projektu. Pierwsze spotkanie odbyło się dnia 25 lutego 2013r., na którym określone zostały podstawowe założenia i wytyczne dotyczące wybranego przez stworzoną grupę tematu projektu, która jako wykonawca podjęła się wykonania powierzonego mu zadania. Celem naszego projektu jest stworzenie sklepu muzycznego Nutka jako aplikacji desktopowej, która będzie pozwalała na zakup płyt muzycznych w sieci. W przyszłości zakłada się, że aplikacja obsługiwana będzie również przez stronę internetową jako system internetowy. Główne założenia projektu: dodawanie nowych płyt do oferty, modyfikacja stanu ilości towaru na magazynie, możliwość poszukiwania towarów po różnych kategoriach, możliwość zdalnego zamówienia towaru przez klientów, możliwość tworzenia okresowych raportów o ilości sprzedanego towaru, realizację i odwołanie zamówień klientów, administrowanie danymi. 9

Założenia poboczne Obejmują założenia mniej znaczące, wymagające uzgodnienia ze zleceniodawcą: technologia webowa, brak funkcjonalności płatności on-line, baza płyt w bazie danych MYSQL. Wynagrodzenia i kary Karą za niewywiązanie się z powierzonych zadań w terminie wyznaczonym przez organy wyższe jest nagana. Po otrzymaniu 3 nagan osoba zostaje wyrzucona z grupy projektowej. Wynagrodzeniem końcowym jest wpis z pozytywną oceną w indeksie studenta. Data wykonania: 16.03.2013r. Wykonawca: Natalia Karwecka Wersja: 1.1 4. Harmonogram projektu Harmonogram prac powstał po zapoznaniu się ze wstępnymi wymaganiami dotyczącymi projektu i ich analizie w grupie projektowej. Po dyskusji i wstępnych ustaleniach utworzony został ogólny harmonogram prac nad projektem oraz harmonogram prac dla poszczególnych członków zespołu z wyszczególnieniem przydzielonych im zadań. Oba harmonogramy zostały wykonane w programie GanttProject 2.5.5 i przedstawione na rysunkach poniżej. 10

Rysunek 1. Harmonogram projektu - ogólny. 11

Rysunek 2. Harmonogram projektu - podział na osoby. 12

Data wykonania: 25.03.2013r. Wykonawca: Krzysztof Siwek, Natalia Karwecka Wersja: 1.1 5. Raport dla zleceniodawcy Cele przedsięwzięcia Celem naszego przedsięwzięcia jest stworzenie aplikacji desktopowej do sprzedaż płyt CD dla sklepu muzycznego Nutka oraz możliwość wdrożenie jej w przyszłości na stronę internetową. Nasz sklep będzie miał w ofercie różne płyty z muzyką i będzie umożliwiał zakup dowolnych płyt muzycznych z naszego magazynu. Aby zachęcić i przyciągać klientów sklepu, system obsługi klienta będzie miał intuicyjny i przyjazny dla oka interfejs graficzny ułatwiający zakupy. Dzięki tym udogodnieniom skłonimy klientów do częstszego odwiedzania naszego sklepu. Dodatkowo wprowadzane liczne promocje, spowoduje to, że ludzie będą wracać do naszego sklepu i kupować większe ilości płyt z muzyką oraz polecać go swoim znajomym. Zakres przedsięwzięcia Zakres naszego przedsięwzięcia to określenie wymagań systemu od strony klienta oraz wymagań systemowych od strony zleceniodawcy, wykonanie dokumentacji projektu, a co za tym idzie, fazy analizy oraz projektowania systemu. Oprócz tego będziemy testować aplikację, która zostanie również wdrożona w przyszłości na stronie internetowej, po czym zaimplementowana jako gotowy produkt, który spełni zarówno nasze oczekiwania jak i zleceniodawcy. Systemy zewnętrzne Sklep muzyczny Nutka prócz stworzenia aplikacji desktopowej jest również projektem internetowym co powoduje, iż powinien współpracować z systemami serwerowymi oraz technologiami obsługującymi cały projekt. W przyszłości rozwijając projekt użyjemy technologii darmowych zezwalających na zastosowanie komercyjne. Nasz produkt będzie kompatybilny z technologią ASP.NET oraz powiązany z bazą danych przetrzymującą wszystkie dane odnośnie użytkowników oraz produktów w sklepie muzycznym Nutka. Aplikacja desktopowa sklepu będzie możliwa do uruchomienia na każdym komputerze z dostępem do Internetu, dzięki czemu będzie powiązana z bazą danych i w pełni funkcjonalna dla użytkowników. W przyszłości dostępna będzie na przeglądarce internetowej bez jakiejkolwiek zmiany 13

graficznej oraz funkcjonalności, aby zapewnić dostęp dla każdego użytkownika, dzięki czemu maksymalnie poszerzymy grono klientów. Szkicowy opis wymagań Aplikacja ma za zadanie wspomagać sprzedaży płyt poprzez Internet. Każdy użytkownik klient powinien mieć możliwość zapoznania się z aktualną ofertą, a po zarejestrowaniu się, wybrania określonego towary i złożenia zamówienia. Użytkownik pracownik sklepu będzie miał możliwość zatwierdzenia lub odrzucenia zamówienia oraz zarządzania ofertą sklepu i danymi użytkowników. Pracownik będzie tworzył raporty sprzedaży czasowej. W przyszłości dostępność do sklepu muzycznego Nutka będzie możliwa przez 7 dni w tygodniu z każdej przeglądarki internetowej. Szkicowy opis systemu Nasza aplikacja będzie ogólnodostępna w formie aplikacji desktopowej, a w przyszłości w formie witryny internetowej. Na zewnętrznym serwerze zostanie umieszona baza danych, a także sama aplikacja. Dostęp do nich będzie możliwy poprzez interfejs www z poziomu dowolnej przeglądarki internetowej. Szkicowy opis proponowanych rozwiązań Aplikacje desktopową do obsługi sklepu muzycznego Nutka zaprogramujemy w środowisku programistycznym NetBeans IDE 7.2.1, a wszystkie dodatkowe dane będą przetrzymywane w bazie danych opartej na MySQL. W późniejszej fazie projektu aplikacja zostanie zaprogramowana na platformie ASP.NET, aby obsługiwać ją za pomocą strony internetowej. Wstępny kosztorys projektu W celu zobrazowania kosztów związanych z realizacją naszego projektu przygotowano szacunkowy kosztorys obejmujący koszty: sporządzenia dokumentacji, projektowania aplikacji, pracy ludzkiej, wdrożenia aplikacji i szkoleń. Tabela 1. Kosztorys projektu. Lp. Usługa Koszt [ zł ] 1. Analiza wymagań i sporządzenie raportu 1500 2. Opracowanie stylu firmowego 500 14

3. Zaprojektowanie architektury aplikacji 2000 4. Zaprojektowanie i zaprogramowanie interfejsów graficznych 2500 5. Zaprojektowanie i zaprogramowanie bazy danych 2000 6. Zaprogramowanie aplikacji: 4500 Moduł klienta 2000 Moduł pracownika 1500 Moduł administratora 1000 7. Testowanie i optymalizacja aplikacji 2000 8. Sporządzenie dokumentacji projektowej 2000 9. Wdrożenie aplikacji 1500 10. Szkolenie dla użytkowników 1000 11. Koszty dojazdów 500 Łączny koszt realizacji projektu: 20 000 W przypadku gdy zleceniodawca nie posiada zasobów sprzętowych i programowych niezbędnych do wdrożenia i utrzymania stworzonej aplikacji, do wyliczonej kwoty należy doliczyć koszt zakupu tych urządzeń i oprogramowania. Harmonogram prac Po zapoznaniu się ze wstępnymi wymaganiami dotyczącymi projektu i ich analizie w zespole projektowym sporządzono wstępy harmonogram prac nad projektem, który przedstawiono poniżej. Rysunek 3. Harmonogram prac. 15

Data wykonania: 22.04.2013r. Wykonawca: Andrzej Smulczak, Daniel Fujczak, Mateusz Krukowski, Natalia Karwecka Wersja: 1.4 6. Pełna wersja specyfikacji wymagań zgodna z zaleceniami IEEE 830-1998 (Software Requirement Specification, SRS) Słownik projektu Sklep muzyczny aplikacja, która umożliwia nam zakup danej płyty. Przeglądarka internetowa program komputerowy służący do wyświetlania stron internetowych udostępnianych przez serwery WWW. Użytkownik zalogowany osoba zarejestrowana w systemie, która chce za pośrednictwem serwisu zakupić towar. Użytkownik anonimowy osoba niezarejestrowana w systemie, która przegląda dostępny towar. Nazwa użytkownika nazwa, którą użytkownik będzie posługiwał się w serwisie (niezbędna podczas logowania). Hasło użytkownika ciąg znaków potrzebnych do poprawnego zalogowania się do serwisu. Formularz rejestracji miejsce, w którym użytkownik anonimowy podaje swoje niezbędne dane do późniejszego zalogowania. Formularz logowania miejsce, w którym użytkownik zarejestrowany wpisuje swój login i hasło podane podczas rejestracji. Płyty towar sprzedawany przez serwis. Zamówienie potwierdzona lista towarów wybranych do zakupu przez użytkownika. Koszyk podręczna lista wybranych przez użytkownika towarów. Pracownik użytkownik serwisu posiadający większe prawa. Wymagania funkcjonalne Opcje dostępne dla użytkownika anonimowego: przeglądanie dostępnych płyt, przeglądanie szczegółów wybranej płyty, Opcje dostępne dla użytkownika zalogowanego: Wszystkie powyższe oraz: dodanie płyty do koszyka, 16

złożenie zamówienia, edycja swoich danych profilowych. Opcje dostępne dla pracownika: Wszystkie powyższe oraz: zarządzanie płytami, edytowanie opisu płyt, zarządzanie użytkownikami. Wymagania niefunkcjonalne Ograniczenia: Aby złożyć zamówienie użytkownik musi się zarejestrować i zalogować w systemie. Rejestracja użytkownika nie jest konieczna do przeglądania listy produktów. Dostępność: Dostęp do systemu bezpośrednio z poziomu przeglądarki internetowej. Dostęp do sklepu przez 24h na dobę. Bezpieczeństwo: Każdy użytkownik ma ograniczone prawa dostępu do systemu. Poziom dostępu do systemu dla danego użytkownika określony jest w bazie danych. Konto każdego użytkownika chronione jest loginem i hasłem. Identyfikacja aktorów Użytkownik anonimowy jedyna funkcja jaką posiada to przeglądanie dostępnych w serwisie płyt (towaru), których użytkownik ten nie może zamówić. Użytkownik zalogowany nie posiada możliwości edycji danych zasobów, a jedynie ich odczyt. Ma możliwość przeglądania produktów w systemie, a jego zadaniem jest uzupełnianie koszyka i składanie nowych zamówień. Pracownik - zadaniem pracownika sklepu jest dodawanie i usuwanie płyt z systemu oraz ustalanie cen oraz weryfikacja zamówień. 17

Identyfikacja przypadków użycia Nazwa: Dodanie towaru Cel: Dodanie nowej płyty Aktor: Pracownik Scenariusz: Pracownik sklepu wybiera z panelu opcję "Dodaj towar", następnie wypełnia formularz odpowiednimi danymi. Ostatecznie zatwierdza całą operację klikając przycisk "Akceptuj" Priorytet: Główna funkcja Akcja inicjująca: Naciśnięcie przycisku Dodaj towar Nazwa: Usunięcie towaru Cel: Usunięcie towaru z oferty Aktor: Pracownik Scenariusz: Pracownik sklepu wybiera z panelu opcję "Usuń towar", następnie wybiera z listy towar który chce usunąć. Ostatecznie zatwierdza całą operację klikając przycisk "Usuń" Priorytet: Główna funkcja Akcja inicjująca: Naciśnięcie przycisku Usuń towar Nazwa: Usunięcie zamówienia Cel: Usunięcie zamówienia anulowanego przez klienta Aktor: Pracownik Scenariusz: Pracownik sklepu wybiera z panelu opcję Zarządzaj zamówieniami, Po załadowaniu listy z zamówieniami zaznacza ten rekord który ma być usunięty i potwierdza całą akcję przyciskiem Anuluj zamówienie Priorytet: Główna funkcja Akcja inicjująca: Naciśnięcie przycisku Zarządzaj zamówieniami Nazwa: Wykonanie zamówienia Cel: Wykonanie zamówienia złożonego przez klienta Aktor: Pracownik 18

Scenariusz: Pracownik sklepu odczytuje z listy zamówień adres na który ma być wysłany towar, wypełnia odpowiednie formularze i wykonuje zamówienie. Następnie odznacza w systemie że zamówienie zostało wykonane. Priorytet: Główna funkcja Akcja inicjująca: Naciśnięcie przycisku Zarządzanie zamówieniami Nazwa: Przeglądanie listy towarów Cel: Wybór towaru Aktor: Pracownik, Użytkownik zalogowany, Użytkownik anonimowy Scenariusz: Osoba wpisuję nazwę płyty lub wykonawcę, po wykonaniu tej akcji lista towarów wyświetla się w centralnej części Priorytet: Główna funkcja Akcja inicjująca: Wpisanie nazwy płyty lub wykonawcę w odpowiednie miejsce Nazwa: Rejestracja użytkownika w systemie Cel: Rejestracja użytkownika Aktor: Użytkownik anonimowy Scenariusz: Użytkownik niezalogowany naciska przycisk "Rejestruj". Po akceptacji regulaminu i wypełnieniu formularza danych akceptuje przyciskiem "Akceptuj" Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Rejestruj Nazwa: Logowanie użytkownika w systemie Cel: Logowanie użytkownika Aktor: Użytkownik anonimowy Scenariusz: Użytkownik niezalogowany naciska przycisk "Zaloguj się". Po wpisaniu loginu i hasła danego użytkownika wciśnięciu przycisku Zaloguj zostaniemy zalogowani do systemu. Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Zaloguj się 19

Nazwa: Złożenie zamówienia Cel: Zatwierdzenie i złożenie zamówienia Aktor: Użytkownik zalogowany Scenariusz: Użytkownik otwiera koszyk klikając na symbolu koszyka po prawej stronie, następnie akceptuje wybrane produkty naciśnięciem przycisku "Do kasy". Po weryfikacji adresu wysyłki i płatności użytkownik akceptuje zamówienie poprzez naciśnięcie przycisku "Złóż zamówienie" Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Złóż zamówienie Nazwa: Dodanie towaru do koszyka Aktor: Użytkownik zalogowany Cel: Zakup wybranej płyty Scenariusz: Użytkownik z menu na stronie wybiera odpowiednią kategorię towarów. Po załadowaniu listy towarów, należy użyć przycisku "Dodaj do koszyka", który znajduje się przy nazwie danego towaru; Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Dodaj towar Nazwa: Usunięcie towaru z koszyka Cel: Usunięcie towaru z koszyka Aktor: Użytkownik zalogowany Scenariusz: Użytkownik otwiera koszyk klikając na symbolu koszyka po prawej stronie, następnie wybiera towary do usunięcia zaznaczając je na liście. Ostatecznie akceptuje swój wybór naciśnięciem przycisku "Usuń przedmiot" Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Usuń towar Nazwa: Anulowanie zamówienia Cel: Zrezygnowanie z zamówienia Aktor: Użytkownik zalogowany Scenariusz: Użytkownik otwiera koszyk klikając na symbolu koszyka po prawej stronie, następnie wybiera zamówienie z którego chce zrezygnować. Ostatecznie akceptuje swój wybór przyciskiem Anuluj zamówienie 20

Priorytet: Główna funkcja Akcja inicjująca: Naciśniecie przycisku Zanuluj zamówienie Diagram przypadków użycia Rysunek 4. Diagram przypadków użycia. 21

Data wykonania: 07.03.2013r. Wykonawca: Daniel Fujczak, Natalia Karwecka Wersja: 1.1 7. Styl firmowy Struktura niniejszego dokumentu sporządzona została na podstawie stworzonego przez zespół projektowy stylu formalnego dokumentu, a graficzne wstawki prezentują papier firmowy. Dodatkowo opracowano wizytówkę dla sklepu muzycznego Nutka. Rysunek 5. Wizytówka. 22

Data wykonania: 15.04.2013r. Wykonawca: Mateusz Krukowski Wersja: 1.1 8. Notatka o narzędziach CASE Metodologia Jako metodologię prowadzenia projektu zdecydowano się na model iteracyjny. Jest to model pozwalający na skorzystanie z ciągłego kontaktu z klientem w celu wytworzenia oprogramowania bardziej pasującego do jego wymagań. Narzędzia CASE W ramach projektu wybrane zostały następujące narzędzia CASE: Repozytorium SVN: code.google.com Środowisko programistyczne NetBeans 7.2.1 Projektowanie bazy danych: Sybase PowerDesigner 15.1 Metody modelowania W projekcie zastosowana została metoda modelowania obiektowego. Pozwala to na stworzenie składowych systemów, które będą od siebie niezależne i przygotowane do wielokrotnego wykorzystania. Pozwoli to na wykorzystanie utworzonego kodu w przyszłych projektach tego typu. Jako język modelowania obiektowego wybrano język UML, gdyż to jest język znany przez wszystkich członków grupy projektowej. 23

Data wykonania: 22.04.2013r. Wykonawca: Daniel Fujczak Wersja: 1.2 9. Opis tekstowy logicznego modelu aplikacji Słownik danych Klient osoba mająca możliwość przeglądania i wyszukiwania w sklepie płyt, które ją interesują, może dokonać zakupu płyt muzycznych w sklepie internetowym.. Klient został zdefiniowany jako osoba zarejestrowana w bazie oraz posiadająca nr identyfikacyjny, imię, nazwisko, adres i nr telefonu. Zamówienie jest to dokonanie wyboru towaru (zestawu płyt lub pojedynczej sztuki płyty z muzyką) przez klienta oraz zatwierdzenie zakupu. Zamówienie mówi o dacie zamówienia oraz dacie wysłania przesyłki, a w szczegółach zamówienia jest umieszczona cena zamówienia oraz ilość sztuk towaru. Płyty jest to produkt przeznaczony na sprzedaż jako towar 1 zawierający muzykę stworzoną przez konkretnego wykonawcę. Encja Płyty jest opisana nazwą płyty, wykonawcą oraz ceną jednostkową. Cena jednostkowa towaru jest to cena przedstawiająca wartość jednego egzemplarza konkretnej płyty z muzyką. Pracownik osoba pracująca w sklepie internetowym, zajmująca się czynnościami formalnymi związanymi z zakupem płyt przez klienta oraz wysyłką zamówienia do klienta. Pracownik został opisany przez imię, nazwisko oraz jego nr identyfikacyjny. Nr identyfikacyjny jest to indywidualny nr opisujący pracownika i zajmowane przez niego stanowisko, może służyć do składania skarg. Nr identyfikacyjny został składa się z cyfr oraz liter, długość nr nie powinna przekraczać 4 znaków. Wykonawca osoba lub zespół muzyczny udostępniająca swoją muzykę w postaci płyt CD. Muzyk jest opisany w encji przez imię, nazwisko, gatunek muzyki jaką wykonuje oraz wydane albumy. Wyznaczenie kategorii użytkowników i funkcji systemu dla każdej z tych kategorii W bazie sklepu wyznaczone zostały dwie kategorie użytkowników: pracownicy oraz klienci. Pracownicy powinni mieć możliwość zarządzania stanem sklepu: dodawania nowych ofert płyt, modyfikacji ilości stanu płyt na magazynie, administrowanie danymi bazy danych, realizacje i odwołanie zamówień. Oprócz wyżej wymienionych funkcji każdy pracownik wykonuje konkretne zamówienie od przyjęcia zamówienia do jego wysłania. Pracownik odpowiada sam za siebie za wykonane zmiany 1 Towar - rozumiany jako płyta z muzyką (album). 24

w systemie takie jak zmiana ilości płyt na magazynie, czy administrowanie danymi. Każdy pracownik ma oddzielnie prowadzoną historie wprowadzanych zmian. Klienci powinni mieć możliwość dostępu do przeglądania zawartości sklepu, możliwość wyszukiwania interesujących ich płyt, oraz dokonania zamówienia towaru i odwołania zamówienia. Stworzenie modelu koncepcyjnego bazy danych w środowisku PowerDesigner Model konceptualny bazy danych dla sklepu internetowego został stworzony przy użyciu programu Sybase PowerDesigner 15.1. W modelu koncepcyjnym znalazły się takie encje jak Klienci, Pracownicy, Muzycy, Zamówienia oraz Płyty. Dla potrzeb prawidłowego funkcjonowania baza została rozszerzona o encje Szczegóły zamówienia, będzie ona szczególnie przydatna gdy zmianie ulegną ceny płyt wtedy towar który został już zamówiony będzie posiadał dalej poprzednią cenę. W encji klienci wstawiłem takie kolumny jak: Id klienta czyli nr identyfikacyjny dla klienta reprezentowane przez typ integer Imię klienta reprezentowane przez typ varchar Nazwisko klienta reprezentowane przez typ varchar Adres klienta reprezentowane przez typ varchar Nr telefonu klienta reprezentowane przez typ integer W encji pracownika wstawiłem takie kolumny jak: Id pracownika reprezentowane przez typ integer Imię pracownika reprezentowane przez typ varchar Nazwisko pracownika reprezentowane przez typ varchar Nr-identyfikacyjny reprezentowane przez typ varchar W encji muzycy umieściłem takie kolumny jak: Id wykonawcy reprezentowane przez typ integer Pseudonim W encji Płyty znalazły się takie kolumny jak: Id towaru reprezentowane przez typ integer Nazwa albumu reprezentowane przez typ varchar Wykonawcy reprezentowane przez typ varchar Cena jednostkowa reprezentowane przez typ money 25