Protokół założycielski



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

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu

Politechnika Koszalińska Wydział Elektroniki i Informatyki

SPECYFIKACJA WYMAGAŃ

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

Biblioteka. Bazy danych I dokumentacja projektu. Cel projektu:

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

Projekt zespołowy Osoby wykonujące projekt:

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

REFERAT PRACY DYPLOMOWEJ

Zasady organizacji projektów informatycznych

Podstawy programowania III WYKŁAD 4

REFERAT O PRACY DYPLOMOWEJ

Podręcznik użytkownika Obieg dokumentów

Projekt z przedmiotu Projektowanie systemów teleinformatycznych

Ćwiczenie Zmiana sposobu uruchamiania usług

Instrukcja instalacji i obsługi programu Szpieg 3

Szpieg 2.0 Instrukcja użytkownika

Referat pracy dyplomowej

REFERAT O PRACY DYPLOMOWEJ

ELEKTRONICZNA KSIĄŻKA ZDARZEŃ

OPIS PRZEDMIOTU ZAMÓWIENIA

Wypożyczalnia samochodów

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

Projekt Bazy Danych. Artur Janas, Łukasz Gawroński 9 czerwca Streszczenie Tematem projektu jest System Obsługi Biblioteki

Narzędzia CASE dla.net. Łukasz Popiel

Modelowanie i analiza systemów informatycznych Spis treści

REFERAT PRACY DYPLOMOWEJ

DTextra System Zarządzania Dokumentami

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

Co nowego w systemie Kancelaris 3.31 STD/3.41 PLUS

Centrum Informacji Społeczno-Gospodarczej

System Przepustkowy OPTIPASS. Kraków 2013

Music Store Support App Dokumentacja projektu

Kancelaria Prawna.WEB - POMOC

Music Store Support App Dokumentacja projektu

RAPORT KOŃCOWY PROJEKTU

WPROWADZANIE ZLECEŃ POPRZEZ STRONĘ INSTRUKCJA UŻYTKOWNIKA

Instrukcja użytkownika

I. Raport wykonywalności projektu

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

StacjaSQL.2012 / PIERWSZE URUCHOMIENIE I PODSTAWOWE USTAWIENIA / / USUNIĘCIE "BAZY TESTOWEJ, PRZEJŚCIE NA WERSJĘ KOMERCYJNĄ / oraz. str.

Bazy danych 2. Wykład 1

DBE DataBase Engineering

Instrukcja dla użytkowników serwisu internetowego

Zespół: Agata Chrobak Kornel Jakubczyk Tomek Klukowski Przemek Kosiak. Projekt SZOP Plan testów

Podręcznik użytkownika Wprowadzający aplikacji Wykaz2

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Konspekt pracy inżynierskiej

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

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

Portal Personelu Medycznego Global Services Sp. z o.o.

Instrukcja użytkownika. Aplikacja Smart Paczka DPD

Wykład 1 Inżynieria Oprogramowania

Multi-projekt z przedmiotów Inżynieria oprogramowania, Współczesne bazy danych i Programowanie w języku Java

Podręcznik użytkownika Publikujący aplikacji Wykaz2

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

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

1. Cel i zakres dokumentu Słownik pojęć użytych w instrukcji... 3

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 ZAMAWIANIE I REZERWOWANIE

Win Admin Replikator Instrukcja Obsługi

Narzędzie informatyczne do modelowania, zarządzania i dokumentowania procesów systemu zarządzania jakością

a. (20 pkt.) Aplikacja powinna zawierać następujące elementy: 2. Formularz edycji profilu użytkownika (2 pkt.).

Maciej Oleksy Zenon Matuszyk

IO - Plan przedsięwzięcia

Ełk, dn r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, Ełk. Nip ZAPYTANIE OFERTOWE

Usługa: Testowanie wydajności oprogramowania

Co to jest GASTRONOMIA?

Pierwsze kroki w systemie

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Projekt aplikacji internetowej specyfikacja wymagań (cz.1)

System automatycznego wysyłania SMSów SaldoSMS

Program do wagi SmartScale

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

1. Biblioteka aplikacja internetowa umożliwiająca użytkownikom rezerwowanie i wypożyczanie książek oraz administratorom edycję bazy książek i

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

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Bydgoskie Centrum Archiwizacji Cyfrowej sp. z o.o.

PROJEKT SYSTEMU EWIDENCJI ZLECEŃ DLA FIRMY PROJEKTUJĄCEJ STRONY INTERNETOWE

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

Zakres wymagań dotyczących Dokumentacji Systemu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

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

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2017 CZĘŚĆ PRAKTYCZNA

Instrukcja użytkownika. Baza Danych Członków SEP / 1

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

Instrukcja rejestracji w systemie System Wspierający Prowadzenie Prac Badawczo-Naukowych oraz Współdzielenie i Publikację Wyników Prac

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle

Instrukcja instalacji programu e STOMis wraz z pakietem Microsoft SQL Server 2005 Express Edition. e STOMis

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

Win Admin Monitor Instrukcja Obsługi

Sage Migrator 2019.b Migracja do wersji Sage Kadry i Płace 2019.a

Rozdział 1. Zagadnienia podstawowe

elektroniczna Platforma Usług Administracji Publicznej

Instalacja aplikacji

ELEKTRONICZNA SKRZYNKA PODAWCZA CYFROWY URZĄD Województwa Warmińsko Mazurskiego Część użytkownika

Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych

Audyt oprogramowania. Artur Sierszeń

Transkrypt:

SPIS TREŚCI: I PROTOKÓŁ ZAŁOŻYCIELSKI... 3 II RAPORT DLA ZLECENIODAWCY... 7 III RAPORT O WYBRANYM INSTRUMENTARIUM ZESPOŁU PROJEKTOWEGO....10 IV RAPORT KLIENTA....10 V WSTĘPNY HARMONOGRAM PROJEKTU....12 VI SPECYFIKACJA WYMAGAŃ SYSTEMOWYCH....14 VII WYBÓR METODOLOGII, NARZĘDZIA CASE I TECHNIKI MODELOWANIA, ZASTOSOWANYCH W PROJEKTACH....20 VIII MODEL KONCEPTUALNY....21 IX OPIS LOGICZNEGO MODELU APLIKACJI...22 X MODEL FIZYCZNY....27 XI SZKIC INTERFEJSU APLIKACJI....28 XII TESTOWANIE I NIEZAWODNOŚĆ....33 XIII DIAGRAM KLAS...34 XIV DIAGRAM SEKWENCJI...36 XV DIAGRAM PRZEJŚĆ STANÓW...39 2

I Protokół założycielski 1. Dnia 04.03.2012 została utworzona grupa projektowa w celem wykonania zadania programistycznego biblioteka-szkolna. 2. Przewidywana data zakończenia projektu: 31.06.2012r. Jeśli projekt nie zostanie zakończony w pierwszym terminie to przewidywany jest drugi termin zakończenia projektu: 31.09.2012r. Zespół zostanie rozwiązany po zakończeniu projektu w odpowiednim terminie. 3. W skład grupy wchodzą: 3.1. Marcin Sobejko, 3.2. Radosław Łańcucki, 3.3. Narcyz Owsiany, 3.4. Paweł Sitarz. 4. Tytuł projektu: Aplikacja do zarządzania biblioteką szkolną. 5. Kierownik projektu: Paweł Sitarz (dokumentalista) wybrany w sposób demokratyczny w głosowaniu jawnym: 5.1. za głosowały 3 osoby, 5.2. przeciw głosowało 0 osób, 5.3. wstrzymało się od głosu 1 osoba. 6. Opis projektu: Celem przedsięwzięcia jest stworzenie działającej aplikacji w oparciu o standardy inżynierii oprogramowania. Projekt będzie realizowany do momentu zakończenia wszystkich etapów projektowania. Produktem końcowym będzie aplikacja do zarządzania biblioteką szkolną. 7. Cel projektu Celem grupy jest stworzenie aplikacji, która będzie umożliwiała zarządzania biblioteką szkolną. Aplikacja ma za zadanie wspomagać pracę pracownika jak i ułatwić wypożyczanie książek uczniom. Aplikacja będzie realizowała następujące czynności: 7.1. uczeń: a. wyszukiwanie pozycji danej książki za pomocą wyszukiwarki, b. sortowanie znalezionych pozycji według autorów oraz alfabetycznie, c. zakładanie nowego konta jako zwykły użytkownik, d. edytowanie danych osobowych, e. przeglądanie listy wypożyczonych książek, f. sprawdzanie terminu zwrotu danej książki, g. przeglądanie kar za nieterminowe zwracanie książek. 3

7.2. pracownik: a. zakładanie kont zwykłym użytkownikom, b. dodawanie pozycji nowych książek, c. usuwanie lub edytowanie pozycji książki, d. przeglądanie terminów zwrotu książek. 7.3. administrator: a. zarządzanie wszystkimi kontami w aplikacji, b. modyfikacja rekordów w bazie danych, c. ustalanie uprawnień dla poszczególnych użytkowników. Celem jest też przetestowanie i wykonanie potrzebnej dokumentacji. Wykonanie aplikacji z godnie z wymogami klienta. 8. Zasady współpracy w grupie: 8.1. Wszystkie przydzielone nam zadania zobowiązujemy wykonywać terminowo. 8.2. Wszyscy angażujemy się w pracę i jesteśmy odpowiedzialni za wyniki. 8.3. Szanujemy oraz wspomagamy się nawzajem. 8.4. Doceniamy pracę i zaangażowanie innych. 8.5. Uwagi zgłaszamy do kierownika projektu. 8.6. Podnosimy motywacje i zaangażowanie w zespole. 8.7. Nie używamy wulgarnych wyrażeń przeciwko drugiej osobie. 8.8. Ważne, aby każdy członek zespołu otrzymał określoną funkcję lub sam mógł ją wybrać. 9. Wybór technologii: 9.1. środowisko programistyczne: a. Eclipse Indigo, b. Sybase, c. SQL AnyWhere 9. 9.2. języki programowania: a. Java, b. SQL. 9.3. inne: a. OpenOffice, b. StarUML. 4

10. Opis ogólny: 10.1. Ogólne możliwości projektowanej aplikacji: a. prosty i czytelny interfejs, b. obsługa wielu użytkowników w jednym momencie, c. prosty algorytm sortowania wyszukanych pozycji, d. łatwość w obsłudze dla pracownika oraz zwykłego użytkownika, e. intuicyjne rozmieszczenie narzędzi na pasku, f. nisko poziom zużycia zasobów procesora. 10.2. Ogólne ograniczenia: Aby możliwe było korzystanie z aplikacji. 11. Rola i odpowiedzialność: 11.1. Paweł Sitarz pełni rolę jako kierownik projektu oraz dokumentalista. Odpowiada za nadzór nad wykonaniem projektu zgodnie z harmonogramem prac, opracowanie dokumentacji projektu, sporządzanie notatek do każdego etapu. 11.2. Radosław Łańcucki pełni rolę jako programista oraz analityk. Odpowiada za utworzenie systemu zarządzanie kontami, wdrożenie do aplikacji algorytmów sortujących. 11.3. Narcyz Owsiany pełni rolę jako tester oraz grafik. Odpowiada za przygotowanie środowiska i danych testowych, tworzenie i wykonywanie testów automatycznych i manualnych, tworzenie prostego i przejrzystego interfejsu użytkownika. 11.4. Marcin Sobejko pełni rolę jako programista oraz projektant Odpowiada za zaprojektowanie oraz stworzenie szkieletu aplikacji, optymalizacja wydajności i jakości istniejącej aplikacji, projektowanie klas, metod i obiektów. 12. Nagrody i kary: 12.1. Nagrody: Za pracę zgodnie z harmonogramem uczestnicy projektu otrzymują wynagrodzenie zgodne z umową o prace. 12.2. Kary: Za każdą zwłokę lub nie postępowanie zgodnie z ustalonym harmonogramem prac, członek zespołu otrzymuje wynagrodzenie zmniejszone o 5% za każdy dzień zwłoki. W przypadku nie wywiązania się z obowiązków w procesie realizacji projektu, osoby należące do grupy mogą wykluczyć daną osobę z projektu. 13. Rozwiązanie grupy: Rozwiązanie grupy następuje po zakończeniu prac projektowych lub wdrożeniu aplikacji u klienta. 5

14. Słownik pojęć i synonimów: 14.1. interfejs (GUI) - warstwa umożliwiająca komunikacje użytkownika z aplikacją, 14.2. logger (dziennik zdarzeń) funkcja zapisująca wszystkie zdarzenia które miały miejsce podczas działania aplikacji, 14.3. skrypty (kod) konfiguracja dla silnika graficznego zapisana w postaci określonego języka. 15. Rozstrzyganie sporów: 15.1. Ważne decyzje są rozstrzygane przez demokratyczne głosowanie. 15.2. Mniej ważniejsze spory są rozstrzygane drogą e-mailową lub na forum grupy. 16. Postanowienie końcowe: 16.1. Do projektu dopuszcza się wprowadzenie najwyżej trzech zmian, które nie będą miały wielkiego wpływu na funkcjonalność niniejszego projektu. 16.2. Zostaną sporządzone trzy kopie umowy, po jednym egzemplarzu dla każdej ze stron. 16.3. Umowa zaczyna obowiązywać w dniu, w którym zostanie podpisana i obowiązuje do 31.06.2012r. Marcin Sobejko Radosław Łańcucki Narcyz Owsiany Paweł Sitarz............ 6

II Raport dla zleceniodawcy 1. Cel projektu. Zaprojektowanie oraz wykonanie aplikacji dla biblioteki szkolnej. Program ma wspomóc pracę pracownika w zakresie zarządzania zbiorami oraz czytelnikami, umieszczonymi w bazie danych biblioteki. Usprawnienie procesu przeszukiwania księgozbioru czy wypożyczenia książek przez czytelnika. 2. Zakres przedsięwzięcia. Określenie wymagań stawianych aplikacji (na podstawie wytycznych klienta). Dokonanie analizy przedstawionych zagadnień. Zaprojektowanie aplikacji zgodnie z wynegocjowanymi wytycznymi. Zaimplementowanie zaprojektowanych struktur w aplikacji. Sporządzenie dokumentacji, fazy testów programu oraz wdrożenie oprogramowania. 3. Systemy zewnętrzne. Aplikacja do przechowywania danych wykorzystuje bazę danych w technologii MySQL 7.2. Program stworzony jest dla systemów operacyjnych obsługujących język Java firmy Oracle w wersji 6.0 i nowsze. 4. Szkicowy opis wymagań: a. zarządzanie księgozbiorem, b. zarządzanie gatunkami literackimi, c. zarządzanie czytelnikami, d. zarządzanie pracownikami, e. zarządzanie statusami dostępności książek, f. zarządzanie rezerwacjami książek, g. system logowania, h. nadawanie uprawnień pracownikom, i. współpraca z bazą MySQL. 5. Szkicowy opis modelu systemu. Na system składa się baza danych w technologii MySQL oraz aplikacja napisana w języku Java stanowiąca interfejs dla utworzonej bazy. Rekordy związane z księgozbiorem, użytkownikami oraz pracownikami przechowywane są w jednej bazie danych. System podzielony jest na trzy ściśle ze sobą współpracujące warstwy: a. Interfejs - warstwa aplikacji umożliwiająca komunikacje użytkownik program. b. Logika - warstwa aplikacji pośrednia, komunikująca się z bazą danych. c. Baza danych - warstwa końcowa, przechowująca dane. 7

Rysunek nr 1. Warstwy aplikacji oraz przepływ danych pomiędzy nimi. 6. Szkicowy opis proponowanych rozwiązań Aplikacja zbudowana jest w technologii Java za pomocą biblioteki Swing, dzięki czemu aplikacja jest przejrzysta oraz estetyczna. Połączenie z bazą danych zapewnia interfejs MySQL Connect/J wchodzący w skład biblioteki JDBC, który jest sprawdzonym rozwiązaniem. Baza danych działa w oparciu o system MySQL w wersji 7.2, co zapewni szybkość działania, łatwość wykorzystania oraz przenośność. 7. Oszacowane koszty projektu. Oszacowanie kosztów jest prowadzone w oparciu o zakładane środki i zasoby przeznaczone do realizacji projektu. Uwzględniamy również czas realizacji projektu, który wynosi 210 dni roboczych. 7.1. Wydzierżawienie sprzętu komputerowego oraz pomieszczenia z dostępem do sieci Internet na okres 210 dni. Koszty sprzętu będące częścią tworzonego systemu Cena jednostkowa Ilość Suma Monitor LCD Dell U2412M 247.32 zł 5 szt. 1236.60 zł Klawiatura Logitech K350 Wireless 53.49 zł 5 szt. 267.45 zł Mysz Logitech M195 Wireless 14.50 zł 5 szt. 72.50 zł Stacja robocza Dell Precision T3500 578.66 zł 5 szt. 2893.30 zł Pomieszczenie z dostępem do sieci Internet, Koszalin ul Akademicka 39B/3 Posumowanie 353.00 zł 7 mies. 2471.00 zł 6940.85 zł 8

7.2. Koszty zakupu narzędzi. Koszty zakupu narzędzi CASE Wersja Cena jednostkowa Microsoft Windows 7 Professional 64bit PL Licencja Ilość Suma -------- 485.00 zł komercyjna 5 szt. 2425.00 zł OpenOffice 3.3.0 0.00 zł bezpłatna 5 szt. 0.00 zł Google code -------- 0.00 zł bezpłatna 1 szt. 0.00 zł GanttProjekt 2.0.1 0.00 zł GPL 2.0 5 szt. 0.00 zł TortoiseSVN 1.7 0.00 zł GPL 3.0 5 szt. 0.00 zł StarUML 5.0 0.00 zł GPL 3.0 2 szt. 0.00 zł WebRatio BRM Free 6.1.2 0.00 zł bezpłatna 2 szt. 0.00 zł JavaDoc 1.5.0 0.00 zł GPL 3.0 3 szt. 0.00 zł Eclipse IDE for Java EE Developers 3.7.2 Posumowanie 3.7.2 0.00 zł EPL 1.0 3 szt. 0.00 zł 7.3. Nakład pracy (dzień roboczy trwa osiem godzin). Pracownicy Roboczogodzina Ilość dni roboczych Suma Programista nr 1 21.00 zł 76 12768.00 zł Programista nr 2 21.00 zł 76 12768.00 zł Projektant 22.00 zł 49 8624.00 zł Analityk 19.00 zł 32 4864.00 zł Dokumentalista 14.00 zł 91 10192.00 zł Kierownik 25.00 zł 105 21000.00 zł Grafik 19.00 zł 31 4712.00 zł Posumowanie 89376.00 zł 7.4. Załącznik nr 1. Harmonogram prac (maks do 2 stron standardowego maszynopisu). 2425.00 zł 9

III Raport o wybranym instrumentarium zespołu projektowego. Załącznik nr 2. Raport o wybranym instrumentarium zespołu projektowego. IV Raport klienta. 1. Specyfikacja wymagań użytkownika: 1.1. aplikacja powinna wspierać działanie biblioteki szkolnej, 1.2. dodawanie nowych książek do księgozbioru, 1.3. usuwanie książek z księgozbioru, 1.4. edytowanie istniejących książek, 1.5. dodawanie nowych gatunków literackich, 1.6. usuwanie gatunków literackich, 1.7. edytowanie gatunków literackich, 1.8. dodawanie statusów dostępności książek, 1.9. edytowanie statusów dostępności książek, 1.10. edytowanie statusów dostępności książek, 1.11. usuwanie statusów dostępności książek, 1.12. charakterystyka książki: a. tytuł, b. autor, c. numer ISBN, d. rok wydania, e. wydawca, f. język, g. ilość stron, h. gatunek, i. typ (lektura lub zwykła książka), j. ilość książek w księgozbiorze. 1.13. statusy książek: a. wypożyczona, b. zarezerwowana, c. czasowo niedostępna (konserwacja), d. dostępna. 1.14. rezerwacja książki przez klienta: a. data rezerwacji, b. data upływu rezerwacji, c. złożenie rezerwacji, d. anulowanie rezerwacji. 1.15. wypożyczenie książki przez klienta: a. data wypożyczenia, b. data upływu wypożyczenia, c. możliwość wypożyczenia, d. zrezygnowanie z wypożyczenia oddanie książki. 10

1.16. przechowywane dane pracownika: a. imię, b. nazwisko, c. stanowisko, d. numer PESEL, e. numer i seria dowodu osobistego, f. adres, g. telefon, h. wynagrodzenie. 1.17. przechowywane dane klienta: a. imię, b. nazwisko, c. nr legitymacji szkolnej, d. klasa. 1.18. regulamin biblioteki: a. kara za nieoddanie wypożyczonej książki w terminie, b. kara za zniszczenie wypożyczonej książki, c. tymczasowe zablokowanie konta klienta. 1.19. logowanie do aplikacji przez pracowników oraz klientów, 1.20. wylogowanie z systemu. 2. Załączniki nr 3. Diagram procesu biznesowego w notacji BPMN. 11

V Wstępny harmonogram projektu. 1. Opracowanie wstępnej listy zadań do wykonania: 1.1. finalizacja dokumentacji projektu, 1.2. rozdzielenie ról dla członków grupy, 1.3. stworzenie protokołu założycielskiego, 1.4. opis funkcjonalności aplikacji, 1.5. opracowanie dokumentacji o projekcie, 1.6. opracowanie logiki projektu, 1.7. zaprojektowanie interfejsu graficznego, 1.8. stworzenie graficznych elementów do aplikacji, 1.9. opracowanie diagramu klas, 1.10. wybranie środowiska programistycznego, 1.11. stworzenie działającej aplikacji, 1.12. stworzenie bazy danych dla aplikacji, 1.13. połączenie aplikacji z bazą danych, 1.14. testowanie działającej aplikacji, 1.15. korekcja błędów, 1.16. dodanie do dokumentacji kodu źródłowego. 2. Oszacować czas wykonania zadań. 2.1. Rozdzielenie ról dla członków grupy wyznaczenie zadań przez kierownika dla każdego członka grupy oraz wyznaczenie odpowiednich terminów. 2.2. Stworzenie protokołu założycielskiego spisanie umowy między członkami grupy. 2.3. Opis funkcjonalności aplikacji wymienienie głównych zalet oraz opcji danej aplikacji. 2.4. Opracowanie dokumentacji o projekcie wstępny opis zawierający podstawowe dane na temat projektu. 2.5. Opracować logikę projektu stworzenie spójnej logiki oraz intuicyjność aplikacji w oparciu o wymagania do projektu. 2.6. Zaprojektowanie - uzyskania jak najlepszego efektu w fazie końcowej. 2.7. Stworzenie działającej aplikacji wykonanie głównej aplikacji będącej głównym komunikatorem człowiek komputer. 2.8. Stworzenie bazy danych dla aplikacji zaprojektowanie systemu bazy danych oraz ustawienie ich spójności logicznej. 2.9. Połączenie aplikacji z bazą danych zespolenie dwóch składowych projektu. 2.10. Testowanie działającej aplikacji przeprowadzenie działań mające na celu wykrycie błędów gotowej już aplikacji. 2.11. Korekcja błędów ponowne przeanalizowanie fragmentów kodu zawierające błędy logiczne. 2.12. Dodanie do dokumentacji kodu źródłowego wpis źródła aplikacji. 12

2.13. Finalizacja dokumentacji projektu ostateczne dopracowanie dokumentacji oraz wyznaczenie wniosków. 2.14. Interfejs graficzny wykonanie interfejsu mającego ułatwienie użytkownikowi korzystanie z programu oraz podniesienie jego atrakcyjności. 2.15. Stworzenie graficznych elementów do aplikacji upiększenie interfejsu o drobne szczegóły. 2.16. Opracowanie diagramu klas zaprojektowanie szkieletu kodu źródłowego. 2.17. Wybranie środowiska programistycznego staranne wybranie języka programistycznego oraz środowiska programistycznego. 3. Przydzielić zadania członkom zespołu: 3.1. Paweł Sitarz: a. finalizacja dokumentacji projektu, b. stworzenie protokołu założycielskiego, c. rozdzielenie ról dla członków grupy, d. opracowanie dokumentacji o projekcie, e. opis funkcjonalności aplikacji, f. dodanie do dokumentacji kodu źródłowego. 3.2. Marcin Sobejko: a. korekcja błędów, b. opracowanie diagramu klas, c. stworzenie bazy danych dla aplikacji, d. połączenie aplikacji z bazą danych. 3.3. Radosław Łańcucki: a. korekta błędów, b. opracować logikę projektu, c. wybranie środowiska programistycznego, d. stworzenie działającej aplikacji. 3.4. Narcyz Owsiany: a. testowanie działającej aplikacji, b. zaprojektowanie interfejsu graficznego, c. stworzenie graficznych elementów do aplikacji. 4. Załącznik nr 4. Wstępny diagram Gantt a. 13

VI Specyfikacja wymagań systemowych. 1. Wstęp: 1.1. Cel Niniejszy dokument przestawia specyfikację wymagań systemowych (zarówno funkcjonalnych jak i niefunkcjonalnych) oraz ogólny zarys funkcjonalności tworzonego systemu służącemu wspomaganiu działania biblioteki szkolnej. Dokument przeznaczony jest zarówno dla programistów firmy tworzącej wyżej opisane oprogramowanie jak i klienta, który jest zainteresowany kupnem tego systemu. 1.2. Zakres Głównym założeniem grupy projektowej jest stworzenie aplikacji wspomagającej działanie biblioteki szkolnej. Aplikacja ma umożliwiać pracownikom wprowadzanie informacji o książkach. Książki te mogą być wypożyczane przez klientów. Informacje na temat użytkowników aplikacji, istniejących w księgozbiorze książek oraz aktualnie trwających wypożyczeniach lub rezerwacjach będą przechowywane w bazie danych aplikacji w postaci kolejnych rekordów. 1.3. Definicje, akronimy i skróty. 1.3.1. Słownik projektu: a. Biblioteka miejsce w którym czytelnik może wypożyczyć interesującą go książkę. b. Pracownik pracownik biblioteki, zajmuje się wprowadzaniem książek do bazy danych biblioteki oraz odpowiada za obsługę czytelników. c. Czytelnik osoba wypożyczająca książki w bibliotece. d. Książka dokument piśmienniczy, zapis myśli ludzkiej, raczej obszerny, w postaci publikacji wielostronicowej o określonej liczbie stron, o charakterze trwałym. e. Gatunek książki jest to zespół reguł określających budowę dzieła (np. dramat, ballada, itp.). f. Rezerwacja książki w czasie, gdy książka jest aktualnie wypożyczona, bądź przeprowadzana jest jej konserwacja, czytelnik może sobie ją zaklepać i w momencie, kiedy jej status zmieni się na dostępny to będzie on miał pierwszeństwo w jej wypożyczeniu. g. Wypożyczenie książki kiedy książka ma status dostępny każdy czytelnik może ją wypożyczyć. h. Użytkownik osoba posiadająca uprawnienia do logowania w aplikacji. Rozróżniamy dwóch użytkowników pracownik oraz czytelnik. i. Administrator osoba posiadająca możliwość zalogowania się w aplikacji. Posiada on również największe uprawnienia spośród wszystkich użytkowników aplikacji. j. Login jest to ciąg znaków używanych przy procesie logowania, a także weryfikacji użytkownika aplikacji. 14

1.3.2. Skróty: a. KBS Księgozbiór Biblioteki Szkolnej. b. SZBD System Zarządzania Bazą Danych. c. JRE Java Runtime Environment. 1.3.3. Referencje, odsyłacze do innych dokumentów. Ustawa z dnia 29 sierpnia 1997 r. o ochronie danych osobowych, IEEE Std 1233, 1998 Edition, IEEE Guide for Developing System Requirements Specifications. 2. Ogólny opis: 2.1. Walory użytkowe i przydatność projektowanego systemu: 2.1.1. Częściowa automatyzacja działania biblioteki szkolnej. 2.1.2. Łatwy dostęp zarówno do listy książek znajdujących się w KBS, jak i listy jej pracowników oraz klientów. 2.1.3. Możliwość monitorowania pracy biblioteki szkolnej (np. lista aktualnie wypożyczonych oraz zarezerwowanych książek). 2.2. Ogólne możliwości projektowanego systemu: 2.2.1. Wprowadzanie nowych pozycji książek do KBS. 2.2.2. Wypożyczanie oraz rezerwacja książek z KBS. 2.2.3. Wyświetlanie listy książek dostępnych aktualnie w KBS. 2.2.4. Przeglądanie listy aktualnie wypożyczanych książek oraz rezerwacji książek. 2.2.5. Przeglądanie listy pracowników. 2.2.6. Przeglądanie listy klientów. 2.3. Ogólne ograniczenia. Baza danych tworzonej aplikacji wspomagającej działanie biblioteki szkolnej musi zostać oparta o SZBD MySQL w wersji 7.2. Komputery, na których ma zostać uruchomiona aplikacja, muszą być wyposażone minimalnie w system operacyjny zgodny z rodziną systemów Windows Windows XP (lub nowszy), muszą być na nich zainstalowane środowiska JRE w wersji przynajmniej 6.0 oraz muszą mieć one dostęp do Internetu. 2.4. Charakterystyka użytkowników: 2.4.1. Administrator osoba odpowiedzialna za administrowanie bazą danych użytkowników aplikacji oraz za zajmowanie się systemem aplikacji (konserwacja infrastruktury informatycznej biblioteki oraz regularne sporządzanie kopii bezpieczeństwa bazy danych aplikacji). 15

Przypadki użycia aplikacji przez administratora: a. logowanie do aplikacji, b. przypomnienie hasła, c. wylogowanie z aplikacji, d. weryfikacja użytkownika, e. ustalenie poziomu dostępu użytkownika, f. dodanie nowego użytkownika do bazy danych, g. edycja istniejącego użytkownika, h. usunięcie istniejącego użytkownika, i. nadanie uprawnień użytkownikowi, j. przeglądanie listy użytkowników. 2.1.1. Pracownik osoba odpowiedzialna za zarządzanie księgozbiorem biblioteki oraz za nadzorowanie wszelkich prac konserwacyjnych prowadzonych przy książkach. Przypadki użycia aplikacji przez pracownika: a. logowanie do aplikacji, b. przypomnienie hasła, c. wylogowanie z aplikacji, d. weryfikacja użytkownika, e. dodanie nowych pozycji książek do księgozbioru..biblioteki, f. edycja istniejących pozycji książek, g. usunięcie istniejących pozycji książek, h. dodanie nowych gatunków książek, i. edycja istniejących gatunków książek, j. usunięcie istniejących gatunków książek, k. dodanie nowych statusów dostępności książki, l. edycja statusów dostępności książki, m. zablokowanie użytkownika, n. zmiana statusu dostępności książki, o. przypomnienie o terminie zwrotu książki. 2.4.2. Czytelnik - osoba będąca uprawniona do korzystania z księgozbioru biblioteki, posiadająca prawo do wypożyczania z niej interesujących ją książek. Przypadki użycia aplikacji przez czytelnika: a. logowanie do aplikacji, b. przypomnienie hasła, c. wylogowanie z aplikacji, d. weryfikacja użytkownika, e. zarezerwowanie książki, f. wypożyczenie książki, g. anulowanie rezerwacji książki, h. anulowanie wypożyczenia książki. 16

2.4.3. Środowisko operacyjne: a. System operacyjny zgodny z rodziną systemów Windows Windows XP (lub nowszy). b. Środowisko JRE w wersji przynajmniej 6.0. 2.4.4. Założenia. Stanowiska komputerowe klienta muszą być wyposażone minimalnie w: a. system operacyjny zgodny z rodziną systemów Windows Windows XP (lub nowszy), b. zainstalowane środowisko JRE w wersji przynajmniej 6.0, c. połączenie internetowe, d. procesor o taktowaniu 400 MHz, e. pamięć RAM o wielkości 128MB, f. ok. 200MB ilości wolnego miejsca na dysku twardym, g. karta video i monitor, h. mysz, klawiatura. 3. Specyficzne wymagania: 3.1. Wymagania niefunkcjonalne (ograniczenia): 3.1.1. Niezawodność aplikacji: a. Optymalne dobranie architektury sprzętowo-programowej na jakiej będzie działał serwer bazodanowy aplikacji oraz sama aplikacja. b. Przeprowadzenie licznych testów poszczególnych modułów aplikacji z udziałem pracowników klienta. 3.1.2. Interfejs aplikacji: Stworzenie intuicyjnego oraz prostego w obsłudze interfejsu aplikacji po konsultacjach z pracownikami klienta. 3.1.3. Wydajność aplikacji: Optymalizacja zaprogramowanych modułów aplikacji w celu zredukowania czasu ich wykonywania oraz zredukowania czasu odpowiedzi serwera na żądania ze strony klienta. 3.1.4. Bezpieczeństwo aplikacji: a. Zastosowanie mechanizmów bezpieczeństwa kontroli dostępu do aplikacji, które chronią istotne informacje klientów (system logowania do aplikacji, możliwość ustawiania poziomów dostępu poszczególnym użytkownikom, szyfrowanie haseł, itp.). b. Możliwość systematycznego sporządzania kopii bezpieczeństwa bazy danych w określonej jednostce czasu, przeprowadzane w celu zminimalizowania bądź całkowitemu zapobiegnięciu strat danych wynikłych z różnych przyczyn losowych. 17

c. Ograniczenie wszystkim użytkownikom praw dostępu do bazy danych. d. Stworzenie tylko jednego aktora systemu o rozszerzonych możliwościach administratora i dwóch aktorów z ograniczonymi uprawnieniami pracownika i czytelnika. e. Proces logowania jest realizowany w dwóch następujących po sobie krokach. Pierwszym krokiem jest podanie nazwy użytkownika i hasła użytkownika w formularzu logowania, a następnie przeprowadzana jest jego weryfikacja i nadanie mu odpowiednich uprawnień). 3.1.5. Dostępność aplikacji: Dostęp do bazy danych aplikacji będzie miał każdy użytkownik z dowolnego miejsca, jedynymi warunkami korzystania z aplikacji jest posiadanie aktywnego konta użytkownika oraz posiadanie samej aplikacji. 3.1.6. Ograniczenia: System operacyjny tworzona aplikacja musi być w pełni zgodna i kompatybilna z systemem Windows 7 Professional, ponieważ klient dysponuje aktualnie licencjami na ten system i jest on zainstalowany na stanowiskach w bibliotece. 3.2. Wymagania funkcjonalne: 3.2.1. Funkcje główne: a. logowanie do aplikacji, b. wylogowanie z aplikacji, c. weryfikacja użytkownika, d. ustalenie poziomu dostępu użytkownika, e. dodawanie nowego użytkownika do bazy danych, f. nadawanie uprawnień użytkownikowi, g. dodanie nowych pozycji książek do księgozbioru biblioteki, h. zmiana statusu dostępności książki, i. zarezerwowanie książki, j. wypożyczenie książki. 18

3.2.2. Funkcje dodatkowe: a. edycja istniejącego użytkownika, b. usunięcie istniejącego użytkownika, c. zablokowanie użytkownika, d. przeglądanie listy użytkowników, e. przypomnienie hasła, f. edycja istniejących pozycji książek, g. usunięcie istniejących pozycji książek, h. dodawanie nowych gatunków książek, i. edycja istniejących gatunków książek, j. usuwanie istniejących gatunków książek, k. dodawanie nowych statusów dostępności książki, l. edycja statusów dostępności książki, m. anulowanie rezerwacji książki, n. anulowanie wypożyczenia książki, o. przypomnienie o terminie zwrotu książki. 3.2.3. Załącznik nr 5. Diagram przypadków użycia. 19

VII Wybór metodologii, narzędzia CASE i techniki modelowania, zastosowanych w projektach. 1. W projekcie biblioteka-szkolna do przeprowadzenia analizy obiektowej została wybrana metoda obiektowa OMT (Rumbaugh). Natomiast jako technikę analizy obiektowej została przyjęta notacja UML(ang. Unified Modeling Language). Metody i techniki modelowania zostały wybrane, ponieważ łatwo można odwzorować metodyki OMT w notacji UML. Kierowaliśmy się doświadczeniami członków zespołu w pracy ze standardem UML. Względną prostotą i jednoznacznością notacji standardu UML. 2. Wybrane narzędzia CASE: a. StarUML, wersja 5.0 aplikacja do modelowania diagramów w standardzie UML. b. OpenOffice, wersja 3.3.0 aplikacja do sporządzania dokumentacji tekstowej. c. JavaDoc, wersja 1.5.0 aplikacja generująca dokumentację na podstawie kodu źródłowego Java. Więcej informacji o wybranych narzędziach CASE znajdują się w raporcie o wybranym instrumentarium. 20

VIII Model konceptualny. 21

IX Opis logicznego modelu aplikacji. 1. Słownik danych projektu 1.1. Użytkownicy Uzytkownicy Nazwa atrybutu: Opis atrybutu: Format danych: Id_uzytkownik identyfikator użytkownika Liczbowy Login_uzytkownik Haslo_uzytkownik Rodzaj_uzytkownik nazwa użytkownika używana przy logowaniu hasło używane przy logowaniu rodzaj użytkownika określający jego poziom dostępu Tekstowy (20) Tekstowy (30) Tekstowy (15) Imie_uzytkownik imię użytkownika Tekstowy (20) Nazwisko_uzytkownik nazwisko użytkownika Tekstowy (30) Pracownicy 1.2. Pracownicy Nazwa atrybutu: Opis atrybutu: Format danych: Id_pracownik identyfikator pracownika Liczbowy Pesel_pracownik numer peselu Liczbowy Dowod_pracownik numer i seria dowodu osobistego pracownika Tekstowy (15) Ulica_pracownik adres domowy pracownika Tekstowy (35) Miejscowosc_pracownik miejscowość, gdzie mieszka pracownik Tekstowy (20) Kod_pracownik kod pocztowy miejscowości Tekstowy (6) Telefon_pracownik numer telefonu + kierunkowy Tekstowy (12) Pensja_pracownik pensja pracownika Liczbowy (4,2) 22

Klienci 1.3. Klienci Nazwa atrybutu: Opis atrybutu: Format danych: Id_klient Identyfikator klienta Liczbowy Legitymacja_klient Zablokowany_klient Kary 1.4. Kary Numer legitymacji szkolnej klienta Informacja, czy konto klienta jest zablokowane Liczbowy Boolean Nazwa atrybutu: Opis atrybutu: Format danych: Id_kara Identyfikator kary Liczbowy Kwota_kara Kwota kary dla klienta Liczbowy (3,2) Opis_kara Opis kary klienta (za co został ukarany) Data_kara Data ukarania klienta Data Ksiazki 1.5. Książki Tekstowy (200) Nazwa atrybutu: Opis atrybutu: Format danych: Id_ksiazka Identyfikator książki Liczbowy Tytul_ksiazka Tytuł książki Tekstowy (50) Numer_ksiazka Numer ISBN Tekstowy (45) Wydanie_ksiazka Rok wydania książki Data Strony_ksiazka Ilość stron Liczbowy Tagi_ksiazka Tagi opisujące książkę Tekstowy (500) Autorzy 1.6. Autorzy Nazwa atrybutu: Opis atrybutu: Format danych: Id_autor Identyfikator autora Liczbowy Imie_autor Imię autora Tekstowy (20) Nazwisko_autor Nazwisko autora Tekstowy (30) 23

Tłumaczenia 1.7. Tłumaczenia Nazwa atrybutu: Opis atrybutu: Format danych: Id_tlumaczenie Identyfikator tłumaczenia Liczbowy Nazwa_tlumaczenie Format 1.8. Format Język w jakim jest wydana książka Tekstowy (40) Nazwa atrybutu: Opis atrybutu: Format danych: Id_format Identyfikator formatu Liczbowy Nazwa_format Nazwa formatu Tekstowy (5) Wydawnictwa 1.9. Wydawnictwa Nazwa atrybutu: Opis atrybutu: Format danych: Id_wydawnictwo Identyfikator wydawnictwa Liczbowy Nazwa_wydawnictwo Nazwa wydawnictwa Tekstowy (45) Statusy 1.10. Statusy Nazwa atrybutu: Opis atrybutu: Format danych: Id_statusg Identyfikator statusu Liczbowy Nazwa_status Nazwa statusu dostępności Tekstowy (20) Opis_status Opis statusu dostępności Tekstowy (250) Gatunki 1.11. Gatunki Nazwa atrybutu: Opis atrybutu: Format danych: Id_gatunek Identyfikator gatunku książki Liczbowy Nazwa_gatunek Nazwa gatunku Tekstowy (30) 24

Rezerwacja 1.12. Rezerwacja Nazwa atrybutu: Opis atrybutu: Format danych: Id_rezerwacja Identyfikator rezerwacji Liczbowy Data_rezerwacja Data rezerwacji książki Data Koniec_rezerwacja Data upływu rezerwacji Data Wypozyczenie 1.13. Wypożyczenie Nazwa atrybutu: Opis atrybutu: Format danych: Id_wypozyczenie Identyfikator wypożyczenia Liczbowy Data_wypozyczenie Koniec_wypozyczenie Data wypożyczenia książki przez klienta Data zwrotu książki przez klienta Data Data 2. Opis słownika danych: 2.1. Użytkownik jest to osoba zarejestrowana w systemie, mająca dostęp do aplikacji. Jego uprawnienia są bezpośrednio zależne od ustalonego przez administratora poziomu dostępu do aplikacji (pracownik pracownik, administrator, klient czytelnik). 2.2. Logowanie proces mający na celu zweryfikowanie podanych przez użytkownika danych w formularzu logowania oraz ustalenie jego poziomu dostępu do aplikacji. 2.3. Pracownik jest to osoba zatrudnioną w bibliotece, zobowiązana do wypełniania przydzielanych jej obowiązków. 2.4. Administrator pracownik biblioteki posiadający największe uprawnienia spośród wszystkich użytkowników aplikacji. Zajmuje się bazą danych aplikacji. 2.5. Pracownik pracownik biblioteki, zajmuje się wprowadzaniem książek do bazy danych biblioteki oraz jest odpowiedzialny za obsługę czytelników. 2.6. Klient jest to osoba akceptująca warunki korzystania z biblioteki i zobowiązująca się jednocześnie do przestrzegania jej zapisów regulaminu. 2.7. Czytelnik klient wypożyczający oraz rezerwujący książki w bibliotece 2.8. Rezerwacja książki w czasie, gdy książka jest aktualnie wypożyczona, bądź przeprowadzana jest jej konserwacja, czytelnik może sobie ją zamówić. W momencie, kiedy jej status zmieni się na dostępny to będzie on miał pierwszeństwo w jej wypożyczeniu. 25