Spis treści...2. 1. Opis zamierzonego celu projektu...5. 2. Ogólny opis funkcjonalności systemu...8. 3. Technologia wykonania...8



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

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

DOTACJE NA INNOWACJE

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

OPIS i SPECYFIKACJA TECHNICZNA

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

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Win Admin Replikator Instrukcja Obsługi

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

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

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

DOTACJE NA INNOWACJE

HP Service Anywhere Uproszczenie zarządzania usługami IT

Wykaz zmian w programie SysLoger

Firma Informatyczna ASDER. Prezentacja. Serwer danych lokalnych. Przemysław Kroczak ASDER

System Kancelaris. Zdalny dostęp do danych

Kielce, dnia roku. HB Technology Hubert Szczukiewicz. ul. Kujawska 26 / Kielce

Zbuduj prywatną chmurę backupu w firmie. Xopero Backup. Centralnie zarządzane rozwiązanie do backupu serwerów i stacji roboczych

Usługi sieciowe systemu Linux

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

Win Admin Replikator Instrukcja Obsługi

Wykaz zmian w programie WinAdmin Replikator

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

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

JTW SP. Z OO. Zapytanie ofertowe. Zewnętrzny audyt jakościowy projektu technicznego dedykowanego systemu B2B Platforma Integracji Serwisowej

REFERAT O PRACY DYPLOMOWEJ

VALIO Sp. z o.o. Załącznik nr 1 do Zapytania ofertowego dotyczącego zakupu licencji części systemu B2B oraz wykonania Warstwy Prezentacyjnej.

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

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia r.

EXSO-CORE - specyfikacja

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

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

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

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA

Architektura systemu e-schola

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015

Instrukcja konfiguracji funkcji skanowania

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Specyfikacja usług. 1. Zakup usług informatycznych dla realizacji dostępu do systemu dla obsługi relacji B2B.

Win Admin Replikator Instrukcja Obsługi

Architektura bezpiecznych aplikacji internetowych na platformie Java Enterprise Edition. Jakub Grabowski Warszawa,

Poznań, dzień Zapytanie ofertowe

Audyt oprogramowania systemu B2B oprogramowanie umożliwiające zarządzanie informacjami o produktach:

SPECYFIKACJA WYMAGAŃ. w zakresie migracji i uruchomienia nowego serwisu WWW na potrzeby PKP S.A.

OpenLaszlo. OpenLaszlo

Pomoc dla r.

ZAMAWIAJĄCY. CONCEPTO Sp. z o.o.

Instrukcja instalacji

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

Monitorowanie i zarządzanie urządzeniami sieciowymi przy pomocy narzędzi Net-SNMP

Oracle Application Express -

Kancelaria Prawna.WEB - POMOC

Pełna specyfikacja pakietów Mail Cloud

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

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

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

elektroniczna Platforma Usług Administracji Publicznej

11. Autoryzacja użytkowników

Zapytanie ofertowe nr 1/POIG 8.2/2013

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework

Sieciowa instalacja Sekafi 3 SQL

Opracowanie protokołu komunikacyjnego na potrzeby wymiany informacji w organizacji

Opis Przedmiotu Zamówienia

Kielce, dn MICRON Sp. z o.o. Ul. Silniczna 15/ Kielce ZAPYTANIE OFERTOWE NR 1/2014/PARP/POIG

System generacji raportów

Referat pracy dyplomowej

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

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

Dokument Detaliczny Projektu

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

Jednolite zarządzanie użytkownikami systemów Windows i Linux

DOTACJE NA INNOWACJE

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

Tomasz Greszata - Koszalin

ISTOTNE POSTANOWIENIA UMOWY

Django : praktyczne tworzenie aplikacji sieciowych / Antonio Mele. Gliwice, cop Spis treści

egroupware czy phpgroupware jest też mniej stabilny.

ZAPYTANIE OFERTOWE NA ZAKUP OPROGRAMOWANIA SYSTEMU B2B

Red Hat Network Satellite Server

Zdalne monitorowanie i zarządzanie urządzeniami sieciowymi

Szczegółowy opis przedmiotu zamówienia

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ

DOTACJE NA INNOWACJE

Pełna specyfikacja pakietów Mail Cloud

Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Instytut Fizyki

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Program szkolenia KURS SPD i PD Administrator szkolnej pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych)

Ekspert MS SQL Server Oferta nr 00/08

SIŁA PROSTOTY. Business Suite

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Usługa: Testowanie wydajności oprogramowania

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

Projektowanie zabezpieczeń Centrów Danych oraz innych systemów informatycznych o podwyższonych wymaganiach bezpieczeństwa

Serwery. Autorzy: Karol Czosnowski Mateusz Kaźmierczak

7. zainstalowane oprogramowanie zarządzane stacje robocze

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

finiownia loginów. W zależności od ustawionej opcji użytkownik login:

Instrukcja instalacji i obsługi programu Szpieg 3

Transkrypt:

Projekt techniczny Wdrożenie zintegrowanego systemu B2B wspierającego współdziałanie przedsiębiorców w zakresie organizacji szkoleń oraz współpracy z trenerami zewnętrznymi Wykonawca analizy: Marta Ćwik MS Adres: ul. Celarowska 30/72, 31-414 Kraków Nr wpisu do EDG: 5895/2010 Telefon: 668 262 500 E-mail: ms.uslugi@gmail.com Dokument przedstawia strukturę oraz funkcjonalności realizowanego systemu. Opisane zostały również wybrane technologie bazodanowe, serwerowe, technologie implementacji oraz technologie pomocnicze. Dokument zrealizowano w trakcie 30h pracy eksperta. 2012

Spis treści Spis treści...2 1. Opis zamierzonego celu projektu...5 2. Ogólny opis funkcjonalności systemu...8 3. Technologia wykonania...8 3.1. Technologie implementacji...8 3.2. Technologia bazodanowa... 11 4. Struktura systemu.... 12 4.1. Podstawowe moduły wchodzące w skład systemu... 12 4.2. Funkcjonalności modułów... 12 5. Architektura systemu... 16 5.1. Serwery... 16 5.2. Struktura katalogów... 19 5.3. Diagramy klas i modułów... 26 5.4. Diagram ORM bazy danych najważniejszych modułów... 27 5.5. System zabezpieczeń... 45 2

W ramach przeprowadzonych prac przygotowano projekt techniczny dla planowanego do wdrożenia Systemu B2B Lp. Opis Czas pracy 1. Spotkanie inicjujące prace analityczne z udziałem Właściciela OMNI oraz analityka, planowanie zadań realizowanych w ramach przygotowania projektu implementacyjno - technologicznego, określenie priorytetów, przekazanie pełnomocnictw do zbierania informacji, zapoznanie z osobami kluczowymi w strukturze firmy dostarczającymi dane do projektu, określenie składu Grupy Roboczej składającej się z Właściciela OMNI, dwóch osób odpowiadających w firmie Wnioskodawcy za zbieranie informacji z obszarów poddanych badaniu oraz analityka z firmy prowadzącej prace. 2 godz. 2. Sformułowanie założeń wstępnych, wskazanie procesów zachodzących pomiędzy OMNI a Partnerami (wywiady z pracownikami) mających znaczenie dla projektu technicznego sformułowanie celów wdrożenia oraz oczekiwanych korzyści po dokonaniu wdrożenia, weryfikacja rezultatów badania z założeniami określonymi w Biznesplanie POIG 8.2 2 godz. 3. Przeprowadzenie analizy technologii implementacji i technologii bazodanowej planowanych do zastosowania w Systemie B2B i odpowiadającym wymianie informacji pomiędzy wnioskodawcą a partnerami, określenie priorytetów dotyczących technologii implementacji i technologii bazodanowej, prezentacja ich na spotkaniu Grupy Roboczej, wprowadzenie korekt i akceptacja 4 godz. 3

4. Przeprowadzenie analizy struktury planowanego do wdrożenia Systemu B2B, określenie modułów wchodzących w skład serwisu oraz funkcjonalności planowanych do zastosowania w Systemie B2B i odpowiadającym wymianie informacji pomiędzy wnioskodawcą a partnerami, Badanie zgodności z założeniami Biznesplanu POIG 8,2m określenie priorytetów dotyczących komponentów, prezentacja ich na spotkaniu Grupy Roboczej, wprowadzenie korekt i akceptacja 8 godz. 5. Przygotowanie założeń dotyczących architektury planowanego do wdrożenia Systemu B2B, w tym zastosowanych serwerów, struktury katalogów, zastosowanych klas PHP, planowanego systemu zabezpieczeń, dyskusja na temat proponowanych rozwiązań na spotkaniu Grupy Roboczej, wprowadzenie zaproponowanych korekt. 8 godz. 6. Prezentacja zbiorczych rezultatów prac Właścicielowi OMNI 2 godz. 7. Wprowadzanie poprawek w założeniach wdrożeniowych wynikających z uwag Zarządu, ostateczna akceptacja analizy. 1 godz. 8. Zebranie danych z przeprowadzonych prac i przygotowanie raportu z wykonanych działań 3 godz. Łącznie prace projektowe 30 godz. 4

1. Opis zamierzonego celu projektu Celem projektu jest stworzenie systemu B2B - Biznes to Biznes, który umożliwi zdalną obsługę wszystkich procesów biznesowych zachodzących pomiędzy firmą OMNI oraz jej partnerami (Semper Omni i Prolog) w zakresie organizacji szkoleń. Wdrożenie systemu spowoduje: usprawnienie modelu organizacyjnego świadczenia usług, przeniesienie realizacji procesów biznesowych do systemu wspierającego, wprowadzenie automatycznych reguł na każdym etapie realizacji procesów, zmianę sposobu przechowywania dokumentów. Planowane korzyści z wdrożenia systemu to między innymi: uproszczenie sposobu kontroli realizowanego procesu, ograniczenie pracochłonności, łatwiejsze i szybsze eksplorowanie danych, niższe prawdopodobieństwo wystąpienia błędu w często powtarzających się procesach wzrost efektywności pracy, spadek kosztów procesu, obniżenie zużycia przestrzeni dyskowej, wzrost konkurencyjności. 5

W projekcie technicznym zintegrowanego systemu B2B wspierającego współdziałanie przedsiębiorców w zakresie organizacji szkoleń oraz współpracy z trenerami zewnętrznymi przygotowanym dla firmy OMNI wzięliśmy pod uwagę następujące założenia dotyczące przewidywanych wyników wdrożenia: Zakres świadczonych usług pozostanie nie zmieniony w stosunku do dotychczasowej oferty Wnioskodawcy i Partnerów, zostanie natomiast znacznie usprawniony model organizacyjny świadczenia usług, Wdrożenie Systemu B2B, dzięki szybszej i bezbłędnej realizacji zleceń, umożliwi obsługę większej ilości projektów szkoleniowych w tym samym czasie. Dojdzie do obniżenia kosztów obsługi zleceń, dzięki wprowadzeniu modelu zautomatyzowanej współpracy, Wdrożenie umożliwi elektroniczną, zaufaną, uwierzytelnioną wymianę dokumentów biznesowych, składania wzajemnych deklaracji między partnerami, za pomocą zaimplementowanego podpisu elektronicznego Ograniczenie udziału czynnika ludzkiego w procesie organizacji szkolenia, Wdrożenie umożliwi Wnioskodawcy i Partnerom zdalny monitoring organizacji projektów szkoleniowych, co wpłynie na usprawnienie przepływu dokumentacji i zwiększenie wydajności kooperacji firm. Efektem tego będzie pozyskanie nowych partnerów biznesowych, których zainteresuje łatwość i prostota prowadzenia interesów z Wnioskodawcą Dzięki ulepszeniu procesu przeprowadzania szkoleń poprawie ulegnie poziom jakości klientów 6

Dzięki uwzględnieniu powyższych warunków wstępnych byliśmy w stanie zaproponować wykonanie projektu technicznego z następującymi założeniami: Zalecana do wdrożenia realizowanego w firmie OMNI technologia wykonania Zalecane do wdrożenia realizowanego w firmie OMNI technologie implementacji Zalecana do wdrożenia realizowanego w firmie OMNI technologia bazodanowa Zalecana do wdrożenia realizowanego w firmie OMNI struktura systemu Zalecane do wdrożenia realizowanego w firmie OMNI podstawowe moduły wchodzące w skład serwisu Zalecane do wdrożenia realizowanego w firmie OMNI funkcjonalności modułów Zalecana do wdrożenia realizowanego w firmie OMNI architektura systemu Zalecane do wdrożenia realizowanego w firmie OMNI serwery Zalecana do wdrożenia realizowanego w firmie OMNI struktura katalogów Zalecane do wdrożenia realizowanego w firmie OMNI klasy PHP Zalecany do wdrożenia realizowanego w firmie OMNI system zabezpieczeń Zalecany do wdrożenia realizowanego w firmie OMNI podział prac 7

2. Ogólny opis funkcjonalności systemu Zadania systemu: przesyłanie i pobieranie danych transakcyjnych (np. wynajem sali szkoleniowej, sprzętu), wymiana informacji pomiędzy pracownikami firmy wnioskodawcy oraz partnera, obsługa podpisu elektronicznego - autoryzowanie zamówień., faktur, obustronnych umów, itp. zarządzanie finansami, płatnościami, kontami bankowymi, zarządzanie ofertami, zamówieniami, zarządzanie fakturami, obsługa klientów, dostawców, obsługa i zarządzanie kontaktami, koordynacja pracy pracowników, zarządzanie użytkownikami i rolami w systemie, aktywny mailing, zarządzanie planem szkoleń, raportowanie i statystyki. 3. Technologia wykonania 3.1. Technologie implementacji W ramach planowanego w firmie OMNI wdrożenia przewiduje się wykorzystanie następujących technologii implementacji planowanej aplikacji: 8

PHP Jako jednego z najpopularniejszych języków skryptowych działających po stronie serwera, wykorzystywanego do tworzenia dynamicznych stron internetowych pozwalających na interakcję z użytkownikiem. Główne zalety języka PHP: cena (produkt open source owy) szybkość, stabilność, bezpieczeństwo, prostota łatwość w obsłudze oraz spora wbudowana funkcjonalność. Dzięki pracy po stronie serwera, PHP idealnie nadaje się do stworzenia złożonej aplikacji zarządzającej dużą ilością danych. GWT Google Web Toolkit jako szkieletu do tworzenia aplikacji AJAX w oparciu o język Java, pozwalającego on na tworzenie kodu bez ręcznego kodowania i łączenia elementów języka Java oraz JavaScript. Framework w standardzie zapewnia poprawne wyświetlanie komponentów w przeglądarkach: Firefox, Opera, IE, Safari, Google Chrome. Zalety GWT: Wsparcie dla JSON, XML, a także możliwość łatwego wywoływania procedur po stronie serwera (serializowanie i deserializowanie obiektów, zachowanie jak przy RMI); Wsparcie dla JavaScript Native Interface przez co możliwe jest samodzielne dodawanie kodu JavaScript do tworzonej aplikacji; Wsparcie dla przycisku wstecz dla przeglądarek, przez modyfikację historii przeglądanych stron; współpraca z JUnit, JProfiler; Praca w 2 trybach hosted mode (jw z eclipse, po wykonaniu ant hosted, itp bez całkowitej zamiany kodu na javascript) i web mode (zamiana kodu na javascript); 9

Możliwość rozbudowania o własne moduły lub inne open source owe pluginy (np. wspierające drag and drop w aplikacji); Szerokie wsparcie dla internacjonalizacji. Adobe Flex Jako zestawu technologii stworzonych przez Adobe Systems służących do tworzenia oprogramowania typu Rich Internet Application bazującego na Adobe Flash. Flex wykorzystuje: MXML (bazujący na XML-u język opisujący interfejs użytkownika i jego zachowanie) oraz ActionScript (język programowania bazujący na ECMAScript służący do tworzenia logiki i interakcji w aplikacji). Komunikacja i wymiana danych odbywa się za pomocą HTTP GET lub POST, SOAP usługi sieciowe czy AMF RTMP. Zalety technologii Flex: Skalowalność. Flex pozwala na pisanie aplikacji w pełni modułowych i wykorzystujących potencjał OOP. Korzystając z frameworków oraz wzorców projektowych pisanie nawet dużych aplikacji jest proste. Cena. Adobe udostępniając darmowe SDK wprowadziło na rynek narzędzie programistyczne konkurujące z innymi technologiami internetowymi takimi jak PHP, Ajax czy Microsoft Silverlight. Istnieje mnóstwo darmowych komponentów i bibliotek, które są dostępne w internecie i gotowe do użycia. Wykorzystując je możemy jeszcze szybciej stworzyć efektowną aplikację, w krótkim czasie. Ogólnodostępność. Ponad 97% użytkowników internetu ma zainstalowaną wtyczkę Adobe Flash Player co daje ogromną ilość odbiorców aplikacji. 10

Brak różnic pomiędzy przeglądarkami. Korzystając z Flash Playera mamy zapewniony taki sam wygląd aplikacji pod każdą przeglądarką i systemem operacyjnym. 3.2. Technologia bazodanowa W ramach planowanego w firmie OMNI wdrożenia przewiduje się wykorzystanie następującej technologii bazodanowej: MySQL Jako najpopularniejszego silnika relacyjnych baz danych i zarazem jednego z szybszych, udostępnianych na licencji GPL. Zawiera wsparcie dla replikacji bazy danych (w trybie master-slave) i wielojęzyczności każda tabela, a nawet każde pole może mieć własne ustawienie kodowania znaków. W najnowszej wersji rozwojowej 5.6 wprowadzono kilka istotnych zmian poprawiających skalowalność i niezawodność środowiska, oraz wprowadzających nowatorskie rozwiązania, np.: - semi-synchroniczna replikacja - replikacja wielowątkowa - rozbudowane możliwości monitorowania przez tzw. PERFORMANCE_SCHEMA - interfejs API typu NoSQL z wykorzystaniem memcached Serwer MySQL dostępny jest dla wszystkich popularnych platform systemowych i różnorakich architektur procesorów. Jest dostępny także w wersji źródłowej, co umożliwia skompilowanie go dla dowolnej innej platformy. 11

4. Struktura systemu. 4.1. Podstawowe moduły wchodzące w skład systemu Centralny moduł zarządzania, Moduł zarządzania czasem pracy, Moduł zarządzania operandami, Moduł workflow, Moduł repozytorium plików, Moduł uploadera Moduł obsługi użytkowników Moduł obsługi podpisu elektronicznego, Moduły statystyk, Moduł notyfikacji, Moduł raportów Moduł trackingu stanów, Moduł widoków dedykowanych, 4.2. Funkcjonalności modułów Tworzona platforma B2B będzie wspierać procesy biznesowe realizowane w zakresie organizacji szkoleń przez firmę Omni i jej partnerów. Przy realizacji wdrożenia systemu należy dostosować jego funkcjonalności do swoistych potrzeb wynikających ze specyfiki projektu, dlatego też zakładana jest modułowa budowa oprogramowania. Oznacza to, że większość narzędzi systemu zarządzana będzie przez osobne, specjalnie zaprojektowane moduły. Taka budowa umożliwia 12

elastyczne dopasowanie systemu oraz dodawanie nowych modułów i funkcjonalności bez ryzyka naruszenia stabilności systemu. Przewiduje się implementację następujących modułów aplikacji: Centralny moduł zarządzania, moduł zarządzania czasem pracy i moduł zarządzania operandami. To podstawowe moduły systemu, które łączyć w sobie będą wszystkie jego części składowe. Umożliwią zarządzanie przepływami i raportami, definiowanie ról użytkowników, grup. Determinować będą dostęp do repozytorium plików i uploadera. Dostępne opcje konfiguracyjne zapewnią możliwość personalizacji funkcjonalności. Nowe projekty szkoleniowe oraz umowy będą definiowane w centralnym module zarządzania. Moduł workflow To moduł, który pozwoli na przepływ dokumentów pomiędzy pracownikami wykonującymi zalgorytmizowany zespół czynności. Umożliwi on w całości automatyzację procesów biznesowych, podczas której dokumenty, informacje lub zadania będą przekazywane od jednego uczestnika do następnego. Narzędzie to w pełni zastąpi stosowany jak dotąd sposób wymiany informacji jakim jest poczta elektroniczna. Tym sposobem ułatwione zostanie śledzenie wymiany danych oraz wzrośnie jej bezpieczeństwo. Wszystkie wymieniane dane zostaną zapisane na serwerze, będą archiwizowane i przechowywane m.in. do celów audytowych. Moduł uploadera i repozytorium plików Uploader i repozytorium plików to narzędzia, które umożliwią koordynację plików wymienianych pomiędzy firmą Omni i jej partnerami na płaszczyźnie organizacji szkoleń. Przy realizacji modułu zakłada się wykorzystanie technologii PHP, GWT oraz Flex. Zastosowanie php przyczyni się do szybkości działania modułu a tym samym skróceniu ulegnie czas trwania procesu. Moduł obsługi użytkowników i podpisu elektronicznego 13

Na moduł obsługi użytkowników składać się będą funkcje takie jak: zarządzanie rolami i obsługa uwierzytelniania. Moduł będzie zawierać narzędzia do obsługi danych teleadresowych użytkowników. System wyznaczy status uprawnień przypisanych poszczególnym użytkownikom. Możliwe będzie nadawanie i zmiana ról oraz grupowanie osób zależnych. Wykonywanie zmian odbywać się będzie z poziomu administratora. W procesie uwierzytelniania w systemie wykorzystany zostanie protokół SSL, który umożliwi w pełni bezpieczne połączenia sieciowe poprzez wykorzystanie algorytmów szyfrujących. Protokół ten zorientowany jest głównie na autentyfikację serwera, ale przewiduje również możliwość autoryzacji klienta. W module obsługi podpisu elektronicznego i EDI wyróżnić będzie można następujące składowe: - Repozytorium kluczy publicznych. W ramach tej funkcjonalności przewiduje się globalny key-store, czyli repozytorium certyfikatów bezpieczeństwa, certyfikatów autoryzacji oraz certyfikatów dla kluczy publicznych. - EDI Transfer danych odbywać się będzie przy wykorzystaniu standardowych zaakceptowanych formatów komunikatów. W ramach wymiany biznesowych informacji transakcyjnych zdefiniowana zostanie sekwencja komunikatów między stronami, przy czym każda z nich może być jej nadawcą lub odbiorcą. - Składanie i weryfikacja podpisu Użytkownicy systemu będą wymieniać między sobą dokumenty opatrzone deklaracją tożsamości autora w postaci podpisu elektronicznego. Weryfikacja 14

dokumentów będzie się odbywać dzięki zastosowaniu komponentów podpisującego i weryfikującego podpis. Weryfikacja podpisu odbywa się przy pomocy certyfikat kwalifikowanego, który został wystawiony jego właścicielowi z zastosowaniem odpowiednich procedur weryfikacji tożsamości. Klucz prywatny (służący do składania podpisów) przechowuje się w sposób bezpieczny (np. na karcie elektronicznej). Zgodnie z polskim prawem wyłącznie podpis kwalifikowany ma automatycznie takie samo znaczenie jak podpis odręczny. Moduły raportów i notyfikacji Główne zadania modułów: - Obsługa generowania/eksplorowania i archiwizacji, - Obsługa zarządzania treściami notyfikacji. Moduły raportów i notyfikacji służyć mają zwiększaniu wiedzy na temat organizowanego szkolenia wszystkich osób zaangażowanych w projekt. Proces koordynacyjny wspomogą automatycznie generowane powiadomienia o postępach organizacyjnych oraz sporządzane periodycznie raporty. Ich Tworzenie możliwe będzie dzięki multigeneratorowi raportów ze wsparciem notyfikacji. Przewiduje się również wykorzystanie autorespondera i event triggeringu notyfikacji. Moduły statystyk, trackingu stanów, widoków dedykowanych Składowe: - Statystyki aktywności użytkowników, - Statystyki projektów, - Statystyki serwerowe, - Template remind editor, - Realizacja transparentnego wątku notyfikacyjnego, - Integracja z modułami komponentowymi, 15

- Personalizacja ustawień. Wymienione moduły nie są niezbędne do tego, aby system działał poprawnie jednakże dostarczają dodatkowych możliwości takich jak: funkcjonalna i estetyczna personalizacja systemu, generowanie statystyk dotyczących działań w systemie, śledzenie zdarzeń krytycznych w systemie. 5. Architektura systemu 5.1. Serwery System operacyjny: Linux Debian 6.0.5. Na serwerze zostanie zainstalowany system Debian. Wyboru tego systemu dokonano ponieważ jest to system wysokiej jakości, łatwy do aktualizacji, stabilny i dokładnie przetestowany. Posiada prawdopodobnie największą bazę pakietów oraz bardzo dobry menedżer plików. Serwer: Apache 2.0 Planowane jest wykorzystanie najbardziej rozpowszechnionego serwera WWW - Apache. Jest to serwer całkowicie darmowy. Posiada modularną budowę przez co jest bardziej elastyczny ponieważ zapewnia możliwość wyboru tych cech, które chcemy wykorzystywać. Apache w wersji 2.0 został przepisany od nowa i obsługuje wątki, dzięki którym jeden proces może wykonywać w danej chwili większą ilość zadań. Daje to możliwość zwiększenia szybkości działania przy jednoczesnym zmniejszeniu ilości wymaganych zasobów. System zarządzania relacyjnymi bazami danych: MariaDB 5.1.43 MariaDB dostępna jest na warunkach GNU GPL. Założeniem MariaDB jest pełna kompatybilność z MySQL. Zarówno pod względem ekwiwalentności binarnej bibliotek, jak i zgodności API, komend i możliwości płynnego przejścia pomiędzy tymi systemami. Głównymi cechami użytkowymi MariaDB jest dodanie silnika XtraDB, jako zamiennika dla InnoDB oraz dodanie nowego silnika bazodanowego Aria. Dodatkowym atutem MariaDB jest równoległy do MySQL 16

cykl rozwojowy z jednoczesną dostępnością pakietów dla najpopularniejszych dystrybucji. Zalety: - Pominięcie zapisu na dysku na rzecz pamięci cache przy wykonywaniu złożonych zapytań, co znacznie przyspiesza ich wykonywanie. - Rozszerzona wersja puli wątków pozwala na utworzenie ich ograniczonej liczby dla wykonywanych zapytań, co pozwala na utrzymanie wielu połączeń i w konkretnych przypadkach, na wzrost wydajności. - Zredukowanie liczby ostrzeżeń, przy jednoczesnym udoskonaleniu lub usunięciu poszczególnych kodowań znaków co powoduje zwiększenie szybkości działania. Storage Engine: MyISAM/InnoDb MySQL oferuje różne typy mechanizmów bazodanowych, z których każdy typ przeznaczony jest do innego zastosowania: InnoDB Powinno być wykorzystywane wszędzie tam, gdzie integralność danych jest priorytetem. Jest lepszy tam gdzie występuje duży nacisk na zapisywanie danych do bazy danych ze względu na blokowanie tylko wierszy a nie całej tabeli. MyISAM Baza danych w tym systemie jest prostsza do zaprojektowania i stworzenia. Jest szybsza ze względu na swoją prostotę i nie zużywa tak wielu zasobów systemów tak jak InnoDB. Posiada indeksowanie pełnotekstowe. Jest szczególnie efektywna gdy istnieje potrzeba intensywnego odczytywania danych z bazy danych. PHP 5.0 ze wsparciem dla SSL + certyfikat 128 bit wildcard Usługa serwera FTP: ProFTPd 17

Darmowy serwer ftp przeznaczony dla systemu Linux, storage dla klientów i współpracowników. Serwer poczty elektronicznej: Postfix Postfix to przeznaczony na systemy uniksopodobne serwer poczty elektronicznej (MTA), odpowiedzialny za przekazywanie i dostarczanie poczty elektronicznej. Postfix obsługuje: - protokoły komunkacyjne SMTP, LMTP, IPv6, TLS, SASL; - skrzynki pocztowe w formacie Maildir oraz mbox, a także wirtualne domeny; - szereg mechanizmów używanych do wykrywania i usuwania spamu (wtyczki do greylistingu i SPF, protokół Sendmail Milter, filtrowanie na podstawie zawartości przesyłek); - różne bazy danych przechowujące informacje systemu pocztowego (aliasy, nazwy kont, konta wirtualne): Berkeley DB, CDB, DBM, LDAP, MySQL i PostgreSQL. Serwer plików oraz drukarek współpracujący z platformą Windows: Samba Samba pozwala na tworzenie heterogenicznego (mieszanego) środowiska, w którym mogą działać obok siebie komputery z systemem operacyjnym Unix i Linux oraz Windows i wzajemnie korzystać ze swoich zasobów plików i drukarek. Serwer Samby może na przykład systemom Windows udostępniać drukarkę linuksową lub systemom Unix dawać dostęp do plików środowiska Windows NT. Przeznaczony dla platformy Linux/Unix i rozpowszechniany na licencji GNU. Zestaw narzędzi sieciowych: OpenSSH server OpenSSH to Zestaw narzędzi sieciowych używanych do pracy ze zdalnymi maszynami w sposób bezpieczny. Można je traktować jako zastępstwo dla rlogin, rsh, rcp i telnet. Jako dodatkową zaletę wymienić należy fakt, że potrafią one 18

również tunelować inne połączenia TCP/IP przez SSH. Połączenia OpenSSH są szyfrowane, co powinno zabezpieczyć transmitowane dane przed podsłuchaniem, przejęciem sesji i innymi atakami na poziomie sieci. System kontroli wersji: SVN serwer SVN jest wolnym i otwartym oprogramowaniem na licencji Apache. Subversion zapisuje zawartość pliku oraz informacje czy dany plik istnieje, ale także położenie pliku w katalogach, jego kopie, zmiany nazw. Pozwala również zapamiętywać właściwości danego pliku lub katalogu np. flagi wykonywalności itp. Uproszczony model konfiguracji serwera aplikacyjnego uwzględniający serwer PHP Apache, serwer bazy danych oraz storage na dokumenty użytkowników. 5.2. Struktura katalogów Poniżej zaprezentowana została struktura katalogów aplikacji: htdocs accountancy adherents admin cartes stats admin menus system tools asterisk bookmarks admin boutique 19

admin client commande critiques notification produits promotion cashdesk admin img include javascript sql tpl categories comm action rapport mailing propal stats tpl prospect commande stats tpl compta bank admin 20

charges deplacement stats dons facture stats tpl journal payment cheque param comptes payment_sc prelevement resultat sociales stats tva ventilation fournisseur contact canvas default tpl contrat tpl core 21

tpl cron ecm expedition stats exports externalsite admin fichinter tpl fourn commande tpl facture tpl payment product ftp admin imports includes boxes login menus smartphone standard modules action barcode admin cheque pdf commande contract 22

dons expedition pdf export facture doc fichinter import livraison pdf mailings member cards labels project pdf propale rapport security generate societe doc supplier_invoice pdf supplier_order pdf triggers install lib databases livraison mantis admin paybox admin lib paypal admin 23

lib product admin canvas default tpl service tpl composition stats stock project activity tasks public agenda demo donations members paybox paypal societe canvas default tpl individual tpl checkvat notify support theme auguria fckeditor tpl bureau2crea 24

fckeditor tpl cameleo fckeditor tpl eldy fckeditor tpl freelug fckeditor tpl phones smartphone theme tpl yellow fckeditor tpl user group webservices - admin scripts banks company emailings invoices members user withdrawals default 25

5.3. Diagramy klas i modułów 26

5.4. Diagram ORM bazy danych najważniejszych modułów Projektowana baza danych może zawierać następujące encje w odniesieniu do modułu szkoleń: W celu wyznaczenia pojedynczych tabel i powiązań pomiędzy nimi należy przeprowadzić normalizację, w następujących krokach: zebranie zbioru danych, przekształcenie nieznormalizowanego zbioru danych w tabele, wykorzystanie jednego z algorytmów normalizacji. 27

Projektowana baza danych może zawierać następujące encje w odniesieniu do pozostałych modułów organizujących prace: UŻYTKOWNICY Identyfikator_Użytkownika, Nazwa_Użytkownika, Hasło, Status, Imię, Nazwisko, Drugie_Imię, Inicjały, Tytuł, Płeć, Data_Urodzenia, Adres_E-mail, Firma, Dział, Stanowisko, Telefon_Domowy, Telefon_Służbowy, Fax, Telefon_Komórkowy, Miasto, Kraj, Ulica, Numer_Domu, Kod_Pocztowy, Strona_WWW, Adres_Praca, Kod_Pocztowy_Praca, Województwo_Praca, Miasto_Praca, Fax_Praca, Format_Daty, Separator_Daty, Separator_Tysięcy, Separator_Dziesiętny, Waluta, Ostatnie_Logowanie, Logowania, Czas_Rejestracji, Ilość_Wierszy_W_Liście, Strefa_Czasowa, Moduł_Startowy, Język, Szablon, Pierwszy_Dzień_Tygodnia, Numer_Konta_Bankowego, Dźwięki. 28

POWIADOMIENIA Identyfikator, Identyfikator_Użytkownika, Czas_Zakończenia, Czas_Utworzenia, Czas_Edycji, Tytuł, Zawartość. NOTATKI Identyfikator_Użytkownika, Tekst. OBIEKTY Identyfikator, Identyfikator_Użytkownika, Opis. WIDOCZNE KALENDARZE Identyfikator_Użytkownika, Identyfikator_Kalendarza. WIDOCZNE LISTY ZADAŃ Identyfikator_Użytkownika, Identyfikator_Listy_Zadań. ŹRÓDŁA DANYCH Identyfikator, Identyfikator_Użytkownika, Tytuł, Adres_URL, Podsumowanie. Po przeprowadzeniu normalizacji otrzymano następujące tabele: 29

FIRMY Identyfikator_Firmy, Identyfikator_Uzytkownika, Identyfikator_Książki_Adresowej, Nazwa_Firmy, Adres, Numer_Domu, Kod_Pocztowy, Miasto, Kraj, Adres_Pocztowy, Telefon, Fax, Adres_E-mail, Strona_Domowa, Komentarz, Numer_Konta _Bankowego KONTAKTY Identyfikator_Kontaktu, Identyfikator_Użytkownika, Identyfikator_Książki_Adresowej, Imię, Nazwisko, Telefon, Inicjały, Tytuł, Płeć, Data_Urodzenia, Stanowisko, Telefon_Domowy, Adres_E-Mail, Adres_E-Mail2, Adres_E-Mail3, Telefon_Służbowy, Fax, Telefon_Komórkowy, Kraj, Kod_Pocztowy, 30

Identyfikator_Firmy, Dział, Numer_Domu. Miasto, Województwo, Adres, Po przeprowadzeniu normalizacji otrzymano następujące tabele: 31

WYDARZENIA Identyfikator_Wydarzenia, Identyfikator_Kalendarza, Identyfikator_Użytkownika, Czas_Rozpoczęcia, Czas_Zakończenia, Cały_dzień, Nazwa, Opis, Lokalizacja, Przypomnienie, Cykliczność, Zajętość, Status, Uczestnicy, Prywatne, Tło, Tylko_Do_Odczytu, Identyfikator_Katalogu. KALENDARZE Identyfikator_Kalendarza, Identyfikator_Grupy, Nazwa, Godzina_Rozpoczęcia, Godzina_Zakończenia, Tło, Przesunięcie, Publiczny, Współdzielenie, Pokazuj_Urodziny. 32

WIDOKI Nazwa, Godzina_Rozpoczęcia, Godzina_Zakończenia, Tło, Przesunięcie, Scalenie, Własny_Kolor. USTAWIENIA Identyfikator_Użytkownika, Ilość_Dni, Czas_Przypomnienia, Przypomnienie, Identyfikator_Domyślnej_Listy_Zadań. LISTY Identyfikator, Nazwa, Identyfikator_Użytkownika, Wpółdzielenie. 33

POWIADOMIENIA Identyfikator, Numer_Powiadomienia, Potwierdzenie_Powiadomienia, Priorytet, Identyfikator_Statusu, Identyfikator_Typu, Identyfikator_Użytkownika, Identyfikator_Agenta, Identyfikator_Kontaktu, Firma, Identyfikator_Firmy, Imię, Drugie_Imię, Nazwisko, E-Mail, Telefon, Temat, Czas_Utworzenia, Czas_Modyfikacji, Nieprzeczytane, Identyfikator_Katalogu. WIADOMOŚCI - POWIADOMIENIA Identyfikator, Identyfikator_Powiadomienia, Identyfikator_Statusu, Posiada_Status, Zawartość, Załączniki, Notatka, Identyfikator_Użytkownika, Czas_Utworzenia, Czas_Modyfikacji, Identyfikator_Stawki, Ilość, Godziny, Nazwa_Stawki. 34

TYPY - POWIADOMIENIA Identyfikator, Nazwa, Identyfikator_Użytkownika, Pokaż_Status, Pokaż_Zewnętrzne, Pokazuj_Od_Innych, Powiadamiaj_Agentów, Powiadamiaj_Administratora. PLIKI Identyfikator, Identyfikator_Folderu, Nazwa, Ścieżka, Identyfikator_Użytkownika, Identyfikator_Statusu, Czas_Utworzenia, Czas_Modyfikacji, Rozmiar, Komentarze, Rozszerzenia, Zablokowany_Identyfikator_Użytkownika. STATUSY - PLIKI Identyfikator, Nazwa. HISTORIA STATUSU - PLIKI Identyfikator, 35

Identyfikator_Użytkownika, Identyfikator_Statusu, Komentarze, Czas_Utworzenia. POWIADOMIENIA - PLIKI Identyfikator_Folderu, Ścieżka, Identyfikator_Użytkownika. NOWE PLIKI Identyfikator_Pliku, Identyfikator_Użytkownika. FOLDERY Identyfikator, Identyfikator_Konta, Nazwa, Zapisany, Identyfikator_Nadrzędnego, Ogranicznik, Układ_Sortowania, Ilość_Wiadomośći, Nieprzeczytane, Automatycznie_Sprawdzaj, Sortowanie, 36

Może_Mieć_Podfoldery. 37

PROJEKTY WORKFLOW Identyfikator, Identyfikator_Użytkownika, Nazwa, Klient, Opis, Identyfikator_Firmy, Czas_Utworzenia, Czas_Modyfikacji, Zarchiwizowane, Identyfikator_Statusu, Identyfikator_Typu, Identyfikator_Nadrzędnego_Projektu, Czas_Rozpoczęcia, Czas_Trwania, Wybór_Stawki, Stawka_Wewnętrzna, Ilość_Jednostek_Budżetowych, Stawka_Zewnętrzna, Identyfikator_Kontaktu, Kontakt, Identyfikator_Folderu_Plików, Identyfikator_Odpowiedzialnego_Użytkownika, Ścieżka, Identyfikator_Szablonu, Identyfikator_Książki_Adresowej, Identyfikator_Listy_Zadań, Identyfikator_Kalendarza, Identyfikator_Notatki, Identyfikator_Zdarzeń, Używaj_Nadrzędnej_Listy, Używaj_Nadrzędnej_Książki_Adresowej, Używaj_Nadrzędnego_Kalendarza 38

Projekt techniczny - Wdrożenie zintegrowanego systemu B2B wspierającego współdziałanie przedsiębiorców w zakresie organizacji szkoleń dla firmy OMNI Relacje tabel podstawowych modułów Łącząc poszczególne tabele z uwzględnieniem relacji między nimi otrzymano diagramencji, w którym zachodzące relacje opisane są w następujący sposób: Moduł trackingu stanów

Projekt techniczny - Wdrożenie zintegrowanego systemu B2B wspierającego współdziałanie przedsiębiorców w zakresie organizacji szkoleń dla firmy OMNI Książka Adresowa 40

Projekt techniczny - Wdrożenie zintegrowanego systemu B2B wspierającego współdziałanie przedsiębiorców w zakresie organizacji szkoleń dla firmy OMNI Moduł Workflow 41