APSI Dokumentacja koocowa 2008-06-02 System wspomagania pracy działu informatycznego projekt APSI Etap 1, 2 i 3 Anna Wołosewicz Piotr Markiewicz Łukasz Karolewski Grzegorz Smulko 1
Spis treści 1. Ogólna charakterystyka systemu... 6 2. Wymagania funkcjonalne... 7 Wymagania na moduły funkcjonalne... 7 Specyfikacja funkcjonalna modułu Klienta... 7 Specyfikacja funkcjonalna modułu Operatora... 9 Specyfikacja funkcjonalna modułu Serwera... 10 3. Wymagania niefunkcjonalne... 11 4. Specyfikacja przypadków użycia na poziomie ogólnym oraz specyfikacja kluczowych, architektonicznie znaczących przypadków użycia na poziomie rozszerzonym, konkretnym wraz ze stereotypowymi diagramami klas... 13 Aktorzy... 13 Aktor użytkownik... 13 Aktor operator... 13 Pakiet raportowanie... 13 Przypadek użycia generowanie zestawieo... 14 Przypadek użycia generowanie zestawieo o backupach... 14 Przypadek użycia generowanie zestawieo o licencjach... 14 Przypadek użycia generowanie zestawieo o sprzęcie... 15 Przypadek użycia generowanie zestawieo o zainstalowanym oprogramowaniu i jego konfiguracji... 15 Pakiet helpdesk... 16 Przypadek użycia sprawdzenie statusu własnych zgłoszeo problemów... 16 Przypadek użycia zgłoszenie nowego problemu... 17 Przypadek użycia odwołanie zgłoszenia problemu... 17 Przypadek użycia modyfikacja zgłoszenia problemu... 17 Przypadek użycia przeglądanie szczegółów zgłoszenia... 17 Przypadek użycia utworzenie zgłoszenia w imieniu użytkownika... 19 2
Przypadek użycia wyświetlenie listy zgłoszeo... 20 Przypadek użycia przeglądanie zgłoszeo przypisanych operatorowi... 20 Przypadek użycia przeglądanie nowych zgłoszeo... 21 Przypadek użycia obsługa zgłoszenia... 21 Przypadek użycia przeglądanie szczegółów zgłoszenia... 22 Przypadek użycia zmiana statusu zgłoszenia... 22 Przypadek użycia odpowiedź na zgłoszenie... 22 Pakiet administracja zdalna... 23 Przypadek użycia instalacja zdalna... 24 Przypadek użycia zarządzanie licencjami... 25 Przypadek użycia dodawanie licencji... 25 Przypadek użycia usuwanie licencji... 25 Przypadek użycia przydzielanie licencji... 26 Przypadek użycia zarządzanie backupami... 26 Przypadek użycia definiowanie nowego backupu... 26 Przypadek użycia modyfikacja backupu... 27 Pakiet komunikaty... 27 Przypadek użycia wysłanie komunikatu do użytkowników... 29 5. Diagramy klas... 30 Moduł Serwera... 30 Moduł Operatora... 31 Moduł Klienta... 32 Klasy wspólne dla wszystkich modułów... 33 Interfejs IPlugIn i hierarchia klas przechowujących dane... 34 6. Diagram komponentów... 35 7. Diagramy sekwencji i współpracy... 36 Administracja zdalna... 36 Instalacja zdalna... 36 3
Definiowanie nowego backupu... 38 Modyfikacja backupu... 39 Raportowanie... 40 Generowanie zestawieo o zainstalowanym oprogramowaniu i jego konfiguracji... 40 Helpdesk... 41 Utworzenie zgłoszenia w imieniu użytkownika... 41 Przeglądanie nowych zgłoszeo... 42 Przeglądanie szczegółów zgłoszenia... 43 Zmiana statusu zgłoszenia... 44 Odpowiedź na zgłoszenie... 45 8. Diagram zastosowania... 46 9. Wstępna specyfikacja sprzętu i oprogramowania podstawowego... 46 10. Specyfikacja technologii realizacji oprogramowania systemu... 47 Decyzje projektowe... 47 Prowadzenie projektu... 47 11. Projekt bazy danych w formie diagramu LDM (logicznego modelu danych) z odpowiednim opisem (tabel, kolumn, ograniczeo integralnościowych i innych elementów bazy danych)... 48 Diagram encji... 48 Diagram LDM... 48 Opis ogólny bazy danych... 49 Opis encji... 49 Opis ograniczeo integralnościowych... 49 12. Projekt interfejsu użytkownika... 50 Diagram klas <<boundary>>... 50 Przykładowe ekrany klienta... 50 Panel główny modułu klienta... 50 Zgłoszenie problemu Form... 51 Przykładowe ekrany operatora... 51 Panel główny modułu operatora... 51 4
Komunikat Form... 52 Szczegóły licencji Form... 52 Lista licencji Form... 53 5
APSI Dokumentacja koocowa 2008-06-02 1. Ogólna charakterystyka systemu System wspomagania pracy działu informatycznego (MMS My Management System) jest projektowany z myślą o ułatwieniu pracy działu IT małej i średniej firmy jako niedroga alternatywa dla Microsoft Systems Management Server (SMS). Składa się on z kilku zintegrowanych modułów, pozwalających na automatyczne zbieranie i przetwarzanie informacji o sprzęcie i zainstalowanym oprogramowaniu na komputerach klienckich, komunikację pomiędzy użytkownikami a pracownikami helpdesku (wraz z logowaniem zgłoszeo i generowaniem statystyk) oraz zarządzanie licencjami posiadanymi przez firmę. Może również służyd jako aplikacja komunikacyjna, informująca użytkowników o wydarzeniach w firmie, zagrożeniach lub konieczności ewakuacji z budynku. Dzięki założeniu generyczności i rozszerzalności systemu nie będzie problemem zwiększanie jego funkcjonalności poprzez dodawanie nowych modułów. 6
2. Wymagania funkcjonalne Wymagania na moduły funkcjonalne System powinien składad się z 3 modułów funkcjonalnych (modułu głównego serwera, modułów klienckich i modułów operatora) oraz serwera bazy danych. Zależności pomiędzy modułami przedstawia poniższy schemat. serwer baza danych klient operator Moduł serwera ma byd odpowiedzialny za obsługę poleceo interaktywnych pomiędzy modułami klienta i operatora a także za pośrednictwo w komunikacji z serwerem bazy danych. Moduł klienta ma byd odpowiedzialny przede wszystkim za zbieranie i monitorowanie danych o systemie, formatowanie ich oraz przekazywanie do serwera. Ponadto ma umożliwiad komunikację z operatorem (zgłaszanie problemów działowi IT, wyświetlanie odpowiedzi, otrzymywanie komunikatów). Moduł operatora ma umożliwiad zarządzanie danymi zawartymi w bazie danych, generowanie raportów oraz komunikację z klientami (helpdesk, komunikaty). Komunikacja pomiędzy modułami ma się odbywad za pośrednictwem sieci lokalnej. Specyfikacja funkcjonalna modułu Klienta id opis priorytet 1.1 zarządzania sprzętem i oprogramowaniem 1.1.1 zbieranie i udostępnianie informacji o sprzęcie 1 1.1.2 zbieranie i udostępnianie informacji o zainstalowanym 1 7
oprogramowaniu i jego konfiguracji 1.1.3 zbieranie i udostępnianie informacji o konfiguracji systemu operacyjnego 1 1.2 helpdesk 1.2.1 sprawdzenie statusu własnych zgłoszeo problemów 2 1.2.1.1 zgłoszenie nowego problemu 2 1.2.1.2 odwołanie zgłoszenia problemu 2 1.2.1.3 przeglądanie szczegółów zgłoszenia 2 1.2.1.4 modyfikacja zgłoszenia problemu 2 1.2.1.5 wysłanie zgłoszenia pomocy zdalnej 6 1.3 komunikaty 1.3.1 chat 7 1.3.2 wyświetlanie komunikatów wysyłanych przez operatora 3 1.4 backup 1.4.1 kompresja i wysyłanie do serwera backupowego sterowników wykorzystywanych przez system operacyjny 1.4.2 kompresja i wysyłanie do serwera backupowego dzienników systemowych 5 5 1.4.3 definiowanie katalogów podlegających backupom 5 1.4.4 kompresja i wysyłanie plików podlegających backupom do serwera backupowego 5 1.5 kontrola użytkownika 1.5.1 udostępnianie informacji o godzinach włączenia komputera, zalogowanych użytkownikach, działających programach, obciążeniu systemu 4 1.6 komunikacja z serwerem 1.6.1 w momencie włączenia/wyłączenia komputera (klienta) wysyłana jest informacja o tym fakcie do serwera 1.6.2 jeżeli klient stwierdzi, że jego konfiguracja uległa zmianie, automatycznie informuje o tym serwer 1 1 8
1.6.3 odpowiedź na zapytanie serwera o aktualizacje danych 1 Specyfikacja funkcjonalna modułu Operatora id opis priorytet 2.1 raportowanie 2.1.1 generowanie zestawieo 1 2.1.1.1 generowanie zestawieo o zainstalowanym oprogramowaniu i jego konfiguracji 1 2.1.1.2 generowanie zestawieo o sprzęcie 1 2.1.1.3 generowanie zestawieo o licencjach 2 2.1.1.4 generowanie zestawieo o backupach 5 2.1.3 zdalne instalowanie oprogramowania w trybie nienadzorowanym 8 2.2 administracja zdalna 2.2.1 zarządzanie licencjami 2 2.2.1.1 dodawanie licencji 2 2.2.1.2 usuwanie licencji 2 2.2.1.3 przydzielanie licencji 4 2.2.2 Instalacja zdalna 8 2.2.3 zarządzanie backupami 5 2.2.3.1 definiowanie nowego backupu 5 2.2.3.2 modyfikacja backupu 5 2.2.3.3 odtworzenie danych z backupu 5 2.3 helpdesk 2.3.1 wyświetlenie listy zgłoszeo użytkowników 2 2.3.1.1 przeglądanie zgłoszeo przypisanych operatorowi 2 9
2.3.1.2 przeglądanie nowych zgłoszeo 2 2.3.1.3 przeglądanie szczegółów zgłoszenia 2 2.3.2 obsługa zgłoszenia 2 2.3.2.1 zmiana statusu zgłoszenia 2 2.3.2.2 odpowiedź na zgłoszenie 2 2.3.2.3 obsługa zgłoszenia pomocy zdalnej 8 2.4 komunikaty 2.4.1 wysyłanie komunikatów do użytkowników 3 2.4.2 chat 7 2.5 kontrola użytkownika pobieranie, przetwarzanie, raportowanie itd. informacji o działalności użytkownika 4 Specyfikacja funkcjonalna modułu Serwera id opis priorytet 3.1 zarządzanie przepływem danych (wpisywanie/odczyt danych do/z DBMS) 1 3.2 zarządzanie klientami 3.2.1 odpytywanie hostów w celu sprawdzenia aktywności/ obecności 3.2.2 wysyłanie interaktywnych poleceo (komunikaty do użytkowników, żądanie aktualizacji danych) 1 1 3.2.3 Wake On Lan 2 3.2.4 odbieranie informacji o zakooczeniu pracy klienta (jeżeli klient nie wyśle informacji o zakooczeniu pracy (wyłączenie komputera) przyjmujemy, że uległ on awarii (reset / zawieszenie / odłączenie od zasilania)) 1 10
3. Wymagania niefunkcjonalne Niezawodnośd System nie jest kluczowy dla działalności przedsiębiorstwa, więc dopuszczalna jest stosunkowo wysoka awaryjnośd 1/100 operacji kluczowych i 1/30 operacji mało istotnych może zakooczyd się błędem Dostępnośd System powinien byd dostępny przez co najmniej 95% czasu działania. Bezpieczeostwo (security) System nie zawiera danych poufnych, zawiera jedynie dane o znikomej wartości, zatem nie przewidywane są żadne mechanizmy autoryzacji poza stosowanymi standardowo w przedsiębiorstwie na serwerach i maszynach roboczych, na których jest zainstalowany Bezpieczeostwo (safety), Trwałośd Dane przechowywane w bazie danych nie powinny ulec zniszczeniu, dlatego zalecane jest dokonywanie co najmniej raz dziennie kopii bezpieczeostwa bazy danych zgodnie ze standardowymi procedurami obowiązującymi w przedsiębiorstwie. Pojemnośd Pojemnośd bazy danych zależna od liczby maszyn klienckich i zakresu zbieranych danych. Rozmiar danych dotyczących pojedynczego klienta nie powinien przekroczyd 1 MB. Wydajnośd System umożliwia wykonanie co najmniej jednej operacji w ciągu sekundy. Serwer obsługuje jednocześnie co najmniej 100 połączeo. Jednocześnie do systemu może byd podłączonych co najmniej 500 klientów i operatorów (łącznie). Zarządzalnośd Aplikacja klienta i operatora wymaga instalacji na stanowisku docelowym może to byd instalacja zdalna. Wiarygodnośd System jednoznacznie sygnalizuje niepowodzenia wykonywanych operacji Operatora. Użytecznośd System ma spełniad w co najmniej 99% wymagania funkcjonalne o priorytecie mniejszym niż 4, w co najmniej 95% wymagania funkcjonalne o priorytecie większym lub równym 4. System powinien identyfikowad klientów na podstawie kilku identyfikatorów (MAC, IP, nazwa komputera, unikalnego identyfikatora w bazie danych etc.) 11
Ergonomia Interfejs użytkownika powinien byd przejrzysty i intuicyjny. Aplikacja kliencka rezyduje w trayu. Wielojęzycznośd System powinien byd łatwy do przetłumaczenia na inną wersję językową. Zrozumiałośd System powinien byd zrozumiały dla wszystkich użytkowników. W tym celu powinny odbyd się szkolenia oraz zostad stworzona dokumentacja użytkownika. Zgodnośd nie dotyczy Kompatybilnośd nie dotyczy Topologia scentralizowana, trójwarstwowa: baza danych, serwer aplikacyjny, klient/operator Modyfikowalnośd nieistotne Indywidualizacja nieistotne Uniwersalnośd nieistotne Reużywalnośd nieistotne Rozszerzalnośd System powinien mied generyczną bazę danych umożliwiającą przechowywanie informacji o dowolnych parametrach sprzętu i oprogramowania. Konieczna jest możliwośd dodania do systemu własnych bibliotek rozszerzających funkcjonalnośd systemu poprzez zbieranie dodatkowych danych o kliencie. Skalowalnośd nieistotne Przenośnośd System projektowany jest dla platformy MS Windows (98, ME, 2000, XP, 2003, Vista) Testowalnośd System powinien byd możliwie łatwo testowalny. 12
APSI Dokumentacja koocowa 2008-06-02 4. Specyfikacja przypadków użycia na poziomie ogólnym oraz specyfikacja kluczowych, architektonicznie znaczących przypadków użycia na poziomie rozszerzonym, konkretnym wraz ze stereotypowymi diagramami klas Aktorzy Aktor użytkownik Użytkownik jest pracownikiem firmy, niezwiązanym z działem IT. Aktor operator Operator jest pracownikiem działu IT, który zajmuje się m.in. świadczeniem pomocy użytkownikom (helpdesk) i utrzymaniem infrastruktury informatycznej firmy. Pakiet raportowanie 13
Przypadek użycia generowanie zestawień Nazwa: Generowanie zestawień Kontekst użycia: Operator chce wygenerować zestawień dotyczących infrastruktury informatycznej firmy (zainstalowanego oprogramowania, sprzętu, licencji itp.). Aktor główny: Operator Inicjacja: Wybranie opcji generowania zestawień Scenariusz główny: 1. Operator wybiera opcję generowania zestawień. 2. System wyświetla formatkę generowania zestawień. 3. Operator wybiera szczegółowe ustawienia generowanego zestawienia i zatwierdza wybór. 4. System generuje zestawienie według wybranych ustawień i zapisuje je w wybranych przez operatora formacie. 5. System powraca do głównego okna aplikacji. Przypadek użycia generowanie zestawień o backupach System umożliwia wygenerowanie zestawień dotyczących backupów zdefiniowanych i wykonywanych na maszynach połączonych do systemu. 1-2 jak w przypadku generalizującym 3.1. Operator wybiera opcję generowania zastawienia o backupach. 3.2. Operator wybiera obiekty (np. komputery) których będzie dotyczyć zestawienie. 3.3. Operator wybiera zakres backupów których będzie dotyczyć zestawienie (np. backupy wykonywane codziennie). 3.4. Operator wybiera opcje filtrowania i sortowania zestawienia. 3.5. Operator potwierdza wybrane opcje. 4-5 jak w przypadku generalizującym Przypadek użycia generowanie zestawień o licencjach System umożliwia wygenerowanie zestawień dotyczących licencji posiadanych i wykorzystywanych przez firmę. 14
1-2 jak w przypadku generalizującym 3.1. Operator wybiera opcję generowania zastawienia o licencjach. 3.2. Operator wybiera obiekty (np. komputery, użytkowników) których będzie dotyczyć zestawienie. 3.3. Operator wybiera zakres licencji których będzie dotyczyć zestawienie (np. licencje czasowe). 3.4. Operator wybiera opcje filtrowania i sortowania zestawienia. 3.5. Operator potwierdza wybrane opcje. 4-5 jak w przypadku generalizującym Przypadek użycia generowanie zestawień o sprzęcie System umożliwia wygenerowanie zestawień dotyczących sprzętu. 1-2 jak w przypadku generalizującym 3.1. Operator wybiera opcję generowania zastawienia o sprzęcie. 3.2. Operator wybiera komputery których będzie dotyczyć zestawienie. 3.3. Operator wybiera zakres sprzętu którego będzie dotyczyć zestawienie (np. monitory, procesory). 3.4. Operator wybiera opcje filtrowania i sortowania zestawienia. 3.5. Operator potwierdza wybrane opcje. 4-5 jak w przypadku generalizującym Przypadek użycia generowanie zestawień o zainstalowanym oprogramowaniu i jego konfiguracji Nazwa: generowanie zestawień o zainstalowanym oprogramowaniu i jego konfiguracji Kontekst użycia: Operator chce wygenerować zestawienie dotyczące oprogramowania zainstalowanego na maszynach podłączonych do systemu i jego konfiguracji. Aktor główny: Operator Inicjacja: Wybranie opcji generowania zestawienia o zainstalowanym oprogramowaniu Scenariusz główny: 1-2 jak w przypadku generalizującym 3.1. Operator wybiera opcję generowania zastawienia o zainstalowanym oprogramowaniu. 3.2. Operator wybiera obiekty (np. komputery) których będzie dotyczyć zestawienie. 3.3. Operator wybiera zakres oprogramowania którego będzie dotyczyć zestawienie. 3.4. Operator wybiera opcje filtrowania i sortowania zestawienia. 3.5. Operator potwierdza wybrane opcje. 4-5 jak w przypadku generalizującym 15
Pakiet helpdesk Przypadek użycia sprawdzenie statusu własnych zgłoszeń problemów System umożliwia przeglądanie listy własnych problemów zgłoszonych operatorom, wraz ze szczegółami każdego ze zgłoszeń. Ponadto pozwala na zgłoszenie nowego problemu, uaktualnienie już wysłanego zgłoszenia, odwołanie zgłoszenia i wysłąnie zgłoszenia pomocy zdalnej. 1. Użytkownik wybiera opcję sprawdzenia statusu zgłoszeń problemów. 2. System wyświetla listę zgłoszeń wysłanych przez użytkownika wraz ze statusem zgłoszeń (zgłoszenie, modyfikacja, odwołanie, pomoc zdalna, szczegóły). 3. Użytkownik zamyka listę zgłoszeń. Dodatkowo system umożliwia sortowanie i filtrowanie listy zgłoszeń. 16
Przypadek użycia zgłoszenie nowego problemu System umożliwia zgłoszenie problemu operatorom. zgłoszenie: 1. Użytkownik wybiera opcję zgłoszenia nowego problemu. 2. System wyświetla formatkę zgłoszenia problemu. 3. Użytkownik wybiera parametry zgłoszenia (czego dotyczy, priorytet), uzupełnia opis problemu i potwierdza wybór. 4. System dodaje zgłoszenie do listy wysłanych zgłoszeń i powraca do listy zgłoszeń. Przypadek użycia odwołanie zgłoszenia problemu System umożliwia odwołanie wysłanego uprzednio zgłoszenia. Dotyczy to przypadków, gdy zgłoszony problem już nie występuje. odwołanie: 1. Użytkownik wybiera opcję odwołania zgłoszenia problemu. 2. System wyświetla potwierdzenie odwołania zgłoszenia. 3. Użytkownik potwierdza chęć odwołania zgłoszenia. 3. System zmienia status zgłoszenia i powraca do listy zgłoszeń. Przypadek użycia modyfikacja zgłoszenia problemu System umożliwia modyfikację zgłoszenia wysłanego uprzednio zgłoszenia. Dotyczy to przypadków, gdy uległ zmianie priorytet zgłoszenia lub pojawiły się nowe fakty dotyczące zgłoszonego problemu. modyfikacja: 1. Użytkownik wybiera zgłoszenie z listy zgłoszeń i wybiera opcję modyfikacja problemu. 2. System wyświetla formatkę modyfikacji zgłoszenia. 3. Użytkownik modyfikuje parametry zgłoszenia (priorytet), dodaje kolejny opis problemu i potwierdza wybór. 4. System modyfikuje parametry zgłoszenia i dodaje kolejny opis. Powraca do listy zgłoszeń. Przypadek użycia przeglądanie szczegółów zgłoszenia Nazwa: Przeglądanie szczegółów zgłoszenia Kontekst użycia: Użytkownik lub operator chce obejrzeć szczegóły wybranego zgłoszenia Aktor główny: Operator lub Użytkownik Inicjacja: Wybranie opcji przeglądania szczegółów Scenariusz główny: 1. Użytkownik wybiera zgłoszenie z listy zgłoszeń i wybiera opcję pokazania szczegółów. 2. System wyświetla szczegóły zgłoszenia (status, priorytet, czego dotyczy zgłoszenie, wszystkie opisy i wiadomości dotyczące zgłoszenia, osobę odpowiedzialną). 17
18
Przypadek użycia utworzenie zgłoszenia w imieniu użytkownika Nazwa: Utworzenie zgłoszenia w imieniu użytkownika Kontekst użycia: Operator chce utworzyć zgłoszenie w imieniu użytkownika. Na przykład w sytuacji, gdy użytkownik dzwoni do operatora z problemem, ponieważ nie ma możliwości zgłosić go przy użyciu aplikacji (aplikacja nie działa, komputer się nie włącza itp.). Aktor główny: Operator 19
Inicjacja: Wybranie opcji utworzenia zgłoszenie w imieniu użytkownika Scenariusz główny: 1. Operator wybiera opcję utworzenia zgłoszenia w imieniu użytkownika. 2. System wyświetla formatkę utworzenia zgłoszenia. 3. Operator wybiera użytkownika w którego imieniu tworzy nowe zgłoszenie. 4. Operator wybiera parametry zgłoszenia (czego dotyczy zgłoszenie, priorytet), uzupełnia opis problemu i potwierdza wybór. 5. System dodaje zgłoszenie do listy zgłoszeń i powraca do okna głównego aplikacji. Przypadek użycia wyświetlenie listy zgłoszeń Nazwa: Wyświetlenie listy zgłoszeń Kontekst użycia: Operator chce wyświetlić listę zgłoszeń problemów użytkowników, które są do niego przypisane lub nie są jeszcze przypisane do żadnego operatora. Ponadto może obsłużyć wybrane zgłoszenie. Aktor główny: Operator Inicjacja: Wybranie opcji wyświetlenia listy zgłoszeń Scenariusz główny: 1. Operator wybiera jedną z opcji przeglądania zgłoszeń. 2. System wyświetla listę zgłoszeń spełniających kryteria zależne od wybranej wcześniej opcji. 3. Operator przegląda wyświetloną listę (obsługa). 4. Operator zamyka listę zgłoszeń. 5. System powraca do głównego okna aplikacji. Scenariusz alternatywny: brak zgłoszeń do wyświetlenia 1. Operator wybiera jedną z opcji przeglądania zgłoszeń. 2. System wyświetla informację o braku zgłoszeń spełniających kryteria zależne od wybranej wcześniej opcji. 3. System powraca do głównego okna aplikacji. Punkty rozszerzenia: obsługa Uwagi: Dodatkowo system umożliwia sortowanie i filtrowanie listy zgłoszeń. Przypadek użycia przeglądanie zgłoszeń przypisanych operatorowi System umożliwia operatorowi przeglądanie listy zgłoszeń przypisanych do operatora. Ponadto umożliwia obsługę wybranego zgłoszenia. 1. Operator wybiera opcję przeglądania zgłoszeń przypisanych do niego. 2. System wyświetla listę zgłoszeń przypisanych do operatora. 3-4 jak w przypadku generalizującym 20
Przypadek użycia przeglądanie nowych zgłoszeń Nazwa: przeglądanie nowych zgłoszeń Kontekst użycia: Operator chce przejrzeć listę zgłoszeń nowych zgłoszeń (nieprzypisanych do żadnego operatora). Ponadto może obsłużyć wybrane zgłoszenie. Aktor główny: Operator Inicjacja: Wybranie opcji przeglądania nowych zgłoszeń Scenariusz główny: 1. Operator wybiera opcję przeglądania nowych zgłoszeń. 2. System wyświetla okienko listę nowych zgłoszeń. 3-4 jak w przypadku generalizującym Scenariusz alternatywny: brak zgłoszeń przypisanych do operatora 1. Operator wybiera opcję przeglądania nowych zgłoszeń. 2. System wyświetla infromację o braku nowych zgłoszeń. 3. System wraca do głównego okna aplikacji. Przypadek użycia obsługa zgłoszenia Nazwa: Obsługa zgłoszenia Kontekst użycia: Operator chce obsłużyć zgłoszenie, przypisane do niego bądź nieprzypisane jeszcze do żadnego operatora. W szczególności może on zmienić status zgłoszenia, uaktualnić zgłoszenie i obsłużyć zgłoszenie pomocy zdalnej. Aktor główny: Operator Inicjacja: Operator wybiera opcję obsłużenia zgłoszenia Scenariusz główny: w punkcie rozszerzenia obsługa: 1. Operator wybiera z listy zgłoszenie, które chce obsłużyć. 2. Operator wybiera opcję obsługi zgłoszenia. 3. Jeśli zgłoszenie nie było przypisane do żadnego operatora, system przypisuje je operatorowi. 4. System pokazuje szczegóły zgłoszenia. 5. Operator przegląda szczegóły zgłoszenia (zmiana statusu, odpowiedź, pomoc zdalna). 6. Operator kończy obsługę zgłoszenia. 7. System wraca do listy zgłoszeń. Punkty rozszerzenia: zmiana statusu, odpowiedź, pomoc zdalna 21
Przypadek użycia przeglądanie szczegółów zgłoszenia Nazwa: Przeglądanie szczegółów zgłoszenia Kontekst użycia: Użytkownik lub operator chce obejrzeć szczegóły wybranego zgłoszenia Aktor główny: Operator lub Użytkownik Inicjacja: Wybranie opcji przeglądania szczegółów Scenariusz główny: 1. Użytkownik wybiera zgłoszenie z listy zgłoszeń i wybiera opcję pokazania szczegółów. 2. System wyświetla szczegóły zgłoszenia (status, priorytet, czego dotyczy zgłoszenie, wszystkie opisy i wiadomości dotyczące zgłoszenia, osobę odpowiedzialną). Przypadek użycia zmiana statusu zgłoszenia Nazwa: Zmiana statusu zgłoszenia Kontekst użycia: Operator chce zmienić status zgłoszenia Aktor główny: Operator Inicjacja: Wybranie opcji zmiany statusu zgłoszenia Scenariusz główny: w punkcie rozszerzenia zmiana statusu: 1. Operator wybiera opcję zmiany statusu zgłoszenia. 2. System wyświetla formatkę zmiany statusu zgłoszenia. 3. Operator wybiera status zgłoszenia i potwierdza wybór. 4. System zmienia status zgłoszenia i wraca do obsługi zgłoszenia. Przypadek użycia odpowiedź na zgłoszenie Nazwa: Odpowiedź na zgłoszenie Kontekst użycia: Operator chce odpowiedzieć na zgłoszenie, odpowiedź może zawierać na przykład wskazówki lub opis sposobu rozwiązania problemu, bądź pytania do użytkownika. Aktor główny: Operator Inicjacja: Wybranie opcji odpowiedzi na zgłoszenie Scenariusz główny: w punkcie rozszerzenia odpowiedź: 1. Operator wybiera opcję odpowiedz na zgłoszenie. 2. System wyświetla formatkę odpowiedzi. 3. Operator dodaje odpowiedź dla użytkownika i potwierdza. 4. System dodaje do zgłoszenia odpowiedź operatora. Powraca do obsługi zgłoszeń. 22
Pakiet administracja zdalna 23
Przypadek użycia instalacja zdalna Nazwa: Instalacja zdalna Kontekst użycia: Operator chce przeprowadzić instalację zdalną oprogramowania na 24
komputerach użytkowników zarejestrowanych w systemie. Aktor główny: Operator Inicjacja: Wybranie opcji instalacji zdalnej Scenariusz główny: 1. Operator wybiera opcję instalacji zdalnej oprogramowania. 2. System wyświetla okienko dialogowe zawierające parametry instalacji (takie jak program do zainstalowania, grupa użytkowników, czas instalacji). 3. Operator określa parametry instalacji, zatwierdza wybór. 4. System potwierdza przyjęcie zlecenia instalacji programu. 5. System generuje wiadomość o ukończeniu instalacji Uwagi: Dla zlecenia instalacji możliwe jest wybranie grupy użytkowników, programu do instalacji, zaplanowania czasu instalacji. System powiadamia o zakończeniu instalacji. Przypadek użycia zarządzanie licencjami System umożliwia przeglądanie listy licencji posiadanych przez firmę, a także ich dodawanie, usuwanie i przydzielanie. 1. Operator wybiera opcję zarządzania licencjami. 2. System wyświetla listę licencji posiadanych przez firmę wraz z nazwą, rodzajem, zasadami przydzielania, ograniczeniami (dodawanie, usuwanie, przydzielanie). 3. Operator zamyka listę licencji. Dodatkowo system umożliwia sortowanie i filtrowanie listy licencji. Przypadek użycia dodawanie licencji System umożliwia dodawanie licencji do listy licencji posiadanych przez firmę. dodawanie: 1. Operator wybiera opcję dodania licencji. 2. System wyświetla formatkę dodawania licencji. 3. Operator wybiera parametry dodawanej licencji (rodzaj licencji, zasady przydzielania, ograniczenia) i potwierdza wybór. 4. System dodaje licencję do listy posiadanych licencji i powraca do listy licencji. Przypadek użycia usuwanie licencji System umożliwia usuwanie licencji z listy licencji posiadanych przez firmę. usuwanie: 1. Operator wybiera z listy licencję do usunięcia. 2. Operator wybiera opcję usunięcia licencji. 3. System wyświetla potwierdzenie usunięcia licencji i powraca do listy licencji. 25
Przypadek użycia przydzielanie licencji System umożliwia przydzielenie licencji obiektowi lub obiektom (np. użytkownikowi, komputerowi). przydzielanie: 1. Operator wybiera z listy licencję, którą chce przydzielić. 2. Operator wybiera opcję przydzielenia licencji. 3. System wyświetla formatkę przydzielenia licencji. 4. Operator wybiera obiekt lub obiekty, którym chce przydzielić licencję. 5. System wyświetla potwierdzenie przyznania licencji i wraca do listy licencji. Przypadek użycia zarządzanie backupami Nazwa: Zarządzanie backupami Kontekst użycia: Operator chce przejrzeć listę zdefiniowanych backupów. Ma także możliwość definiowania nowych, modyfikacji i odtworzenia danych z backupu. Aktor główny: Operator Inicjacja: Wybranie opcji zarządzania backupami Scenariusz główny: 1. Operator wybiera opcję zarządzania backupami. 2. System wyświetla listę zdefiniowanych backupów (definiowanie, modyfikacja, odtwarzanie danych). 3. Operator zamyka listę backupów. Scenariusz alternatywny: brak zdefiniowanych backupów: 1. Operator wybiera opcję zarządzania backupami. 2. System wyświetla informację o braku zdefiniowanych backupów. 3. System powraca do głównego okna aplikacji. Punkty rozszerzenia: definiowanie, modyfikacja Uwagi: Dodatkowo system umożliwia sortowanie i filtrowanie listy backupów. Przypadek użycia definiowanie nowego backupu Nazwa: Definiowanie nowego backupu Kontekst użycia: Operator chce zdefiniować nowy backup. Aktor główny: Operator Inicjacja: Wybranie opcji definiowania nowych backupów 26
Scenariusz główny: w punkcie rozszerzenia definiowanie: 1. Operator wybiera opcję definiowania backupu. 2. System wyświetla formatkę definiowania backupu. 3. Operator wybiera parametry definiowanego backupu (harmonogram, zasoby podlegające backupowi, miejsce składowania danych z backupów) i potwierdza wybór. 4. System dodaje backup do listy zdefiniowanych backupów i powraca do listy backupów. Przypadek użycia modyfikacja backupu Nazwa: Modyfikacja backupu Kontekst użycia: Operator chce zmodyfikować backup. Aktor główny: Operator Inicjacja: Scenariusz główny: w punkcie rozszerzenia modyfikacja: 1. Operator wybiera z listy backup do modyfikacji. 2. Operator wybiera opcję modyfikacji backupu. 3. System wyświetla formatkę modyfikacji backupu. 4. Operator zmienia parametry wybranego backupu (harmonogram, zasoby podlegające backupowi, miejsce składowania danych z backupów) i potwierdza zmiany. 5. System potwierdza modyfikacje wprowadzone do backupu i powraca do listy backupów. Pakiet komunikaty 27
28
Przypadek użycia chat System umożliwia rozmowę na chacie z innymi użytkownikami zarejestrowanymi w systemie. 1. Użytkownik wybiera opcję chat. 2. System wyświetla listę użytkowników zarejestrowanych w systemie. 3. Użytkownik wybiera z listy użytkowników z którymi chce komunikować się za pomocą chatu. 4. System wyświetla niezależne okienko chatu z wybranymi użytkownikami i umożliwia jednocześnie dalszą pracę z aplikacją. 5. Użytkownik po zakończeniu rozmowy na chacie zamyka okienko chatu. Przypadek użycia wysłanie komunikatu do użytkowników System umożliwia operatorowi napisanie wiadomości do grupy użytkowników. Wiadomość ta zostaje wyświetlona na ekranie wszystkich komputerów ze zdefiniowanej grupy. Mogą być to informacje na przykład o czasowym wyłączeniu serwerów, prośba o wyłączenie komputerów w związku z awarią zasilania itp. 1. Operator wybiera opcję wysłania komunikatu do użytkowników. 2. System wyświetla formatkę wysyłania komunikatów. 3. Operator wypełnia formularz wysyłania komunikatów (treść wiadomości, grupa użytkowników - adresatów wiadomości, priorytet) i wybiera opcję wyślij wiadomość. 4. System wyświetla potwierdzenie wysłania wiadomości i powraca do głównego okna aplikacji. 29
5. Diagramy klas Moduł Serwera 30
APSI Dokumentacja koocowa 2008-06-02 Moduł Operatora 31
Moduł Klienta 32
Klasy wspólne dla wszystkich modułów 33
APSI Dokumentacja koocowa 2008-06-02 Interfejs IPlugIn i hierarchia klas przechowujących dane 34
APSI Dokumentacja koocowa 2008-06-02 6. Diagram komponentów 35
7. Diagramy sekwencji i współpracy Administracja zdalna Instalacja zdalna 36
37
Definiowanie nowego backupu 38
Modyfikacja backupu 39
Raportowanie Generowanie zestawień o zainstalowanym oprogramowaniu i jego konfiguracji 40
APSI Dokumentacja koocowa 2008-06-02 Helpdesk Utworzenie zgłoszenia w imieniu użytkownika 41
APSI Dokumentacja koocowa 2008-06-02 Przeglądanie nowych zgłoszeń 42
Przeglądanie szczegółów zgłoszenia 43
Zmiana statusu zgłoszenia 44
Odpowiedź na zgłoszenie 45
APSI Dokumentacja koocowa 2008-06-02 8. Diagram zastosowania Architektura przedstawiona na poniższym schemacie jest zgodna z opisem zamieszczonym w podrozdziale Wymagania na moduły funkcjonalne. LAN LAN Baza danych Serwer aplikacji Klienty stacje robocze LAN Operatorzy stacje robocze 9. Wstępna specyfikacja sprzętu i oprogramowania podstawowego Ze względu na specyfikę systemu nie możemy narzucad klientowi do uruchamiania modułów klienta i operatora wykorzystywania sprzętu o szczególnych parametrach. Muszą to byd jedynie komputery klasy PC działające pod kontrolą systemu operacyjnego z rodziny Microsoft Windows (zgodnie ze specyfikacją niefunkcjonalną) z zainstalowanym.net Framework 3.5. Dla serwera bazy danych zalecamy maszynę o parametrach dostosowanych do liczby użytkowników systemu i zakresu zbieranych informacji. Musi byd na niej zainstalowany, uruchomiony i odpowiednio skonfigurowany MS SQL Server 2005 z utworzoną bazą danych systemu MMS i nadanymi do niej odpowiednimi prawami dostępu oraz musi działad usługa systemu MMS. 46
APSI Dokumentacja koocowa 2008-06-02 10. Specyfikacja technologii realizacji oprogramowania systemu Decyzje projektowe 1. Moduły klienta i operatora będą tworzone z myślą o działaniu na komputerach klasy PC pracujących pod kontrolą systemu operacyjnego z rodziny MS Windows (98, ME, 2000, XP, 2003, Vista). 2. Moduł serwera będzie tworzony z myślą o działaniu na serwerze pracującym pod kontrolą systemu operacyjnego z rodziny MS Windows Server. 3. Serwerem bazy danych będzie MS SQL Server 2005. 4. System będzie implementowany w języku C#. 5. Wszelkie operacje na bazie danych dokonywane będą za pośrednictwem procedur składowanych. Prowadzenie projektu 1. projekt powinien byd realizowany metodą iteracyjną i przyrostową 2. powinny zostad wprowadzone standardy prowadzenia dokumentacji, tj. szablony dokumentów oraz zasady udostępniania i przechowywania dokumentacji 3. projekt powinien byd harmonogramowany 4. powinna zostad przeprowadzona analiza ryzyka oraz stworzony plan zarządzania ryzykiem 47
APSI Dokumentacja koocowa 2008-06-02 11. Projekt bazy danych w formie diagramu LDM (logicznego modelu danych) z odpowiednim opisem (tabel, kolumn, ograniczeń integralnościowych i innych elementów bazy danych) Diagram encji Diagram LDM 48
APSI Dokumentacja koocowa 2008-06-02 Opis ogólny bazy danych Zaprojektowana przez nas baza danych ma charakter generyczny, dzięki czemu możliwe będzie przechowywanie w niej dowolnych informacji zebranych od klienta (również za pośrednictwem dodatkowych modułów stworzonych w przyszłości) bez jakiejkolwiek zmiany jej struktury. Wadą tego rozwiązania jest koniecznośd utrzymywania spójności danych po stronie aplikacji. Opis encji Komputer przechowuje informację o bycie komputer. Wszelkie dane o komputerze przechowywane są w pozostałych encjach (ze względu na możliwośd ich zmiany i koniecznośd pamiętania historii zmian). Użytkownik przechowuje informacje o użytkowniku. Obiekt przechowuje informacje o obiektach, które mogą byd hierarchiczne. Jeśli obiekt nie ma rodzica, jest na szczycie hierarchii (np. licencja, backup, sprzęt, oprogramowanie ). Przykłady hierarchii to np. sprzęt -> wbudowany (w znaczeniu: nie-peryferyjny ) -> płyta główna -> chipset. Na każdym poziomie hierarchii obiekt może mied jakieś cechy (np. płyta główna może mied cechę nazwa, natomiast chipset może mied cechę producent ). Cecha przechowuje informacje o cechach obiektów (np. nazwa obiektu płyta główna, producent obiektu chipset, liczba stanowisk obiektu licencja ). Typ cechy przechowuje informacje o typie danej cechy (np. Integer dla cechy liczba procesorów lub Varchar dla cechy nazwa ). Jednostka przechowuje informacje o jednostkach, w jakich podawane są cechy (np. MB dla cechy pojemnośd lub sztuka dla cechy ilośd ). Wartośd cechy przechowuje informacje o konkretnych wartościach cech (np. 512 dla cechy pojemnośd lub IBM dla cechy producent ). Dotyczy łączy wartości danych cech (czyli konkretne dane) z komputerem i/lub użytkownikiem. Opis ograniczeń integralnościowych Wszelkie ograniczenia integralnościowe realizowane będą po stronie serwera aplikacji, z wyjątkiem wymuszenia, aby z każdą krotką encji dotyczy powiązana była jedna krotka z jednej lub obu z encji komputer i uzytkownik. Wynika to z faktu, że dana wartośd cechy może dotyczyd samego komputera (jak np. model dysku twardego), samego użytkownika (jak np. zgłoszenie do helpdesku z prośbą o przeszkolenie), lub komputera i użytkownika (zgłoszenie konkretnego użytkownika do helpdesku problemu z konkretnym komputerem). 49
APSI Dokumentacja koocowa 2008-06-02 12. Projekt interfejsu użytkownika Diagram klas <<boundary>> Przykładowe ekrany klienta Panel główny modułu klienta 50
Zgłoszenie problemu Form Przykładowe ekrany operatora Panel główny modułu operatora 51
Komunikat Form Szczegóły licencji Form 52
Lista licencji Form 53