System sterowania przepływem pracy w środowisku Oracle Workflow

Wielkość: px
Rozpocząć pokaz od strony:

Download "System sterowania przepływem pracy w środowisku Oracle Workflow"

Transkrypt

1 Rozdział 5 System sterowania przepływem pracy w środowisku Oracle Workflow Streszczenie. Opracowanie przedstawia możliwość tworzenia aplikacji z użyciem diagramów sterowania przepływem pracy. Jako silnik workflow wykorzystano produkt Oracle Workflow, który jest bardzo dobrze zintegrowany z bazą danych Oracle. Posiada on m.in. narządzie graficzne do tworzenia definicji procesu oraz umożliwia wykonywanie procedur składowanych PL/SQL. Aplikacja przybrała formę witryny internetowej, w której praca będzie możliwa z dowolnego miejsca sieci. Wykorzystano tutaj technologię Java Server Faces, która umożliwia efektywne i szybkie tworzenie witryn internetowych. Aplikacja nie ogranicza się tylko do jednego konkretnego przypadku, ale zaimplementowano framework, co pozwoli na łatwe dostosowanie do dowolnej definicji procesu. Takie podejście do problemu umożliwia zastosowanie systemu w wielu dziedzinach. 1 Wstęp Jednym z podstawowych wyznaczników jakości tworzonego oprogramowania jest jego elastyczność. Zmiany, jakie zachodzą w środowisku, w którym aplikacja pracuje, wymuszają wprowadzanie poprawek w działaniu logiki systemu. Przy tradycyjnym modelu tworzenia oprogramowania, w którym reguły logiki biznesowej zaimplementowanie są w kodzie aplikacji, konieczność wprowadzania zmian jest bardzo trudna, a przede wszystkim czasochłonna. W systemach korporacyjnych, gdzie zmiany reguł biznesowych następują często takie rozwiązanie nie spełnia swojego zadania. W związku z tym, że opis reguł biznesowych, jest bardzo silnie sformalizowany można je bardzo łatwo przełożyć na postać definicji procesu. Dlatego też w systemach, które muszą szybko reagować na zmiany, często logika biznesowa implementowana jest w postaci diagramów przepływu pracy. Diagramy te umieszczane są następnie na serwerze workflow, który zarządza ich wykonywaniem. Takie rozwiązanie zapewnia elastyczność, której nie bylibyśmy w stanie osiągnąć umieszczając reguły w kodzie aplikacji. Teraz jeżeli chcemy zmienić logikę działania aplikacji zmieniamy definicję procesu, a w konsekwencji aplikacja zmienia sposób swojego działania. Aby sprawnie działać aplikacja i proces muszą się wzajemnie komunikować. W tym celu serwer workflow musi udostępniać interfejs umożliwiający zarządzanie procesem przy Sławomir Wiak, Paweł Drzymała, Henryk Welfle, Marek Kazimierczuk Politechnika Łódzka, Instytut Mechatroniki i Systemów Informatycznych, ul. Stefanowskiego 18/22, Łódź, Polska {wiakslaw, pdrzymal, henryk.welfle}@p.lodz.pl

2 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk użyciu zewnętrznego systemu. Powinien on mieć możliwość uruchamiania nowego procesu, odczytywania jego stanu oraz posiadać dostęp do wszelkich danych zawartych w jego definicji, które są niezbędne do prawidłowego działania. Oracle Workflow nie dysponuje jednak dobrym interfejsem umożliwiającym zarządzanie procesem z poziomu języka Java. Dlatego niezbędną rzeczą było opracowanie koncepcji, a następnie implementacja sposobu komunikacji pomiędzy silnikiem workflow i aplikacją. Dane o procesie pobierane są z serwera, a następnie transformowane na obiekty języka Java poprzez wykorzystanie technologii mapowania obiektowego Hibernate. W ten sposób stworzono bardzo elastyczne i funkcjonalne Java API. 2 Systemy sterowania przepływem pracy Systemy sterowania przepływem pracy w są produktem stosunkowo młodym. Większość liczących się firm takich jak Oracle lub JBOSS posiada w swojej ofercie systemy klasy workflow jednakże, w odróżnieniu od systemów bazodanowych, znajdują się one dopiero w początkowej fazie rozwoju. Ich pozycję na rynku najlepiej prezentuje krzywa ekscytacji. Jako technologia porównawcza zostały przyjęte systemy zarządzania relacyjnymi bazami danych (Relational Database Management Systems - RDBMS). Jak widać z wykresu na rys. 1 systemy workflow oraz Business Process Management (BPM) znajdują się na początku swojej drogi rynkowej. Jest to faza, w której bardzo trudno mówić o standardach, a z drugiej strony pokłada się w produkcie wielkie nadzieje. Rys. 1. Krzywa ekscytacji [1] System sterowania przepływem pracy na wejściu pobiera definicję procesu. 58

3 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 2. Interfejsy systemów zarządzania przepływem pracy Diagram przypadków użycia przedstawiony na rys 2. prezentuje cztery główne interfejsy systemów sterowania przepływem pracy oraz obrazuje ich rolę w systemie. Wyróżnione interfejsy są następujące: - Definicji procesu interfejs ten pozwala programiście opracować definicję procesu. Należy zauważyć, że w tym przypadku aktor programista procesu łączy w sobie funkcje jakie pełni analityk biznesowy i programista. - Wykonywania - interfejs pozwala użytkownikom i systemowi oddziaływać na instancje procesu. Instancje procesu to wykonywane definicje procesu. Dwie główne metody w interfejsie wykonywania to startowanie instancji procesu i sygnalizację zakończenia stanu. - Aplikacji interfejs odpowiada za interakcje pomiędzy WFMS (WorkFlow Management System), a systemem zewnętrznym. Kiedy użytkownik albo system zarządza wykonywaniem instancji, generowane są zdarzenia w systemie. Definicja procesu może wyspecyfikować, że dany fragment logiki programowej musi być wykonany przy konkretnym zdarzeniu. Logika programowa może także komunikować się z innymi systemami zewnętrznymi albo wewnętrznymi. - Monitorowania i audytu za pomocą tego interfejsu menadżerowie mogą obserwować statystyki, które są tworzone na podstawie logów powstałych w czasie wykonywania procesu. Logi te mogą również zostać wykorzystane do przeprowadzania audytu. 3 Oracle Workflow Oracle Workflow jest środowiskiem, które dostarcza kompletnej platformy do tworzenia, wykonywania oraz zarządzania procesem biznesowym. Został on utworzony, aby 59

4 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk zaspokoić coraz większe potrzeby rynku na systemy tego typu. Firmie Oracle udało się utworzyć bardzo dobry produkt, który spełnia wymagania jakie stawia się systemom klasy workflow. Środowisko to jest ściśle zintegrowane z bazą danych Oracle co z jednej strony jest dużą zaletą, gdyż znacznie został ułatwiony dostęp do danych oraz wykonywanie funkcji za pomocą procesu. Z drugiej strony zaś firma zapewnia sobie, że wszyscy chcący korzystać z tej technologii będą musieli wykupić licencję na serwer Oracle. W architekturze Oracle Workflow można wyróżnić cztery główne obszary, z których każdy zawiera wiele oddzielnych komponentów. Rys. 3. Architektura systemu Oracle Workflow [5] Możliwość integracji z pracującymi systemami zewnętrznymi sprawia, iż procesy Oracle Workflow można wdrażać w organizacjach, które posiadają już dedykowane oprogramowanie. Dzięki temu można usprawnić funkcjonowanie firmy czy instytucji. Oracle Workflow zarządza procesem zgodnie z zasadami, które zostały zdefiniowane. Te zasady nie są niczym innym jak definicją procesu zawierającego aktywności (czynności), które pojawiają się w procesie oraz uwzględniającego relacje, jakie panują między nimi. Pod pojęciem aktywności, ukrywa się bardzo wiele elementów. Może to być składowana procedura PL/SQL lub zewnętrzna funkcja, powiadomienie użytkownika albo roli, które może wymagać odpowiedzi albo podproces, który sam także składa się z szeregu aktywności. Proces jest inicjowany w momencie, gdy aplikacja wywołuje zestaw funkcji z Oracle Workflow Engine API. Po uruchomieniu procesu Workflow Engine automatycznie wykonuje kroki i wywołuje odpowiednie usługi, kiedy odwołujemy się do zewnętrznych procesów. Przykład definicji procesu jest przedstawiony na rys 4. 60

5 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 4. Proces Oracle Workflow Ikony na diagramie reprezentują aktywności w procesie, a strzałki oznaczają przejścia między nimi. Każdy proces ma poza tym wyróżniony jeden punkt początkowy i co najmniej jeden punkt końcowy. Poprawna definicja procesu jest podstawowym warunkiem działania Oracle Workflow. Jest także fundamentem, na którym będzie budowana aplikacja i dlatego tak ważne jest jej prawidłowe sformułowanie oraz zapewnienie elastycznego modelowania reguł biznesowych. Oracle Workflow do zarządzania definicją procesu dostarcza dedykowane oprogramowanie Workflow Builder. Posiada ono okno Navigator, w którym możemy definiować aktywności i komponenty procesu, a następnie elementy z tego okna wykorzystujemy przy budowie procesu co ma miejsce w oknie budowania definicji procesu. Obydwa komponenty programu widoczne są na rys. 5. Rys. 5. Oracle Workflow Builder 61

6 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk Proces Oracle Workflow jest zbudowany z komponentów połączonych ze sobą przejściami. Tak więc, aby zbudować definicję procesu należy utworzyć elementy, z których będzie się ona składała. Przy tworzeniu procesu bardzo często spotykamy się z powtarzającymi się zagadnieniami. Oracle Workflow dostarcza zestaw dostępnych w systemie komponentów, które w większości przypadków zaspokajają najczęściej występujące potrzeby. Gdyby jednak ten zastaw nie wystarczał zawsze możemy tworzyć własne elementy do budowy procesu. Potęga Oracle Workflow tkwi w możliwości wywoływania, w trakcie wykonywania procesu, zdefiniowanych przez programistę funkcji. Funkcje można definiować albo za pomocą PL/SQL albo w języku Java. Oczywiście nie każda funkcja może być wykonywania przez proces. Muszą ona spełniać określone warunki, aby mogły być użyte przez workflow. W przypadku funkcji PL/SQL jest to określona forma deklaracji, a gdy mamy do czynienia z funkcja Java dziedziczy ona po klasie WFFunctionAPI. 5 Hibernate Większość aktualnie tworzonego oprogramowania musi mieć możliwość składowania informacji w bazie danych. W obecnej formie baza danych to zbiór tabel z nałożonymi warunkami ograniczającymi. Taki model danych nazywany jest relacyjnym. Jednakże języki oprogramowania, które służą do budowy oprogramowania wykorzystują w większości model obiektowy. Opiera on się na założeniu, iż każdy byt w systemie to obiekt, a działanie aplikacji to wymiana zdarzeń i akcji między obiektami. Programowanie zorientowane obiektowo ułatwia proces tworzenia aplikacji, gdyż model systemu jest bardzo zbliżony do rzeczywistości. Skoro cały program jest zbiorem obiektów to rzeczą naturalną i łatwą dla programisty byłaby możliwość zapisywania obiektów w bazie danych. Jednakże relacyjny model przechowywania danych w bazie nie jest w stanie obsłużyć operacji na obiektach. Dlatego programista aby wykonać operację na bazie danych musi stworzyć odpowiednie zapytanie SQL, połączyć się z bazą danych i je wykonać. Jest to bardzo niewygodnie, a przede wszystkim bardzo mało elastyczne rozwiązanie. Aby uniknąć ciągłego konwertowania obiektów na polecenia SQL powstały narzędzia służące do mapowania obiektowo-relacyjnego, które po odpowiednim skonfigurowaniu umożliwiają wykonywanie operacji zapisywania, aktualizowania, usuwania obiektów do bazy danych. Przykładem takiego narzędzia jest Hibernate, który jest najbardziej popularnym systemem służącym do mapowania obiektów na tabele w bazie danych. W tym rozdziale przedstawiono framework Hibernate wykorzystany w tworzeniu aplikacji w języku Java. Omówię jego architekturę, sposób konfiguracji oraz możliwości jakie daje jego zastosowanie podczas prac nad programem. Architektura Hibernate Miejsce Hibernate w architekturze aplikacji prezentuje Rys. 6. Framework umiejscowiony jest między aplikacją a serwerem bazy danych. Wykonuje on całą niezbędną pracę związaną z utrwalaniem obiektów Java bazując na mechanizmie mapowania obiektowo-relacyjnego. 62

7 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 6. Miejsce Hibernate w aplikacji. Hibernate może być bezpośrednio wywoływany z poziomu aplikacji Java lub za pomocą innego frameworka. Najczęściej jest on jednak wykorzystywany aby utworzyć warstwę dostępu do danych umożliwiającą dowolnemu komponentowi programu pracować z bazą danych. Hibernate to obecnie najpopularniejszy na rynku framework służący do odwzorowania obiektów języka programowania na tabele bazy danych. Oprócz platformy dla języka Java Hibernate oferuje także podobne rozwiązanie dla platformy.net. Elastyczność Hibernate sprawia, iż z powodzeniem jest wykorzystywany zarówno w małych jak i zaawansowanych aplikacjach. Jego główną zaletą jest ułatwienie realizacji warstwy dostępu do danych. Aplikacja tworzona jest szybciej, jej koszt jest mniejszy i jest łatwiejsza w utrzymaniu. Ponadto Hibernate współpracuje on z wieloma bazami danych co sprawia, iż migracja z bazy jednego producenta na drugiego nie jest już taka kłopotliwa. Jest to szczególnie ważne w przypadku, gdy wymagane jest wdrożenie systemu na dostępnej już platformie klienta. 6 API do komunikacji z Oracle Workflow Podstawą budowanego projektu jest integracja Oracle Workflow z aplikacjami internetowymi pisanymi w języku Java. W tym celu koniecznością było opracowanie standardu wymiany danych pomiędzy tymi dwoma środowiskami. Aby umożliwić aplikacji Java wykonywanie operacji na workflow opracowałno zestaw funkcji reprezentujący wszystkie niezbędne działania, które są wymagane aby zapewnić aplikacji pełną funkcjonalność. Został z nich utworzony interfejs, który zapewnia aplikacji niezależność od implementacji funkcji dla danego silnika procesowego. Część logiki realizowanej przez funkcje API zostało zapisane w postaci składowanych procedur PL/SQL umieszczonych na serwerze bazy danych Oracle. Są one wywoływane przez Hibernate, który odwzorowuje zwracany przez nie wynik na obiekty Java. W tym rozdziale dokładnie omówiono koncepcję oraz implementację funkcji umożliwiających integrację Java z Oracle Workflow. Aby zarządzać procesem Oracle Workflow z poziomu język Java potrzebne było utworzenie funkcji realizujących to zadanie. Poprzez interfejs OwfDAO został wypracowany zestaw metod, których wykonywanie zapewnia całkowitą kontrolę nad wykonywaną instancją procesu. Dzięki użyciu interfejsu w przypadku wymiany serwera workflow wymagana będzie tylko zamiana implementacji OwfDAO, a reszta aplikacji zostanie bez zmian. Konkretne rozwiązanie napisane dla Oracle Workflow wykorzystuje funkcje PL/SQL, które są wywoływane poprzez Hibernate przez odpowiednie funkcje Java. 63

8 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk Dzięki takiemu rozwiązaniu udało się wykorzystać dostarczone przez Oracle metody PL/SQL do zarządzania procesem. Implementacja API do komunikacji z Oracle Workflow zapewnia stabilny zestaw metod do zarządzania procesem. Używając go można utworzyć zaawansowaną aplikację, której logika będzie realizowana w postaci diagramu procesu workflow. 7 Implementacja systemu sterowania przepływem pracy. Punkt ten przedstawia przykładową implementację webowego systemu sterowania przepływem pracy. Warstwa prezentacji jest wykonana przy pomocy Java Server Faces, część logiki biznesowej napisana została w języku Java natomiast działanie aplikacji oparte jest na procesie Oracle Workflow. Koncepcja aplikacji opiera się na wykorzystaniu procesu workflow. Takie rozwiązanie ma bardzo wiele zalet. Przede wszystkim można bardzo szybko dostosowywać aplikację do zmieniających się warunków. Wystarczy tylko wprowadzić zmiany w definicji procesu oraz ewentualnie dopisać odpowiednie interfejsy. Działanie aplikacji nie jest ściśle powiązane w silnikiem Oracle Workflow. Nie zostały wykorzystane standardowe metody integracji, gdyż zapewniają one zbytnie uzależnienie od stosowanych technologii. W budowie programu da się wyodrębnić dwa zasadnicze komponenty. Pierwszy związany jest z samą obsługą procesu. Jest to framework, który obsługuje całą funkcjonalność związaną z integracją z systemami workflow. Może on być wykorzystywany bez względu na definicję procesu. Tak więc utworzona została platforma, która może być użyta przy realizacji każdej aplikacji opartej o Oracle Workflow. Nie musi być ona za każdym razem pisana od nowa, ani także dostosowywana do potrzeb klienta. Drugą częścią składową aplikacji są elementy, które są specyficzne dla danej aplikacji. Składa się na nią schemat bazy danych, definicja procesu oraz interfejsy webowe. Skoro część logiki aplikacji realizowana jest w postaci definicji procesu to należy go zaprojektować indywidualnie dla każdego przypadku. Stanowi on fundament działania programu, dlatego wymaga starannego przygotowania. Jest to zadanie, które powinno być wykonywane przez analityka lub projektanta procesu. Niezbędna przy tym jest ścisła współpraca z klientem, gdyż to jego wymagania mamy zaspokoić. Schemat procesu jest bardzo naturalny do analizowania w porównaniu do innych technik projektowania aplikacji. Dlatego klient może bardzo łatwo wychwycić błędy już na wczesnym etapie tworzenia oprogramowania. Im wcześniej wychwycone są błędy tym łatwiej i szybciej można je usunąć. W zależności od zadania, które trzeba będzie zrealizować należy zaprojektować schemat bazy danych przechowujący informacje specyficzne dla konkretnego przypadku. Ta część nie może być uniwersalna, gdyż trudno jest utworzyć taki zestaw tabel, który zaspokajałby wszystkie wymagania. Warto zaznaczyć, iż nie przechowuje on żadnych informacji dotyczących elementów związanych z obsługą workflow. Za to odpowiedzialny jest schemat danych Oracle Workflow. W tym momencie dobrze widoczny jest podział aplikacji na dwie części. Pierwszą związana z zarządzaniem procesem dowolnego typu i drugą wykonaną specjalnie dla danego przypadku. Założeniem aplikacji było umożliwienie posługiwania się nią za pomocą przeglądarki internetowej. 64

9 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 7. Architektura przykładowego sytemu sterowania przepływem pracy. Całość programu ma dodatkowo działać w oparciu o proces workflow. Wymagania projektowe wpłynęły na architekturę systemu, która jest zaprezentowana na rys. 7. Klientem końcowym aplikacji jest przeglądarka internetowa. Przez nią będą wykonywane wszystkie procesy. Takie rozwiązanie sprawia, iż z dowolnego komputera podłączonego do sieci będzie można z korzystać z aplikacji. Centralne przechowywanie programu upraszcza proces wprowadzania zmian, gdyż cały kod znajduje się w jednym miejscu i wszystkie wymagane zmiany są od razu dostępne dla użytkowników. Eliminuje to także problem aktualizowania wersji. Skoro jest to dynamiczna aplikacja internetowa to wymaga serwera, który przetwarza żądania użytkowników. Zdecydowałem się na użycie kontenera Tomcat. Jest on udostępniany za darmo przez firmę Apache. W warstwie prezentacji został wykorzystany framework Java Server Faces. Umożliwia on bardzo szybkie tworzenie interfejsów użytkownika, gdyż udostępnia szereg komponentów reprezentujących określony zestaw znaczników języka HTML. Logika obsługująca zachowanie elementów strony internetowej napisana jest w języku Java. W warstwie dostępu do danych korzystam z Hibernate, który zarządza wymianą informacji pomiędzy warstwą logiki a repozytorium bazy danych. Program będzie wykorzystywał dwa schematy bazy danych. Pierwszy to schemat Oracle Workflow zawierający dane związany z wykonywaniem procesu. Drugi przechowuje informacje ściśle związane z aplikacją. 7.1 Założenia aplikacji Aplikacja ma wspomagać proces obsługi studentów w dziekanacie. Jej głównym zdaniem jest umożliwienie studentom przejście przez wybrany proces za pomocą przeglądarki internetowej. Praktycznie każda sytuacja związana ze studiowaniem ma charakter procesu. Wyspecyfikowane są kroki, które muszą mieć miejsce oraz określone są wymagania jakie mają być spełnione. Skoro wszystko odbywa się na zasadzie procesu to można go usprawnić poprzez zautomatyzowanie. Zostanie zbudowana definicja procesu, która będzie odzwierciedlała proces obsługi studenta w dziekanacie. Na niej będzie opierać się działanie aplikacji. Dodatkowo zostanie udostępniona możliwość pobierania danych o studentach i o ich ocenach osiąganych w danych semestrach poprzez integracje z zewnętrznymi 65

10 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk systemami. System ma obsługiwać kilka przypadków użycia. Pierwszy zaprezentowany jest diagram przypadków dla aktora student. Jest on przedstawiony na rys. 8. Rys. 8. Diagram przypadków użycia dla aktora student Student jak każdy użytkownik przed skorzystaniem z systemu musi się zalogować. Następnie powinien mieć możliwość podejrzenia jakie zadania ma do wykonania. System pozwala studentowi zadać pytanie do dziekanatu. Dodatkowo poprzez aplikację udostępniona jest możliwość występowania z podaniem o stypendium sportowe, a także o stypendium socjalne. Oba te przypadki są związane są z uruchomieniem nowej instancji procesu. Kolejny przypadek użycia został przedstawiony dla aktora Dziekanat. Jest on przedstawiony na rys. 9. Rys. 9. Diagram przypadków użycia dla aktora dziekanat Głównym zadaniem aktora Dziekanat jest reagowanie na akcje podjęte ze strony aktora Student. Wszystkie funkcjonalności są dostępne po zalogowaniu. Przede wszystkim odpowiada on na zadane pytania oraz podejmuje decyzje o przyznaniu stypendium 66

11 System sterowania przepływem pracy w środowisku Oracle Workflow sportowego. Ma on także możliwość uruchamiania procesu ale musi to zrobić w imieniu któregoś ze studentów. Kolejnym aktorem wyodrębnionym w systemie jest Akademicki Związek Sportowy (AZS). Jego diagram przypadku użycia jest przedstawiony na rys. 10. Rys. 10. Diagram przypadków użycia dla aktora AZS Podobnie jak w innych sytuacjach aktor AZS będzie odpowiedzialny za realizację przypadku użycia związanego z opiniowaniem. Jego działanie jest wymagane, gdy aktor Student będzie wystąpi z prośbą przyznanie stypendium sportowego. Do jego otrzymania niezbędna jest opinia AZS na podstawie której podejmowana jest decyzja. 7.2 Definicja procesu Na podstawie wymagań jakie ma spełniać aplikacja oraz bazując na przypadkach użycia rozpisanych na poszczególnych aktorów systemu, została utworzona definicja procesu. Zadanie ( Item type ) wspomagające obsługę studenta w dziekanacie składa się z trzech procesów. Pierwsze to proces główny, a dwa następne są to podprocesy odpowiadające za przyznawanie stypendium socjalnego oraz sportowego. Ich lista przedstawiona jest na rys.11. Zanim zostanie omówiona budowa procesu należy wspomnieć o atrybutach zadania (item type), które zostały zdefiniowane. Pokazane są one na rys.11 wraz z procesami. Atrybuty Student, Dziekanat oraz AZS są typu Role. Odpowiadają one grupom użytkowników, którzy biorą udział w procesie. Atrybut StudentID przechowuje wartość liczbową określającą, identyfikator studenta będącego podmiotem wykonywania instancji. 67

12 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk Rys. 11. Lista atrybutów i procesów zdefiniowanych w ramach jednego item type. Proces główny pokazany jest na rys. 12. Po jego uruchomieniu wykonywanie zatrzymuje się na pierwszej notyfikacji Start. Ma ona za zadanie poinformowanie o możliwościach systemu. Jej wykonawca, którym jest osoba z grupy Student może kontynuować proces lub zakończyć go. W przypadku gdy nie zostanie podjęta przez 30 minut żadna akcja workflow skorzysta ze ścieżki przejścia oznaczonej jako timeout. Prowadzi ona do zakończenia wykonywania instancji. W ten sposób można się zabezpieczyć przed instancjami, które zostały pomyłkowo uruchomione lub przed tymi, których wykonanie zostało zaniechane. Jeżeli użytkownik zadecydował o kontynuowaniu to następuje przejście do następnego kroku Cel studenta. Jego wykonawcą jest również rola Student. Z tego miejsca należy zadecydować jaką sprawę chcemy zrealizować. Do wyboru jest wniosek o stypendium oraz możliwość zadania pytania. Na podjęcie decyzji jest pięć minut. Po tym czasie workflow skorzysta z ścieżki timeout i zakończy wykonywanie instancji. W przypadku gdy celem jest zadanie pytania użytkownik zostaje przekierowany do notyfikacji Zapytanie. Do tego kroku dołączony jest interfejs webowy, w którym użytkownik będzie miał możliwość wprowadzenia swojego pytania, które zostanie zapisane w bazie danych. Po wykonaniu tej notyfikacji wykonanie procesu przechodzi do miejsca, w którym następuje wstępna selekcja jego pytania przez osobę, która należy do grupy Dziekanat. Notyfikacja Rozpatrz zapytanie ma za zadanie wstępną ocenę pytania w celu dopuszczenia go do fazy odpowiedzi. W przypadku gdy pytanie zostało ocenione negatywnie następuje zakończenie procesu. Jeżeli tak się nie stało następuje przejście do dwóch równoległych wykonań procesu. Jedna gałąź, wraz z notyfikacją Zapytanie rozpatrywane, jest informacją dla roli Student, iż jego pytanie zostało wstępnie zaakceptowane i powinien oczekiwać na odpowiedź. Jest to ostatni moment w którym można jeszcze wycofać zadane pytanie poprzez wybranie opcji Zakończ. Druga gałąź zawiera notyfikację Odpowiedz, która jest przypisana do roli Dziekanat. W tym miejscu podczepiony jest interfejs, za pomocą którego osoba wykonująca może udzielić odpowiedzi na zadane pytanie. Notyfikacja pozwala także na anulowanie procesu poprzez wybranie Zakończ. Równoległe ścieżki wykonywania połączone są w jednym miejscu za pomocą funkcji And. Powoduje ona, iż proces będzie czekał aż obydwie notyfikacje zostaną wykonane. Gdy tak się stanie następuje przejście do Odpowiedz na zadane przez Ciebie pytanie, w której student w imieniu którego został uruchomiony proces otrzymuje odpowiedź. Po zapoznaniu się z nią następuje zakończenie wykonywania instancji procesu. 68

13 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 12. Schemat głównego procesu Jeżeli student chciałby złożyć wniosek o przyznanie stypendium powinien w kroku Cel studenta wybrać opcję Stypendium. Proces przejdzie wtedy do kroku Rodzaj stypendium. Należy w nim określić o jakie stypendium chodzi. Możliwymi opcjami są stypendium sportowe oraz naukowe. Gdy zamiarem jest złożenie wniosku o stypendium sportowe należy wybrać odpowiednią opcję. Następuje wtedy uruchomienie procesu odpowiedzialnego za tą funkcjonalność. W tym przypadku jest to proces o nazwie Sportowe. W odróżnieniu od procesu głównego musi się on zakończyć się określonym rezultatem. Jest on ustawiany w oknie właściwości w polu Result type. W przypadku obydwu podprocesów jest to lookup type Warunki na stypendium, który posiada dwa lookup code: Nie spełnił wymagań oraz Spełnił wymagania. Na ich podstawie student jest informowany czy jego wniosek został rozpatrzony pozytywnie czy nie. Schemat procesu przyznawania stypendium sportowego jest zaprezentowany na rys.13. Rys. 13. Diagram procesu przyznawania stypendium sportowego 69

14 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk Od razu po rozpoczęciu wykonywania proces dzieli się na dwie równoległe ścieżki. Trafiają one do dwóch notyfikacji Uzasadnienie i Opinia AZS. Wykonywanie Uzasadnienia jest przypisane do roli Student. To w tym momencie osoba wnioskująca o stypendium sportowe powinna napisać, dlaczego uważa, że powinna je dostać. W tym miejscu jest podczepiony interfejs umożliwiający wprowadzenie oraz wysłanie uzasadnienia. Wykonanie notyfikacji Opinia AZS jest przeznaczone dla grupy AZS. Gdy aplikacja dotrze do tego kroku użytkownikowi zostanie wyświetlony formularz, w którym będzie musiał wyrazić swoją opinię na temat studenta wnioskującego o stypendium. Obydwie notyfikacje muszą się wykonać, aby proces mógł kontynuować wykonanie. Jest to zapewnione poprzez użycie funkcji And. Kolejnym krokiem, jest decyzja o przyznaniu stypendium. Dokonuje się tego w notyfikacji Zatwierdzenie stypendium sportowego. Wykonuje ją osoba z roli Dziekanat. Na podstawie uzasadnienia oraz opinii AZS podejmuje ona decyzję. W zależności od niej proces kończy swoje działanie z odpowiednim wynikiem. Sterowanie jest przekazywane z do procesu głównego. Na podstawie rezultatu zwracanego przez proces Sportowe następuje przejście albo do notyfikacji Decyzja o stypendium pozytywna albo do Odmowa przyznania stypendium. Za ich pomocą student jest informowany o tym czy jego wniosek został rozpatrzony pozytywnie. Jeżeli zapoznał się z decyzją to następuje zakończenie instancji procesu. Drugi z podprocesów obsługuje przypadek przyznawania stypendium naukowego. Jego schemat pokazany jest na rys.14. Rys. 14. Diagram procesu przyznawania stypendium naukowego Podobnie jak w przypadku procesu realizującego przyznawanie stypendium sportowego, zwracanym wynikiem jest albo Spełnił wymagania albo Nie spełnił wymagań. Ten proces nie posiada żadnych zadań, które wymagają ingerencji użytkownika, wszystkie kroki są wykonywane automatycznie. Jest to realizowane poprzez funkcje PL/SQL, które są podpięte do danych aktywności. Po uruchomieniu tego procesu wykonują się dwie metody. Pierwsza Złożenie indeksu w terminie sprawdza czy student nie przekroczył terminu składania indeksów w dziekanacie. Jeżeli zrobił to wystarczająco wcześnie zwracany jest wynik Yes. W przeciwnym przypadku No. Zbyt późne oddanie indeksu sprawia iż proces kończy się z wynikiem Nie spełnił wymagań. Odbywa się to poprzez funkcję Or. Druga funkcja Odpowiednia średnia ma za zadanie sprawdzić w systemie czy student uzyskał odpowiednio wysoką średnią niezbędną do uzyskania stypendium naukowego. Na podstawie danych dostępnych w systemie następuje wyliczenie średniej dla aktualnego 70

15 System sterowania przepływem pracy w środowisku Oracle Workflow semestru oraz porównanie jej z wartością progową. Gdy zostanie ona przekroczona funkcja zwraca wynik Yes. W przypadku posiadania zbyt niskiej średniej rezultatem zwracanym jest No. Oba warunki muszą być spełnione, aby osoba mogła otrzymać stypendium. Dlatego została użyta funkcja And która zapewnia, iż tylko w przypadku gdy obydwie funkcje zwrócą Yes proces zakończy się z rezultatem pomyślnym. Funkcja Or natomiast powoduje zakończenie wykonywania procesu z rezultatem negatywnym w przypadku gdy któraś w funkcji, sprawdzających warunki do przyznania warunków, zwróci wartość No. Gdy proces Naukowe zakończy się sterowanie zostaje przekazane do procesu głównego. W zależności od zwróconego wyniku zostaje wykonana jedna z notyfikacji: Decyzja o stypendium pozytywna albo do Odmowa przyznania stypendium. Służą one do informowania studenta jaka decyzja została podjęta. Po zapoznaniu się z nią proces kończy się. 7.3 Schemat bazy danych Dla części aplikacji, która nie jest bezpośrednio związana z wykonywaniem procesu należało przygotować odpowiedni schemat bazy danych, który umożliwia przechowywanie danych, z którymi aplikacja bezpośrednio pracuje. Diagram jest przedstawiony na rys.15. Rys. 15. Schemat bazy danych aplikacji. Aplikacja przydziela uprawnienia na podstawie grup, do których należy użytkownik. Informacja o nich przechowywana jest w tabeli MGR_ROLES_T. Zawiera ona dwie flagi, 71

16 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk które umożliwiają realizację uprawnień. Kolumna START_PROCESS służy do określenia czy dana rola ma uprawnienie do rozpoczynania procesu. Natomiast za pomocą kolumny PROCESS_OWNER można decydować czy użytkownicy danej roli mogą występować jako właściciele procesu. Pytania zadane przez studenta przechowywane są w tabeli MGR_QUESTIONS_T. Treść pytania umieszczana jest w kolumnie CONTENT. Dodatkowo przy wprowadzaniu pytania należy wybrać kategorię, do której ono należy. Kategorie zdefiniowane są w tabeli słownikowej MGR_QUESTION_TYPES_T. W tabeli z pytaniami jest utworzony klucz obcy na polu PRIORITY_ID odnoszący się do klucza głównego danej kategorii. Oprócz kategorii należy wybrać jaki priorytet ma pytanie. Priorytety są przetrzymywane w tabeli MGR_PRIORITIES_T. Odwołanie do nich następuje poprzez klucz obcy na polu PRIORITY_ID w tabeli MGR_QUESTIONS_T. Każde pytanie zadane jest przez konkretnego użytkownika, więc informacja o nim musi być utrwalana. Jest to realizowanie poprzez założenie klucza obcego na kolumnie QUESTIONER_ID z referencją do pola ID w tabeli MGR_USERS_T. Na zadane pytanie musi być możliwość udzielania odpowiedzi. Dlatego utworzona została tabela MGR_ANSWERS_T przechowująca jej treść. Posiada ona cztery klucze obce oraz pole, w którym przechowywana jest treść pytania. W kolumnie ANSWERER_ID przechowywany jest identyfikator użytkownika, który udziela odpowiedzi. To na jakie pytanie, definiowane jest poprzez identyfikator umieszczony w kolumnie QUESTION_ID. Aby posiadać informację, w ramach którego procesu dana odpowiedź została udzielona na kolumnie PROCESS_ID jest założony klucz obcy do identyfikatora instancji procesu umieszczonego na schemacie Oracle Workflow. Aplikacja ma możliwość przeprowadzenia automatycznego procesu przyznawania stypendium naukowego. Decyzja podejmowana jest na podstawie średniej ocen uzyskanych w danym semestrze. Założeniem aplikacji jest zintegrowanie się z systemem przechowującym oceny studentów. Informacje związane z osiągniętymi wynikami poprzez zdefiniowany mechanizm wymiany danych są transferowane z systemu zewnętrznego do schematu bazy danych. Miejscem w bazie danych programu, w którym przechowywane są dane z systemu jest tabela MGR_AVERAGE_T. Posiada ona klucz obcy założony na kolumnie TERM_ID, który odnosi się do klucza głównego w tabeli CRM_TERMS_T, która jest tabelą słownikową przechowująca informacje o semestrach. Tabela MGR_AVERAGE_T w polu AVERAGE przechowuje wartość średniej z danego semestru. Kolumna STUDENT_ID przechowuje identyfikator studenta, za pomocą którego można określić, który student w danym semestrze osiągnął jaką średnią. Kolejnym możliwym przypadkiem jest wystąpienie studenta o przyznanie stypendium sportowego. Do przechowywania uzasadnienia wniosku została utworzona tabela MGR_SPORT_SCHOLAR_REQ. W polu CONTENT zapisywana jest treść podania. Oprócz tej informacji zachowywana jest jeszcze data złożenia wniosku. W kolumnie REQUESTOR_ID jest przechowywany identyfikator użytkownika, który wystąpił z podaniem. Na tym polu założony jest klucz obcy powiązany z polem ID w tabeli MGR_USERS_T. Dodatkowo, aby wiedzieć w ramach której instancji procesu zostało złożone podanie, dodane zostało pole PROCESS_ID, który zawiera identyfikator danego wykonywania procesu. Równolegle do wniosku o stypendium sportowe wysyłana jest prośba o opinię na temat zawodnika. Ta informacja jest umieszczana w tabeli MGR_OPINIONS_T. Posiada ona pole CONTENT przechowujące informację o udzielonej opinii. Dodatkowo aby posiadać informację kogo zaopiniowano i w ramach jakiego procesu tabela posiada pola PROCESS_ID oraz USER_ID, które przechowują identyfikatory odpowiednich encji. 72

17 System sterowania przepływem pracy w środowisku Oracle Workflow Oprócz tabel zawierających dane związane bezpośrednio z definicją procesu istnieją jeszcze w aplikacji takie, które przechowują informacje pomocnicze. Pierwszą jest MGR_DICTIONARIES_T. Jest to tabela słownikowa, która może przechowywać dane, które nie są aktualnie uwzględnione podczas analizy. Dzięki tej tabeli można zdefiniować dowolną ilość słowników. Posiada ona trzy pola, w których w zależności od potrzeby można umieścić liczby, tekst lub datę. Ponadto dzięki kolumnie PARENT_ID słownik pozwala przechowywać dane w formie drzewa. Drugą tabelą pomocniczą jest MGR_OWF_INTERFACES_T. Została ona utworzona, aby przechowywać definicję interfejsów oraz ich kody. Koncepcja aplikacji zakłada, iż proces workflow w momencie osiągnięcia danej notyfikacji, poprzez wiadomość przekazuje do warstwy wyższej kod formularza, który należy aktualnie wyświetlić. Aplikacja sprawdza w tej tabeli, gdzie znajduje się interfejs o danym identyfikatorze i dołącza go na stronie internetowej. Dzięki takiemu zastosowaniu za pomocą zawartości tabeli MGR_OWF_INTERFACES_T można zarządzać treścią przypisaną do danego procesu. 7.4 Prezentacja systemu Dostęp do systemu jest możliwy poprzez przeglądarkę internetową. Główna strona programu składa się kilku komponentów. Na górze witryny znajduje się menu główne. Za jego pomocą można przechodzić do wybranych działów. Rys. 16. Strona główna aplikacji W centralnej części głównej strony umieszczona jest podręczna lista zadań do wykonania dla danego użytkownika. Aby zobaczyć pełną listę należy skorzystać z pozycji Inbox w menu głównym. Następny krok procesu pozwala studentowi wybrać cel uruchomienia procesu. Zgodnie z jego definicją z notyfikacji Cel studenta, możliwe są trzy wyjścia w tym jedno typu timeout. W na tym etapie wykonywania procesu użytkownikowi prezentowany jest interfejs pokazany na rys

18 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk Rys. 17. Interfejs umożliwiający wybór stypendium lub zadanie pytania Po kliknięciu następuje przejście do odpowiedniej strony. W przypadku, gdy student zachce zadać pytanie musi wybrać opcję Pytanie, po czym instancja procesu przechodzi do następnej notyfikacji, a użytkownikowi zostaje zaprezentowany interfejs umożliwiający wprowadzanie pytania. (Rys. 18). Rys. 18. Interfejs umożliwiający zadanie pytania W czasie, gdy osoba z grupy DZIEKANAT udziela odpowiedzi student jest informowany, iż jego pytanie przeszło wstępną selekcję i powinien oczekiwać na odpowiedź. Ten interfejs jest zaprezentowany na rys. 19. W procesie jest to realizowane poprzez dwie równoległe ścieżki wykonywania. Oba te zadania muszą zostać wykonane, aby proces mógł pójść do następnego kroku. 74

19 System sterowania przepływem pracy w środowisku Oracle Workflow Rys. 19. Interfejs informujący o rozpatrywaniu zadanego pytania Ostatnim krokiem procesu jest poinformowanie go o tym jaka odpowiedź została udzielona na jego pytanie(rys.20). Prezentuje on pytanie, które zostało zadane oraz odpowiedź, która została udzielona. Rys. 20. Interfejs z informacją o udzielonej odpowiedzi Po zapoznaniu się z odpowiedzią i wybraniu przycisku Zakończ następuje koniec wykonywania procesu i użytkownik przechodzi na stronę główną aplikacji skąd może uruchomić następną instancję procesu. Omówiona została tylko ścieżka procesu związana z zadawaniem przez studenta pytania. Definicja procesu przewiduje także możliwość wnioskowania o stypendium sportowe i naukowe. Ich przebieg jest analogiczny do zadawania pytań. Różnią się tylko dołączonymi interfejsami. Dodatkowo proces przyznawania stypendium naukowego nie wymaga żadnej akcji ze strony użytkowników systemu, gdyż wykonywany jest automatyczne za pomocą funkcji dołączonych do definicji procesu. Student jest jedynie informowany o tym czy przyznano mu stypendium czy nie. 8 Podsumowanie. Poprzez wykorzystanie technologii języka Java oraz środowiska Oracle Workflow udało się utworzyć aplikację internetową do obsługi studentów w dziekanacie. Co ważne, jej logika 75

20 P.Drzymała, H. Welfle, S. Wiak, M. Kazimierczuk nie jest umieszczona w kodzie tylko opiera się na definicji procesu. W ten sposób udało się utworzyć bardzo elastyczny system, którego działanie opiera się na regułach zdefiniowanych w sposób jasny i przejrzysty. Wykorzystanie systemu ról, udostępnionych przez Oracle Workflow wyeliminowało potrzebę implementacji własnego sytemu uprawnień. Oparcie działania systemu o proces sprawiło, iż w bardzo łatwy sposób można zmieniać sposób działania aplikacji. Wystarczy tylko wprowadzić zmiany w definicji procesu. Ponadto aplikacja została zaprojektowana tak, iż tworzy framework, który można wykorzystać dla dowolnej definicji procesu. Taka konstrukcja sprawia, iż aplikacja może być stosowana wszędzie tam, gdzie przebieg czynności ma charakter procesu. Narzędzie Workflow Builder pozwala w bardzo wygodny sposób projektować nawet najbardziej skomplikowane procesy sterowania przepływem pracy. Wykorzystanie funkcji PL/SQL sprawia, iż kroki procesu są wykonywane automatycznie bez ingerencji użytkownika. Pozwala to na utworzenie systemu samodzielnie decydującego, na podstawie zebranej wiedzy, jaką ścieżkę przejścia obrać. Warstwa prezentacji aplikacji wykonana jest w formie strony internetowej. Użyto Java Server Faces technologię języka Java umożliwiającą tworzenie webowych interfejsów użytkownika. Aplikacja działa w oparciu o proces sterowania przepływem pracy, dlatego koniecznie było utworzenie funkcji Java zapewniających komunikację z Oracle Workflow. Opracowano zestaw metod, które umożliwiają zarządzanie wykonywaniem definicji procesu. Dzięki nim można z poziomu strony internetowej dokonywać operacji na serwerze workflow. Są one zapisane w postaci interfejsu. Ułatwia to ewentualną migrację programu na inne środowiska workflow. Dostępna jest implementacja interfejsu napisana specjalnie dla Oracle Workflow. Wykorzystuje ona technologię Hibernate, za pomocą której pobierane są informacje z bazy danych oraz wykonywane są procedury PL/SQL. Użycie Hibernate znacznie ułatwiło tworzenie projektu. Struktury bazy danych są automatycznie konwertowane na obiekty języka Java. Ponadto, nie trzeba już tworzyć zapytań SQL, gdyż Hibernate udostępnia funkcje, które umożliwiają wykonanie operacji bezpośrednio na obiekcie. Reguły dotyczące sposobu przełożenia zawartości obiektów na schemat bazy danych zapisane są w plikach konfiguracyjnych XML. Ponadto za pomocą Hibernate wywoływane są funkcje PL/SQL wykonujące operacje na procesie. Utworzono zestaw metod, które są w stanie w pełni obsłużyć każdy przypadek procesu. Mogą być wykorzystywane w dowolnym projekcie Java mającym działać w oparciu diagramu przepływu pracy. Wykonano w pełni funkcjonalny system, którego logika opiera się na definicji procesu workflow. Jest niezależny od użytej bazy danych oraz posiada architekturę umożliwiającą łatwą wymianę silnika procesowego. Jego budowa pozwala na proste dostosowanie go do każdej definicji procesu, czyli może znaleźć zastosowanie w wielu dziedzinach. Literatura 1. Tom Baeyens: The State of Workflow, 2004, 2. Oracle Workflow Developer s Guide, Release Oracle Workflow API Reference, Release Oracle Workflow User's Guide, Release Matthew Searle: Developing with Oracle Workflow, O'Reilly Media Kito D. Mann: Java Server Faces in Action, Manning Christian Bauer, Gavin King: Hiberante in Action, Manning Dave Minter, Jeff Linwood: Hibernate of Nowicjusza do Profesjonalisty, Power Net

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych Laboratorium Technologii Informacyjnych Projektowanie Baz Danych Komputerowe bazy danych są obecne podstawowym narzędziem służącym przechowywaniu, przetwarzaniu i analizie danych. Gromadzone są dane w

Bardziej szczegółowo

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

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

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

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką Autor: Paweł Konieczny Promotor: dr Jadwigi Bakonyi Kategorie: aplikacja www Słowa kluczowe: Serwis

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

1 Wprowadzenie do J2EE

1 Wprowadzenie do J2EE Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy

Bardziej szczegółowo

Baza danych. Baza danych to:

Baza danych. Baza danych to: Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego

Bardziej szczegółowo

Uruchamianie bazy PostgreSQL

Uruchamianie bazy PostgreSQL Uruchamianie bazy PostgreSQL PostgreSQL i PostGIS Ten przewodnik może zostać pobrany jako PostgreSQL_pl.odt lub PostgreSQL_pl.pdf Przejrzano 10.09.2016 W tym rozdziale zobaczymy, jak uruchomić PostgreSQL

Bardziej szczegółowo

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

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

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

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:

Bardziej szczegółowo

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

Usługi analityczne budowa kostki analitycznej Część pierwsza. Usługi analityczne budowa kostki analitycznej Część pierwsza. Wprowadzenie W wielu dziedzinach działalności człowieka analiza zebranych danych jest jednym z najważniejszych mechanizmów podejmowania decyzji.

Bardziej szczegółowo

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

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie

Bardziej szczegółowo

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne

Bardziej szczegółowo

Systemy obiegu informacji i Protokół SWAP "CC"

Systemy obiegu informacji i Protokół SWAP CC Systemy obiegu informacji i Protokół SWAP Grzegorz Blinowski "CC" Grzegorz.Blinowski@cc.com.pl http://www.cc.com.pl/ tel (22) 646-68-73; faks (22) 606-37-80 Problemy Integracja procesów zachodzących w

Bardziej szczegółowo

Tworzenie aplikacji bazodanowych

Tworzenie aplikacji bazodanowych Wydział Informatyki Politechnika Białostocka Studia stacjonarne Tworzenie aplikacji bazodanowych Prowadzący: pokój: E-mail: WWW: Małgorzata Krętowska, Agnieszka Oniśko 206 (Małgorzata Krętowska), 207 (Agnieszka

Bardziej szczegółowo

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Paweł Parys Nr albumu: 209216 Aukcjomat Praca licencjacka na kierunku INFORMATYKA w zakresie INFORMATYKA Praca wykonana pod kierunkiem

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja aplikacji internetowej do wyszukiwania promocji Autor: Sylwester Wiśniewski Promotor: dr Jadwiga Bakonyi Kategorie: aplikacja webowa Słowa

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,

Bardziej szczegółowo

W grze bierze udział dwóch graczy. Każdy uczestnik rozpoczyna rozgrywkę z sumą

W grze bierze udział dwóch graczy. Każdy uczestnik rozpoczyna rozgrywkę z sumą 2.4 QuestionGame QuestionGame jest grą z celem zaprojektowaną do gromadzenia pytań zadawanych przez ludzi podczas prób rozpoznawania ras psów. Program ma charakter aplikacji internetowej. W rozgrywcę mogą

Bardziej szczegółowo

Dane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu

Dane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu Dane wejściowe Oracle Designer Generowanie bazy danych Diagramy związków encji, a w szczególności: definicje encji wraz z atrybutami definicje związków między encjami definicje dziedzin atrybutów encji

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

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

Dotacje na innowacje. Inwestujemy w waszą przyszłość. PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia

Bardziej szczegółowo

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

Palety by CTI. Instrukcja

Palety by CTI. Instrukcja Palety by CTI Instrukcja Spis treści 1. Logowanie... 3 2. Okno główne programu... 4 3. Konfiguracja... 5 4. Zmiana Lokalizacji... 6 5. Nowa Paleta z dokumentu MMP... 8 6. Realizacja Zlecenia ZW... 10 7.

Bardziej szczegółowo

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7 AUREA BPM Oracle TECNA Sp. z o.o. Strona 1 z 7 ORACLE DATABASE System zarządzania bazą danych firmy Oracle jest jednym z najlepszych i najpopularniejszych rozwiązań tego typu na rynku. Oracle Database

Bardziej szczegółowo

PHP: bazy danych, SQL, AJAX i JSON

PHP: bazy danych, SQL, AJAX i JSON 1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji

Bardziej szczegółowo

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

Deduplikacja danych. Zarządzanie jakością danych podstawowych Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication

Bardziej szczegółowo

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia.

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia. Diagram wdrożenia Zaprojektowana przez nas aplikacja bazuje na architekturze client-server. W tej architekturze w komunikacji aplikacji klienckiej z bazą danych pośredniczy serwer aplikacji, który udostępnia

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja elektronicznego dziennika ocen ucznia Autor: Grzegorz Dudek wykonanego w technologii ASP.NET We współczesnym modelu edukacji, coraz powszechniejsze

Bardziej szczegółowo

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

Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9 Wdrożenie modułu płatności eservice dla systemu Magento 1.4 1.9 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do

Bardziej szczegółowo

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle EFEKTY KSZTAŁCENIA Wiedza Absolwent tej specjalności

Bardziej szczegółowo

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

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz Promotor dr inż. Szymon Supernak Warszawa, 22.05.2014 Plan prezentacji 1. Cel i

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI USTAWIEŃ DYNAMICZNIE PRZEDZIELANYCH ADRESÓW IP W URZĄDZENIACH SYSTEMU IP-PRO ORAZ REJESTRATORACH MY-DVR

INSTRUKCJA OBSŁUGI USTAWIEŃ DYNAMICZNIE PRZEDZIELANYCH ADRESÓW IP W URZĄDZENIACH SYSTEMU IP-PRO ORAZ REJESTRATORACH MY-DVR INSTRUKCJA OBSŁUGI USTAWIEŃ DYNAMICZNIE PRZEDZIELANYCH ADRESÓW IP W URZĄDZENIACH SYSTEMU IP-PRO ORAZ REJESTRATORACH MY-DVR UWAGA Aby zapewnić niezawodną pracę urządzenia, przed przystąpieniem do jego obsługi

Bardziej szczegółowo

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera : Oracle Designer Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera : - modelowanie procesów biznesowych - analizę systemu informatycznego - projektowanie

Bardziej szczegółowo

Projekt Hurtownia, realizacja skojarzeń dostawców i produktów

Projekt Hurtownia, realizacja skojarzeń dostawców i produktów niżej. Projekt Hurtownia, realizacja skojarzeń dostawców i produktów W bazie danych HurtowniaSP istnieją tabele Dostawcy oraz Produkty, ich definicje przypomniane są W bazie zdefiniowano także tabelę DostawcyProdukty,

Bardziej szczegółowo

Kielce, dnia 27.02.2012 roku. HB Technology Hubert Szczukiewicz. ul. Kujawska 26 / 39 25-344 Kielce

Kielce, dnia 27.02.2012 roku. HB Technology Hubert Szczukiewicz. ul. Kujawska 26 / 39 25-344 Kielce Kielce, dnia 27.02.2012 roku HB Technology Hubert Szczukiewicz ul. Kujawska 26 / 39 25-344 Kielce Tytuł Projektu: Wdrożenie innowacyjnego systemu dystrybucji usług cyfrowych, poszerzenie kanałów sprzedaży

Bardziej szczegółowo

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne

Bardziej szczegółowo

Wykład 8: klasy cz. 4

Wykład 8: klasy cz. 4 Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD

Bardziej szczegółowo

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a 1. Informacje wstępne...1 2. Sprawdzenie zainstalowanej wersji systemu GRANIT oraz pobieranie aktualizacji...1 3. Instalacja

Bardziej szczegółowo

Opisane poniżej czynności może wykonać administrator komputera lub administrator serwera SQL (tj. użytkownik sa).

Opisane poniżej czynności może wykonać administrator komputera lub administrator serwera SQL (tj. użytkownik sa). MOL Optivum Pierwsze uruchomienie programu MOL Optivum na komputerze pełniącym rolę serwera bazy danych Porada przeznaczona jest dla użytkowników, którzy zainstalowali program MOL Optivum i chcą go uruchomić

Bardziej szczegółowo

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

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie

Bardziej szczegółowo

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

OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA Projekt to metoda na osiągnięcie celów organizacyjnych. Jest to zbiór powiązanych ze sobą, zmierzających

Bardziej szczegółowo

Procesowa specyfikacja systemów IT

Procesowa specyfikacja systemów IT Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

Feature Driven Development

Feature Driven Development Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami

Bardziej szczegółowo

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji - wersja dokumentu 1.3-19.08.2014 Spis treści 1 Wstęp... 4 1.1 Cel dokumentu... 4 1.2 Powiązane dokumenty...

Bardziej szczegółowo

Oracle Application Express -

Oracle Application Express - Oracle Application Express - Wprowadzenie Wprowadzenie Oracle Application Express (dawniej: HTML DB) to narzędzie do szybkiego tworzenia aplikacji Web owych korzystających z bazy danych Oracle. Od użytkownika

Bardziej szczegółowo

Platforma e-learningowa

Platforma e-learningowa Dotyczy projektu nr WND-RPPD.04.01.00-20-002/11 pn. Wdrażanie elektronicznych usług dla ludności województwa podlaskiego część II, administracja samorządowa realizowanego w ramach Decyzji nr UDA- RPPD.04.01.00-20-002/11-00

Bardziej szczegółowo

ZPKSoft Synchronizator

ZPKSoft Synchronizator ZPKSoft Synchronizator Program DSynch.exe służy do synchronizacji baz odległych systemu ZPKSoft Doradca. Program ma dwa oblicza. Podstawowy interfejs programu otrzymamy po bezpośrednim uruchomieniu programu.

Bardziej szczegółowo

Kurs walut. Specyfikacja projektu. Marek Zając 2013-12-16

Kurs walut. Specyfikacja projektu. Marek Zając 2013-12-16 Kurs walut Specyfikacja projektu Marek Zając 2013-12-16 Spis treści 1. Podsumowanie... 2 1.1 Wstęp... 2 1.2 Projekt interfejsu... 2 1.2.1 Rozmiar głównego okna... 2 2. Słownik pojęć... 2 2.1 Definicja

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D1/05_03/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 Ręczne zakładanie kont użytkowników (D1) Jak ręcznie założyć konto w systemie

Bardziej szczegółowo

Dokument opisuje sposób postępowania prowadzący do wysłania deklaracji VAT, PIT lub CIT drogą elektroniczną za pomocą funkcji systemu ADA modułu FK.

Dokument opisuje sposób postępowania prowadzący do wysłania deklaracji VAT, PIT lub CIT drogą elektroniczną za pomocą funkcji systemu ADA modułu FK. FK - EDeklaracje Dokument opisuje sposób postępowania prowadzący do wysłania deklaracji VAT, PIT lub CIT drogą elektroniczną za pomocą funkcji systemu ADA modułu FK. W założeniu przyjęto, iż użytkownik

Bardziej szczegółowo

Kwerenda. parametryczna, z polem wyliczeniowym, krzyżowa

Kwerenda. parametryczna, z polem wyliczeniowym, krzyżowa Kwerenda parametryczna, z polem wyliczeniowym, krzyżowa Operatory stosowane w wyrażeniach pól wyliczeniowych Przykład: wyliczanie wartości w kwerendach W tabeli Pracownicy zapisano wartości stawki godzinowej

Bardziej szczegółowo

Instrukcja aktualizacji programu Integra 7

Instrukcja aktualizacji programu Integra 7 Instrukcja aktualizacji programu Integra 7 Aktualizacje programu dostępne są na stronach internetowych Integra Software www.integra.com.pl w Strefie Integra Support dla Klientów posiadających aktywny Abonament

Bardziej szczegółowo

OPIS i SPECYFIKACJA TECHNICZNA

OPIS i SPECYFIKACJA TECHNICZNA OPIS i SPECYFIKACJA TECHNICZNA Dotyczy Konkursu ofert numer 1/POIG 8.2/2013 WdroŜenie internetowego systemu klasy B2B do automatyzacji procesów biznesowych oraz koordynacji działań z partnerami w firmie

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

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

Narzędzie informatyczne do modelowania, zarządzania i dokumentowania procesów systemu zarządzania jakością Narzędzie informatyczne do modelowania, zarządzania i dokumentowania procesów systemu zarządzania jakością ProMoS Każde działanie można ująć w formie procesu i odpowiednio doskonalić. (W.E. Deming) ProMoS

Bardziej szczegółowo

bo od menedżera wymaga się perfekcji ANKIETY ONLINE W SYSTEMIE BUSINESS NAVIGATOR

bo od menedżera wymaga się perfekcji ANKIETY ONLINE W SYSTEMIE BUSINESS NAVIGATOR bo od menedżera wymaga się perfekcji ANKIETY ONLINE W SYSTEMIE BUSINESS NAVIGATOR SPIS TREŚCI 1. INFORMACJE O FIRMIE... 3 2. CHARAKTERYSTYKA PLATFORMY BUSINESS NAVIGATOR... 4 3. WYKORZYSTANIE USŁUGI ANKIETY

Bardziej szczegółowo

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny

Bardziej szczegółowo

Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody.

Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody. Załącznik nr 1 Specyfikacja przedmiotu zamówienia Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody. Słowniczek pojęć Badanie

Bardziej szczegółowo

dziennik Instrukcja obsługi

dziennik Instrukcja obsługi Ham Radio Deluxe dziennik Instrukcja obsługi Wg. Simon Brown, HB9DRV Tłumaczenie SP4JEU grudzień 22, 2008 Zawartość 3 Wprowadzenie 5 Po co... 5 Główne cechy... 5 baza danych 7 ODBC... 7 Który produkt

Bardziej szczegółowo

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA Przygotował: mgr inż. Radosław Adamus Wprowadzenie Podstawą każdego projektu, którego celem jest budowa oprogramowania są wymagania, czyli warunki,

Bardziej szczegółowo

Prezentacja programu. Parentis Sp. z o.o. Dział Informatyki. Kartoszyno, ul. Przemysłowa 5, 84-110 Krokowa

Prezentacja programu. Parentis Sp. z o.o. Dział Informatyki. Kartoszyno, ul. Przemysłowa 5, 84-110 Krokowa Prezentacja programu Parentis Sp. z o.o. Dział Informatyki Kartoszyno, ul. Przemysłowa 5, 84-110 Krokowa OPIS PROGRAMU I ZASADY UŻYTKOWANIA System CRM współpracuje z programami do obsługi magazynowej,

Bardziej szczegółowo

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Projekt Hurtownia, realizacja rejestracji dostaw produktów Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące

Bardziej szczegółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. info@prointegra.com.pl tel: +48 (032) 730 00 42

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. info@prointegra.com.pl tel: +48 (032) 730 00 42 SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH info@prointegra.com.pl tel: +48 (032) 730 00 42 1. WPROWADZENIE... 3 2. KORZYŚCI BIZNESOWE... 4 3. OPIS FUNKCJONALNY VILM... 4 KLUCZOWE FUNKCJE

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z

Bardziej szczegółowo

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne przedmioty.

Bardziej szczegółowo

Podstawowe zagadnienia z zakresu baz danych

Podstawowe zagadnienia z zakresu baz danych Podstawowe zagadnienia z zakresu baz danych Jednym z najważniejszych współczesnych zastosowań komputerów we wszelkich dziedzinach życia jest gromadzenie, wyszukiwanie i udostępnianie informacji. Specjalizowane

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

Bardziej szczegółowo

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

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio Czym jest jpalio? jpalio to unikalna platforma technologiczna pozwalająca na stworzenie szeregu produktów dostosowanych do indywidualnych preferencji klienta. W naszej ofercie znajduje się m.in. system

Bardziej szczegółowo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Baza danych. Modele danych

Baza danych. Modele danych Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych

Bardziej szczegółowo

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja Produkcja by CTI Proces instalacji, ważne informacje oraz konfiguracja Spis treści 1. Ważne informacje przed instalacją...3 2. Instalacja programu...4 3. Nawiązanie połączenia z serwerem SQL oraz z programem

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

Instrukcja użytkownika Notaris Edytor wersja 3.1

Instrukcja użytkownika Notaris Edytor wersja 3.1 Instrukcja użytkownika Notaris Edytor wersja 3.1 ul. Grójecka 194 /19, 02-390 Warszawa Tel. 022 867-80-00 www.softcream.pl - 1 - Spis Treści Spis Treści... 2 NOTARIS Edytor dodatekdo MS Word... 3 Ogólny

Bardziej szczegółowo

EXSO-CORE - specyfikacja

EXSO-CORE - specyfikacja EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.

Bardziej szczegółowo

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień:

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień: Zasady grupy (GPO) Windows Server 2008 R2 Zasady grupy to potężne narzędzie udostępnione administratorom systemów Windows w celu łatwiejszego zarządzania ustawieniami stacji roboczych. Wyobraźmy sobie

Bardziej szczegółowo

Baza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne

Baza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z możliwości utworzenia struktury bazy danych z

Bardziej szczegółowo

Użytkownik zewnętrzny (UZ) może wykonywać następujące czynności:

Użytkownik zewnętrzny (UZ) może wykonywać następujące czynności: Instrukcja obsługi Aplikacji Zarządzania Uprawnieniami (AZU) dla użytkowników zewnętrznych (UZ) w Zintegrowanym Systemie Zarządzania Tożsamością (ZSZT) Użytkownik zewnętrzny (UZ) może wykonywać następujące

Bardziej szczegółowo

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Instalacja roli kontrolera domeny, Aby zainstalować rolę kontrolera domeny, należy uruchomić Zarządzenie tym serwerem, po czym wybrać przycisk

Bardziej szczegółowo

SUPLEMENT DO DYPLOMU

SUPLEMENT DO DYPLOMU Projekt Jednolity System Obsługi Studentów Podręcznik użytkownika aplikacji SUPLEMENT DO DYPLOMU POLITECHNIKA WROCŁAWSKA wersja 1.02 ComputerLand Wrocław, czerwiec 2005 ComputerLand Podręcznik użytkownika

Bardziej szczegółowo

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) Zastosowanie Rozszerzenie to dedykowane jest sklepom internetowych zbudowanym w oparciu

Bardziej szczegółowo

Współpraca z platformą Emp@tia. dokumentacja techniczna

Współpraca z platformą Emp@tia. dokumentacja techniczna Współpraca z platformą Emp@tia dokumentacja techniczna INFO-R Spółka Jawna - 2013 43-430 Pogórze, ul. Baziowa 29, tel. (33) 479 93 29, (33) 479 93 89 fax (33) 853 04 06 e-mail: admin@ops.strefa.pl Strona1

Bardziej szczegółowo

INFORMACJE POUFNE. Wirtualny Dziekanat. - Student

INFORMACJE POUFNE. Wirtualny Dziekanat. - Student Wirtualny Dziekanat - Student Producent i dystrybutor BAZUS Sp. z o.o. Lublin 2014 Spis treści 1.1 WD - Student...3 1.1.1 Logowanie...3 1.1.2 Funkcja twoje dane...5 1.1.3 Funkcja twoje studia...7 1.1.4

Bardziej szczegółowo

Podręcznik Użytkownika LSI WRPO

Podręcznik Użytkownika LSI WRPO Podręcznik użytkownika Lokalnego Systemu Informatycznego do obsługi Wielkopolskiego Regionalnego Programu Operacyjnego na lata 2007 2013 w zakresie wypełniania wniosków o dofinansowanie Wersja 1 Podręcznik

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

Praca magisterska Jakub Reczycki. Opiekun : dr inż. Jacek Rumiński. Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska

Praca magisterska Jakub Reczycki. Opiekun : dr inż. Jacek Rumiński. Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska System gromadzenia, indeksowania i opisu słownikowego norm i rekomendacji Praca magisterska Jakub Reczycki Opiekun : dr inż. Jacek Rumiński Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska

Bardziej szczegółowo

Instrukcja obsługi certyfikatów w programie pocztowym MS Outlook Express 5.x/6.x

Instrukcja obsługi certyfikatów w programie pocztowym MS Outlook Express 5.x/6.x Spis treści Wstęp... 1 Instalacja certyfikatów w programie pocztowym... 1 Instalacja certyfikatów własnych... 1 Instalacja certyfikatów innych osób... 3 Import certyfikatów innych osób przez odebranie

Bardziej szczegółowo

Skrócona instrukcja korzystania z Platformy Zdalnej Edukacji w Gliwickiej Wyższej Szkole Przedsiębiorczości

Skrócona instrukcja korzystania z Platformy Zdalnej Edukacji w Gliwickiej Wyższej Szkole Przedsiębiorczości Skrócona instrukcja korzystania z Platformy Zdalnej Edukacji w Gliwickiej Wyższej Szkole Przedsiębiorczości Wstęp Platforma Zdalnej Edukacji Gliwickiej Wyższej Szkoły Przedsiębiorczości (dalej nazywana

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową bazy danych za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum,

Bardziej szczegółowo

Praca w sieci równorzędnej

Praca w sieci równorzędnej Praca w sieci równorzędnej 1. Architektura sieci równorzędnej i klient-serwer Serwer - komputer, który udostępnia zasoby lub usługi. Klient komputer lub urządzenie korzystające z udostępnionych przez serwer

Bardziej szczegółowo

BSX PRINTER INSTRUKCJA UŻYTKOWNIKA. Autor: Karol Wierzchołowski 30 marca 2015

BSX PRINTER INSTRUKCJA UŻYTKOWNIKA. Autor: Karol Wierzchołowski 30 marca 2015 ! BSX PRINTER INSTRUKCJA UŻYTKOWNIKA Autor: Karol Wierzchołowski 30 marca 2015 SPIS TREŚCI WSTĘP... 3 INTERFEJS PROGRAMU... 5 KONFIGURACJA PROGRAMU... 6 DRUKOWANIE PARAGONÓW I FAKTUR... 8 REJESTRACJA PROGRAMU...

Bardziej szczegółowo

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

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5 Wdrożenie modułu płatności eservice dla systemu Zen Cart 1.3.9 1.5 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) Zastosowanie Rozszerzenie to przeznaczone jest dla właścicieli sklepów internetowych opartych

Bardziej szczegółowo

Przewodnik instalacji i rozpoczynania pracy. dla DataPage+ 2012

Przewodnik instalacji i rozpoczynania pracy. dla DataPage+ 2012 Przewodnik instalacji i rozpoczynania pracy dla DataPage+ 2012 Pomoc aktualizowano ostatnio: 29 sierpnia 2012 Spis treści Instalowanie wymaganych wstępnie komponentów... 1 Przegląd... 1 Krok 1: Uruchamianie

Bardziej szczegółowo