• Nie Znaleziono Wyników

PROGRAM DO OBS Ł UGI ADMINISTRACYJNEJ

N/A
N/A
Protected

Academic year: 2021

Share "PROGRAM DO OBS Ł UGI ADMINISTRACYJNEJ"

Copied!
8
0
0

Pełen tekst

(1)

Błażej BARON

Piotr ZWIERZYKOWSKI*

PROGRAM DO OBSŁUGI ADMINISTRACYJNEJ

KATEDRY SIECI TELEKOMUNIKACYJNYCH I KOMPUTEROWYCH

Artykuł przedstawia program do obsługi administracyjnej katedry Politechniki Poznańskiej. Przedstawiono główne założenia, jakimi kierowano się w trakcie projektowania oraz tworzenia aplikacji. Omówiono technologie i narzędzia, które wykorzystywano w procesie tworzenia oprogramowania. Zostały opisane wszystkie moduły programu pod kątem ról użytkownika aplikacji.

WPROWADZENIE

Powstanie Wydziału Elektroniki i Telekomunikacji skłoniła autorów do podjęcia próby przygotowania oprogramowania wspomagającego obsługę administracyjną nowopowstałej Katedry Sieci Telekomunikacyjnych i Komputerowych. Rozpoczynając etap projektowania aplikacji przygotowano listę wytycznych, jakimi należało się kierować. Zakres spraw był na tyle rozległy, że postanowiono podzielić program na moduły, z których każdy miał dotyczyć osobnej sfery administracji. Ostatecznie ustalona lista cech i funkcji aplikacji wygląda następująco:

• zintegrowane środowisko, • otwartość na rozbudowę,

• przechowywanie informacji i zarządzanie wewnętrznymi finansami katedry, • przechowywanie i zarządzanie informacjami dotyczącymi spraw pracowniczych, • zarządzanie bazą aparatury i mebli,

• zarządzanie bazą biblioteki.

Z uwagi na ograniczoną długość artykułu w opisie aplikacji skupiono się na opisie funkcjonalności poszczególnych modułów aplikacji, z tego względu w opisie programu zabrakło GUI (ang. Graphical User Interface). Szersze informacje o strukturze aplikacji oraz zastosowanych rozwiązaniach implementacyjnych można znaleźć w pozycji [1]

*Politechnika Poznańska

Artykuł podzielony został na 4 rozdziały. W kolejnym przedstawione zostały narzędzia oraz technologie używane w procesie tworzenia oprogramowania. W rozdziale 3 przedstawiono poszczególne moduły. Natomiast rozdział 4 stanowi podsumowanie.

2007

Poznańskie Warsztaty Telekomunikacyjne Poznań 6 - 7 grudnia 2007 POZNAN UNIVERSITY OF TECHNOLOGY ACADEMIC JOURNALS

(2)

Program do obsługi administracyjnej katedry …

1. NARZĘDZIA I TECHNOLOGIE

Aplikacja napisana została w języku java. Wykorzystano kilka wtyczek (ang. plug-in), które w znaczy sposób ułatwiają pisanie oprogramowania. W dalszej części tego rozdziału zostaną one zwięźle przedstawione.

1.1. JAVA

Obecnie jednym z najbardziej popularnych języków programowania obiektowego, jest język Java [2]. Jest to kompilowany język. Ale w przeciwieństwie do np. C/C++ kod kompilowany jest do pseudokodu, a nie postaci binarnej interpretowanej przez procesor. Tak powstały kod jest niezrozumiały dla procesora, dlatego za jego interpretację odpowiada tak zwane środowisko uruchomieniowe javy (ang. Java 2 Runtime Enviroment), które musi być zainstalowane w systemie operacyjnym. Wynika to z założenia dotyczącego przenośności powstającego kodu. Twórcom języka przyświecała myśl, że raz napisany kod powinien bez problemu być uruchamiany na różnych platformach bez kolejnej kompilacji.

W wielu publikacjach język ten opisywany jest jako rewolucyjne podejście do programowania. Głównym założeniem jest teza, że „wszystko jest obiektem”[3]. W praktyce oznacza to, że każdy tworzony obiekt dziedziczy po innym obiekcie określanym jako Object, gdzie zawarte są podstawowe informacje dotyczące ich zachowania. W ten sposób zdefiniowane są takie zależności jak porównywanie, kopiowanie, identyfikacja, niszczenie czy przygotowanie do programowania współbieżnego.

Do cech charakterystycznych javy zaliczyć należy także jej otwarty charakter. Dzięki temu dostępne jest wiele narzędzi oraz technologii wspierających programowanie w tym języku. Wiele z tych rozwiązań jest również darmowych. Zastosowanie takich rozwiązań, pozwala na redukcję czasu potrzebnego na tworzenie oprogramowania.

1.2. ECLIPSE

Jednym z najważniejszych narzędzi w trakcie pracy programisty jest środowisko pracy. W przypadku Javy, wielu programistów, wskazuje na Eclipse jako na najlepsze zintegrowane i darmowe środowisko Javy [4].

Najważniejszą zaletą tego narzędzia jest możliwość obsługi oraz tworzenia nowych pluginów. Dzięki temu dostępny jest szereg wtyczek ułatwiających pisanie, konserwacje czy nawet dokumentowanie kodu. Dlatego możliwa jest praca z projektami nie tylko standardowej javy ale także w wersjach specjalizowanych dla urządzeń mobilnych (ang. J2ME – Java 2 Platform, Micro Edition) czy korporacyjna (ang. J2EE- Java 2 Platform, Enterprise Edition) [5]. Nasze

(3)

Błażej Baron, Piotr Zwierzykowski

środowisko możemy rozbudować o możliwość współpracy nawet z innymi językami programowania takimi jak C/C++ czy PHP.

1.3. SWT

Standardowo język java korzysta z biblioteki graficznej Swing [2]. Niestety, ale posiada ona znaczącą wadę, wygląd powstających okienek różni się od standardowych aplikacji używanych w systemie operacyjnym. Dlatego też powstaje wiele alternatywnych rozwiązań. Jednym z nich jest właśnie biblioteka SWT (ang. The Standard Widget Toolkit) [6].

Początkowo używana była ona wyłącznie w środowisku eclipse. Natomiast z upływem czasu stwierdzono, że funkcjonalnością dorównuje ona standardowej bibliotece i dlatego zdecydowano się opublikować ją niezależnie.

Zaletą tworzenia interfejsu użytkownika w tej technologii jest szybkość działania. Poszczególne formatki przechowywane są w postaci skompilowanej w bibliotekach, a nie tworzone dynamicznie jak w przypadku Swing’a. Wynikiem takiego działania jest niestety konieczność dołączania zewnętrznych bibliotek.

1.4. JIGLOO

Ważnym elementem każdego projektu jest funkcjonalny i przejrzysty interfejs z użytkownikiem. Aby to osiągnąć skorzystano z wtyczki do środowiska eclipse o nazwie Igloo [7]. Jest to bardzo rozbudowany plugin umożliwiający tworzenie formatek za pomocą metody WYSIWYG (ang. What You See Is What You Get). Dzięki temu proces tworzenia interfejsu znacząco redukuję się. Znika potrzeba ręcznego pisania kodu interfejsu. Jest on generowany automatycznie.

Opisywana wtyczka umożliwia tworzenie formatek zawartych zarówno w bibliotece Swing jak i bibliotece SWT. Należy wspomnieć, że plugin jest darmowy wyłącznie do celów nie komercyjnych. W celu wykorzystania narzędzia w aplikacjach biznesowych niezbędne jest zakupienie licencji.

1.5. HIBERNATE

Hibernate to narzędzie ORM (ang. Object-Relational mapping) [5] umożliwiająca w łatwy sposób operowanie na elementach bazy danych. Narzędzie tej rodziny w automatyczny sposób zapewniają konwersję pomiędzy światem obiektów wykorzystywanych w trakcie programowania, a światem relacji reprezentowanych przez bazę danych. Takie rozwiązanie niesie za sobą ogromne korzyści. Przede wszystkim aplikacja staje się niezależna od systemu bazodanowego. Ewentualna zmiana typu bazy danych nie pociąga za sobą konieczności nanoszenia zmian w kodzie programu. Konieczna jest wyłącznie zmiana konfiguracji [8].

Unikalną właściwością wyróżniającą Hiberante spośród innych rozwiązań tego typu jest możliwość obiektowego podejścia do składni zapytań do bazy danych.

(4)

Program do obsługi administracyjnej katedry …

określany jako HQL (ang. Hibernate Query Language). Możliwe jest także konwencjonalne podejście bezpośrednio poprzez SQL (ang. Structured Query

Language) [9]. Inną ważną zaletą Hibernate jest możliwość tworzenia relacji. Mam

możliwość stworzenia relacji pomiędzy obiektami w postaci jeden do jeden, czy też mnogie relacje, gdzie grupa obiektów połączona jest z inną grupą. Dostęp do takiego mechanizmu ułatwia operowanie na danych pobranych z warstwy bazy danych.

2. APLIKACJA

Projekt podzielony został na moduły. Zaprojektowane oraz zrealizowane zostały one w taki sposób, aby było możliwe ich w pełni niezależne wykorzystywanie. Jedynie proces logowania oraz system rejestracji zmian nie podlegają tej regule.

W związku z tym, że projekt przewiduje różne możliwości działania dla określonych użytkowników niezbędne stało się wprowadzanie ról. W całej aplikacji występują dwie główne role: administrator i pracownik zróżnicowane na poziomie modułu. Zależnie od tego, jaki moduł omawiamy do dyspozycji mamy zróżnicowany dostęp do opcji.

W module administracji użytkownikami mamy możliwość przypisania praw dostępu poszczególnym użytkownikom. Zarządza nimi osoba z przypisaną funkcją administratora aplikacji.

2.1. Logowanie

W przypadku, gdy mamy do czynienia z wielopoziomową aplikacją niezbędne staje się wprowadzenie do obsługi systemu przeprowadzającego proces autentyfikacji i autoryzacji użytkownika. Pierwszy z nich ustala, z jaką osobą mamy do czynienia oraz czy ma ona prawa użytkować program. Jest ona zawsze wymuszana w przypadku, gdy aplikacja nie posiada bieżących informacji na temat zalogowanego użytkownika do systemu. Drugie postępowanie sprawdza czy osoba, która przeszła pomyślnie pierwszą czynność ma prawo dostępu do danego modułu oraz jakie funkcje są możliwe do wykonania.

2.2. Moduł historii zmian

Głównym zadaniem tego elementu jest monitorowanie zmian w trakcie działania aplikacji. Wszystkie zmiany dotyczące stanu informacji przechowywane przez bazę danych są odnotowywane. Przede wszystkim akcje związane z modyfikacją oraz usuwaniem danych. Zapamiętywana jest nie tylko treść zmiany, ale także data oraz użytkownik ją wykonujący. Tak odnotowane zmiany można przeglądać w postaci listy, bez możliwości usuwania poszczególnych wpisów. Dostęp do tego modułu posiada jedynie użytkownik z rolą administratora aplikacji.

(5)

Błażej Baron, Piotr Zwierzykowski

2.3. Moduł administracyjny

W module tym zaszyta została funkcjonalność związana ze sprawami pracowniczymi katedry. Występują tutaj dwie role pracownika oraz administratora. Pierwsza z nich umożliwia jedynie dostęp do opcji zarządzania własnym kontem. Możliwa jest tam edycja swoich podstawowych danych.

W przypadku, gdy posiadamy role administratora w tym module, dostępna jest dodatkowa opcja administracji użytkownikami. Widoczna jest lista wszystkich pracowników i możliwa jest ich pełna edycja. Występuje także opcja dodania nowego pracownika, wraz z domyślnymi prawami, czyli rolą użytkownika dla wszystkich modułów. Istnieje także opcja usunięcia już istniejącego pracownika. W przypadku, gdy zalogowany użytkownik posiada dodatkowo rolę administratora aplikacji udostępniona jest opcja nadawania oraz edycji poszczególnych praw dostępu innych pracowników do poszczególnych modułów.

2.4. Moduł finansowy

Jednym z bardziej zaawansowanych bloków jest moduł finansowy. Do jego zadań należy przede wszystkim wspomaganie zarządzania finansami projektów realizowanymi w Katedrze Sieci Telekomunikacyjnych i Komputerowych.

W prezentowanym bloku występuje tylko rola administratora modułu. Przyznanie tego prawa umożliwia korzystanie z dwóch opcji dostępnych w menu użytkownika finanse oraz ich administracja. W pierwszej z nich możliwe jest zarządzanie projektami w aspekcie funduszy. Blok ten podzielony został na różne kategorie umożliwiające sprawniejszą administrację. Głównym założeniem jest zakładanie oraz sugestywne zarządzanie projektami. Dostępne są, podstawowe funkcje z tym związane, czyli zakładanie nowych przedsięwzięć i ich edycja. W trakcie tworzenia podawane są dane przedstawiające szczegółowy plan finansowy danego projektu. Następnie w trakcie realizacji przedsięwzięcia wprowadzane są wpływające fundusze czy też ponoszone wydatki. Wraz z wprowadzaniem faktur możliwe jest załączenie zdjęcia, w celu późniejszego wglądu i w celach archiwizacyjnych. W każdym momencie istnieje możliwość przeglądania zarówno listy wpłat, jak i faktur skojarzonych z projektem. Wszystkie wprowadzane wydatki są automatycznie uwzględniane w trakcie sumowań i ewentualne

rozbieżności względem wprowadzonych założeń są sygnalizowane

użytkownikowi.

W drugiej opcji dostępnej w menu użytkownika, znajdują się przede wszystkim pola umożliwiające zmianę poszczególnych parametrów wykorzystywanych do obliczeń, w opisywanej części. Głównie są to przeliczniki procentowe, charakteryzujące podatki oraz odliczenia. Są to wartości, które często podlegają zmianie. Zatem koniecznością było wprowadzenie tego typu modyfikacji parametrów. Jak można przypuszczać modyfikację tego typu są kluczowe dla systemu algorytmów obliczeniowych, dlatego ich zmiana jest odnotowywana w bloku historii zmian.

(6)

Program do obsługi administracyjnej katedry …

2.5. Moduł badań okresowych

Moduł badań okresowych posiada funkcjonalność związaną z kontrolą stanu badań okresowych pracowników katedry. Dostępna jest wyłącznie jedna rola, mianowicie administrator modułu. Po zalogowaniu się do tego bloku użytkownik widzi wykaz wszystkich pracowników, z informacją dotyczącą ważności badania każdego z nich. Lista została tak stworzona, by w momencie zbliżania się do końca terminu ważności badań przypominać osobie zarządzającej, że potrzebne jest wysłanie wskazanej osoby na ponowne badania. Jest to przekazywane poprzez formę graficzną, zmieniającą kolory wpisów na wykazie na żółty i czerwony oraz poprzez funkcje „przypominacza”1. Kolejną dostępną opcją jest możliwość stworzenia i wydruku potrzebnego do badania skierowania. Możliwy jest także wydruk zestawienia wszystkich pracowników z uwzględnieniem już wprowadzonych terminów badań.

2.6. Moduł wakacyjny

Moduł wakacyjny realizuje funkcje związane z urlopami pracowników. Użytkownik korzystający z tego modułu może posiadać dwie role: pracownika oraz administratora. W pierwszym przypadku ma jedynie możliwość przeglądania kalendarza z uwzględnieniem swoich wolnych dni od pracy. Interfejs jest przygotowany w ten sposób, aby pokazywać aktualny stan dni wykorzystanych oraz możliwych do wykorzystania, przypadających na aktualny rok. Moduł został zautomatyzowany do tego stopnia, że w momencie pierwszego uruchomienia bloku w nowym roku wykonywane jest przeliczenie i wolne dni dodawane są do nowo przyznanego wymiaru urlopu.

Drugą możliwą rolą jest administrator. Dostępna jest wtedy pełna funkcjonalność. Na samym początku mamy możliwość obejrzenia listy wszystkich pracowników z odnotowanym aktualnym stanem wykorzystania dni wolnych od pracy. Udostępniona jest także funkcja szczegółowego podglądu wskazanego pracownika. Dodatkowo jest tam możliwość zmiany wymiaru urlopowego przysługującego na bieżący rok. Należy jednak pamiętać, że wszelkie modyfikacje zostaną zarejestrowane przez blok historii zmian. Moduł umożliwia także korektę zaznaczonych dni. Administrator bloku ma także możliwość wydrukowania zestawienia wszystkich pracowników w wybranym przez niego roku.

2.7. Moduł biblioteczny

Kolejnym częścią aplikacji jest moduł biblioteczny. Jego funkcjonalność przypomina w działaniu zarządzanie prostą biblioteką. Również w tym miejscu zalogowany pracownik może posiadać jedną z dwóch ról: pracownika oraz administratora. Pierwsza z nich udostępnia między innymi funkcje przeglądania

1 Jest to mechanizm sprawdzający ważne określone informacje i wyświetlający niezbędne

(7)

Błażej Baron, Piotr Zwierzykowski

wszystkich wpisów. W celu znalezienia określonej pozycji skorzystać można z wyszukiwarki, która przeszuka bazę pod względem podanych parametrów i wyświetli pasujące wpisy. Każdy pracownik ma możliwość dodawania nowych pozycji oraz ich późniejszą modyfikację. Przy czym nowe publikacje automatycznie powiązane są z osobą wprowadzającą do systemu. Dodatkową funkcjonalnością jest drukowanie raportów. Nałożone restrykcje pozwalają wyłącznie na wydruki publikacji przypisanych do zalogowanego użytkownika.

Pełna funkcjonalność dostępna jest w momencie posiadania roli administratora modułu. Podobnie jak w poprzednim przypadku również tutaj istnieje możliwość dodawania nowych pozycji. W tym momencie musimy jednak wybrać osobę, do której należeć będzie wprowadzany przedmiot. W późniejszym czasie istnieje także funkcja pozwalająca na modyfikacje podstawowych parametrów, w tym także przypisanej osoby. W niezbędnych sytuacjach możliwe jest usunięcie poszczególnych wpisów z systemu, co oczywiście zostanie odnotowane zostanie w historii zmian. Dostępna jest także funkcja wyszukiwania określonych rekordów oraz możliwość ich wydrukowania. Żadne restrykcje nie są tutaj narzucone, więc możliwe jest tworzenie dowolnych zestawień.

2.8. Moduł asortymentu

Jednym z najbardziej rozbudowanych bloków jest moduł zarządzania asortymentem. W celach zgodności z przyjętym na Politechnice systemem moduł dodatkowo podzielony został na trzy elementy: oprogramowanie, wyposażenie oraz środki trwałe. Wszystkie elementy traktowane są w menu jako osobne bloki, jednak funkcjonalność pozostaje taka sama.

W podobny sposób, jak w przypadku innych modułów zalogowany pracownik może mieć przypisane jedną z dwóch ról: pracownika bądź administratora. W pierwszym przypadku możliwe są przede wszystkim funkcje związane z przeglądaniem oraz wyszukiwaniem przedmiotów. Każdy z pracowników posiadających omawianą role udostępniony ma widok wyłącznie na wpisy dotyczące jego osoby. Podobnie jest też w przypadku tworzenia zestawień i drukowania ich.

Przypisanie prawa administratora w tym module niesie za sobą uzyskanie pełnej funkcjonalności. W poszczególnych elementach tego bloku dostępne stają się wszystkie podstawowe opcje zarządzania, takie jak dodawanie, edycja oraz usuwanie wpisów. Dostępna jest także funkcja składania zleceń dotyczących nowych przedmiotów. Administrator zakłada nowe zlecenie podając podstawowe parametry, następnie wprowadza wszystkie obiekty, jakie dotyczą przygotowywanego wniosku. Tak stworzone zamówienie trafia na listę, gdzie możliwy staje się podgląd oraz edycja jego parametrów. Jednakże wprowadzone pozycje nie są jeszcze dostępne dla pracowników. Dopiero zaakceptowanie zlecenia powoduje dodanie przedmiotów do przypisanych im elementów bloku i od tego momentu są już udostępnione i widoczne dla wszystkich pracowników. Poza

(8)

Program do obsługi administracyjnej katedry …

systemem zamówień, w administracji asortymentem dostępne są opcje tworzenia widoków. Występują one w czterech rodzajach: widok oraz wydruk administracyjny i odpowiadający mu widok oraz wydruk pracownika. W trakcie wszystkich czterech ustawień możliwe jest określenie, jakie kolumny, w jakiej kolejność i w jakich rozmiarach mają być widoczne. Umożliwia to dużą elastyczność w administracji tym blokiem oraz jego podległymi elementami.

3. PODSUMOWANIE

Powstała aplikacja w znaczny sposób skraca czas potrzebny na wiele czynności administracyjnych. Jej szeroki zakres działania dotyczy najważniejszych kwestii administracji. Bezproblemowe stają się takie sprawy jak kontrola pracowników pod względem badań okresowych czy planów urlopowych. Sami pracownicy mają w dużym stopniu możliwość samokontroli spraw administracyjnych, które ich dotyczą. Mają między innymi wgląd do tego jakie książki są do nich przypisane czy też lista sprzętu, za który są odpowiedzialni. Natomiast moduł zarządzania finansami pozwala w szybki sposób zorientować się w budżetach poszczególnych projektów. Funkcja przeglądania faktur czyni z niego także archiwum wszystkich wydatków. Dodatkowym atutem jest bezpieczeństwo, gdyż działania użytkowników wewnątrz aplikacji są należycie monitorowane.

Przewidywany jest także dalszy rozwój aplikacji. Nie tylko poprzez dodawanie nowych funkcjonalności ale także poprzez zmiany w już istniejącej strukturze. Przykładem może być dodanie nowego kanału dostępu jakim jest przeglądarka internetowa czy telefon komórkowy.

LITERATURA

[1] Błażej Baron: Program do obsługi administracyjnej Katedry Sieci Telekomunikacyjnych i

Komputerowych, Politechnika Poznańska, praca dyplomowa, Poznań, 2007.

[2] Java SE 5.0, URL: http://java.sun.com/j2se/1.5.0/.

[3] B. Eckel, Thinking in Java 3rd Edition, Wydawnictwo Helion, Gliwice 2003. [4] Eclipse Platform, URL: http://www.eclipse.org.

[5] A. Hemrajani, Agile Java™ Development With Spring, Hibernate and Eclipse, Sams Publishing, USA 2006.

[6] SWT, URL: http://ww.eclipse.org/swt/.

[7] Jigloo, URL: http://www.cloudgarden.com/jigloo/. [8] Hibernate, URL: http://www.hibernate.org.

Cytaty

Powiązane dokumenty

(Szczegółowe informa- cje znajdują się w instrukcji obsługi magnetowidu) Za pomocą przycisku INPUT na pilocie zdalnego sterowania wybierz źródło sygnału wejściowego

Za pomocą przycisku INPUT na pilocie zdalnego sterowania wybierz źródło sygnału wejściowego HDMI/DVI lub HDMI 1..

Jeśli obraz nie pojawia się na ekranie, proszę wyłączyć projek- tor i odłączyć go od źródła zasilania, a następnie skontak- tować się z agentem serwisowym Może to

➢ Je¯eli chcesz zmieniç poziom mocy podczas gotowania, ustaw pokrët¢o poziomu mocy w ¯ådane po¢o¯enie..

 Upewnij si´, ˝e kran dostarczajàcy wod´ dla pralki jest odkr´cony.  Sprawdê

W zwiåzku z powy¯szym, je¯eli system Fuzzy Logic wykryje odchylenia w cyklu prania, jak du¯a iloÿç ÿrodka pioråcego na koniec cyklu, wysoki poziom wibracji podczas wirowania,

Jeśli obraz nie pojawia się na ekranie, proszę wyłączyć projek- tor i odłączyć go od źródła zasilania, a następnie skontak- tować się z agentem serwisowym Może to

Za pomocą przycisku INPUT na pilocie zdalnego sterowania wybierz źródło sygnału wejściowego HDMI/DVI lub HDMI 1G.