Przejdź do głównej treści

Czym jest analiza obiektowa?

Katgoria: ERP / Utworzono: 14 październik 2012

Poziomy szczegółowości wymagań – wzorce DDD – czyli czym jest analiza obiektowa

Analiza wymagań to temat rzeka, metody są różne ale nie będę pisał o znanych mi, tylko o pewnym podejściu „systemowym” zorientowanym na modele i wzorce projektowe. Ale po kolei.
 

Autor: Jarosław Żeliński

Ile mamy poziomów szczegółowości wymagań

Poziom szczegółowości wymagań jest tematem wielu dyskusji, pisałem tu już nie raz na ten temat. Tym razem nie o tym, że zarządzanie tysiącami detali dużych pakietów oprogramowania jest niemożliwe (i nieracjonalne). Tym razem o tym, że stosowane wzorców, tu analitycznych i projektowych, pomaga. Najpierw kilka słów o poziomach szczegółowości, które stosuję:
  • Najwyższy poziom abstrakcji to nazwanie celu biznesowego np. chcemy sprawnie wystawiać faktury VAT. Jedno zdanie, bez szczegółów. To najczęściej jest cel sponsora projektu, którym jest niejednokrotnie ktoś z zarządu.
  • Kolejny etap to doprecyzowanie tego wymagania, w tym momencie powołujemy się albo na przepisy, które opisują to wymaganie wystarczająco szczegółowo (np. Ustawa o podatku VAT i Ustawa o rachunkowości). Jeżeli nie mamy na co się powołać poszerzamy ten opis sami. Tu mamy do czynienia z usługą systemu z perspektywy zamawiającego a z przypadkiem użycia z perspektywy oprogramowania.
  • Jeżeli oprogramowanie miało by być wykonane na zamówienie, powstaje dodatkowo uszczegóławiający opis każdej usługi zawierający: dane wejściowe i oczekiwane dane wyjściowe, wzory formularzy do wprowadzania danych i wzór produktu (tu wzór faktury) oraz scenariusz użycia czyli oczekiwania zamawiającego co do sposobu pracy z przyszłym programem. Opis taki robi analityk-projektant a jako źródło informacji występuje ekspert dziedzinowy (często przyszły użytkownik).
I tu zaczyna się ciekawszy ciąg dalszy. Przypadki użycia to tak zwany opis czarnej skrzynki, nic nie mówi o logice jaką chcemy odtworzyć, wbudować do nowego oprogramowania. Pojawia się ważne pytanie: jaką „wiedzę” ma mieć to oprogramowanie? Przypadki użycia kojarzy się z tak zwanymi Aktorami systemu. Są to określone role, które będą wykonywane przez użytkowników (np. Specjalista ds. Handlowych może pełnić rolę fakturzysty – aktorem jest Fakturzysta). Dopiero po zdefiniowaniu wiedzy jaką ma (ma mieć) Aktor, mamy podstawy definiować „wiedzę” jakiej oczekujemy do oprogramowania (to czego nie potrafi Aktor).

Czarna skrzynka (wyłącznie przypadki użycia) jako wymaganie jest bardzo ryzykownym narzędziem, bo nie definiuje tego jaką „wiedzę” ma mieć (odtwarzać) to oprogramowanie. Tu potrzebne jest określenie z czego będą powstawały oczekiwane produkty (co jest potrzebne do wystawiania faktury VAT, np. produkty i usługi zna fakturzysta czy ma je podpowiadać oprogramowanie).

Potrzebny jest więc opis logiki biznesowej, którą chcemy zaimplementować. Ten opis to sedno problemu pracy analityka. I przyszła pora na „analizę”. Powszechnie nadużywane słowo analiza oznacza:

analiza [gr. análysis ‘rozłożenie’, ‘rozbiór’], rozłożenie pewnego obiektu na elementy składowe (części, cechy, relacje); może być zabiegiem fizycznym lub czynnością myślową; (za Encyklopedia PWN).

Słowo klucz: „elementy składowe”. W metodach pracy, które stosuję, powyższe jest podstawowym „narzędziem” pracy. Ale tu małe wyjaśnienie: niestety większość spotykanych dokumentów analitycznych, nie wiele ma wspolnego z analizą. Dlaczego? Skoro analiza to „rozłożenie na elementy składowe”, to czym jest zapis życzeń i oczekiwań wyartykułowany ustami pracowników jakiejś firmy czy organizacji na spotkaniach, w postaci tekstu, tabel lub nieformalnych obrazków ? Jest po prostu jakimś spisem ale na pewno nie analizą.

Żeby dokonać jakiejkolwiek analizy musimy sobie najpierw zdefiniować jakieś „elementy składowe”. Analiza zdania polega na wyodrębnieniu słów, kojarzeniu ich w związki itp. ale początkiem jest istniejący słownik i reguły gramatyczne. Analiza chemiczna to rozłożenie substancji na z góry znane pierwiastki (pomijam ich odkrywanie). Czym jest analiza biznesowa czy analiza wymagań?

Analiza procesów biznesowych wymaga zrozumienia tego co dzieje się w analizowanej firmie i rozłożenie tego na predefiniowane elementy składowe. W zasadzie mamy jeden: proces biznesowy. Jego definicja określa atomowy element takiej analizy. Jeżeli patrzymy więc diagram zawierający prostokąty i linie będące graficznym zapisem tego „co powiedziano”, nie jest to żaden wynik analizy ani model a jedynie obrazkowy zapis opowieści.

Dalej: projektowanie oprogramowania. Na czym polega analiza obiektowa i projektowanie? Po pierwsze znowu potrzebne są „elementy składowe” (przypominam, że ma być ich skończona liczba, mają zdefiniowane znaczenia, które się na siebie nie nakładają (nic nie może pasować do dwóch definicji jednocześnie) i pozwalają, z ustalona dokładnością, na zbudowanie analizowanej całości.

Przykład

Opiszę jak można prowadzić analizę i budować część wymagań o nazwie model dziedziny (model logiki biznesowej).

Zgodnie z powyższym należy zacząć od zdefiniowana sobie skończonej liczby klocków (ich typów). Np. LEGO, można z nich zbudować „wszystko” akceptując pewną granice w odtwarzaniu uszczegółów.

Analiza polega na tym, by realny dom lub kaczkę rozłożyć na skończona liczbę (z reguły nie wielką) prostych elementów składowych, których „słownikiem” jest posiadany zestaw LEGO. Wynikiem analizy jest „dokument” w postaci instrukcji „jak złożyć domek z LEGO”. Innymi słowy, mamy skończoną liczbę elementów „budulcowych” analiza polega na zrozumieniu problemu, rozłożeniu go na takie właśnie elementy.

Osobiście jestem zwolennikiem stosowania wzorca projektowego MVC oraz stylu analizy i projektowania zwanego DDD (ang. Domain Driven Design, projektowanie sterowane dziedziną systemu, artykuł o DDD). DDD to wzorce zarówno analityczne jak i projektowe. Te wzorce to właśnie takie atomowe „klocki”.

Na etapie analizy, „rozkładamy” analizowaną firmę (jej część) na elementarne składniki. W DDD są to pojedyncze encje i ich agregaty, typy (value-object), usługi, fabryki, repozytoria. Analiza polega na opisaniu (rozłożeniu jej ) całej logiki oprogramowania z pomocą tych kilku standardowych „klocków”. Model taki dla developera staje się projektem, a te klocki wzorcami projektowymi.

Poniżej „zabawowy” przykład takiej analizy.



Aktorem jest użytkownik. Potrzebny mu jest „system” który da mu przedmiot wykonany z klocków LEGO (domek). System całkowicie izoluje Aktora od swojego wnętrza z pomocą Recepcji (View w modelu MVC). Wewnątrz mamy zestaw klocków (encje, agregaty), delikwenta wiedzącego jak wykonać domek (usługa) oraz fabrykę klocków (na bazie wzorców tworzymy ich tyle ile potrzebujemy, ile zażąda usługodawca).

Aby zachować wytworzone klocki a także wyniki prac czy półprodukty, musimy mieć pudełko na klocki: repozytorium. Nad całością czuwa Kontroler, ekipa ludzi zajmująca się wszystkimi „poza specjalistycznymi” (poza-dziedzinowymi) zadaniami. Z racji tego, że takie pojęcia jak wydajność, zasoby, bezpieczeństwo itp. są uniwersalne, taka ekipa back office (skrzynka na zabawki, recepcja, kontroler) może zostać wynajęta niemalże dla każdej firmy bez względu na branże (to się nazywa framework). Specyficzna jest tylko dziedzina, tu typ klocków.

Tak więc analiza wymagań na oprogramowanie to lista wymaganych usług. Wymagania na dedykowane oprogramowanie zaś to nie jest spisanie i sortowanie oczekiwań. Analiza to rozłożenie problemu (firma klienta) na klocki zgodne z uznaną (używaną) metodyką i wzorcami. DDD (opis wzorców projektowych DDD) to właśnie jeden z takich zestawów klocków.

Wynikiem analizy jest model (a nie tylko obrazek) opisujący jak działa analizowana firma, zbudowany z klocków, tu opisanych w DDD.

Dla developera taki model jest projektem logicznym (Platform Independent Model w nomenklaturze OMG/MDA). W efekcie analityk nie tylko zrozumiał i udokumentował problem, analityk zaprojektował logikę biznesową oprogramowania, możliwą do bezpośredniej implementacji przez developera (przy założeniu, że stosuje metody obiektowe i zna użyte wzorce). Taki efekt dają metody obiektowe i pragmatyki np. DDD. Za to właśnie bardzo lubię obiektowy paradygmat i DDD: „obiektowość” zrównuje wynik analizy z projektem, DDD daje nam zestaw klocków: słownik pojęć, zrozumiały dla „biznesu” i dla developera. DDD to zestaw wzorców pozwalający na dogłębne zrozumienie analizowanego problemu i będące zarazem projektem jego implementacji.

Kim więc jest dobry analityk?

Jest to ktoś, kto potrafi analizowaną organizację „rozłożyć na elementy składowe”. Tymi elementami są wzorce projektowe, elementy stosowanej notacji. Wynik analizy to nie „rysunek”, to model w postaci schematu blokowego (diagramu), na którym każdy element ma ściśle określone znacznie, konstrukcję i zasady wzajemnego łączenia i oddziaływania.

Analiza Biznesowa to rozłożenie analizowanego „przedmiotu” na skończony zestaw elementów, który z określoną dokładnością zachowuje się tak, jak analizowana organizacja. Jeżeli te elementy składowe mają także swoje odwzorowanie w kodzie programu, to wynik analizy staje się projektem tego oprogramowania.

Więc poziomy szczegółowości wymagań to:

cele biznesowe (produkty procesów biznesowych) opis usług żądanych od oprogramowania (tu także formatki papierowe/ekranowe, przypadki użycia oprogramowania) opis (projekt) wewnętrznej logiki biznesowej (wewnętrzne elementy składowe i scenariusze ich współdziałania)

P.S.

Artykuł ma charakter „badawczy”, wszelkie uwagi mile widziane.

Autor: Jarosław Żerliński - www.it-consulting.pl

Najnowsze wiadomości

PSI prezentuje nową identyfikację wizualną
psilogoW ramach realizowanej strategii transformacji PSI Software SE zaprezentowała nową identyfikację wizualną. Odświeżony wizerunek w spójny sposób oddaje technologiczne zaawansowanie firmy, jej głęboką wiedzę branżową oraz silne ukierunkowanie na potrzeby klientów. Zmiany te wzmacniają pozycję PSI jako innowacyjnego lidera technologicznego w obszarze skalowalnych rozwiązań informatycznych opartych na sztucznej inteligencji i chmurze, rozwijanych z myślą o energetyce i przemyśle.
Europejski przemysł cyfryzuje się zbyt wolno – ERP, chmura i AI stają się koniecznością
BPSCEuropejski przemysł średniej wielkości wie, że cyfryzacja jest koniecznością, ale wciąż nie nadąża za tempem zmian. Ponad 60% firm ocenia swoje postępy w transformacji cyfrowej jako zbyt wolne, mimo rosnącej presji konkurencyjnej, regulacyjnej i kosztowej. Raport Forterro pokazuje wyraźną lukę między świadomością potrzeby inwestycji w chmurę, ERP i AI a realną zdolnością do ich wdrożenia – ograniczaną przez braki kompetencyjne, budżety i gotowość organizacyjną.
Nowa era komunikacji biznesowej, KSeF stał się faktem
SymfoniaOd 1 lutego 2026 roku, w Polsce z sukcesem rozpoczęła się nowa era elektronicznej komunikacji w biznesie. Od tego dnia przedsiębiorcy zaczynają posługiwać się wspólnym standardem we wzajemnej wymianie dokumentów – fakturą ustrukturyzowaną, znaną jako FA(3) lub po prostu faktura KSeF.
Smart Factory w skali globalnej: jak MOWI porządkuje produkcję dzięki danym w czasie rzeczywistym
accevoCyfryzacja produkcji w skali globalnej wymaga dziś spójnych danych, jednolitych standardów i decyzji podejmowanych w czasie rzeczywistym. W środowisku rozproszonych zakładów produkcyjnych tradycyjne raportowanie i lokalne narzędzia IT przestają wystarczać. Przykład MOWI pokazuje, jak wdrożenie rozwiązań Smart Factory i systemu MES może uporządkować zarządzanie produkcją w wielu lokalizacjach jednocześnie, zwiększając przejrzystość procesów, efektywność operacyjną oraz stabilność jakości.
Hakerzy nie kradną już tylko haseł. Oni kradną Twój czas i przyszłość. Jak chronić ERP przed paraliżem?
Hakerzy coraz rzadziej koncentrują się wyłącznie na kradzieży haseł. Ich prawdziwym celem jest dziś sparaliżowanie kluczowych systemów biznesowych, przejęcie kontroli nad danymi i wymuszenie kosztownych decyzji pod presją czasu. System ERP, jako centralny punkt zarządzania finansami, produkcją i logistyką, stał się dla cyberprzestępców najbardziej atrakcyjnym celem. Ten artykuł pokazuje, dlaczego tradycyjne zabezpieczenia przestają wystarczać i jak realnie chronić ERP przed atakami, które mogą zatrzymać firmę z dnia na dzień.



Najnowsze artykuły

Magazyn bez błędów? Sprawdź, jak system WMS zmienia codzienność logistyki
SENTEWspółczesna logistyka wymaga nie tylko szybkości działania, lecz także maksymalnej precyzji – to właśnie te czynniki coraz częściej decydują o przewadze konkurencyjnej firm. Nawet drobne pomyłki w ewidencji stanów magazynowych, błędy przy przyjmowaniu dostaw czy nieprawidłowe rozmieszczenie towarów, mogą skutkować poważnymi stratami finansowymi i opóźnieniami w realizacji zamówień. W jaki sposób nowoczesne rozwiązania do zarządzania pomagają unikać takich sytuacji? Czym właściwie różni się tradycyjny system magazynowy od zaawansowanych rozwiązań klasy WMS (ang. Warehouse Management System)? I w jaki sposób inteligentne zarządzanie procesami magazynowymi realnie usprawnia codzienną pracę setek firm?
Jak maksymalizować zyski z MTO i MTS dzięki BPSC ERP?
BPSC FORTERROZysk przedsiębiorstwa produkcyjnego zależy nie tylko od wydajności maszyn, ale przede wszystkim od precyzyjnego planowania, realnych danych i umiejętnego zarządzania procesami. Dlatego firmy, które chcą skutecznie działać zarówno w modelu Make to Stock (MTS), jak i Make to Order (MTO), coraz częściej sięgają po rozwiązania klasy ERP, takie jak BPSC ERP.
Warsztaty analityczne i sesja discovery. Jak wygląda pierwszy etap współpracy z partnerem wdrożeniowym ERP
TODIS ConsultingWdrożenie systemu ERP to jedna z najważniejszych strategicznych decyzji, jakie może podjąć firma. To inwestycja, która ma zrewolucjonizować procesy, zwiększyć efektywność i dać przewagę konkurencyjną. Jednak droga do sukcesu jest pełna potencjalnych pułapek. Wielu menedżerów obawia się nieprzewidzianych kosztów, oporu zespołu czy niedopasowania systemu do realnych potrzeb. Jak zminimalizować to ryzyko? Kluczem jest solidne przygotowanie. Zanim padnie słowo „wdrażamy”, konieczne jest przeprowadzenie trzech fundamentalnych etapów: warsztatów analitycznych, sesji discovery oraz analizy przedwdrożeniowej ERP. To nie są zbędne formalności, ale fundament, na którym zbudujesz sukces całego projektu.
Strategia migracji danych do nowego systemu ERP. Metody, ryzyka i najlepsze praktyki
TODISWdrożenie nowego systemu ERP to dla wielu firm nie tylko krok w stronę unowocześnienia procesów biznesowych, ale także ogromne przedsięwzięcie logistyczne i technologiczne. Aby nowy system ERP zaczął efektywnie wspierać działalność organizacji, kluczowe jest odpowiednie przygotowanie danych, które muszą zostać bezpiecznie i precyzyjnie przeniesione ze starego systemu. Migracja danych ERP to skomplikowany proces, wymagający zarówno zaawansowanej wiedzy technologicznej, jak i dokładnego planowania na poziomie strategicznym. W tym artykule przybliżymy najlepsze metody, wskażemy najczęstsze ryzyka oraz podpowiemy, jak przeprowadzić migrację krok po kroku.
Strategiczna przewaga czy kosztowny mit? Kto wygrywa dzięki chmurze?
Chmura miała być odpowiedzią na wyzwania sektora finansowego: przestarzałą infrastrukturę, rozproszone dane, rosnące oczekiwania klientów i klientek. Dziś korzysta z niej już 91% instytucji, a mimo to tylko nieliczne mówią o realnych efektach. Zaledwie 12% firm maksymalizuje potencjał chmury – tworzy skalowalne platformy, wdraża GenAI, monetyzuje dane. Reszta? Często grzęźnie w kosztach, integracjach i braku kompetencji. Różnica nie tkwi w technologii, ale w strategii – i to ona może zadecydować o miejscu w sektorze, który właśnie wchodzi w kolejną fazę transformacji.

Przeczytaj Również

Jak maksymalizować zyski z MTO i MTS dzięki BPSC ERP?

Zysk przedsiębiorstwa produkcyjnego zależy nie tylko od wydajności maszyn, ale przede wszystkim od… / Czytaj więcej

Warsztaty analityczne i sesja discovery. Jak wygląda pierwszy etap współpracy z partnerem wdrożeniowym ERP

Wdrożenie systemu ERP to jedna z najważniejszych strategicznych decyzji, jakie może podjąć firma. T… / Czytaj więcej

Strategia migracji danych do nowego systemu ERP. Metody, ryzyka i najlepsze praktyki

Wdrożenie nowego systemu ERP to dla wielu firm nie tylko krok w stronę unowocze… / Czytaj więcej

Zmiana kultury organizacyjnej: kluczowy czynnik udanej transformacji cyfrowej

Globalne wydatki na transformację cyfrową osiągnęły w 2024 roku zawrotną sumę 2,5 biliona dolarów… / Czytaj więcej

15 błędów przy wdrażaniu systemu ERP, które mogą Cię sporo kosztować

Wdrożenie systemu ERP to jedno z najbardziej złożonych przedsięwzięć – a skoro tak, to warto wcześn… / Czytaj więcej

Błędy w planowaniu produkcji a utracone zyski. Jak ich uniknąć?

Zwalniająca produkcja, przesuwane terminy, rosnące koszty mimo pełnego zaangażowania zespołu? To zd… / Czytaj więcej