User Story to wymaganie biznesowe, to opis problemu do rozwiązania, a nie funkcjonalność do implementacji!

O user sto­ry pisa­łem nie raz od ponad deka­dy, i w zasa­dzie zawsze powo­dem jest to samo: kolej­ny rato­wa­ny pro­jekt, gdzie powo­dem dra­ma­tu było sto­so­wa­nie user sto­ry jako wyma­gań. Kiedy user sto­ry jest sto­so­wa­ne jako wyma­ga­nie? W zasa­dzie zawsze tam, gdzie pomi­nię­to etap ana­li­zy i pro­jek­to­wa­nia. Jakie są skut­ki? Kilkukrotnie wyż­sza pra­co­chłon­ność, czy­li znacz­nie wyż­sze kosz­ty i dłuż­szy ter­min dostar­cze­nia opro­gra­mo­wa­nia. Niestety, nie raz, tak reali­zo­wa­ne pro­jek­ty koń­czą się wstrzy­ma­niem prac zanim powsta­nie peł­na funk­cjo­nal­ność apli­ka­cji, z powo­du znacz­ne­go prze­kro­cze­nia budże­tu i ter­mi­nu. Co jest przyczyną?

(wię­cej…)

Czytaj dalejUser Story to wymaganie biznesowe, to opis problemu do rozwiązania, a nie funkcjonalność do implementacji!
Abstraction focuses upon the essential characteristics of some object, relative to the perspective of the viewer. [Abstrakcja skupia się na istotnych cechach jakiegoś obiektu w odniesieniu do perspektywy widza.]
Booch, G. (1994). Object-oriented Analysis and Design with Applications. 2nd Edition, the Benjamin/Cummings Publishing Company, Inc.

Wymagania biznesowe – jak zbierać i dokumentować

Wprowadzenie Ronald Ross, współautor standardu modelowania reguł biznesowych i biznesowego słownika pojęć napisał niedawno na swoim profilu LinkedIn: "People love stories. Are user stories helpful in engineering business solutions? Absolutely. Are you done with requirements and solution engineering when you?ve worked through a set of user stories? No. Not even close!" ["Ludzie kochają historie. Czy historie użytkowników są pomocne w tworzeniu rozwiązań biznesowych? Zdecydowanie tak. Czy skończyłeś z wymaganiami i inżynierią rozwiązania, gdy już opracowałeś zestaw historyjek użytkownika? Nie. Nawet nie zbliżyłeś się do nich!".] (https://www.linkedin.com/posts/rossronald_people-love-stories-are-user-stories-helpful-activity-6935627008265633793-Bpzb/) Świat od dekad boryka…

Czytaj dalejWymagania biznesowe – jak zbierać i dokumentować

Opis wymagań z użyciem Gherkin – czyli duuużo korniszonów…

Wstęp

Zostałem nie­daw­no zapy­ta­ny czy pomo­gę bo mamy już ponad 150 przy­pad­ków uży­cia w doku­men­ta­cji…”. Myślę sobie, to nie­moż­li­we, nie ma tak wiel­kich sys­te­mów (wyce­na oka­za­ła się w efek­cie pię­cio­krot­nie zawy­żo­na tyl­ko dla­te­go, że uży­to meto­dy zorien­to­wa­nej na user story”). 

(wię­cej…)

Czytaj dalejOpis wymagań z użyciem Gherkin – czyli duuużo korniszonów…

User Story i Story Mapping czyli jak podnieść koszty

Tytułowe User Story i Story Mapping miały (mają) być remedium na problemy z wymaganiami. Czy są nim? Słownik Języka polskiego: rozwiązanie: ?projekt i realizacja założeń architektonicznych, konstrukcyjnych, plastycznych itp.? Innymi słowy rozwiązanie to określone narzędzia pracy. W tym przypadku narzędziem jest aplikacja (oprogramowanie). Nadal popularne wśród developerów user story, jako narzędzie opisu wymagań pokazało swoje wady, lekarstwem na nie ma (miało) być story mapping. Kluczową wadą tego (użytkownik opisuje aplikację) podejścia jest założenie, że użytkownik ma racje (wie czego chce). Problem w tym, że nawet jeżeli użytkownika wie co robi,…

Czytaj dalejUser Story i Story Mapping czyli jak podnieść koszty

User Story c.d.

Wokół metod zwinnych narasta wiele mitów, szczególnie tych o skuteczności w dużych projektach.  Dzisiaj kolejne kilka słów o popularnym narzędziu jakim jest tak zwane "user story" czyli historyjka użytkownika, o ich ewolucji i o tym, że mogą być przydatne i kiedy. Co prawda, jako źródło informacji wolę dokumenty, ale bywa, że tym źródłem informacji są jednak użytkownicy, bo dotyczy to projektowania np. nowych portali biznesowych. Tu niestety nie ma ani ustaw z wzorami dokumentów ani "dotychczasowego papierowego obiegu dokumentów".  Bardzo podobnie wyglądają start-up'y w obszarze operacyjnym. Podobnie wygląda analiza i…

Czytaj dalejUser Story c.d.
Read more about the article Procedura – co to za zwierzę
(źr. http://www.bptrendsassociates.com/)

Procedura – co to za zwierzę

Bez tej formalizacji (ścisłe stosowanie zdefiniowanych pojęć, także tych z użytej notacji) próby modelowania procesów prowadzą najczęściej do powstawania monstrualnych ilości nieczytelnych diagramów (widywałem dokumentacje, gdzie było dla jednej firmy powstałe blisko tysiąc stron! Masakra). To kompletnie nieprzydatne dokumenty. Co jeszcze nam daje stosowanie powyższych definicji? Możliwość jednoznacznego "przejścia" (śladowanie) z modeli procesów biznesowych na modele przypadków użycia bo atomowy proces, zakwalifikowany do zakresu projektu jako wymagana usługa oprogramowania, to przypadek użycia, zaś procedura tego procesu to nic innego jak scenariusz tego przypadku użycia lub jak ktoś woli: user story. Z innej strony: jeżeli mamy wdrożona normę ISO9000, to modelując procesy biznesowe i "podpinając" do nich procedury z księgi jakości, szybko się przekonamy, czy nasze ISO to nie jest przypadkiem fikcja.

Czytaj dalejProcedura – co to za zwierzę

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 dalejUser story czyli nic nie poprawić a może nawet bardziej skomplikować

Dane są nieważne bo liczy się przede wszystkim mechanizm działania

Często słyszę, że to trudne i pracochłonne (dodatkowe klasy w modelu) ale niestety zbyt prosty projekt potrafi być kosztowniejszy w rozbudowie w porównaniu z pierwotnym wytworzeniem, dlatego jak klient w ramach wymagań wpisuje (a wpisuje coraz częściej): system ma umożliwiać łatwe rozszerzenia funkcjonalności, to należy go tak projektować, w przeciwnym wypadku wymaganie to nie jest spełnione... Druga uwaga: często sami klienci zabijają swoje projekty żądając na samym początku dokumentowania wszystkich szczegółów jakie im do głowy przyjdą nie potrafiąc jednocześnie opisać mechanizmu działania ich organizacji. To niestety często spotykane zjawisko, z którym moim zdaniem należy walczyć. Paradoksalnie złożoność systemów biznesowych tkwi w mechanizmie ich funkcjonownia a nie w danych które zbierają (których nie raz jest po prostu za dużo...)

Czytaj dalejDane są nieważne bo liczy się przede wszystkim mechanizm działania

User Stories, czym jest?

Tak więc programista implementuje logikę biznesową, tę musi jednoznacznie udokumentować analityk, oraz zapewnia uzgodnioną jakość (wymagania pozafunkcjonalne). Ma więc dużo pracy... ale nie powinien podejmować prób wpływu na implementowaną logikę biznesową. Czyli np. "jako sprzedawca, dostaję od klientów zamówienia, na podstawie których muszę wystawiać faktury VAT", do tego analityk doda, np. po analizie otrzymanej partii dokumentów, strukturę zamówienia i faktury VAT oraz "algorytm" wyliczenia podatków. Jeżeli programista zaczyna "lepiej wiedzieć" od zamawiającego, forsując np. prostszą implementację, to znaczy, że przekroczył swoje kompetencje, sam sobie - jako developerowi - robi krzywdę psując to oprogramowanie bo klient i tak prędzej czy później na tych uproszczeniach "polegnie". Rolą analityka są także ewentualne negocjacje z zamawiającym, uproszczeń lub rozwinięć tego opisu. Czy analityk może być "pracownikiem" dostawcy? Jak sądzicie?

Czytaj dalejUser Stories, czym jest?

Wymagania – klient to nasz Pan czy Pacjent?

Skoro w firmie i tak robimy kopie zapasowe dysków sieciowych i zasobów pracowników a dyski są coraz tańsze po co tworzyć drugi i bardzo kosztowny serwer plików z systemu pocztowego? Po co używać serwera pocztowego do zarządzania dokumentami skoro i tak jest to tylko cześć ważnych rzeczy a pozostałe i tak są na dyskach sieciowych jako pliki i nie unikniemy systemu zabezpieczenia tych zasobów także? Skoro współdzielenie plików na dyskach sieciowych jest proste i w zasadzie bez kosztowe to po co dopłacać do serwera pocztowego za opcje portalowego dostępu do swoich i cudzych maili, za możliwość zarządzania prawami do cudzych maili by kolega, koleżanka lub szef mogli skompletować historię korespondencji z klientem? Dlaczego trzymać ważne pliki w serwerze pocztowym skoro odzyskiwanie ich stamtąd jest znacznie trudniejsze niż z katalogów na dyskach? Takich pytań można zadać jeszcze wiele. Czy życzenie pracownika (który ma prawo nie wiedzieć, że są inne metody lub ukryje je bo wymagały by zmian) jest wystarczającym powodem?

Czytaj dalejWymagania – klient to nasz Pan czy Pacjent?
plac budowy
źródło: http://www.geotor.pl/przemysl.htm

User story – kłopoty

Tak więc wymagania na oprogramowanie powinny być określone przez dialog biznesowy zaś specyfikacja oprogramowania przez dialog technologiczny. I tu łyżka dziegciu: wiele razy byłem świadkiem gdy to zamawiający psuł projekt uważając, że wie lepiej jak się tworzy oprogramowanie. Zjawisko to (tu bardzo niebezpieczne dla życia ludzi) także zna inżynieria budowlana dlatego prawo budowlane wymaga projektu architekta a jego projekt chroni nie tylko prawo budowlane ale także i autorskie.

Czytaj dalejUser story – kłopoty

Koniec treści

Nie ma więcej stron do załadowania