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!

ICONIX jako zwinny proces projektowania oprogramowania z użyciem UML

Ten często aktualizowany przeze mnie wpis, stał się niemalże kompletnym opisem metodyki projektowania oprogramowania. Nie jest to moja metodyka, to metodyka z której ja także korzystam. Artykuł zaopatrzyłem w bogaty spis literatury źródłowej i kilka ciekawych referatów konferencyjnych. Polecam szczególnie moim obecnym i potencjalnym klientom, bo to opis produktu jaki ode mnie dostaną (polecam także wpis: Moja rola w projektach). "The Unified Modeling Language User Guide" autorstwa Grady'ego Boocha, Jamesa Rumbaugha i Ivara Jacobsona (Addison-Wesley, 1998) mówi nam, że "możesz wykonać 80% modelowania za pomocą 20% UML" gdzieś po stronie…

Czytaj dalejICONIX jako zwinny proces projektowania oprogramowania z użyciem UML

Separacja kontekstu i znaczeń w metodach obiektowych

Separacja kontekstu dziedziny oraz separacja synonimów jako metoda zapewnienia jednoznaczności modeli obiektowych. Streszczenie: Przedstawiono metodę pozwalającą zapewnić jednoznaczność modeli obiektowych mimo istnienia synonimów w słownictwie analizowanego problemu. Wykorzystano znaną juz metodę separowania kontekstów, autor proponuje dodatkowy prosty metamodel (profil UML) pozwalający na bezpieczne użycie tego samego pojęcia zarówno jako nazwy obiektu jak i nazwy cechy obiektu. Słowa kluczowe: UML, profil, metody obiektowe, kontekst  ___ Wprowadzenie Wielu autorów piszących o projektowaniu oprogramowania zwraca uwagę na problemy związane z kontekstem i synonimami pojęć w badanej dziedzinie. Jednym z popularniejszych autorów, zwracających uwagę na…

Czytaj dalejSeparacja kontekstu i znaczeń w metodach obiektowych

Projektowanie obiektowe zorientowane na role, odpowiedzialności i współpracę klas

Obiekty to nie są proste "złączone dane i logika". To obdarzone odpowiedzialnością elementy większej całości. Mało jest w branży inżynierii oprogramowania książek, które praktycznie się nie starzeją. Jedną z nich, moim zdaniem, jest książka Object Design Roles, Responsibilities and Collaboration, autorzy: Rebecca Wirf-Brock i Alan McKean. Wydali ją pierwszy raz w 2002 roku. Autorzy w bardzo przystępny sposób pokazują zarówno teoretyczne jak i praktyczne aspekty analizy obiektowej (OOA, Object-oriented Analysis ) i projektowania obiektowego (OOD, Object-oriented design, łącznie często stosowany skrót OOAD). Mimo, że od pierwszego wydania minęło już 17…

Czytaj dalejProjektowanie obiektowe zorientowane na role, odpowiedzialności i współpracę klas

Mało który deweloper używa UMLa zgodnie ze specyfikacją…

Od cza­su do cza­su wpa­da­ją mi do skrzyn­ki ema­il niu­slet­te­ry”, któ­re gdzieś tam cza­sem zama­wiam, głów­nie z powo­dów poznaw­czych. Oto jeden z nich…

Nie jest tajem­ni­cą, że na ryn­ku mamy róż­ne meto­dy pra­cy i wszyst­kie mają swo­ich zwo­len­ni­ków i prze­ciw­ni­ków czy może raczej kry­ty­ków. Tym razem przed­mio­tem bada­nia” był spo­sób opi­sa­nia pro­ble­mu i wnio­ski jakie autor wyciągnął.

(wię­cej…)

Czytaj dalejMało który deweloper używa UMLa zgodnie ze specyfikacją…

Praca grupowa czyli Syndrom Sztokholmski w projekcie

Od wielu lat lat, produktem mojej pracy są dokumenty opisujące w obiektywny sposób działanie organizacji, zawierające rekomendacje zmian do poprawy sytuacji, także wymagania na systemy informacyjne. Po opracowaniu rozwiązania i pomocy w wyborze jego dostawcy, prowadzę nadzór autorski nad realizacją opracowanego rozwiązania. [1] Po latach pracy nasuwa mi się dość ciekawy wniosek z obserwacji: Zamawiający działają na swoją szkodę! Typowy projekt związany z wdrażaniem nowych rozwiązań to realne potrzeby Zamawiającego. Członkowie zespołu Zamawiającego mają nad sobą terminy  i "nieuchronność" kary za niepowodzenie. W efekcie Dostawca szybko staje się "Panem projektu", bo…

Czytaj dalejPraca grupowa czyli Syndrom Sztokholmski w projekcie

Architektura kodu aplikacji jako pierwszy etap tworzenia oprogramowania

Tym razem troszkę cięższy kaliber, czyli dywagacje o tym co powszechnie jest określane jako metody obiektowe i o tym skąd "konflikty i nieporozumienia" między programistami i analitykami projektantami.?*? Wprowadzenie Literatura przedmiotu zawiera wiele różnych sposobów grupowania metod programowania w paradygmaty. Autorzy z reguły skupiają się na tym, czym są programy rozumiane jako zorganizowana lista poleceń dla maszyny. Mogą to być sekwencje prostych poleceń, mogą to być wykonywane wg. określonego scenariusza funkcje.  Typowym przykładem takiego grupowania jest np. wykład (tu jego spis treści) dostępny w sieci Internet: Wstęp1.1 Przykład pierwszy: programowanie…

Czytaj dalejArchitektura kodu aplikacji jako pierwszy etap tworzenia oprogramowania

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ć

Koniec treści

Nie ma więcej stron do załadowania