Temat: BPM to nie jest programowanie
SOA jest z jednej strony robota dla programistow a z drugiej dla testerow. Dlaczego? Otoz wiekszosc rozwiazan SOA opiera sie na zaprojektowaniu uslug w ramach xml, wsdl, tego nie da sie inaczej wykonac. Przez ostatnie miesiace mojej kariery w CU bawilem sie w to, tj przy pomocy oprogramowania SOAPUI
http://eviware.com testowalem wywoalania uslug przygotowanych przez programistow. Jak to jest zrobione. Otoz w systemie dziedzinowym jest oprogramowanie przekazujace dane z bazy danych do specjalnego przekaznika do ktorego podlaczamy uslugi wystawione na okreslonym porcie serwera, nastepnie w SOAPUI tworzymy projekt ktory "zaciaga" uslugi z danego adresu i przystepujemy do zmudnego testowania. Samo testowanie to wywolywanie uslug zblizonych do dzialan na interfejsie uzytkownika, sprawdzamy czy dane przechodza, czy sa zapisywane itp
Tak wiec teoria mowi cos innego a praktyka cos innego.
Powyzsze wyszlo nam na podstawie analiz biznesowych i potrzeb organizacji do zbudowania takich uslug. To sie wzielo z tego ze w specyfice firmy ubezpieczeniowej ktora zawiazala spolke z bankiem jest koniecznosc sprzedazy ubezpieczen poprzez okienka bankowe. W tym momencie zostal zaprojektowany zestaw uslug ktore bank bedzie wykorzystywal do dzialalnosci operacyjnej przy uzyciu platformy ESB. Nie tylko bedzie cos sprzedawal ale juz po okresie subskrypcji bedzie odpytywal system dziedzinowy o rozne dane. Dlatego powstaly uslugi SOA :)
Ale to nie oznacza ze sie z toba nie zgadzam. Wszystko zalezy od modelu operacyjnego, ktory u nas jest okreslony jako UMO :)
Co do BPMN ktory realizowalem w ramach INTALIO Designer (polecam, znowu freeware:) ) to jest lepszy przyklad na budowe modelu. Przy uzyciu tej aplikacji modelowalismy procesy zachodzace przy obsludze produktow w banku i firmie ubezpieczeniowej. Aplikacja latwa i przyjemna, podobna do MS Visio w sensie diagramow, jednak ma pare wad. Np gdy wlaczysz do procesu kilku aktorow (w postaci organizacji) wowczas musisz sie przygotowac na wygenerowanie olbrzymich wydrukow, ktore musielismy sklejac tasma zeby pokazac dokladny przebieg procesu. Inna wada to "zwieszanie" aplikacji w kluczowym momencie podczas zapisu itd.
Rysunki w Intalio mialy cel tzw use case czyli jak powinien przebiegac proces biznesowy. Generowalismy sciezke pozytywna, negatywna i zamykalismy proces jesli zachodzila taka koniecznosc.
Z pktu widzenia projektowania modelu Intalio mialo swoje odzwierciedlenie w specyfikacji wymagan, a dokladnie przy opisie produktu. W naszej specyfice chodzilo generalnie o to co ma sie dziac kiedy klient podejdzie do okienka bankowego, co sie ma dziac kiedy bank przesle pliki do nas itp. Przydatna sprawa przy projektowaniu, chociaz troche nieuzyteczna przy testowaniu, malo kto testujac dokladnie ogladal procesy wklejone z Intalio do MS Word i zazwyczaj dowiadywal sie od analitykow jak to jest zrobione i jak cos dziala :)
Adam C. edytował(a) ten post dnia 27.01.09 o godzinie 07:39