Edytor do modelowania przepływów biznesowych

Transkrypt

Edytor do modelowania przepływów biznesowych
Uniwersytet Warszawski
Wydział Matematyki, Informatyki i Mechaniki
Zuzanna Polberg
Nr albumu: 201084
Edytor do modelowania przepływów
biznesowych
Praca licencjacka
na kierunku INFORMATYKA
Praca wykonana pod kierunkiem
Agaty Janowskiej.
Czerwiec 2006
Oświadczenie kierujacego
˛
praca˛
Potwierdzam, że niniejsza praca została przygotowana pod moim kierunkiem i kwalifikuje si˛e do przedstawienia jej w post˛epowaniu o nadanie tytułu zawodowego.
Data
Podpis kierujacego
˛
praca˛
Oświadczenie autora (autorów) pracy
Świadom odpowiedzialności prawnej oświadczam, że niniejsza praca dyplomowa została
napisana przeze mnie samodzielnie i nie zawiera treści uzyskanych w sposób niezgodny z
obowiazuj
˛ acymi
˛
przepisami.
Oświadczam również, że przedstawiona praca nie była wcześniej przedmiotem procedur
zwiazanych
˛
z uzyskaniem tytułu zawodowego w wyższej uczelni.
Oświadczam ponadto, że niniejsza wersja pracy jest identyczna z załaczon
˛
a˛ wersja˛ elektroniczna.˛
Data
Podpis autora (autorów) pracy
Streszczenie
Pierwsza cz˛eść zawiera ogólny opis stworzonego produktu. Druga˛ cz˛eść stanowi mój wkład pracy
w powstanie aplikacji. Prac˛e nad produktem podzieliłam na trzy cz˛eści. Pierwsza z nich opisuje
przeglad
˛ i analiz˛e dost˛epnych narz˛edzi do tworzenia edytorów w środowisku Eclipse. Druga to wybór
odpowiedniego narz˛edzia oraz opis cz˛eści implementacji napisanej przeze mnie. W końcu ostatnia
cz˛eść opisuje stworzone przeze mnie dokumenty oraz prezentacje.
Słowa kluczowe
przepływ biznesowy
Dziedzina pracy (kody wg programu Socrates-Erasmus)
11.3 Informatyka
Klasyfikacja tematyczna
D.2.11 Software Architectures
J.1 Administrative data processing
Tytuł pracy w j˛ezyku angielskim
Business process data flow application.
Spis treści
1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
2. Podstawowe poj˛ecia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1. Definicje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Modelowanie przepływów biznesowych . . . . . . . . . . . . . . . . . . . . . . . .
7
7
7
3. Inne sposoby realizacji obsługi przepływów biznesowych . . . . . . . . . . . . . . . .
9
3.1. Opis werbalny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
3.2. Opis tekstowy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
3.3. R˛eczne modelowanie przepływów biznesowych . . . . . . . . . . . . . . . . . . . .
9
3.4. Realizacja modelowania przepływów biznesowych przez wyspecjalizowane w tej dziedzinie
firmy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
3.5. Inne narz˛edzia informatyczne do modelowania przepływów biznesowych . . . . . . 10
4. Opis produktu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
5. Dokumentacja użytkowa i opis implementacji . . . . . . . . . . . . . . . . . . . . . . .
13
6. Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
7. Wkład w powstanie aplikacji . . . . . . . . . . . .
7.1. Wprowadzenie . . . . . . . . . . . . . . . . .
7.2. Dokumenty i prezentacje . . . . . . . . . . . .
7.3. Analiza możliwych rozwiazań
˛
. . . . . . . . .
7.4. Implementacja . . . . . . . . . . . . . . . . . .
7.4.1. Pakiet figures poza klasa˛ HeadingFigure
7.4.2. Magazyny . . . . . . . . . . . . . . . .
17
17
17
18
18
18
18
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Rozdział 1
Wprowadzenie
Edytor do modelowania przepływów biznesowych jest narz˛edziem usprawniajacym
˛
prac˛e firm
oraz innych jednostek, dla których można zdefiniować jakiekolwiek zależności pomi˛edzy ich poszczególnymi elementami.
System ’Process Data Flow’ pomaga znaleźć i sprecyzować te zależności. Pozwala na zdefiniowanie zadań oraz ich kosztów i na tej podstawie analizuje działalność firmy pod wybranymi przez
użytkownika aspektami.
Pierwsza cz˛eść pracy składa si˛e z sześciu rozdziałów. Pierwszy rozdział stanowi krótkie wprowadzenie doprzedstawionego tematu. W rozdziale 2. zdefiniowano podstawowe poj˛ecia zwiazane
˛
z modelowaniem przepływów biznesowych oraz z systemem ’Process Data Flow’. Rozdział 3. przedstawia
inne, konkurencyjne dla naszego, sposoby modelowania przepływów biznesowych. W rozdziale 4.
znajduje si˛e krótki opis stworzonego przez nas produktu, natomiast w kolejnym rozdziale opisana
jest dost˛epna dla niego dokumentacja użytkowa. Ostatni rozdział zawiera przemyślenia dotyczace
˛
korzyści, jakie może przynieść stosowanie naszego produktu oraz sposobów, w jakie można go dalej
rozszerzać.
5
Rozdział 2
Podstawowe poj˛ecia
Podstawowym poj˛eciem z dziedziny modelowania i analizy przepływów biznesowych jest bez
watpienia
˛
PRZEPŁYW BIZNESOWY.
PRZEPŁYW BIZNESOWY jest to zbiór przepływów danych pomi˛edzy parami elementów modelowanej jednostki. Jest to zbiór wzajemnie powiazanych
˛
elementarnych procesów zachodzacych
˛
w
danej jednostce. Zbiór ten jest realizowany w celu osiagni˛
˛ ecia pewnego celu biznesowego. Podczas
realizacji przepływu biznesowego zadania lub informacje sa˛ przesyłane od jednego uczestnika do
kolejnego zgodnie z właściwymi dla danej jedostki regułami post˛epowania.
2.1. Definicje
• PDF (Process Data Flow)
niniejszy projekt, narz˛edzie do generowania i analizowania przepływów danych.
• JPEG (Joint Process Experts Group)
zespół realizujacy
˛ ten projekt w składzie (Zuzanna Polberg, Joanna Zych, Paweł Maćkowski,
Mikołaj Moszczyński).
2.2. Modelowanie przepływów biznesowych
Modelowanie przepływów biznesowych polega na usystematyzowaniu procesów zachodzacych
˛
w modelowanym przedsi˛ebiorstwie w celu optymalizacji przebiegu ich realizacji. Głównym efektem stworzenia dobrego modelu przepływów biznesowych jest możliwość realizacji strategii firmy w
sposób jak najszybszy i jak najbardziej powtarzalny.
W obecnym okresie szybkiego rozwoju gospodarczego modelowanie przepływów biznesowych
staje si˛e bardzo istotnym zagadnieniem. Procesy biznesowe firmy powinny zmieniać si˛e równie szybko jak otaczajace
˛ firm˛e realia gospodarcze.
Z powodu rozwoju tej dziedziny tworzone modele sa˛ coraz bardziej rozbudowane i coraz bardziej
skomplikowane. Niezb˛ednym wi˛ec staje si˛e profesjonalne narz˛edzie do tworzenia takich modeli.
Modelowanie przepływów biznesowych zachodzacych
˛
w dowolnym przedsi˛ebiorstwie staje si˛e w
dzisiejszych czasach niezb˛edne. Firmy, które nie modeluja˛ na bieżaco
˛ zachodzacych
˛
w nich procesów
staja˛ si˛e niekonkurencyjne z powodu niezadowalajacego
˛
stosunku efektów pracy do poniesionych
kosztów ich wytworzenia.
Modelowanie przepływów biznesowych ma za zadanie ułatwić odpowiedzi na jakże cz˛esto stawiane przez przedsi˛ebiorców pytania:
7
• W jaki sposób działa moja firma?
• Jakie procedury sa˛ realizowane przez moja firm˛e?
• Czy te procedury sa˛ przeprowadzane w sposób optymalny?
• Czy można poprawić efektywność przeprowadzanych procedur?
Modelowanie przepływów biznesowych pomaga zrozumieć sposób, w jaki funkcjonuje przedsi˛ebiorstwo. Pozwala przeanalizować realizowane przez niego zadania: zarówno w całości jak i jego
poszczególne etapy.
Wymienione powyżej cechy pozwalaja˛ nam na łatwe dostrzeżenie celu, jaki stawia si˛e przed efektami zastosowania modelowania przepływów biznesowych. Celem tym jest niewatpliwie
˛
uzyskanie
sposobu na redukcj˛e kosztów działań, usprawnienie skomplikowanych procedur oraz maksymalne
wykorzystanie potencjału pracowników.
8
Rozdział 3
Inne sposoby realizacji obsługi
przepływów biznesowych
3.1. Opis werbalny
Jest to bez watpienia
˛
najprostszy sposób opisu przepływów biznesowych. Polega on na ustnym
raportowaniu o działalności firmy. Jest to sposób bardzo nieprecyzyjny, a stosowanie go prowadzi
do wielu dwuznaczności. Przekazywane informacje nie sa˛ trwałe, wi˛ec nie moga˛ być wykorzystane
ponownie. Brak jakichkolwiek możliwości analiz.
3.2. Opis tekstowy
Od opisu werbalnego różni si˛e jedynie tym, że jest przekazywany w sposób pisemny. Dzi˛eki temu
można wprowadzić archiwum raportów i wykorzystywać je w późniejszej działalności firmy. Jednak,
tak samo jak przy zastosowaniu sposobu opisanego w podpunkcie 2.1., wyst˛epuje tu wiele nieprecyzyjności i dwuznaczności. R˛eczne analizowanie danych na podstawie materiałów składowanych w
archiwum jest trudne, bardzo ograniczone i w żaden sposób niedajace
˛ si˛e zautomatyzować.
3.3. R˛eczne modelowanie przepływów biznesowych
Sposób ten polega na odr˛ecznym tworzeniu modelów przepływów biznesowych. Jest zdecydowanie lepszy i bardziej precyzyjny od dwóch poprzednich sposobów, jednak przy wi˛ekszych modelach staje si˛e bardzo ucia˛żliwy. R˛eczne rysowanie jest żmudne, trudno też wprowadzić jakakolwiek
˛
unifikacj˛e takich modeli. Analizowanie powstałych modeli jest trudne, a przy wi˛ekszych modelach
bardzo ograniczone ze wzgl˛edu na liczb˛e możliwych do przeanalizowania aspektów.
3.4. Realizacja modelowania przepływów biznesowych przez wyspecjalizowane w tej dziedzinie firmy
Istnieje wiele firm specjalizujacych
˛
si˛e w usłudze modelowania przepływów biznesowych w
przedsi˛ebiorstwach. Firmy te zatrudniaja˛ osoby z dużym doświadczeniem, jednak osoby te nie
znaja˛ funkcjonowania konkretnego przedsi˛ebiorstwa a za tego typu usługi żadaj
˛ a˛ pot˛eżnego wynagrodzenia.
9
3.5. Inne narz˛edzia informatyczne do modelowania przepływów biznesowych
Na rynku istnieje wiele programów do definiowania diagramów przepływów danych, jednak tego
typu programy nie oferuja˛ szerokiej możliwości analizy tych przepływów, nie udost˛epniaja˛ tych
danych publicznie, nie przechowuja˛ centralnej bazy danych oraz całości modeli przepływów. Dodatkowo jest to w wi˛ekszości przypadków oprogramowanie płatne.
10
Rozdział 4
Opis produktu
Standardem w dużych przedsi˛ebiorstwach stał si˛e podział firmy na pomniejsze jednostki (np.
departamenty), które moga˛ dzielić si˛e na jeszcze mniejsze (np. wydziały) itd. Każda z tych jednostek
odpowiedzialna jest za pewien obszar i w mniejszym badź
˛ wi˛ekszym stopniu współpracuje z innymi
jednostkami. Zależności pomi˛edzy tymi jednostkami moga˛ być różne.
Za podział obowiazków
˛
w firmie oraz wydatki przedsi˛ebiorstwa odpowiedzialne jest kierownictwo. Jednak w sytuacji gdy firma liczy sobie kilka tysi˛ecy pracowników, trudnościa˛ staje si˛e
zarzadzanie
˛
pracownikami oraz wydatkami na poszczególne jednostki. Duże przedsi˛ebiorstwa potrzebuja˛ wi˛ec produktu, który w łatwy sposób ułatwi zarzadzanie
˛
nie tylko wydatkami ale i przepływem
informacji, zasobów, pracy. Istnieja˛ firmy specjalizujace
˛ si˛e tego typu działalnościa˛ jednak sa˛ one
bardzo drogie i inwestycja ta może stać si˛e nie opłacalna.
Nasz program pomaga jawnie sprecyzować wymienione wcześniej zależności oraz w łatwy sposób
pamaga wyliczać zdefiniowane charakterystyki.
Naszym celem nie sa˛ jedynie duże przedsi˛ebiorstwa. Przykładowo, program nasz pozwoli kilkuosobowej grupie informatyków określić zadania, zasoby oraz czasy poszczególnych osób i po określeniu przepływu prac pozwolić programowi wygenerować całkowity czas, koszt projektu oraz łatwo
zsynchronizować ich prac˛e.
Nasza aplikacja pomaga zarzadzać
˛
przepływami informacji w firmie, mianowicie: tworzeniem
przepływów, określaniem zależności pomi˛edzy procesami oraz tworzeniem zbiorczych raportów na
podstawie tych diagramów.
Korzyści biznesowe Zamawiajacego
˛
korzystajacego
˛
z produktu ’PDF’:
˛
w firmie
• Usprawnienie współpracy wśród pracowników pracujacych
• Jasne określenie zadań z firmie
• Sformalizowanie poj˛ecia przepływu informacji w obszarze zainteresowań firmy
• Jawne zdefiniowanie danych oraz obiektów pomi˛edzy którymi dane te przepływaja˛
• Jawne określenie czynników zwiazanych
˛
z przepływem tych danych od jakich ten przepływ
zależy, oraz zwiazane
˛
z tym przepływem charakterystyki
• Automatyczne wyliczanie charakterystyk dla całego procesu
Dla osoby zarzadzaj
˛
acej
˛ zespołem badź
˛ wi˛eksza˛ firma˛ program ’PDF’ b˛edzie w stanie szybko
wyliczyć koszty, określić czas czy odpowiedzieć na pytanie czy zdefiniowany dla każdego pracownika
harmonogram pracy jest efektywny.
11
Rozdział 5
Dokumentacja użytkowa i opis
implementacji
Program przygotowany jest dla dwóch systemów operacyjnych: Windows oraz Linux. Jest on
napisany jako plugin do środowiska Eclipse. Do jego działania potrzebne jest wi˛ec zainstalowanie
tego środowiska a także wirtualnej maszyny Javy.
Dost˛epna jest szeroka dokumentacja naszej aplikacji, w skład której wchodza˛ nast˛epujace
˛ dokumenty:
• Vision
• Software Development Plan
• Business Use Cases
• Software Architecture Document
• Use Cases
• Acceptance Plan
• Test Plan
• Release Raport
Poza tym przygotowana jest pełna dokumentacja javadoc, instrukcja zainstalowania bazy danych
oraz podr˛ecznik użytkownika.
13
Rozdział 6
Podsumowanie
Dzi˛eki korzystaniu z programu ’PDF’:
• Firma b˛edzie mogła zrezygnować z cz˛eści prowadzonej dokumentacji
• Codzienna praca wielu pracowników zostanie ułatwiona poprzez zautomatyzowanie pewnych
procedur
• Zdefiniuje si˛e jawny podział obowiazków
˛
pomi˛edzy pracowników, ich obowiazki
˛
stana˛ si˛e
kontrolowane a efekty ich pracy b˛eda˛ dokumentowane
• Dzi˛eki konfrontacji zdefiniowanego wcześniej procesu z faktycznym stanem, b˛edzie można
sprawniej określić kolejne projekty i korygujac
˛ bł˛edy bardziej precyzyjnie przewidywać efekty
kolejnych zadań
• Zwi˛ekszona zostanie wydajność pracy zatrudnionych osób
• Zwi˛ekszona zostanie efektywność przeprowadzanych procesów biznesowych oraz ułatwione
zostanie wprowadzanie w nich zmian, a co za tym idzie zwi˛ekszy si˛e zdolność adaptacji firmy
do zachodzacych
˛
zmian oraz zmniejszony zostanie koszt wprowadzania tych zmian
• Firma b˛edzie bardziej konkurencyjna na rynku
W przyszłości do naszej aplikacji łatwo b˛edzie można dodać nowe funkcjonalności i dzi˛eki temu
uzyskać narz˛edzie, które b˛edzie można wykorzystać w nast˛epujacych
˛
dziedzinach:
• tworzenie prognoz finansowych
• prognozowanie zmian na rynkach finansowych
• prognozowanie zachowań na giełdzie papierów wartościowych
• prognozowanie optymalnych inwestycji pieni˛eżnych
• prognozowanie zachowań konsumentów
• prognozowanie trendów w gospodarce
• pomoc w podjejmowaniu właściwych decyzji w takich dziedzinach jak finanse, zarzadzanie
˛
i
marketing
• wyliczanie ryzyka inwestycji
15
Rozdział 7
Wkład w powstanie aplikacji
7.1. Wprowadzenie
Etapy mojej pracy nad projektem:
• wybór narz˛edzia do stworzenia graficznego edytora
– analiza dost˛epnych narz˛edzi
– wybór odpowiedniego narz˛edzia
– wnikliwa analiza dost˛epnej dokumentacji oraz wszelkich innych materiałów dotyczacych
˛
interesujacego
˛
mnie narz˛edzia
• implementacja klas interfejsu
– stworzenie prototypu interfejsu
– finalny pakiet Figures poza klasa˛ HeadingFigure
– pomysł na nowa˛ funkcjonalność aplikacji - obsług˛e magazynów oraz jej pełna implementacja
7.2. Dokumenty i prezentacje
W trakcie tworzenia produktu powstało wiele dokumentów. Poniżej znajduje si˛e lista dokumentów napisanych przeze mnie:
• Business Use Cases
• Software Architecture Document (fragmenty wersji pierwszej + prawie cała wersja ostateczna)
• Vision (poprawki)
• Końcowy opis produktu
Podczas zaj˛eć wspólnie przygotowałam oraz pomogłam wygłosić prezentacj˛e na temat CVS’a
(Concurrent Versions System).
17
7.3. Analiza możliwych rozwiaza
˛ ń
Moja˛ prac˛e nad interfejsem graficznym edytora można podzielić na trzy etapy:
• przeglad
˛ dost˛epnych narz˛edzi do tworzenia takiego interfejsu
• pierwszy prototypowy interfejs napisany za pomoca˛ biblioteki SWT (Standard Widget Toolkit)
• prototyp interfejsu napisanego w GEF’ie (Graphical Editor Framework)
• cz˛eściowa implementacja końcowego interfejsu
Swoja˛ prac˛e na projektem zacz˛ełam od poznawania narz˛edzi do pisania interfejsów graficznych
w środowisku Eclipse. Na poczatku
˛ zaj˛ełam si˛e biblioteka˛ SWT. Nast˛epnie przeszłam do narz˛edzia
o nazwie GEF. Zapoznałam si˛e z dost˛epna˛ dla niego dokumentacja˛ i na podstawie jej oraz innych
znalezionych materiałów napisałam pierwsza,˛ prototypowa˛ wersj˛e interfejsu.
7.4. Implementacja
Od poczatku
˛ powstawania projektu brałam udział w tworzeniu interfejsu graficznego. Napisałam
kilka klas w całości oraz fragmenty wielu innych, w tym mi˛edzy innymi:
• cz˛eść pakietu model
• cz˛eść pakietu editparts
7.4.1. Pakiet figures poza klasa˛ HeadingFigure
Jest to cz˛eść projektu odpowiedzialna za wyglad
˛ elementów na planszy.
7.4.2. Magazyny
Dodałam do projektu nowa˛ funkcjonalność - obsług˛e magazynów. Magazyny sa˛ to elementy, w
których można składować dowolne towary. Do magazynów można dostarczać towary, klienci zaś
moga˛ z magazynów takie towary zamawiać. Napisałam pełna˛ obsług˛e tej funkcjonalności: poczynajac
˛ od odpowiednich figur i elementów w modelu na funkcjach obsługujacych
˛
zamówienia klientów
i dostawy kończac.
˛
18