Artykuły

BPMstandard.pl używa cookies.

Brak zmiany ustawienia przeglądarki oznacza Twoją zgodę.

Zrozumiałem
09Mar2015

Modelowanie procesów w projektowaniu systemów informatycznych

modelowanie procesowModelowanie procesowe to kolejne – po obiektowym i strukturalnym – podejście do tworzenia systemów informatycznych. Pozwala na wysokim poziomie abstrakcji uchwycić aspekty biznesowe, projektowe i implementacyjne. Jest częścią praktycznie wszystkich metodyk tworzenia systemów, a od jego opracowania rozpoczyna się większość projektów.

Pierwsze metody tworzenia systemów informatycznych (metody strukturalne) były ściśle związane z dostępnymi narzędziami implementacyjnymi, a dokładnie ze strukturalnymi językami programowania. W kontekście budowy wielkich rozwiązań angażujących duże zespoły projektowe metody te nie zdawały egzaminu. Większość dużych projektów kończyło się przekroczeniem budżetu lub niedotrzymanie terminów. Powstanie języków obiektowych wpłynęło nie tylko na zmianę sposobu implementowania systemów a również na sposób ich analizowania i projektowania (metody obiektowe). Systemy zaczęto postrzegać jako grupę komunikujących się obiektów, składających się z danych i metod na nich operujących. Kolejnym krokiem w rozwoju inżynierii oprogramowania jest stosowanie podejścia procesowego do modelowania i implementowania systemów. Tak jak w podejściu obiektowym podstawowym elementem jest obiekt, tak w modelowaniu procesowym jest proces. W podejściu procesowym system to zbiór komunikujących się ze sobą obiektów, których zachowanie sterowane jest przez procesy. Taki sposób postrzegania systemów informatycznych wynika z procesowego podejścia do zarządzania organizacją. Przedsiębiorstwa zarządzane poprzez zarządzanie procesami w nim zachodzącymi potrzebują rozwiązań informatycznych, które będą je wspierały. Wykorzystanie modelowania procesowego w tworzeniu systemów informatycznych polega na prowadzeniu prac projektowych oraz programistycznych w oparciu o model procesów. Taki sposób działania określa się jako programowanie zorientowane na procesy. Model procesów biznesowych organizacji może zostać bezpośrednio przełożony na model procesów, które będą implementowane w systemie. Zależność ta wpływa na zmniejszenie ryzyka zbudowaniu rozwiązania, które nie będzie realizowało określonych we wczesnej fazie projektu założeń (problem źle zdefiniowanych wymagań). Jeśli system informatyczny ma automatyzować procesy organizacji, to model tych procesów określa w dużym stopniu sposób działania tego systemu.

W praktyce podejście procesowe wykorzystywane jest wraz z podejściem obiektowym i strukturalnym. Według najbardziej rozpowszechnionych metodyk, m.in. Rational Unified Process, pierwszym etapem tworzenia systemów jest modelowanie procesów biznesowych. Kolejne to definiowanie przypadków użycia, związanych z nimi artefaktów (np. diagramy sekwencji i aktywności UML, klasy analityczne), a następnie diagramów klas i modeli danych. Te trzy główne etapy odpowiadają podejściom: procesowym, obiektowym i strukturalnym. Istotne jest, aby tworzone w ramach różnych podejść produkty analityczne, projektowe i implementacyjne były od siebie zależne i wzajemnie z siebie wynikały (Rysunek 1).

pb systemy

Rysunek 1 Zależności pomiędzy artefaktami analitycznymi

Model procesów pozwala zrozumieć sposób funkcjonowania organizacji a za tym zdefiniować jej potrzeby pod kątem systemów informatycznych (wymagania). Pewne fragmenty procesów biznesowych, które określają wymagania funkcjonalne mogą odpowiadać przypadkom użycia. Oznacza to, że czynności wykonywane w ramach procesu są czynnościami systemowymi wykonywanymi nie tylko w kontekście procesów. Przykładem może być rejestracji sprawy. Czynności ta może być wykonywana jako funkcja systemu dostępna dla użytkowników poza procesem biznesowym, może również być realizowana jako jeden z kroków procesu. W takiej sytuacji przypadek użycia związany z rejestracją odpowiada odpowiedniej czynności procesu. Innym przykładem zależności pomiędzy procesami a przypadkami użycia jest sytuacja, w której wywołanie przypadku użycia (wybranie funkcji w systemie) powoduje utworzenie nowej instancji procesu i rozpoczęcie jego obsługi. Zachowanie poszczególnych czynności procesu może być również implementowane przez mechanizmy nieuwzględnione w przypadkach użycia. Są to najczęściej działania systemu, które nie są widoczne dla użytkownika a wpływają na poprawne wykonywanie instancji procesu.