Poprzedni artykuł kończył się odpowiedzią na tytułowe pytanie (wg. mojej oceny):
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. (Poziomy szczegółowości wymagań ? wzorce DDD ? czyli czym jest analiza obiektowa).
Po tym artykule pojawiły się dyskusje na temat roli analityka (analizuje czy także projektuje) i dostawcy (czy tylko on ma kompetencje projektowe).
“Moje przesłanie” w tym tekście:
Skoro logikę biznesową “programuje się” (implementuje się) z użyciem obiektowych wzorców projektowych, to ideałem było by wskazać te wzorce, które wg. najlepszych praktyk są wykorzystywane do implementacji logiki biznesowej i uczynić z nich “klocki”, na które należy, na etapie analizy biznesowej, rozłożyć problem. To się np. nazywa DDD czyli siedem wzorców spośród wielu.
Korzyści są ogromne, bo “wycinamy” etap głuchego telefonu między Zamawiającym i wymaganiami w postaci prozy i tabel a developerem, który ma zrobić obiektowy model czegoś czego tak na prawdę nie rozumie, a opis prozą jest niestety bardzo niejednoznaczny i podatny na przekłamania (głuchy telefon).
Pytanie (jedno z wielu) jakie dostałem:
Jarku, zgodzę się, że dobry analityk “potrafi analizowaną organizację rozłożyć na elementy składowe”. Ale projektant? Projektant, to ktoś kto potrafi powiedzieć, jak elementy składowe złożyć w całość. Człowiek od syntezy, a nie od analizy 🙂
I generalnie jest w tym sporo racji, jednak odpisałem z pewnym “ale”:
OK, ale stety/niestety role analiza/synteza zacierają na tym etapie, gdy narzędzia jakich używa analityk do udokumentowania wyników analizy to te same narzędzia, które służą do projektowania… i tu jest “problem”, skoro analiza potrzeb przed wybudowaniem domu daje w efekcie projekt tego domu to mamy architekta który pyta “po co ten dom” i projektuje go.. realizuje dopiero developer
A tak to ogólnie wygląda: