Zarządzanie zmianami biznesowymi

Strategia organizacji to długo terminowe cele i polityka ich realizacji, konkretne roczne czy kwartalne działania to taktyki a nie strategia… Co więc robić? Przede wszystkim opisać strategię i politykę jej realizacji (strategia to plan ale polityka to reguły działania a nie opis działań). Polityka ta powinna wyznaczać także sposób budowy AK, która musi pozwolić na realizowanie strategii. Mają politykę, zbudować AK w zgodzie między innymi z zasadą, że ?architektura korporacyjna powinna być zamknięta na zmiany i otwarta na rozszerzenia?.

Czytaj dalej Zarządzanie zmianami biznesowymi

SOA Patterns

Większość książek z dziedziny analizy biznesowej i projektowania to traktaty o UML, "zbieraniu wymagań" itp., czasem o wzorcach projektowych (wzorce analityczne nie pojawiają się w tytułach, napiszę o tym innym…

Czytaj dalej SOA Patterns

Różne perspektywy wymagań

Nie powinniśmy zapominać, że model Kruchtena to połowa lat 90-tych, szczyt rozkwitu metod strukturalnych i raczkujące metody i narzędzia obiektowe. To stare systemy i ich relacyjne bazy danych wymusiły stosowanie [[mapowania ORM]] i takich narzędzi jak [[Hibernate]]. Dzisiaj mamy rok 2015, od tamtej pory minęło 20 lat. Nie musimy się cofać do początków inżynierii oprogramowania w wersji obiektowej. Coś takiego jak perspektywa danych to anachronizm. Podejście to w 100% zostały już dawno zastąpione przez MDA.

Czytaj dalej Różne perspektywy wymagań

Architektura oprogramowania i UML dla programistów

Gorąco polecam programistom, by w ogóle zaczęli korzystać z UML a analitykom, by wyleczyli się z wielu mitów o UML rozpowszechnianych niestety na wielu, nie zawsze tanich, szkoleniach i w wielu kiepskich “poradnikach UML” (pisanych nie raz nawet przez uczelnianych doktorów i nie tylko)….. Może wtedy przestaną tworzyć nieprzydatne developerom dokumentacje.

Czytaj dalej Architektura oprogramowania i UML dla programistów

Sekwencje a procesy

Warstwa procesów, usług aplikacyjnych/przypadków użycia i komponentów to odrębne warstwy i perspektywy. Nie mieszamy więc ani poziomów abstrakcji ani perspektyw modeli. W przeciwnym razie, ulegając sugestiom w rodzaju “ale ja chcę zobaczyć to wszystko na jednym diagramie” pchamy projekt w kierunku “utraty panowania nad złożonością”… To prosta droga do klęski projektu.

Czytaj dalej Sekwencje a procesy

Panowanie nad złożonością czyli gdzie są Przypadki Użycia czyli MVVM-MVC

Tak więc przypadkami użycia opisujemy abstrakcję jaką jest [[Model Dziedziny Systemu]]. Są one wtedy proste, zawierają scenariusz, który w skrócie ma postać: aktor inicjuje usługę, system prezentuje formularz do wypełnienia, aktor wypełnia go i potwierdza, system potwierdza odebranie danych i pokazuje wynik swojej pracy (lub komunikaty o błędach). Tu skupiamy się na opisie tego jakie usługi są wymagane od systemu. Kolejny etap to “komplikowanie” każdego scenariusza w postaci projektowania, dla każdego przypadku użycia, różnego rodzaju wizardów lub wprowadzamy ograniczenia związane z uprawnieniami użytkowników. Ten etap to praca projektantów UX i grafików, specjalistów od ergonomii itp.

Czytaj dalej Panowanie nad złożonością czyli gdzie są Przypadki Użycia czyli MVVM-MVC

Gdzie są te cholerne szczegóły

Tak więc, warto rozważyć stosowanie reguł biznesowych i słowników pojęć (Semantics Of Business Vocabulary And Rules), gdyż jest to sprawdzona i bardzo przydatna technika analizy i dokumentowania logiki biznesowej. Polecam także stronę The Business Rules Group i zamieszczony tam Manifest Reguł Biznesowych. Tworzenie monstrualnych dokumentów wymagań, zawierających dziesiątki razy powielane “walidacje” prowadzi do wielu kłopotów z utrzymaniem spójności i kompletności takich specyfikacji. Pomijam już ich uciążliwą objętość. Jako materiał dla programisty są one wtedy trudne w użyciu, do tego skłaniają do najgorszych praktyk, jakimi jest między innymi umieszczanie logiki biznesowej w kodzie formatek ekranowych.

Czytaj dalej Gdzie są te cholerne szczegóły

User story czyli nic nie poprawić a może nawet bardziej skomplikować

W większości chyba firm, z powodów historycznych, niemalże każdy kierownik i dyrektor ma nieco inny próg kwotowy samodzielnej akceptacji poniesionego koszu. Zapisanie w postaci wymagań a potem implementacja, takiego systemu przepływu dokumentów kosztowych, bywa koszmarem. Koszmar ten jest bardzo kosztowny z uwagi na swoją złożoność i brak ogólnych zasad. Powoduje to, że zamiast uzyskania automatyzacji i znacznego wzrostu efektywności uzyskuje się bardzo złożony i pracochłonny (kosztowny) system zamrażający zastany stan rzeczy, jedyną korzyścią czasami bywa to, że z raportów wiemy, że to na prawdę długo trwa. A to tylko jeden aspekt opisu organizacji i wymagań na oprogramowanie.

Czytaj dalej User story czyli nic nie poprawić a może nawet bardziej skomplikować