Praca dyplomowa magisterska

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

Download "Praca dyplomowa magisterska"

Transkrypt

1 POLITECHNIKA ŚLĄSKA WYDZIAŁ AUTOMATYKI, ELEKTRONIKI I INFORMATYKI Praca dyplomowa magisterska Portal firmowy wspierający obieg dokumentów zbudowany za pomocą MS SharePoint 2010 Autor: Marcin Róg Kierujący pracą: dr inż. Michał Świderski Gliwice, wrzesień 2012

2

3 Spis treści Wstęp Charakterystyka dziedziny i zadań systemu Proces biznesowy Zarządzanie procesem biznesowym Przepływ pracy Notacja BPMN Obiekty notacji BPMN Przepływy notacji BPMN Obszary przepływów notacji BPMN BPMN kontra UML Charakterystyka wybranych technologii i narzędzi Windows Workflow Foundation Wprowadzenie Idea technologii Windows Workflow Foundation Platforma ASP.NET Wprowadzenie Idea platformy ASP.NET Cechy platformy ASP.NET Technologia WWF łącznie z platformą ASP.NET Microsoft SharePoint Server Wprowadzenie Przegląd funkcji platformy SharePoint Server Architektura sprzętowa Architektura logiczna Składniki interfejsu użytkownika

4 Model danych Analiza zagadnienia programistycznego Cel i zarys przeznaczenia Specyfikacja funkcjonalności Aktorzy systemu Wymagania funkcjonalne systemu Wymagania niefunkcjonalne systemu Diagram przepływu pracy Diagramy aktorów systemu i przypadków użycia Model domeny Specyfikacja zewnętrzna Aplikacja oparta o platformę ASP.NET Aplikacja oparta o platformę SharePoint Server Specyfikacja wewnętrzna Aplikacja oparta o platformę ASP.NET Aplikacja oparta o platformę SharePoint Server Analiza wniosków Testowalność rozwiązania Stosowalność wzorców architektonicznych Stosowalność wzorców projektowych Analiza aspektów istotnych dla realizacji projektu Podsumowanie Bibliografia Spis rysunków Spis tabel

5 Wstęp Od dłuższego czasu panuje przekonanie, że możliwie jak największa część procesów biznesowych powinna być wspierana odpowiednimi narzędziami informatycznymi, co ma niebagatelny wpływ na rosnącą popularność przepływów pracy w modelowaniu procesów biznesowych. Rosnące wymagania, co do wydajności produkcji, przy jednoczesnym zachowaniu wysokich standardów jakości, czy niezawodności, prowadzą do wniosku, że jak największa liczba procesów powinna być automatyzowana. Trend ten powoduje zwiększenie popytu na systemy informatyczne, dostarczające wsparcia dla organizacji pracy grupowej. Zwiększony popyt na tego typu rozwiązania wymusza z kolei na ich dostawcach dostarczenie możliwie jak najszerszego spektrum możliwości, o dużej łatwości dostosowywania do indywidualnych potrzeb (ang. flexibility), aby ich rozwiązania mogły być konkurencyjne na tak dynamicznym rynku. Celem niniejszej pracy jest wypracowanie zestawu wytycznych, pomocnych z punktu komputerowo wspomaganego modelowania procesów biznesowych, a następnie pogrupowanie ich ze względu na obszary ważne z punktu zarządzania projektem informatycznym. Etap ten poprzedzony będzie zrealizowaniem modelowego zadania w oparciu o różne technologie i narzędzia firmy Microsoft. Niniejsza praca została podzielona na sześć rozdziałów. Rozdział pierwszy przybliża najważniejsze pojęcia dziedziny, takie jak: proces biznesowy czy przepływ pracy. W rozdziale tym nacisk został położony głównie na usystematyzowanie podstawowych wiadomości, wynotowanie rysu historycznego oraz osadzeniu pojęć dziedziny w kontekście komputerowo wspomaganego modelowania procesów biznesowych. Przedstawiona została również notacja BPMN, jako graficzny sposób prezentacji procesów biznesowych. 5

6 Rozdział drugi to przegląd zastosowanych technologii i narzędzi, ich opis oraz przegląd najważniejszych funkcji. Rozważania te skupiają się na produktach firmy Microsoft; otwiera je wprowadzenie do platformy WWF i krótkie omówienie architektury, a kończy przedstawienie najbardziej podstawowych komponentów, wraz z wymienieniem ich najważniejszych funkcji. Kolejny podrozdział dotyczy platformy ASP.NET. Opisuje on dostępne modele programistyczne i grupy dostarczanych kontrolek; podejmuje rozważania na temat aspektów wspieranych przez platformę ASP.NET, istotnych z punktu budowania witryn internetowych. Podrozdział kończy się zestawieniem możliwości wynikających z połączenia platform ASP.NET i WWF. Ostatni podrozdział dotyczy platformy SharePoint Server Składają się na niego krótkie wprowadzenie, przedstawiające historię powstania i rozwoju, przegląd przez kolejne wersje platformy, szczegółowe omówienie architektury oraz omówienie komponentów, z których budowany jest interfejs użytkownika. Rozdział trzeci w pierwszej jego części konkretyzuje cel niniejszej pracy. Kolejna część jest specyfikacją funkcjonalną tworzonego systemu, dostarczając: informacje o aktorach systemu, wymagania funkcjonalne i niefunkcjonalne. Zawiera również wyniki analizy zadania w postaci modelu domeny oraz najważniejszych diagramów: przepływu pracy, aktorów systemu i przypadków użycia. Czwarty rozdział to specyfikacja zewnętrzna obu stworzonych aplikacji. Zawiera podstawowe informacje o funkcjonalności programów, sposobie ich obsługi oraz dostarcza informacji o najbardziej istotnych z punktu użytkownika końcowego widokach interfejsu użytkownika. Specyfikacji wewnętrznej obu rozwiązań został poświęcony rozdział piąty. Jest to przegląd wszystkich najważniejszych modułów obu aplikacji, wraz z krótkim opisem działania. 6

7 Rozdział szósty to zestaw wytycznych, pomocnych z punktu komputerowo wspomaganego modelowania procesów biznesowych. Analizę przeprowadzono w oparciu o takie kryteria jak testowalność czy stosowalność wzorców, a na podstawie przeprowadzonej analizy zbiór wytycznych pogrupowano ze względu na obszary ważne z punktu zarządzania projektem informatycznym, takie jak: jakość dostarczonego produktu, całkowity koszt jego dostarczenia czy czas potrzebny na jego wyprodukowanie. 7

8 1. Charakterystyka dziedziny i zadań systemu 1.1. Proces biznesowy Pod pojęciem procesu biznesowego rozumiemy ciąg zadań, wykonywanych automatycznie lub ręcznie, których wykonanie prowadzi do uzyskania produktu lub wykonania usługi [1]. Taka definicja procesu biznesowego jest punktem wyjścia dla dalszych rozważań. Procesy biznesowe można sklasyfikować ze względu na ich funkcje następująco: Proces zarządczy, który definiuje cele i strategię działania; pełni funkcje kontrolne dla procesów operacyjnego i pomocniczego. Proces operacyjny, który wykonuje typowe działania zmierzające do realizacji procesu zarządczego. Proces pomocniczy, którego funkcją jest dostarczenie wsparcia przy realizacji procesów zarządczych i operacyjnych Zarządzanie procesem biznesowym Z procesem biznesowym nierozerwalnie łączy się pojęcie zarządzania procesem biznesowym. Nie jest to pojęcie stosunkowo nowe, gdyż pierwsze opisy procesów datowane są na wiek XVIII, kiedy to w 1776 roku Adam Smith opisał proces produkcji pinezek. Początki dziedziny zajmującej się optymalizacją poszczególnych kroków wykonywanej pracy sięgają początku XX wieku, kiedy to ukazała się publikacja The Principles of Scientific Management autorstwa Fredericka Winslowa Taylora, w której autor zaproponował teorię określaną jako Process Management. W 1921 został zaprezentowany pierwszy sposób prezentacji procesów biznesowych. Dokonał tego Frank Gilbreth w publikacji Process Charts First Steps in Finding the One Best Way. Lata rozwoju i badań pozwoliły wypracować i zdefiniować następujące pojęcia: 8

9 BPM (ang. Business Process Management) jako sfera zarządzania. BPMT (ang. Business Process Management Technologies) jako zbiór technologii wspomagających proces zarządzania. BPMS (ang. Business Process Management System) jako informatyczny produkt pomocny przy zarządzaniu procesem. Lata 50. ubiegłego stulecia to okres intensywnych badań nad metodykami zapewnienia jakości procesów. Prekursorami w tej dziedzinie byli William Edwards Deming, Joseph M. Juran oraz Philip Bayard Crosby. Najbardziej podstawową metodyką, mającą korzenie w pracach wyżej wymienionych jest czterostopniowa, iteracyjna metodyka PDCA [2](ang. Plan Do Check Act). Act Plan Check Do Rysunek 1-1 Metodyka zarządzania procesami model PDCA Z każdym krokiem kolejnej iteracji związane są ściśle określone funkcje: Zaplanuj zakres zmian. Wdróż zaplanowane zmiany w procesach. Zweryfikuj efekty wprowadzonych zmian. W celu dalszej poprawy procesu zastosuj akcje zapobiegawcze. 9

10 Metodyka PDCA doczekała się rozbudowy o dodatkowe fazy, tworząc tym samym nową lecz bazującą na takich samych założeniach metodykę, nazywaną SixSigma, realizującą model DMAIC [2] (ang. Define Measure Analyze Improve Control). Control Define Improve Measure Analyze Rysunek 1-2 Metodyka SixSigma zarządzania procesami model DMAIC Tak samo jak w przypadku modelu PDCA, każdy krok modelu DMAIC ma ściśle przypisane funkcje: Zdefiniuj obszary procesu wymagające poprawy. Określ kluczowe parametry procesu oraz sposoby ich pomiaru. Zbadaj stan aktualny; określ metody poprawy oraz przeszkody stojące na drodze do poprawy. Zdefiniuj czynności mające na celu poprawę procesów. Kontroluj postępy prac. 10

11 1.2. Przepływ pracy Pod pojęciem przepływu pracy (ang. workflow), w najbardziej ogólnym znaczeniu będzie rozumiany zestaw połączeń definiujących sposób, w jaki informacje są przesyłane pomiędzy obiektami bezpośrednio zaangażowanymi w przetwarzanie informacji. Podstawowymi pojęciami, bezpośrednio powiązanymi z modelowaniem przepływów pracy są: obiekt oraz diagramy obiektów i przepływów. Obiekt to najmniejszy składnik systemu, który może być niezależnie zdefiniowany i rozpatrywany, mający własną strukturę; scharakteryzowany jest przez zbiór zachowań i parametrów. Diagram obiektów to graficzna reprezentacja układu obiektów występujących w systemie oraz związków między nimi. Graficzną reprezentację obiektów i przepływów danych pomiędzy nimi nazywamy diagramem przepływów. Są to najbardziej charakterystyczne cechy przepływów pracy. W kontekście tej pracy, przepływem pracy będzie sposób przepływu faktur pomiędzy aktorami, oraz zbiór informacji i zadań, przenoszonych pomiędzy aktorami i przez aktorów zgodnie z zestawem wytycznych, potrzebnych do wykonania przepływu. Dla każdego etapu przetwarzania faktury przez przepływ pracy, można wyróżnić skończony zbiór osób, które przypisane do zadania, realizują w skończonym czasie określone przez przepływ czynności, sterując tym samym stanem dokumentu. W nowoczesnych i dużych przedsiębiorstwach, przepływy pracy mają duży udział w automatyzacji i systematyzacji procesów biznesowych. Systemy wykorzystujące przepływy pracy pomagają w podziale skomplikowanych procesów biznesowych na mniejsze i bardziej spójne podprocesy, które łatwiej jest nadzorować na przykład poprzez przypisanie osoby bezpośrednio odpowiedzialnej za konkretny etap procesu. Istotnymi zaletami podziału procesu biznesowego na mniejsze zadania są: Ciągły nadzór pracy nad procesem, a w szczególności monitorowanie bieżącego stanu wykonania konkretnych zadań, zgodnie ze wcześniejszymi założeniami. 11

12 Łatwość śledzenia przebiegu procesu biznesowego; w każdej chwili możliwy jest dostęp do informacji, kto i w jakim czasie wykonał przydzielone zadanie. Możliwość optymalizacji procesu w przyszłości na podstawie danych z przeszłości. Łatwiejszy nadzór nad całym procesem biznesowym. Istotny wpływ na rosnącą popularność przepływów pracy w modelowaniu procesów biznesowych ma fakt istnienia oprogramowania, które wspomaga tworzenie i zarządzanie pracą grupową. Tego typu programy bardzo często są dedykowane dla odbiorców z branż takich jak produkcja czy obsługa klienta. Jest to spowodowane mnogością procesów biznesowych, wymagających należytej koordynacji i nadzoru. Istniejące rozwiązania dostarczają wsparcia nie tylko w zarządzaniu dokumentami, ale także kompleksowe rozwiązania do zarządzania procesami biznesowymi, wspierające jego przebieg na każdym etapie, począwszy od modelowania, poprzez wizualizację, symulację i możliwość analizy, a skończywszy na analizie danych historycznych, optymalizacji i automatyzacji. Najistotniejsze cechy narzędzia informatycznego, wspomagającego procesy biznesowe to przede wszystkim: Możliwość zamodelowania procesu z użyciem diagramów. Sprawdzenie zachowania się zamodelowanego procesu dla danych historycznych lub testowych. Zautomatyzowanie najczęściej powtarzających się czynności. Nieustanny pomiar kluczowych dla przebiegu procesu parametrów oraz gromadzenie ich w celach statystycznych. Poprawa jakości realizowanego procesu; zastosowanie jednej z wymienionych metodyk iteracyjnych pozwala na stopniową redukcję błędów w procesie, poprzez na przykład rozbudowę weryfikacji kompletności i poprawności danych wejściowych. 12

13 1.3. Notacja BPMN Celem tego podrozdziału jest skrótowe przedstawienie możliwości i funkcji notacji BPMN. Przed rozpoczęciem realizacji projektu aplikacji modelującej proces biznesowy, bardzo istotne jest przeprowadzenie fazy analizy. Tu z pomocą przychodzi notacja BPMN, bezpośrednio powiązana z modelowanie procesów biznesowych. Notacja BPMN (ang. Business Process Model and Notation) została opublikowana w 2004 roku, jako narzędzie wspomagające graficzne modelowanie procesów biznesowych. Celem przyświecającym twórcom notacji BPMN było dostarczenie spójnego i zrozumiałego sposobu prezentacji obiektów i zależności między nimi, aby diagram, będący etapem wynikowym fazy analizy był czytelny i jednakowo zrozumiały dla wszystkich grup użytkowników zaangażowanych w proces. W dalszej części rozdziału zaprezentowane zostaną podstawowe elementy notacji BPMN. Pełny opis specyfikacji dostępny jest na stronie internetowej [3] Obiekty notacji BPMN Zdarzenie Notacja BPMN wyróżnia trzy podstawowe typy zdarzeń (ang. event). Są to: zdarzenie start, zdarzenie pośrednie i zdarzenie koniec. Zdarzenia te można z kolei podzielić ze względu na źródło pochodzenia (np.: wiadomość, upływ czasu, zajście wcześniej zdefiniowanego warunku, występnie innego zdarzenia, wystąpienie błędu itp.), a samo zdarzenie może być przerywające bądź nie. Zdarzenia mają wpływ na przebieg procesu; każde zdarzenie ma swój wyzwalacz, wynik bądź obie rzeczy na raz. Rysunek 1-3 BMPN Reprezentacja zdarzenia start Rysunek 1-4 BMPN Reprezentacja zdarzenia pośredniego Rysunek 1-5 BMPN Reprezentacja zdarzenia koniec 13

14 Aktywność Podstawowymi aktywnościami (ang. activity), definiowanymi i dostarczanymi przez notację BPMN są: zadanie, podproces oraz wywołanie innej aktywności (pozwala to tworzyć złożone aktywności, składające się z mniejszej liczy prostszych aktywności połączonych zależnościami). W uproszczeniu aktywność jest zadaniem do wykonania. Rysunek 1-6 BMPN Reprezentacja zadania Rysunek 1-7 BMPN Reprezentacja podprocesu Rysunek 1-8 BMPN Reprezentacja wywołania innej aktywności Brama Bramą (ang. gateway) nazywać będziemy element decyzyjny umożliwiający zmianę przepływu sterowania. Rysunek 1-9 BMPN Reprezentacja bramy 14

15 Przepływy notacji BPMN Przepływ sekwencyjny Przepływ sekwencyjny (ang. sequence flow) łączy dwa obiekty, wytyczając ścieżkę przepływu pracy, oraz determinując kolejność wykonania aktywności. Warunkowy przepływ sekwencyjny (ang. conditional sequence flow) determinuje przejście przepływu pracy spełnieniem określonego warunku. Domyślny przepływ sekwencyjny (ang. default sequence flow) określa obieraną ścieżkę w przypadku, gdy dla pozostałych ścieżek warunek wyboru nie został spełniony. Rysunek 1-10 BMPN Przepływ sekwencyjny Rysunek 1-11 BMPN Warunkowy przepływ sekwencyjny Rysunek 1-12 BMPN Domyślny przepływ sekwencyjny Przepływ wiadomości Przepływ wiadomości (ang. message flow) przedstawia: zawartość komunikacji pomiędzy dwoma jej uczestnikami oraz ścieżkę przepływu; transmituje informację. Rysunek 1-13 BMPN Przepływ wiadomości Rysunek 1-14 BMPN Inicjowany przepływ wiadomości Rysunek 1-15 BMPN Nieinicjowany przepływ wiadomości 15

16 Skojarzenie Obiekt przepływu, służący do powiązania informacji i artefaktów z obiektami przepływu to skojarzenie (ang. Association), które oprócz roli scalającej, może również wskazywać kierunek powiązania. Rysunek 1-16 BMPN Skojarzenie Rysunek 1-17 BMPN Skojarzenie skierowane Rysunek 1-18 BMPN Dwukierunkowe skojarzenie Obszary przepływów notacji BPMN Obszar przepływu to mechanizm, który pozwala zorganizować aktywności wewnątrz graficznych kategorii, aby zilustrować związki zachodzące pomiędzy procesami biznesowymi; pozwala podzielić i pogrupować proces biznesowy oraz przypisać użytkowników związanych z realizacją czynności. Tor (ang. lane) pozwala podzielić pojedynczy proces na mniejsze fragmenty, gdzie każdy fragment (kategoria) dotyczy konkretnego użytkownika. Pojedynczy obszar przepływu (ang. pool) oddziela dwa lub kilka procesów biznesowych, pokazuje zależności między nimi (wraz z obiektami każdego z procesów). Rysunek 1-19 BMPN Tor 16

17 Rysunek 1-20 BMPN Obszar przepływu Z wykorzystaniem obszarów przepływu przy modelowaniu procesu wiąże się kilka zasad: Każdy obszar przepływu dotyczy tylko jednego procesu. Obszar przepływu może zawierać jeden lub więcej torów. Pomiędzy obszarami niedozwolone są przepływy sekwencyjne. Pomiędzy torami w obszarze niedozwolone są przepływy wiadomości BPMN kontra UML BPMN jest notacją niewątpliwie dedykowaną dla modeli biznesowych, UML (ang. Unified Modeling Language) natomiast głównie stosowany jest do modelowania systemów informatycznych (choć posiada pewne rozszerzenia notacji, dedykowane do modelowania procesów biznesowych). Z tego względu odpowiedź na pytanie o wybór standardu zapisu modeli biznesowych mogłaby się wydawać oczywista. Jednak BPMN ma stosunkowo sporo ograniczeń w porównaniu z UML, co sprawia, że do każdego problemu warto podejść indywidualnie, oraz spróbować znaleźć odpowiedzi na pytania takie jak: dlaczego potrzebujemy modelować dany proces i do czego model zostanie wykorzystany w przyszłości. Notacja BPMN, z racji swojego ukierunkowania na budowanie modeli procesów biznesowych, skupia się na przepływie sterowania, uwypuklając tym samym logikę procesu. Z tego względu nie dostarcza wsparcia gdy chodzi o modelowanie całości tworzonego systemu informatycznego, którego proces biznesowy ma być częścią. Notacja UML, w porównaniu z notacją BPMN 17

18 to bardziej kompleksowy zestaw diagramów, pozwalający na specyfikowanie i dokumentowanie obszarów niedostępnych w notacji BPMN, takich jak struktura i organizacja firmy, hierarchia aktorów systemu czy przepływ danych. To wszystko sprawia, że rozwiązania wymagające opracowania w wielu dziedzinach, a zawierające procesy biznesowe, wykonywane będą jednak w oparciu o notację UML. 18

19 2. Charakterystyka wybranych technologii i narzędzi Celem tego rozdziału jest przegląd narzędzi informatycznych oraz ich możliwości wsparcia w zakresie organizacji pracy oraz automatyzacji procesów biznesowych. Przedmiotem rozważań będą narzędzia firmy Microsoft, ze względu na ich popularność, ugruntowaną pozycję na rynku oraz szeroki wachlarz oferowanych możliwości. Jednym z tych rozwiązań jest platforma SharePoint, która zarówno dla projektantów, jak i programistów dostarcza wielu złożonych mechanizmów, wspomagających wykonywanie podstawowych operacji. Kolejnym rozwiązaniem jest platforma ASP.NET, która służy do budowania aplikacji internetowych. Oba te rozwiązania, choć każde w innym stopniu, w połączeniu z technologią Windows Workflow Foundation mogą posłużyć jako wsparcie dla modelowania procesów biznesowych Windows Workflow Foundation Wprowadzenie Technologia Windows Workflow Foundation czasami wymiennie używa się nazwy Workflow Foundation po raz pierwszy została opublikowana w 2006 roku, razem z Microsoft.NET Framework w wersji 3.0, rozszerzona o nowe aktywności razem z wersją 3.5.NET Framework, a następnie gruntownie zmieniona w wersji 4.0 NET Framework. WWF dostarcza sposób zdefiniowania i wykonania procesu przy użyciu wbudowanego zbioru bloków, zwanych aktywnościami, z których na etapie projektowania powstanie szablon procesu. Przepływy pracy w technologii WWF mogą być budowane przy użyciu: specjalnego języka znaczników (ang. Extensible Object Markup Language, w skrócie XOML), jednego z dostępnych języków programowania dla platformy.net, lub w sposób będący kombinacją dwóch poprzednich. Tak stworzony szablon może być wykonany poprzez stworzenie jego instancji, a następnie uruchomiony. 19

20 Technologia WWF dostarcza własne środowisko uruchomieniowe (ang. Workflow Runtime), które jest odpowiedzialne za [4]: Planowanie i wykonywanie przepływów pracy i działań. Utrzymywanie uruchomionych przepływów pracy; usuwa nieaktywne lub zakończone przepływy, zwiększając liczbę przepływów, które mogą być obsłużone jednocześnie, co istotnie zwiększa skalowalność. Szeregowanie uruchomionych instancji przepływów pracy oraz zarządzanie ich stanem. Dostarczanie uruchomionym instancjom przepływów pracy dostępu do usług. Podstawowa lista dostarczanych usług, wraz z opisem pełnionej funkcji została zebrana i zaprezentowana w tabeli poniżej [5]. Usługa Utrwalanie stanu (ang. Persistence) Śledzenie stanu (ang. Tracking) Czasomierz (ang. Timer) Obsługa transakcji (ang. Transactions) Funkcja Zapisuje oraz odczytuje stan przepływu do i z bazy danych; odtwarza stan przepływu. Umożliwia śledzenie informacji powiązanych z instancją przepływu w elastyczny, spójny i niezawodny sposób. Odpowiada za upływ czasu wymagany przez obsługę aktywności typu opóźnienie. Dostarcza wsparcia w zakresie transakcji przy operacjach na bazach danych, w celu zapewnienia spójności danych. Tabela 2-1 Przegląd usług dostarczanych przez środowisko uruchomieniowe WWF 20

21 Technologia WWF pozwala na tworzenie dwóch typów przepływów pracy: Sekwencyjny przepływ pracy, gdzie kolejność wykonywania się aktywności jest definiowana na etapie projektowania. Przepływ pracy typu maszyna stanów, gdzie kolejność wykonywania się aktywności jest determinowana w czasie wykonania, jako odpowiedź na występujące zdarzenia (ang. event driven) Idea technologii Windows Workflow Foundation Ideą technologii WWF jest dostarczenie programiście spójnego interfejsu programowania aplikacji (ang. Application Programming Interface, w skrócie API) oraz zbioru aktywności, które umożliwią zrealizowanie praktycznie każdego zadania. Rozdział ten ma na celu omówienie najbardziej podstawowych komponentów dostarczanych przez WWF, wraz z wymienieniem ich najważniejszych funkcji. Aktywności W świecie WWF wszystko zbudowane jest z aktywności, które są podstawowymi blokami funkcjonalnymi [6]. Przepływ pracy składa się z aktywności zorganizowanych hierarchicznie w strukturę drzewiastą; sam przepływ jest korzeniem oraz złożoną aktywnością zarazem. Technologia WWF dostarcza domyślny zbiór aktywności, pokrywający wykonywanie funkcjonalności takich jak: przepływ kontroli, zarządzanie stanem, komunikowanie się z innymi aplikacjami i serwisami, obsługa zdarzeń czy obsługa wyrażeń warunkowych. Wykonanie każdej z aktywności jest zgodne z zaproponowanym przez WWF modelem wykonywania aktywności. Został on zaprezentowany na diagramie poniżej. 21

22 Rysunek 2-1 Kompletny model wykonania aktywności Kompensacje Kompensacje w środowisku WWF są mechanizmem, który pracę wykonaną wcześniej przez przepływ pozwala wycofać (zgodnie ze zdefiniowaną logiką) w przypadku wystąpienia błędu. Kompensacje są powiązanie z mechanizmem transakcji, od których wymaga się zapewnienia spójności danych. W systemach bazodanowych od transakcji oczekuje się, by każda z nich trwała możliwie jak najkrócej, aby możliwe było dokonywanie wielu transakcji równolegle. W przypadku przepływów pracy możliwe są transakcje, wykonujące się na przykład kilka dni (ang. Long Running Transaction, w skrócie LRT). Taka transakcja, w celu zapewnienia spójności, powinna przez cały czas trwania utrzymywać potrzebne zasoby. Takie podejście bardzo łatwo może prowadzić do wystąpienia problemu wzajemnej blokady (ang. deadlock). Z tego powodu transakcje typu LRT definiowane są jako sekwencje podzadań, gdzie każde podzadanie zwalnia swoje zasoby przed zakończeniem całej transakcji. Takie podejście zużywa mniej zasobów, jednak w przypadku występna błędu przy wykonywaniu podzadania, może zajść potrzeba wycofania wcześniej zakończonych zadań. Tu z pomocą przychodzą kompensacje, które poprzez powiązanie z konkretnym podzadaniem, pozwalają na jego wycofanie [7]. 22

23 Sterowanie przepływem WWF do sterowania przepływem używa wyrażeń warunkowych, które są fragmentami logiki aplikacji, a w wyniku ich wykonania zwracają wartość typu logicznego (ang. boolean). W szeregu aktywności dostarczanych przez WWF, takich jak pętla dopóki (ang. while) czy aktywność jeżeli (ang. if else branch) wykorzystuje się warunki logiczne do wpływania na ich zachowanie. Warunki logiczne, sterujące przepływem pracy mogą być dodatkowo definiowane poprzez: Zapisanie warunku w kodzie źródłowym (ang. code condition); taki warunek zostanie skompilowany i umieszczony w tym samym zestawie (pliku.dll), który obsługuje przepływ pracy [8]. Zapisanie warunku [9] w pliku XML (ang. Extensible Markup Language) o rozszerzeniu.rules, powiązanym z przepływem pracy; zaletą takiego rozwiązania jest fakt, że plik ten zostaje powiązany z modelem przepływu, i może zostać łatwo uaktualniony, nawet podczas wykonywania instancji przepływu [9] Platforma ASP.NET Wprowadzenie ASP.NET jest platformą programistyczną rozwijaną i dostarczaną przez firmę Microsoft, która służy do budowania aplikacji internetowych. Jest częścią platformy Microsoft.NET, przez co programista tworząc aplikacje internetowe może wykorzystać zalety płynące z funkcji platformy.net[10]. Na platformę.net składają się dwie części: biblioteka klas (ang. Framework Class Library, w skrócie FCL) oraz wspólne środowisko uruchomieniowe (ang. Common Language Runtime, w skrócie CLR). 23

24 Biblioteka Framework Class Library Platforma.NET dostarcza programiście klasy, interfejsy oraz zestaw typów danych, których może użyć tworząc aplikację. W ramach FCL wyróżnić można bibliotekę klas bazowych (ang. Base Class Library, w skrócie BCL), zgodną z architekturą wspólnego języka (ang. Common Intermediate Language, w skrócie CIL), dostępną dla wszystkich języków zgodnych ze wspólną specyfikacją języków (ang. Common Language Specification, w skrócie CLS). Biblioteka FCL została zaprojektowana tak, aby ułatwić wykonywanie najczęstszych zadań programistycznych, takich jak operacje wejścia/wyjścia, czy dostęp do baz danych. Klasy dostarczane przez platformę.net podzielone są pomiędzy oddzielne przestrzenie nazw (ang. namespace); przestrzeń nazw jest kategorią dla grupy typów. Klasy platformy.net przechowywane są w podzespołach, a każdy podzespół jest plikiem.dll (ang. Dynamic-link library) znajdującym się na dysku twardym. Wyróżniamy dwa rodzaje podzespołów: prywatne i współdzielone. Podzespoły prywatne mogą być używane tylko przez jedną aplikację, podzespoły współdzielone natomiast umieszczane są w GAC (ang. Global Assembly Cache), i mogą być współużytkowane przez wszystkie aplikacje na serwerze [11]. Środowisko Common Language Runtime Wspólne środowisko uruchomieniowe [12] jest częścią platformy.net odpowiedzialną za wykonanie kodu aplikacji. Kod źródłowy napisany w jednym z dostępnych języków programowania platformy nie jest bezpośrednio kompilowany do postaci kodu maszynowego, lecz konwertowany do postaci kodu pośredniego języka o nazwie MSIL (ang. Microsoft Intermediate Language). MSIL jest niezależnym od platformy sprzętowej językiem niskiego poziomu, przypominającym zorientowany obiektowo język asemblerowy. W momencie rzeczywistego wykonania aplikacji, kod pośredni MSIL jest kompilowany do postaci kodu maszynowego przez kompilator typu JIT (ang. Just-In-Time) [12]. 24

25 Platforma ASP.NET oferuje dwa główne modele programistyczne tworzenia aplikacji internetowych [10]: ASP.NET Web Forms, gdzie strony budowane są w oparciu o znaczniki HTML, standardowe kontrolki ASP.NET i kod wykonywany po stronie serwera. Gdy do serwera dociera żądanie wyświetlenia strony, jest ona kompilowana, wykonywany jest kod źródłowy, a następnie generowane są znaczniki HTML, renderowane później przez przeglądarkę internetową. ASP.NET MVC, gdzie strony budowane są w oparciu o architektoniczny wzorzec projektowy Model-Widok-Kontroler (ang. Model-View-Controller), który dokonuje rozdziału aplikacji na trzy główne komponenty: o Model warstwa danych aplikacji; może mieć postać interfejsu programistycznego do wykonywania akcji na strukturach danych. o Widok warstwa GUI (ang. Graphical User Interface); wyświetla interfejs użytkownika bazując na modelu danych. o Kontroler warstwa obsługuje interakcję aplikacji z użytkownikiem oraz przetwarza dane wejściowe; zarządza stanem modelu. Kontroler Użytkownik Model Widok Rysunek 2-2 Typowa współpraca komponentów wzorca MVC 25

26 Idea platformy ASP.NET Ideą platformy ASP.NET jest dostarczenie programiście spójnego zbioru kontrolek, które umożliwią realizację praktycznie każdego zadania: począwszy od wyświetlania etykiet i pól formularza, poprzez pracę z danymi pochodzącymi z baz danych a na obsłudze autoryzacji i autentykacji skończywszy. Każda kontrolka ASP.NET to klasa platformy.net, która wykonana na serwerze renderuje w przeglądarce internetowej określoną zawartość. Kontrolki platformy ASP.NET można pogrupować ze względu na przeznaczenie następująco [10]: Kontrolki standardowe kontrolki wyświetlające etykiety, pola formularzy, przyciski oraz inne standardowe elementy formularzy. Kontrolki sprawdzające poprawność danych kontrolki z tej grupy sprawdzają poprawność danych przed wysłaniem ich do serwera; sama walidacja jest przeprowadzana po stronie klienta (przy użyciu języka JavaScript) oraz po stronie serwera. Kontrolki logowania umożliwiają uwierzytelnianie użytkowników aplikacji, rejestrowanie nowych kont użytkowników, wyświetlają formularze zmiany hasła. Kontrolki nawigacyjne wyświetlają standardowe elementy nawigacyjne strony internetowej, takie jak rozwijane menu czy mapa strony. Kontrolki umożliwiające pracę z danymi w szczególności kontrolki wyświetlające dane z bazy danej, umożliwiające wykonanie podstawowych operacji jak: tworzenie, odczytywanie, uaktualnianie oraz usuwanie rekordów (ang. create, read, update and delete, w skrócie CRUD). Kontrolki zaawansowane kontrolki umożliwiające wykonanie złożonych akcji, takich jak przesyłanie plików, tworzenie kreatorów czy wyświetlenie kalendarza. 26

27 Składniki Web Part kontrolki dostarczające możliwość tworzenia spersonalizowanych aplikacji. Kontrolki HTML kontrolki te umożliwiają zapisanie dowolnego znacznika HTML jako kontrolki serwerowej. Kontrolki dostarczane razem z platformą.net umożliwiają budowanie witryn internetowych, aktywie wykorzystując mechanizm stron wzorcowych (ang. master page), które stanowią szkielet dla stron z zawartością. Dzięki zawartości składników Web Part możliwe jest tworzenie witryn, które mogą być w trakcie użytkowania personalizowane przez odbiorców Cechy platformy ASP.NET Podstawowy protokół przesyłania dokumentów hipertekstowych (ang. Hypertext Transfer Protocol, w skrócie HTTP) sieci Internet jest protokołem bezstanowym. Konsekwencją płynącą z tego jest fakt, że z perspektywy serwera, każde żądanie pochodzi od innego użytkonika. Tu z pomocą programiście przychodzi platforma ASP.NET, dostarczając obsługę stanu sesji aplikacji (ang. session), która może być zrealizowana w oparciu o specjalny obiekt sesji, mechanizm stanu widoku (ang. view state) czy pliki ciastek (ang. cookies). Podczas używania mechanizmu obsługi sesji, każde żądanie zawiera unikalny identyfikator, który pozwala na rozpoznanie użytkownika, gdy ten żąda kolejnych stron. Inne, równie istotne aspekty, wspierane przez platformę ASP.NET zostały wylistowane poniżej: Buforowanie danych (danych wyjściowych stron i źródeł danych) oraz częściowe buforowanie stron aplikacji; pozwala to na istotną poprawę wydajności aplikacji. Lokalizowanie witryny internetowej na wiele języków oraz kultur. 27

28 Zaawansowane możliwości konfiguracji przy użyciu dostarczanych narzędzi (Web Site Administration Tool [13] czy ASP.NET Microsoft Management Console [14]) Technologia WWF łącznie z platformą ASP.NET Technologia Windows Workflow Foundation została zaprojektowana, aby współpracować z wieloma różnymi środowiskami uruchomieniowymi. Jednym ze wspieranych środowisk uruchomieniowych jest platforma ASP.NET [15]. Na etapie projektowania oraz programowania aplikacji internetowej obsługującej przepływ pracy, tworzonej przy użyciu platformy ASP.NET, programista musi być świadomy architektonicznych różnic pomiędzy aplikacjami: internetową a desktopową. Aplikacja internetowa może obsługiwać wielu użytkowników jednocześnie, a z racji ograniczonych zasobów w środowisku serwerowym, powinna zarządzać pamięcią oraz zasobami wydajnie i w racjonalny sposób. Domyślnie wszystkie instancje przepływów pracy wykonywane są w sposób asynchroniczny. Z tego powodu strona może zostać wyrenderowana nim instancja przepływu pracy zakończy się. Aby temu zapobiec, aplikacja internetowa, obsługująca przepływ pracy musi go wykonywać w sposób synchroniczny (WWF dostarcza w tym celu klasę ManualWorkflowSchedulerService). Przepływ pracy może być obsługiwany przez każdą aplikację uruchomioną na platformie.net. Z tego powodu znacznie korzystniejszą opcją (z punktu widzenia architektury systemu), jest obsługiwanie przepływu pracy przy użyciu usługi sieciowej stworzonej w oparciu o technologię WCF (ang. Windows Communication Foundation), i dopiero poprzez tak stworzoną warstwę pośrednią obsługiwać przepływ z poziomu aplikacji internetowej. 28

29 Technologia WWF dostarcza wsparcia w zakresie komunikacji z usługami sieciowymi w dwóch kategoriach: Wywołanie usługi sieciowej przez aktywność instancji przepływu pracy [16]. Opublikowanie szablonu przepływu pracy jako usługi sieciowej [17]. Połączenie funkcjonalności obu technologii: ASP.NET oraz WWF dostarcza bardzo podstawowego wsparcia w zakresie zarządzanie pracą grupową. Ze względu na brak dedykowanych mechanizmów, tworzenie rozwiązań w oparciu o taką konfigurację jest możliwe, lecz wymaga stosunkowo dużych nakładów pracy programistów, w porównaniu do narzędzia SharePoint Server 2010, o którym traktuje następny rozdział Microsoft SharePoint Server Wprowadzenie SharePoint to internetowa platforma aplikacyjna, stworzona i rozwijana przez firmę Microsoft, dedykowana dla odbiorców biznesowych. Platforma SharePoint została oparta na technologii ASP.NET 2.0, a jej początki sięgają roku 2001, kiedy to powstała pierwsza wersja platformy SharePoint Microsoft SharePoint Portal Server Na przestrzeni ostatnich dziesięciu lat powstawały kolejne wersje platformy SharePoint, co w zostało przedstawione na diagramie poniżej. 29

30 Microsoft SharePoint Portal Server 2001 Windows SharePoint Services 2.0 (darmowa licencja) Microsoft SharePoint 2003 (wersja komercyjna) Windows SharePoint Services 3.0 (darmowa licencja) Microsoft Office SharePoint Server 2007 (wersja komercyjna) Microsoft SharePoint Foundation 2010 (darmowa licencja) Microsoft SharePoint Server 2010 (wersja komercyjna) Microsoft SharePoint Enterprise 2010 (wersja komercyjna) Rysunek 2-3 Kolejne wersje platformy SharePoint Platforma SharePoint Server 2010 to rozwiązanie komercyjne, powstałe na bazie rozwiązanie darmowego, znacznie jest rozszerzając. Dedykowane jest głównie dla małych i dużych przedsiębiorstw. W dużym skrócie platformę SharePoint Server 2010 można nazwać systemem zarządzania treścią (ang. Content Management System, w skrócie CMS), systemem stosunkowo zaawansowanym, dostarczającym funkcjonalnych rozwiązań w obszarach wymienionych poniżej: Składowania i zarządzania zawartością różnych typów, takich jak: dokument, strona internetowa, list elektroniczny (ang. ) czy załącznik. Wersjonowania dokumentów i informacji [18]. 30

31 Ustanowenia powiadomień, otrzymywanych drogą elektroniczną, w reakcji na wykonywanie przez użytkowników akcje. Tworzenia witryn internetowych z kompleksowymi możliwościami zarządzania i personalizacji. Publikowania informacji o zmianach w portalu używając kanałów RSS (ang. Really Simple Syndication). Wsparcia w zakresie zaawansowanego i wydajnego wyszukiwania i przeszukiwania, zintegrowanego z usługą Windows Search. Pomoc w zakresie przekształcania danych w informacje, a następnie w wiedzę (ang. Business Intelligence, w skrócie BI). Pomoc w zakresie analizy biznesowej (tworzenie wykresów oraz raportów), poprzez integrację z SQL Server Reporting Services. Integracja z innymi produktami firmy Microsoft, jak: Microsoft Exchange, Microsoft Communication Server czy pakiet Microsoft Office. Praca z zewnętrznymi źródłami danych poprzez usługi: Business Data Connectivity oraz Business Connectivity. Rozszerzania wbudowanych funkcjonalności z użyciem dostarczanego modelu obiektowego (klienckiego i serwerowego). Wsparcia w zakresie tworzenia serwisów internetowych typu Wiki Przegląd funkcji platformy SharePoint Server Architektura sprzętowa Platforma SharePoint Server 2010 może być wdrożona na jednym lub wielu fizycznych serwerach, tworzących farmę serwerów. Zaletą płynącą z rozwiązania farmowego jest możliwość rozmieszczenia kluczowych dla działania systemu komponentów na osobnych serwerach, które można podzielić ze względu na pełnione role i dostarczane usługi na trzy grupy: 31

32 Serwer bazy danych. Serwer aplikacji. Serwer obsługujący żądania protokołu HTTP. Serwer bazodanowy odpowiedzialny jest za przechowywanie: zawartości portalu oraz danych uruchomionych usług, takich jak Business Data Connectivity, User Profile czy Usage and Health Data Collection; przechowuje również bazy danych wymagane przez usługę wyszukiwania. Serwer aplikacji udostępnia usługi dostarczane przez platformę SharePoint Server 2010; ich liczba w farmie jest uzależniona od liczby serwerów bazy danych i rozmieszczenia zawartości (danych) portalu. Dla każdego serwera aplikacji, w celu zwiększenia wydajności wyszukiwania, uruchamia się usługę wyszukiwania (ang. Search Service), a oprócz tego wymagane usługi: administracyjną (ang. Administration Service) oraz diagnostyczną (ang. Diagnostics Service). Serwer WWW (ang. Web Server) odpowiada za publikowanie: stron internetowych platformy SharePoint, usług sieciowych (ang. Web Service) i składników Web Part; kieruje żądania protokołu HTTP do odpowiednich serwerów aplikacji. W farmie serwerów musi znajdować się przynajmniej jeden serwer WWW, lub więcej (odpowiednio skonfigurowanych) w celu równoważenia obciążenia (ang. load balancing). Koncepcja wdrożenia jest uzależniona od takich czynników jak: przewidywalne obciążenie, pożądany czas odpowiedzi na żądanie czy oczekiwany stopień niezawodności. I tak dla małych firm zupełnie wystarczające może się okazać rozwiązanie, gdzie farmę zastąpi pojedynczy serwer, łączący wszystkie trzy podstawowe role. Istotne jest to, że architektura platformy SharePoint Server 2010 jest skalowalna, i może ulec dalszej rozbudowie, wraz z rosnącymi potrzebami przedsiębiorstwa. 32

33 Architektura logiczna Model obiektowy Każdy, nawet najmniejszy obiekt platformy SharePoint jest dostępny dla programisty w postaci klasy platformy.net. Zbiór klas, razem z funkcjonalnością zarządzania obiektami platformy SharePoint to właśnie model obiektowy. Logiczna konstrukcja platformy SharePoint Server 2010 tworzy hierarchiczną strukturę, grupującą powiązane ze sobą witryny. Korzeniem tej drzewiastej struktury jest kolekcja witryn (reprezentowana przez klasę SPSite w modelu obiektowym). Kolekcja witryn jest kontenerem dla witryn podrzędnych (klasa SPWeb modelu obiektowego), z wyróżnioną witryną główną (ang. Root Web). Każda witryna zawiera listy lub biblioteki dokumentów, które są podstawowymi strukturami danych platformy SharePoint (klasa SPList modelu obiektowego). Kolekcja witryn jest najmniejszą jednostką organizacyjną w architekturze platformy SharePoint, która charakteryzuje się niezależnością działania. Byty takie jak użytkownicy, grupy użytkowników, elementy Web Part, uprawnienia, szablony elementów są dostępne i jednakowe dla wszystkich witryn podrzędnych w zbiorze, lecz są niedostępne pomiędzy zbiorami witryn Składniki interfejsu użytkownika Interfejs użytkownika platformy SharePoint zbudowany jest w oparciu o strony: witryny bądź aplikacji. Strony witryny są ciekawszym rozwiązaniem z punktu widzenia użytkownika końcowego, gdyż bardzo mocno wspierają personalizację. Możliwość swobodnego dostosowywania wyglądu i funkcjonalności nie byłaby możliwa jednak bez dostarczanych razem z platformą SharePoint elementów Web Part. To one nie strony witryny są podstawowymi jednostkami, z których budowany jest interfejs użytkownika; strony witryny dostarczają zdefiniowane obszary (ang. zone), które są kontenerami dla składników Web Part, oraz komponenty odpowiedzialne za nadzór 33

34 (ang. web part manager). Zestawienie standardowych elementów Web Part, wraz z pełnioną rolą, dostarczanych razem z platformą SharePoint zostało zaprezentowane w poniższej tabeli. Typ elementu Web Part Edycja zawartości Formularz Widok listy Członkowie witryny XML Możliwości Rozszerzanie stron witryn o standardowe komponenty, takie jak tabele, odnośniki do innych stron, obrazki czy tekst. Umożliwia połączenie składnika Web Part typu formularz z kolumną danych innego składnika Web Part, a następnie przefiltrowanie wyników. Wyświetla w tabelaryczny sposób dane listy bądź biblioteki dokumentów; umożliwia edycję danych oraz łączenie z innymi składnikami Web Part typu widok listy. Wyświetla użytkowników witryny, grupy użytkowników (wraz z przypisaniem użytkowników do grup) razem z ich uprawnieniami na poziomie kolekcji witryn. Umożliwia zastosowanie transformaty XSLT (ang. Extensible Stylesheet Language Transformation) do kodu XML, a następnie wyświetlenie wyniku przekształcenia na stronie. Tabela 2-2 Przegląd domyślnych składników Web Part platformy SharePoint Platforma SharePoint została zbudowana w oparciu o ASP.NET 2.0. Z tego względu, podczas budowania interfejsu użytkownika możliwe jest korzystanie ze wszystkich rozwiązań platformy ASP.NET, m.in. ze stron wzorowych. 34

35 Model danych Model danych platformy SharePoint został zaimplementowany w oparciu o takie komponenty jak: lista, biblioteka dokumentów (będąca rozszerzeniem konceptu list), typ zawartości (ang. content type) oraz kolumna (ang. collumn). Kolumna Najbardziej podstawową jednostką strukturalną modelu danych platformy SharePoint jest kolumna. Każda kolumna może być dostępna w jednym z dwóch różnych zakresów. Kolumna listy istnieje tylko w zakresie jednej konkretnej listy tej, dla której została ona zdefiniowana. Kolumny witryny obejmują swoim zasięgiem wszystkie elementy kolekcji witryn; z kolumn witryny korzystać może każda lista, biblioteka czy typ zawartości danej kolekcji witryn. Dla każdej nowoutworzonej kolumny platforma SharePoint wymaga zdefiniowania takich obszarów jak: Nazwa kolumny oraz typ przechowywanych danych. Informacje wspomagające organizację i zarządzanie kolumnami. Detale takie jak opcjonalność pola, wymuszenie wartości unikalnych, zakres dopuszczalnych wartości czy wartość domyślna. Logika walidacji poprawności wprowadzonych danych; tekst wiadomości wyświetlanej użytkownikowi, w przypadku niepowodzenia walidacji. Razem z platformą SharePoint dostarczany jest zbiór kolumn witryny (w oparciu o które można tworzyć listy danych), z których każda przechowuję najbardziej podstawowe typy danych: Dodatnia lub ujemna wartość typu całkowitego (ang. Integer). Pojedyncza linia niesformatowanego tekstu (ang. Text). Wielolinijkowy tekst obsługujący formatowanie HTML (ang. Note). Wartość typu data i czas (ang. DateTime). 35

36 Wybór jednej opcji ze zdefiniowanego zbioru wartości (ang. Choice). Referencja do wartości innej listy (ang. Lookup). Wartość typu logicznego (ang. Boolean). Liczba zmiennoprzecinkowa (ang. Number). Lista Najbardziej podstawowym kontenerem danych użytkownika jest lista, która w swojej budowie bardzo przypomina bazodanową tabelę, z możliwością definiowania więzów integralności z innymi listami kolekcji witryn, składającą się z wierszy (klasy SPItem oraz SPListItem modelu obiektowego), na który składają się kolumny (klasa SPField modelu obiektowego). Typ zawartości Mechanizm typów zawartości został wprowadzony razem z Windows SharePoint Services 3.0. Każdy typ zawartości to zbiór powiązań ze zdefiniowanymi wcześniej kolumnami witryny, zastosowany dla listy bądź biblioteki dokumentów. Dla obu kontenerów danych możliwe jest zdefiniowanie kilku typów zawartości. Każda definicja niestandardowego typu zawartości musi dziedziczyć z innego typu zawartości (również niestandardowego bądź wbudowanego w platformę SharePoint). Tak zdefiniowany typ zawartości zawiera odziedziczony zestaw kolumn, który może być dostosowywany, poprzez dodawanie nowych kolumn, lub usuwanie tych odziedziczonych. Model danych dla platformy SharePoint może zostać zdefiniowany całkowicie w oparciu o listy, nie jest to jednak podejście zalecane. Znacznie lepszym rozwiązaniem jest wydzielenie ze zbioru kolumn listy kolumn kluczowych, a następnie zgrupowanie ich używając mechanizmu typów zawartości. 36

37 Używając platformy SharePoint, jako narzędzia wspomagającego pracę grupową, można stosunkowo łatwo i szybko używając dedykowanych kontenerów danych, kolumn i typów zawartości zbudować interfejs użytkownika, w oparciu o model domeny rozpatrywanego zagadnienia. Przy użyciu dostarczonego modelu obiektowego, każdy obiekt platformy SharePoint może być swobodnie zarządzany i dostosowywany do zmieniających się wymagań. Używając złożonych aktywności, pozwalających na wykonywanie takich operacji jak zarządzanie zadaniami przepływu, czy reagowanie na zdarzenia elementu, którego przepływ pracy dotyczy, budowanie przepływów pracy staje się bardziej przystępne. Aspekty te, oraz możliwość łatwego powiązania i komunikowania się przepływów pracy z dostępnymi kontenerami danych stanowią o sile tego rozwiązania. 37

38 3. Analiza zagadnienia programistycznego 3.1. Cel i zarys przeznaczenia Zagadnienie programistyczne zostanie zrealizowane w oparciu o różne technologie i narzędzia firmy Microsoft, przedstawione w poprzednim rozdziale niniejszej pracy. Analiza zadania ma na celu poprzez badanie i analizę porównawczą wypracowanie zestawu wytycznych, pomocnych z punktu komputerowo wspomaganego modelowania procesów biznesowych. Analiza zostanie przeprowadzona w oparciu o następujące kryteria: Testowalność rozwiązania. Stosowalność wzorców architektonicznych. Stosowalność wzorców projektowych. Na podstawie przeprowadzonej analizy, zbiór wytycznych zostanie pogrupowany ze względu na obszary ważne z punktu realizacji projektu informatycznego: Czas, potrzebny na: zebranie wymagań, procesy implementacji i testowania oraz wdrożenie. Jakość dostarczonego rozwiązania. Całkowity koszt wytworzenia oprogramowania oraz koszty związane z zakupem odpowiednich licencji. Przedmiotem analizy będzie system modelujący obieg faktur w przedsiębiorstwie, kładący nacisk głównie na złożony proces zatwierdzania dokumentu, angażujący wiele osób z wielu różnych działów. 38

39 3.2. Specyfikacja funkcjonalności Aktorzy systemu Każdy z użytkowników systemu pełni ściśle określoną funkcję w obiegu dokumentu, jakim jest faktura: Pracownik użytkownik, który rozpoczyna proces opiniowania faktury, wprowadzając ją do systemu. W przypadku, gdy faktura jest niepoprawna, zobowiązany jest do załączenia informacji korygujących i powiązania ich z fakturą. Użytkownik nadzorujący użytkownik, który wstępnie opiniuje dokument dodany przez pracownika. Księgowy użytkownik, który zatwierdza pozycje faktury, jeśli ich sumaryczna wartość nie przekracza ustalonego, pierwszego progu akceptacji. Archiwizuje dokument w przypadku, gdy wszystkie fazy jego zatwierdzania przebiegły pomyślnie. Główny księgowy użytkownik, który zatwierdza i opiniuje fakturę, gdy jej wartość przekracza pierwszy próg akceptacji. Ostatecznie opiniuje dokument przed jego archiwizacją. Dyrektor zarządzający użytkownik, który akceptuje faktury, których wartość przekracza drugi próg akceptacji. 39

40 Wymagania funkcjonalne systemu Wymagania funkcjonalne systemu zostały opisane poniżej, wraz z krótkim opisem mającym na celu scharakteryzowanie modelowanych mechanizmów. 1) Wprowadzenie faktury do systemu Pracownik wprowadzając nową fakturę do systemu, zobowiązany jest do jej opisania zgodnie z przyjętym schematem: Tytuł krótki tekst umożliwiający łatwe zidentyfikowanie dokumentu. Płatność tytułem nazwa towaru lub usługi, której dotyczy płatność. Notatka podsumowująca dowolny tekst będący uwagami użytkownika wprowadzającego dokument do systemu. Całkowita kwota faktury kwota brutto faktury. Nieprzekraczalny termin zapłaty termin, w którym należy dokonać płatności wystawionej faktury. Status faktury użytkownik wprowadzając nowy dokument do systemu nadaje mu jeden z dwóch dostępnych statusów: o Dokument poprawny nadanie tego statusu skutkuje natychmiastowym uruchomieniem procesu opiniowania po dodaniu dokumentu. o Dokument niepoprawny dokument zostaje zarejestrowany w systemie, jednak proces jego opiniowania zostaje zatrzymany na etapie dostarczenia informacji korygujących i powiązania ich z fakturą. Księgowy powiązanie dokumentu z użytkownikiem będącym członkiem roli księgowy. Użytkownik nadzorujący powiązanie dokumentu z członkiem roli użytkownik nadzorujący. 40

41 2) Proces zatwierdzania dokumentu 2.1) Uruchomienie procesu Proces opiniowania dokumentu rozpoczyna się wraz z dodaniem dokumentu do systemu. W zależności od statusu dodanego dokumentu proces będzie przebiegał inaczej. Dokument poprawny wymaga zatwierdzenia przez powiązanego z nim użytkownika nadzorującego. Niepoprawny dokument oczekuje na dołączenie danych korygujących. Proces zatwierdzania dokumentu może być uruchomiony tylko jednokrotnie. 2.2) Wstępna weryfikacja Poprawna faktura musi zostać wstępnie zweryfikowana przez powiązanego z dokumentem użytkownika nadzorującego. Użytkownik ten, wydając opinię, zobowiązany jest do podania powodu akceptacji lub odrzucenia pozycji. Akceptacja dokument został wstępnie zaakceptowany; proces opiniowania wchodzi w fazę akceptowania całkowitej kwoty faktury. Odrzucenie odrzucenie dokumentu na etapie wstępnej weryfikacji kończy proces zatwierdzania dokumentu. 2.3) Akceptacja kwoty faktury Akceptacja kwoty faktury jest procesem złożonym. Może się składać z maksymalnie dwóch kroków, w zależności od całkowitej kwoty faktury. Wartości konfiguracyjne, istotne w fazie akceptacji kwoty faktury, takie jak: pierwszy i drugi próg akceptacji, oraz wskazanie użytkowników pełniących w systemie role głównego księgowego i dyrektora zarządzającego, powinny być łatwo modyfikowalne z poziomu interfejsu użytkownika. 41

42 2.3.1) Kwota faktury jest większa niż pierwszy próg akceptacji Gdy kwota faktury przekracza kwotę pierwszego progu akceptacji, dokument powinien zatwierdzić główny księgowy. Użytkownik ten, dokonując weryfikacji podaje powód akceptacji lub odrzucenia pozycji. Akceptacja w przypadku zaakceptowania dokumentu przez głównego księgowego dokument może zostać przekazany do: o Dalszego opiniowania (przez dyrektora zarządzającego). o Ostatecznej weryfikacji. Odrzucenie odrzucenie faktury przez głównego księgowego kończy proces opiniowania dokumentu ) Kwota faktury jest większa niż drugi próg akceptacji Gdy kwota faktury przekracza kwotę drugiego progu akceptacji, oraz dokument został wcześniej zaakceptowany przez głównego księgowego, fakturę opiniuje oraz zatwierdza dyrektor zarządzający. Również w tym przypadku, akceptacja bądź odrzucenie dokumentu wiąże się z podaniem przyczyny takiej decyzji. Akceptacja dokument zaakceptowany przez dyrektora zarządzającego zostaje przesłany do ostatecznej weryfikacji. Odrzucenie odrzucenie dokumentu przez dyrektora zarządzającego kończy proces opiniowania dokumentu. 2.4) Ostateczna weryfikacja Etap ostatecznej weryfikacji następuje po pozytywnym przejściu etapu akceptacji kwoty faktury. W etap ten zaangażowany jest główny księgowy. Jest to ostatni etap opiniowania, na którym dokument może zostać odrzucony ze względów formalnych. 42

43 Akceptacja zatwierdzenie dokumentu na etapie ostatecznej weryfikacji skutkuje rozpoczęciem procesu archiwizacji. Odrzucenie odrzucenie dokumentu na etapie ostatecznej weryfikacji kończy proces opiniowania. 2.5) Archiwizacja dokumentu Pozytywne przejście trzech etapów weryfikacji dokumentu skutkuje rozpoczęciem ostatniego etapu, jakim jest archiwizacja. Archiwizacji dokonuje powiązany z dokumentem członek roli księgowy Wymagania niefunkcjonalne systemu W oparciu o zdefiniowane powyżej wymagania funkcjonalne, przy użyciu różnych technologii i narzędzi należy zaimplementować przepływ pracy, oraz dostarczyć aplikację umożliwiającą jego obsłużenie: Należy zaimplementować aplikację internetową, w oparciu o platformę ASP.NET, obsługującą przepływ pracy stworzony przy użyciu technologii WWF. Uwierzytelnianie i autoryzację użytkowników należy zrealizować w oparciu o dostarczany z platformą ASP.NET mechanizm Membership. Jako systemu zarządzania bazą danych należy użyć MS SQL Server. W oparciu o platformę SharePoint Server 2010 należy stworzyć definicję witryny, która dostarczy model danych oraz funkcjonalność potrzebną do obsługiwania przepływu pracy. W oparciu o zestaw aktywności, dostarczanych przez platformę SharePoint, należy zaimplementować przepływ pracy, obsługiwany przez stworzoną witrynę. Przy użyciu pakietu SharePoint Designer 2010 należy stworzyć przepływ pracy, obsługiwany przez stworzoną wcześniej witrynę. 43

44 Diagram przepływu pracy W oparciu o omówioną wcześniej notację BPMN został stworzony diagram przepływu pracy, w celu pokazania powiązań pomiędzy przepływem pracy, a aktorami systemu. Business Process BPMN Proces akceptacji faktury «Lane» Pracownik Start Zarejestrowanie dokumentu w systemie Sprawdź poprawność dokumentu Dostarczenie danych korygujących «Lane» Główna księgowa «Lane» Księgowe «Lane» Użytkownik nadzorujący Faktura poprawna Wstępna weryfikacja Kwota powyżej pierwszego progu TAK Akceptacja kwoty faktury NIE NIE Kwota powyżej drugiego progu Archiwizacja Ostateczna weryfikacja Koniec «Lane» Dyrektor zarządzający TAK Akceptacja kwoty faktury Rysunek 3-1 Opiniowanie faktury diagram przepływu 44

45 Diagramy aktorów systemu i przypadków użycia Jako rozszerzenie etapu projektowania systemu, powstały diagramy: aktorów systemu oraz przypadków użycia. Na tym ostatnim uwzględniony został, towarzyszący opiniowaniu faktury, przepływ biznesowy. Najbardziej podstawową ideą owych diagramów jest ukazanie aktorów, razem z zależnościami pomiędzy nimi, występującymi w ramach danej dziedziny oraz uszczegółowienie akcji, które użytkownicy systemu mogą wykonywać. Oba diagramy zostały przedstawione na rysunkach poniżej. uc Aktorzy systemu Pracow nik Użytkownik zatwierdzający kw otę faktury Księgow a Użytkownik nadzorujący Główny księgowy Dyrektor zarządzający Rysunek 3-2 Opiniowanie faktury diagram aktorów systemu 45

46 Rysunek 3-3 Opiniowanie faktury diagram przypadków użycia Model domeny Na kolejnym etapie prac projektowych sporządzono koncepcyjny model domeny dla tworzonej funkcjonalności, uwzględniający kategorie, pojęcia oraz podmioty będące częścią dziedziny. Na podstawie zaprojektowanego modelu domeny zostanie zbudowany model danych aplikacji obsługującej przepływ pracy. 46

47 Rysunek 3-4 Opiniowania faktury model domeny 47

48 4. Specyfikacja zewnętrzna Rozdział zawiera informacje ważne dla użytkownika końcowego: wskazówki przydatne przy pierwszym uruchomieniu obu programów oraz wszystko to, co powinien wiedzieć użytkownik programu, w celu jego właściwego użytkowania Aplikacja oparta o platformę ASP.NET Przygotowanie bazy danych Aby utworzyć bazę danych, niezbędną do prawidłowego działania aplikacji, należy skorzystać ze skryptów tworzących bazę danych, dołączonych wraz z pracą na płycie CD. Po utworzeniu bazy danych należy wypełnić tabele słownikowe danymi, również uruchamiając dołączony skrypt. Wymagania programowe Do uruchomienia aplikacji niezbędny jest serwer usług informacyjnych, który wspiera technologię ASP.NET (aplikacja była testowana i uruchamiana na serwerze IIS w wersji 7.5). Wymagana jest również obecność pakietu Microsoft.NET Framework w wersji co najmniej 3.5 SP1, instalatora systemu Microsoft Windows w wersji 4.5 lub nowszego oraz systemu zarządzania bazą danych MS SQL Server Pierwsze uruchomienie Podczas pierwszego uruchomienia programu należy zarejestrować nowego użytkownika, a następnie zalogować się, używając danych uwierzytelniających podanych na etapie rejestracji konta. Po poprawnym zalogowaniu się do aplikacji, w prawym górnym rogu zostanie wyświetlona nazwa aktualnie uwierzytelnionego użytkownika, razem z nazwami ról, do których jest aktualnie przypisany. Widok ekranu logowania został przedstawiony poniżej. 48

49 Rysunek 4-1 Aplikacja ASP.NET ekran logowania Skojarzenie z przepływem pracy Dla każdej nowo zarejestrowanej faktury przepływ pracy uruchamiany jest automatycznie; steruje on aktualnym statusem faktury, w reakcji na zmiany stanu zadań, dokonywane przez użytkowników przypisanych do poszczególnych zadań. Każde uaktualnienie zadania z poziomu interfejsu użytkownika powoduje uaktualnienie pól: data ostatniej modyfikacji i użytkownik, który zadanie zmodyfikował, przez przepływ pracy. W zależności od końcowego statusu zadania akceptacja lub odrzucenie przepływ pracy przypisuje nowe zadania lub kończy się, zgodnie z przyjętymi założeniami. 49

50 Okno główne aplikacji Głównym elementem aplikacji są zakładki, które umożliwiają przełączanie się pomiędzy najważniejszymi widokami. Widok faktur Pierwszy widok umożliwia wyświetlenie wszystkich faktur, które kiedykolwiek zostały zarejestrowane w systemie. Z poziomu tego widoku możliwe jest rejestrowanie nowych pozycji. Na stronie wyświetlającej faktury obecny jest również mechanizm pozwalający na filtrowanie rekordów. Użytkownik może filtrować rekordy z użyciem wielu kryteriów na raz, a wynik będzie iloczynem zbiorów; możliwe kryteria filtrowana zostały zebrane w poniższej tabeli. Kryterium filtrowania Status faktury Status przepływu pracy Księgowy Zbiór dostępnych wartości Faktura poprawna Faktura niepoprawna Faktura oczekująca na dane korygujące Faktura oczekująca na archiwizację Faktura zarchiwizowana Faktura odrzucona w wyniku wykonania przepływu pracy Przepływ pracy nierozpoczęty Błąd przy rozpoczęciu przepływu pracy Przepływ pracy w trakcie wykonywania Przepływ pracy zakończony błędem Przepływ pracy zatrzymany przez użytkownika Przepływ pracy zakończony Przepływ pracy zakończony akceptacją faktury Przepływ pracy zakończony odrzuceniem faktury Pozwala na znalezienie wszystkich faktur, powiązanych z wybranym użytkownikiem będącym członkiem roli księgowy. 50

51 Użytkownik nadzorujący Pozwala na znalezienie wszystkich faktur, powiązanych z wybranym użytkownikiem będącym członkiem roli użytkownik nadzorujący. Tabela 4-1 Aplikacja ASP.NET kryteria filtrowania faktur Z poziomu widoku listy użytkownik może przejść do widoku szczegółowego każdej pozycji, wyświetlić listę powiązanych zadań czy dołączonych informacji korygujących, a w przypadku faktur niepoprawnych czy czekających na dane korygujące możliwe są również edycja oraz usunięcie rekordu. Widoki: listy, wraz z kilkoma przykładowymi fakturami, oraz widok szczegółowy rekordu przedstawiono na rysunkach poniżej. Rysunek 4-2 Aplikacja ASP.NET widok listy faktur 51

52 Rysunek 4-3 Aplikacja ASP.NET widok szczegółowy faktury Widok zadań Drugi widok pozwala wyświetlić wszystkie zadania powiązane z pojedynczą fakturą. Z poziomu tego widoku możliwa jest edycja statusu oraz procentowego zaawansowania wykonania zadania. Właściwości zadania, takie jak tytuł i opis zadania, priorytet oraz daty rozpoczęcia i planowanego zakończenia są ustawiane przez przepływ pracy w momencie jego tworzenia, na podstawie aktualnego kontekstu przepływu pracy; właściwości te nie mogą być zmieniane z poziomu interfejsu użytkownika. Z poziomu tego widoku również możliwe jest filtrowanie przy użyciu wielu kryteriów, które zostały zebrane w poniższej tabeli. 52

53 Kryterium filtrowania Zbiór dostępnych wartości Priorytet zadania Niski Normalny Wysoki Krytyczny Status zadania Nierozpoczęte W trakcie realizacji Oczekujące Zaakceptowane Odrzucone Przypisanie zadania Pozwala na znalezienie wszystkich zadań, przypisanych do wybranego użytkownika. Faktura Pozwala na znalezienie wszystkich zadań, powiązanych z wybraną fakturą. Tabela 4-2 Aplikacja ASP.NET kryteria filtrowania zadań Zmiana stanu zadania możliwa jest zgodnie z przedstawionym w poniższej tabeli diagramem przejść między stanami (zmiany możliwe są zgodnie z kierunkiem strzałki). Nierozpoczęte W trakcie Oczekujące Zaakceptowane Odrzucone realizacji Nierozpoczęte W trakcie realizacji Oczekujące Zaakceptowane Odrzucone Tabela 4-3 Aplikacja ASP.NET możliwe przejścia pomiędzy stanami zadania Z poziomu widoku listy użytkownik może przejść do widoku szczegółowego każdej pozycji, wyświetlić widok szczegółowy powiązanej faktury, a w przypadku zadań aktywnych możliwa jest ich modyfikacja. Widoki: listy, wraz z kilkoma przykładowymi zadaniami, oraz widok szczegółowy rekordu przedstawiono na rysunkach poniżej. 53

54 Rysunek 4-4 Aplikacja ASP.NET widok listy zadań Rysunek 4-5 Aplikacja ASP.NET widok szczegółowy zadania 54

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 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

Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON

Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON Opis szkoleń z obszaru INFORMATYKA planowanych

Bardziej szczegółowo

TOPWEB SPSall Budowanie portalu intranetowego

TOPWEB SPSall Budowanie portalu intranetowego TOPWEB SPSall Budowanie portalu intranetowego Przeznaczenie szkolenia Szkolenie dla osób chcących: Profesjonalnie budować intranetowy portal w oparciu o aplikację Microsoft SharePoint 2013. Sprawnie posługiwać

Bardziej szczegółowo

Referat pracy dyplomowej

Referat pracy dyplomowej Referat pracy dyplomowej Temat pracy: Wdrożenie intranetowej platformy zapewniającej organizację danych w dużej firmie na bazie oprogramowania Microsoft SharePoint Autor: Bartosz Lipiec Promotor: dr inż.

Bardziej szczegółowo

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152 Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy

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

Część I Rozpoczęcie pracy z usługami Reporting Services

Część I Rozpoczęcie pracy z usługami Reporting Services Spis treści Podziękowania... xi Wprowadzenie... xiii Część I Rozpoczęcie pracy z usługami Reporting Services 1 Wprowadzenie do usług Reporting Services... 3 Platforma raportowania... 3 Cykl życia raportu...

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Aplikacje Internetowe

Aplikacje Internetowe Aplikacje Internetowe ITA-103 Wersja 1 Warszawa, październik 2008 Spis treści Wprowadzenie i-4 Moduł 1 Podstawy HTML 1-1 Moduł 2 Kaskadowe Arkusze Stylów CSS 2-1 Moduł 3 Podstawy JavaScript 3-1 Moduł 4

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

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

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

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

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

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

Programowanie MorphX Ax

Programowanie MorphX Ax Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn

Bardziej szczegółowo

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Małgorzata Barańska Wydział Informatyki i Zarządzania, Politechnika Wrocławska Beata Laszkiewicz Wydział

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

Spis treúci. 1. Wprowadzenie... 13

Spis treúci. 1. Wprowadzenie... 13 Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...

Bardziej szczegółowo

Praca w sieci z serwerem

Praca w sieci z serwerem 11 Praca w sieci z serwerem Systemy Windows zostały zaprojektowane do pracy zarówno w sieci równoprawnej, jak i w sieci z serwerem. Sieć klient-serwer oznacza podłączenie pojedynczego użytkownika z pojedynczej

Bardziej szczegółowo

UML w Visual Studio. Michał Ciećwierz

UML w Visual Studio. Michał Ciećwierz UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować

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

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

Języki i paradygmaty programowania - 1

Języki i paradygmaty programowania - 1 doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.edu.pl http://www.tjeleniewski.wstt.edu.pl Cele przedmiotu Umiejętność zastosowania i oceny przydatności paradygmatów

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

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

SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER. Opr. Barbara Gałkowska

SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER. Opr. Barbara Gałkowska SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER Opr. Barbara Gałkowska Microsoft SharePoint Microsoft SharePoint znany jest również pod nazwą Microsoft SharePoint Products and Technologies

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

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

Podstawy programowania III WYKŁAD 4

Podstawy programowania III WYKŁAD 4 Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.

Bardziej szczegółowo

Podręcznik użytkownika Obieg dokumentów

Podręcznik użytkownika Obieg dokumentów Podręcznik użytkownika Obieg dokumentów Opracowany na potrzeby wdrożenia dla Akademii Wychowania Fizycznego im. Eugeniusza Piaseckiego w Poznaniu W ramach realizacji projektu: Uczelnia jutra wdrożenie

Bardziej szczegółowo

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

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Koszalin, 15.06.2012 r. Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Zespół projektowy: Daniel Czyczyn-Egird Wojciech Gołuchowski Michał Durkowski Kamil Gawroński Prowadzący: Dr inż.

Bardziej szczegółowo

Rozwój systemu WNIOSKOMAT

Rozwój systemu WNIOSKOMAT Rozwój systemu WNIOSKOMAT Wersja 1.0 Projekt jest współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego ISCG Sp. z o. o. Al. Jerozolimskie 174, 02-486 Warszawa Biurowiec

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

Instrukcja użytkownika

Instrukcja użytkownika Instrukcja użytkownika w zakresie obsługi aplikacji internetowej KRAZ Rejestr Podmiotów Prowadzących Agencji Zatrudnienia Spis treści 1. Informacje wstępne... 3 2. Prowadzenie rejestru po zmianie ustawy...

Bardziej szczegółowo

egroupware czy phpgroupware jest też mniej stabilny.

egroupware czy phpgroupware jest też mniej stabilny. Opengroupware to projekt udostępniający kompletny serwer aplikacji oparty na systemie Linux. Dostępny na licencji GNU GPL, strona domowa: http://www.opengroupware.org/ Jego cechy to wysoka stabilność,

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

Oferta szkoleniowa Yosi.pl 2012/2013

Oferta szkoleniowa Yosi.pl 2012/2013 Oferta szkoleniowa Yosi.pl 2012/2013 "Podróżnik nie posiadający wiedzy, jest jak ptak bez skrzydeł" Sa'Di, Gulistan (1258 rok) Szanowni Państwo, Yosi.pl to dynamicznie rozwijająca się firma z Krakowa.

Bardziej szczegółowo

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.wroc.pl http://www.tjeleniewski.wstt.edu.pl Treści kształcenia: Paradygmaty

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

WEBCON Business Process Suite 7.7. Lista zmian i nowych funkcjonalności

WEBCON Business Process Suite 7.7. Lista zmian i nowych funkcjonalności WEBCON Business Process Suite 7.7 Lista zmian i nowych funkcjonalności Wersja 7.7 systemu WEBCON Business Process Suite niesie ze nową funkcjonalność i znaczące usprawnienia. Całkowitą nowością jest wprowadzenie

Bardziej szczegółowo

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r.

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Stworzenie platformy internetowej na potrzeby projektu. 1 Wykonanie portalu internetowego na potrzeby e-usługi, obejmującego

Bardziej szczegółowo

Monitoring procesów z wykorzystaniem systemu ADONIS

Monitoring procesów z wykorzystaniem systemu ADONIS Monitoring procesów z wykorzystaniem systemu ADONIS 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

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

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

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI Sprawne zarządzanie projektami Tworzenie planów projektów Zwiększenie efektywności współpracy Kontrolowanie i zarządzanie zasobami jak również pracownikami Generowanie raportów Zarządzaj projektami efektywnie

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

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk Nip 848-172-84-22 ZAPYTANIE OFERTOWE Firma DOMSET Marcin Brochacki zwraca się z prośbą o przesłanie oferty cenowej

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

InPro BMS InPro BMS SIEMENS

InPro BMS InPro BMS SIEMENS InPro Siemens OPC InPro BMS Produkt InPro BMS jest w sprzedaży od 2000 roku. W ostatnich kilku latach staliśmy się liderem wśród dostawców informatycznych rozwiązań dla systemów bezpieczeństwa. Oferowane

Bardziej szczegółowo

Przewodnik instalacji i rozpoczynania pracy. Dla DataPage+ 2013

Przewodnik instalacji i rozpoczynania pracy. Dla DataPage+ 2013 Przewodnik instalacji i rozpoczynania pracy Dla DataPage+ 2013 Ostatnia aktualizacja: 25 lipca 2013 Spis treści Instalowanie wymaganych wstępnie komponentów... 1 Przegląd... 1 Krok 1: Uruchamianie Setup.exe

Bardziej szczegółowo

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK

Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Problemy optymalizacji, rozbudowy i integracji systemu Edu wspomagającego e-nauczanie i e-uczenie się w PJWSTK Paweł Lenkiewicz Polsko Japońska Wyższa Szkoła Technik Komputerowych Plan prezentacji PJWSTK

Bardziej szczegółowo

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji System informatyczny na produkcji: Umożliwi stopniowe, ale jednocześnie ekonomiczne i bezpieczne wdrażanie i rozwój aplikacji przemysłowych w miarę zmiany potrzeb firmy. Może adoptować się do istniejącej

Bardziej szczegółowo

System zarządzający grami programistycznymi Meridius

System zarządzający grami programistycznymi Meridius System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu

Bardziej szczegółowo

Kurs Wizualizacja z WinCC SCADA - Zaawansowany. Spis treści. Dzień 1. I VBS w WinCC podstawy programowania (zmienne, instrukcje, pętle) (wersja 1410)

Kurs Wizualizacja z WinCC SCADA - Zaawansowany. Spis treści. Dzień 1. I VBS w WinCC podstawy programowania (zmienne, instrukcje, pętle) (wersja 1410) Spis treści Dzień 1 I VBS w WinCC podstawy programowania (zmienne, instrukcje, pętle) (wersja 1410) I-3 VBS w WinCC - Informacje ogólne I-4 Zastosowanie VBS w WinCC Runtime I-5 Wykorzystanie i wydajność

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

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ Systemy baz danych 1. 2 Wstęp do baz danych 2. 2 Relacyjny model baz danych. 3. 2 Normalizacja baz danych. 4. 2 Cechy

Bardziej szczegółowo

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Wrocław 2006 INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl INTERNETOWE BAZY DANYCH PLAN NA DZIŚ zajęcia 1: 2. Procedury składowane

Bardziej szczegółowo

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych

Bardziej szczegółowo

Michał Adamczyk. Język UML

Michał Adamczyk. Język UML Michał Adamczyk Język UML UML I. Czym jest UML Po co UML II.Narzędzia obsługujące UML, edytory UML III.Rodzaje diagramów UML wraz z przykładami Zastosowanie diagramu Podstawowe elementy diagramu Przykładowy

Bardziej szczegółowo

Środowiska i platformy programistyczne

Środowiska i platformy programistyczne Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,

Bardziej szczegółowo

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Wprowadzenie Modelowanie biznesowe jest stykiem między

Bardziej szczegółowo

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

ZAMAWIAJĄCY. CONCEPTO Sp. z o.o. Grodzisk Wielkopolski, dnia 11.02.2013r. ZAMAWIAJĄCY z siedzibą w Grodzisku Wielkopolskim (62-065) przy ul. Szerokiej 10 realizując zamówienie w ramach projektu dofinansowanego z Programu Operacyjnego

Bardziej szczegółowo

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk Nip 848-172-84-22 ZAPYTANIE OFERTOWE Firma DOMSET Marcin Brochacki zwraca się z prośbą o przesłanie oferty cenowej

Bardziej szczegółowo

Webowy generator wykresów wykorzystujący program gnuplot

Webowy generator wykresów wykorzystujący program gnuplot Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin Nowak nr albumu: 254118 Praca inżynierska na kierunku informatyka stosowana Webowy generator wykresów wykorzystujący

Bardziej szczegółowo

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych ZAPYTANIE OFERTOWE Wsparcie projektów celowych Wrocław, dnia 01 października 2011 r. Zwracamy się z prośbą o przedstawienie oferty handlowej na zakup systemu zarządzania procesami w ramach Działania 1.4

Bardziej szczegółowo

Tomasz Grześ. Systemy zarządzania treścią

Tomasz Grześ. Systemy zarządzania treścią Tomasz Grześ Systemy zarządzania treścią Co to jest CMS? CMS (ang. Content Management System System Zarządzania Treścią) CMS definicje TREŚĆ Dowolny rodzaj informacji cyfrowej. Może to być np. tekst, obraz,

Bardziej szczegółowo

PLATFORMA ACTIVE FORMS. Kreator Formularzy Internetowych ze wsparciem dla RWD

PLATFORMA ACTIVE FORMS. Kreator Formularzy Internetowych ze wsparciem dla RWD PLATFORMA ACTIVE FORMS Kreator Formularzy Internetowych ze wsparciem dla RWD ACTIVE FORMS 2 Spis treści WPROWADZENIE 3 Dowolnie złożone formularze 3 Niski czas i koszt zbudowania formularza 4 TOP 10 WŁAŚCIWOŚCI

Bardziej szczegółowo

UML cz. III. UML cz. III 1/36

UML cz. III. UML cz. III 1/36 UML cz. III UML cz. III 1/36 UML cz. III 2/36 Diagram współpracy Diagramy współpracy: prezentują obiekty współdziałające ze sobą opisują rolę obiektów w scenariuszu mogą prezentować wzorce projektowe UML

Bardziej szczegółowo

Hurtownie danych - przegląd technologii

Hurtownie danych - przegląd technologii Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel

Bardziej szczegółowo

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

Jednolite zarządzanie użytkownikami systemów Windows i Linux Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Paweł Gliwiński Nr albumu: 168470 Praca magisterska na kierunku Informatyka Jednolite

Bardziej szczegółowo

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty przedmiotu Stopień studiów i forma: Rodzaj przedmiotu Kod przedmiotu Grupa kursów Zaawansowane techniki analizy

Bardziej szczegółowo

aplikacja akcyzattor

aplikacja akcyzattor Wdrożenie systemu służącego do prowadzenia ewidencji energii elektrycznej w formie elektronicznej dla potrzeb rozliczeń podatku akcyzowego aplikacja akcyzattor Klient: KGHM Polska Miedź S.A. Klient KGHM

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Szpieg 2.0 Instrukcja użytkownika

Szpieg 2.0 Instrukcja użytkownika Szpieg 2.0 Instrukcja użytkownika Spis treści: Wstęp: 1. Informacje o programie 2. Wymagania techniczne Ustawienia: 3. Połączenie z bazą danych 4. Konfiguracja email 5. Administracja Funkcje programu:

Bardziej szczegółowo

System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa?

System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa? System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa? Koszalin, 15-16.05.2006 III Zawodowa Konferencja Zawód kartografa 200910151500 Agenda 1. Koncepcja SKBDT 2. Podstawowe założenia koncepcji

Bardziej szczegółowo

Centrum Informacji Społeczno-Gospodarczej

Centrum Informacji Społeczno-Gospodarczej Instrukcja użytkownika w zakresie obsługi aplikacji internetowej KRAZ Rejestr Podmiotów Prowadzących Agencji Zatrudnienia Strona 2 1. Informacje wstępne W związku z nowelizacją Ustawy o Promocji Zatrudnienia

Bardziej szczegółowo

Ćwiczenie 1. Modelowanie prostego procesu

Ćwiczenie 1. Modelowanie prostego procesu Ćwiczenie 1. Modelowanie prostego procesu Część 1. Definiowanie nowego projektu 1. Uruchom narzędzie TIBCO Business Studio. 2. Z menu wybierz File -> New -> Project... 3. W oknie dialogowym New Project

Bardziej szczegółowo

JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE]

JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE] JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE] Parę słów o mnie 2 Nauczyciel akademicki od 2000 roku Od 2002 współpracuję z firmami jako programista i projektant aplikacji Od 2006 roku właściciel firmy

Bardziej szczegółowo

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

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką? ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest

Bardziej szczegółowo

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Temat projektu/pracy dr inż. Wojciech Waloszek Grupowy system wymiany wiadomości. Zaprojektowanie

Bardziej szczegółowo

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

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS

Bardziej szczegółowo

Projektowanie aplikacji internetowych Tworzenie własnego portalu Internetowego przy użyciu oprogramowania SharePoint Services

Projektowanie aplikacji internetowych Tworzenie własnego portalu Internetowego przy użyciu oprogramowania SharePoint Services Instrukcja numer W01 Projektowanie aplikacji internetowych Tworzenie własnego portalu Internetowego przy użyciu oprogramowania SharePoint Services SharePoint Zasada działania Zasada działania SharePoint

Bardziej szczegółowo

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

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015 Warszawa, 23.01.2015r. NIP: 521-32-79-750 Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015 I. Wstęp W związku z realizacją projektu Wdrożenie i świadczenie usługi w modelu SaaS eakceptacje,

Bardziej szczegółowo

Platforma Cognos. Agata Tyma CMMS Department Marketing & Sales Specialist atyma@aiut.com.pl. 2011 AIUT Sp. z o. o.

Platforma Cognos. Agata Tyma CMMS Department Marketing & Sales Specialist atyma@aiut.com.pl. 2011 AIUT Sp. z o. o. Platforma Cognos Agata Tyma CMMS Department Marketing & Sales Specialist atyma@aiut.com.pl Business Intelligence - Fakty Kierownicy tracą około 2 godzin dziennie na szukanie istotnych informacji. Prawie

Bardziej szczegółowo

Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin

Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin Plan prezentacji euw: 1. Architektura systemu i komponenty 2. Zarządzanie obszarem wspólnym 3. Wniosek

Bardziej szczegółowo

Dokumentacja Administratora portalu. aplikacji. Wirtualna szkoła

Dokumentacja Administratora portalu. aplikacji. Wirtualna szkoła Dokumentacja Administratora portalu aplikacji Wirtualna szkoła aktualna na dzień 20.12.2012 Wykonawca: Young Digital Planet SA 2012 Strona 2 z 15 Spis Treści Wirtualna szkoła SYSTEM ZARZĄDZANIA NAUCZANIEM...

Bardziej szczegółowo

1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4

1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4 1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4 2 Tabele przestawne, wykresy przestawne i formatowanie warunkowe 11 Co to

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

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Maciej Kiewra mkiewra@qbico.pl. Quality Business Intelligence Consulting http://www.qbico.pl

Maciej Kiewra mkiewra@qbico.pl. Quality Business Intelligence Consulting http://www.qbico.pl Maciej Kiewra mkiewra@qbico.pl Quality Business Intelligence Consulting http://www.qbico.pl Wstęp Integration Services narzędzie do integracji danych Pomyślane do implementacji procesów ETL Extract ekstrakcja

Bardziej szczegółowo

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie

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

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

Aplikacje Internetowe

Aplikacje Internetowe Aplikacje Internetowe ITA-103 Wersja 1 Warszawa, październik 2008 2008 Piotr Bubacz. Autor udziela prawa do bezpłatnego kopiowania i dystrybuowania wśród pracowników uczelni oraz studentów objętych programem

Bardziej szczegółowo

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

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 I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego

Bardziej szczegółowo

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury

Bardziej szczegółowo

FORMULARZ OFERTOWY. Termin dostarczenia dokumentu 1

FORMULARZ OFERTOWY. Termin dostarczenia dokumentu 1 strona 1 Zał. 1 do zapytania ofertowego FORMULARZ OFERTOWY Opteam S.A. o/lublin ul. Budowlana 30 20-469 Lublin W związku z realizacją projektu pod nazwą,,opracowanie nowoczesnego i zaawansowanego systemu

Bardziej szczegółowo

INFORMATYKA Pytania ogólne na egzamin dyplomowy

INFORMATYKA Pytania ogólne na egzamin dyplomowy INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja

Bardziej szczegółowo