Projekty

Linki

Polecam


Przypadki testowe z diagramów aktywności w Enterprise Architect

poniedziałek 7 cze 2010

Kilka dni temu pisałem (w tekście: Automatyczne generowanie diagramów aktywności w Enterprise Architect) o wsparciu dla półautomatycznego tworzenia diagramów aktywności. Teraz dodam iż na podstawie tych samych scenariuszy można utworzyć przypadki testowe

image

przeczytaj pozostałą część »


Przypadek użycia i działanie aktorów w tym samym czasie

środa 5 maj 2010

Co zrobić w sytuacji gdy do wykonania danej funkcji, opisanej przez przypadek użycia, potrzeba w tym samym momencie więcej niż jednego aktora? Czy można pokazać to na diagramie przypadków użycia? Otóż nie.

Diagram przypadków użycia nie definiuje nam tego kto w jakiej sytuacji, w jakim momencie korzysta z danej funkcji. Relacja aktor – przypadek użycia mówi jedynie o tym kto korzysta z funkcjonalności dostarczanej przez dany PU. W sytuacji gdy do realizacji fragmentu bądź całego scenariusza potrzeba dwóch aktorów to na diagramie PU wskazujemy na działanie obu aktorów poprzez asocjację.

image

Natomiast ich jednoczesne działanie procentujemy na diagramie aktywności zaznaczmy stosując tory (partycje)  pionowe i poziome.

image

Dzięki zastosowaniu partycji pionowych i poziomych i zmapowaniu ich na aktorów można wskazać na te fragmenty scenariusza, które są realizowane przez obu aktorów równocześnie. Technika ta może być przydatna zarówno przy modelowaniu procesów biznesowych jak i projektowaniu systemów informatycznych.


Agile a tworzenie przypadków użycia

czwartek 15 kwi 2010

Właściwym podejściem do definiowania przypadków Planting treesużycia dla tworzenia oprogramowania przy użyciu metody agile to zacząć od definicji zakresu. Definicje zakresu można opisać za pomocą diagramów WPA (Wysokiego Poziomu Abstrakcji)

Kiedy już zakres zostanie zdefiniowany należy zdefiniować nazwy przypadków użycia a następnie stopniowo nadawać priorytety i definiować bardziej szczegółowo przypadki użycia podczas gdy są one włączane do harmonogramu projektu.

Co pewien czas warto także dokonywać refaktoryzacji przypadków użycia, w miarę potrzeb konsolidując i definiując podrzędne przypadki użycia, oraz definiując, jeśli zachodzi taka potrzeba, rozszerzeń przypadków użycia.


Przypadki użycia ułatwiają określenie celu i zakresu projektu

poniedziałek 12 kwi 2010

Wiele mówi się o tym co dają przypadki użycia dla wymagań na system. Warto jest tez wiedzieć iż przypadki użycia pozwalają, zwłaszcza w projektach agile, na określenie celu  i zakresu projektu.

Zasadniczo bez przypadków użycia:

  1. Projektanci nie mają pojęcia, jaki cel ma użytkownik.
  2. Zespół nie zostaje poinformowany odpowiednio wcześnie o zakresie projektu.
  3. Różne zachowania użytkowników nie są zdefiniowane przed zobowiązaniem do dostarczenia.

Zastosowanie przypadków użycia pozwala na zapanowanie na tymi ?bolączkami? po przez określenie kontekstu i zakresu.

Kontekst

Nawet w projektach agile przypadki użycia są mechanizmem umożliwiającym firmom osiąganie celów. Cele te widać w każdym ustrukturyzowanym podejściu.  Takim podejściem, są przepadki użycia, które dostarczają także kontekst ? czyli cel determinujący powstanie aplikacji.

Zasada jest taką, że każdy cel ma przypisany minimum jeden przypadek użycia. W ten oto sposób można się odnieść do tych celów za pomocą scenariuszy i/lub user stories.

Zakres

Z politycznego punktu widzenia największym problemem z uruchomieniem projektu agile w organizacjach typu waterfall są niewłaściwe ustalenie oczekiwań. Ustalenie oczekiwań i w ten sposób zabezpieczenie zarówno finansowania jak i wsparcia dla projektu może być ważniejsze niż samo wykonanie.

Aby ustalić, jakie są oczekiwania trzeba koniecznie zidentyfikować zakres projektu. Ustalanie zakresu polega ogólnie na zarządzaniu stronami zainteresowanymi oraz ustalaniu priorytetów celów osób zainteresowanych.

Kluczem jest tutaj dokonanie wpierw przeglądu zakresu, a potem jego dokładne zrozumienie poprzez przeprowadzanie iteracji.


Złote reguły towarzyszące przypadkom użycia

wtorek 16 mar 2010

?Złote reguły? to nic innego jak wykaz punktów, które zazwyczaj kontroluję podczas tworzenia przypadków użycia. Gdy mam już narysowany przypadek użycia sprawdzam czy:

  • przypadek użycia zapewnia wartość aktorom,
  • krótki opis zwięźle opisuje cel przypadku użycia,
  • przypadek użycia jest kompletny i sensowny,
  • wydarzenie rozpoczynające przypadek użycia jest jasne,
  • sposób i czas zakończenia przypadku użycia jest jasny,
  • stosowana terminologia jest jasna, a istotne terminy zdefiniowane w słowniczku lub podobnym,
  • rozpoczęcie i zakończenie przepływu alternatywnego
    jest jasne a każdy przepływ alternatywny posiada jasne
    odniesienie do sposobu, w jaki się zaczyna i dokąd zawrócona jest kontrola po tym jak zostanie wykonany,
  • przypadek użycia jest możliwy do zweryfikowania,
  • wszystkie kroki są indywidualnie ponumerowane,
  • aby uprościć długie i złożone przepływy zdarzeń, wykorzystywane są podprzepływy w postaci dekompozycji aktywności

Powyższy dekalog sprawdzanych parametrów pozwala na utrzymywanie w repozytorium projektu w miarę sensownych przypadków użycia.


Prototyp a przypadek użycia

wtorek 9 mar 2010

Specyfikacja wymagań na system to trudny moment przede wszystkim dla osób, które muszą je wyspecyfikować. imageNie zawsze wiadomo w jaki sposób narzędzia informatyki będą mogły pomóc. Często mówimy tylko o funkcjonalności i o tym w jaki sposób system ma realizować procesy biznesowe.  Powstaje pytanie jak skutecznie uzupełnić wymagania także o takie szczegóły jak rozmieszczenie przycisków, format raportu, pola edycji systemu. Po prostu ludziom trudno jest stworzyć krok po kroku opis systemu, którego nigdy nie widzieli. Z tego też powodu jestem zwolennikiem by przypadki użycia wraz z diagramem klas i aktywności opowiadały o systemie skupiając się przede wszystkim  na jego funkcjach.

Do uszczegółowienia wielu  aspektów system, które do specyfikacji są żmudne i czasochłonne polecam prototyp.

Wytworzenie wczesnego prototypu opartego o przypadki użycia może powołać system do życia, co sprawia, że znacznie łatwiej jest gromadzić informacje zwrotne wymagane do ukończenia specyfikacji przypadków użycia. Takie podejście powoduje iż dokumentacja w UML nie jest zbyt złożona co wpisuje się nurt zwinnego modelowania.


o wymaganiach

poniedziałek 11 sty 2010

W sieci pojawił się nowy blog o wymaganiach (http://owymaganiach.pl/). Cieszy mnie ta inicjatywa, Pana Jakuba Jurkiewicza – doktoranta na Politechnice Poznańskiej, gdyż w sieci jest mało zasobów na temat inżynierii oprogramowania a te zapowiadają się sensownie.    Z pierwszych wpisów polecam teksty o przypadkach użycia. Powodzenia :)


Pisanie user story i scenariuszy przypadków użycia

czwartek 3 wrz 2009

User story to opis celów zorientowanych na użytkownika, jakie jedna lub więcej osób osiągnie za pomocą Twojego produktu. User stories używa się do osiągnięcia celu zawsze wtedy, kiedy jest osoba obsługująca interfejs . User story pisze się w formacie

Jako [osoba odgrywająca daną rolę] chcę [wykonać jakąś czynność] aby [osiągnąć jakiś cel].

W ten sam sposób można pisać scenariusze przypadków użycia, przy których należy uwzględnić, że scenariusz może obejmować kilka user story. Takie podejście pozwala także na zastosowanie modelowania w języku UML w SCRUM i tym samym wpisuje sie w nurt agile modeling ? zwinnego modelowania.


Przypadki użycia i aktorzy– kilka rad

wtorek 1 wrz 2009

Kilka porad odnośnie przypadków użycia i aktorów.

Przypadek użycia nie dostarcza funkcjonalności aktorowi

Problem: Często oznacza to, że każdy przypadek użycia sam w sobie nie dostarcza wartości aktorowi.

Rada: Proszę połączyć fragmentaryczne przypadki użycia w kompletną sekwencję takich fragmentów, które łącznie zapewnią wartość aktorom.

Stanowiska pracy jako aktorzy

Problem: Powszechnym błędem jest tworzenie aktorów, którzy odzwierciedlają stanowiska pracy organizacji. Tworząc aktorów, którzy odzwierciedlają stanowiska pracy przypadki użycia będą kształtowane, aby wspomagać stanowiska pracy a nie pracę, którą mają wykonać jednostki.

Rada: Jeżeli aktorzy odzwierciedlają stanowiska pracy, proszę zmodyfikować aktorów, aby dostosować ich do czynności, które mają wykonać w pracy.

Urządzenia jako aktorzy

Problem: Proste urządzenia, takie jak skanery i drukarki nie pomagają zbytnio w identyfikacji przynoszących wartość przypadków użycia. Aktorzy, których należy szukać, są to ludzie oraz inne systemy, które współdziałają z systemem.

Rada: Jeżeli aktorów określono dla urządzeń, trzeba odszukać osobę, która "stoi za" urządzeniem i zasugerować ją jako aktora.

 

Technorati Tagi:

Trzy korzyści z przypadków użycia

piątek 7 sie 2009

Każdemu zalecam stosowanie przypadków użycia ? także a może przede wszystkim w projektach Agile.

Poniżej zamieszczam trzy podstawowe zalety, które myślę, że przekonają do używania przypadków użycia w projektach Agile

1. Dzięki przypadkom użycia zyskuje się kontekst

Nawet w projektach Agile przypadki użycia są mechanizmem umożliwiającym firmom osiąganie celów. Podejście, które wykorzystuje ustrukturyzowane wymagania dostarcza ten kontekst. Innymi słowy przypadki użycia pozwalają określić z jakimi systemami lub innymi zasobami będzie współpracował nasz system.

2. Dzięki przypadkom użycia zyskuje się informacje dot. zakresu projektu

Z politycznego punktu widzenia największym problemem z uruchomieniem projektu Agile w organizacjach typu waterfall jest niewłaściwe ustalenie oczekiwań wobec projektu w zakresie jego trwania i kosztów. Ustalenie oczekiwań i w ten sposób zabezpieczenie zarówno finansowania jak i wsparcia dla projektu może być ważniejsze niż samo wykonanie.

Ustalanie zakresu polega przede wszystkim na ustalaniu priorytetów celów osób zamawiających produkt oraz ustaleniu ram czasowych i harmonogramów dostarczania.

Kluczem jest tutaj dokonanie wpierw przeglądu zakresu projektu, a potem jego dokładne zrozumienie poprzez przeprowadzanie iteracji.

3. Dzięki przypadkom użycia zyskuje się naturalną dekompozycję

Właściwym podejściem do definiowania przypadków użycia dla tworzenia oprogramowania przy użyciu metody Agile to zacząć od definicji zakresu. Kiedy już zakres zostanie zdefiniowany należy zdefiniować nazwy przypadków użycia a następnie stopniowo nadawać priorytety i definiować bardziej szczegółowo przypadki użycia podczas gdy są one włączane do harmonogramu projektu. Dokonujesz także refaktoryzacji przypadków użycia, w miarę potrzeb konsolidując i definiując podrzędne przypadki użycia, oraz definiując, jeśli zachodzi taka potrzeba, rozszerzeń przypadków użycia.


Historyjki użytkownika a przypadki użycia

wtorek 28 lip 2009

Obecnie znajdujemy się w dziwnej sytuacji ? są user stores (zwane w języku polskim historyjkami użytkownika) i scenariusze przypadków użycia z czego te ostatnie można podzielić na przypadki użycia formalne i nieformalne a także streszczenia przypadków użycia. Czym one się różnią, a w czym są takie same?

Przypadki użycia, scenariusze przypadków użycia i user stories dokumentują opis tego jak produkt ma być używany. Różnią się one, w kontinuum, pod względem ilości dodatkowych danych wymaganych dla stworzenia każdego z nich.

  • Formalne przypadki użycia wymagają najwięcej wysiłku. Panuje w nich przepych i wiele się w nich dzieje, ale opisują wszelkie kombinacje tego, jak różne osoby wykonują tą samą czynność (lub jej odmianę).
  • Nieformalne przypadki użycia są mniej więcej takie same- tyle tylko, że są mniej formalne. Wyzwaniem jest dostarczenie odpowiedniego poziomu szczegółowości, bez elementów prowadzących formalnych przypadków użycia, które mają służyć jako przypomnienie.
  • Streszczenia przypadków użycia niemalże nie mają dodatkowych danych, ale zawierają takie sama wyzwania ?na ile jest to jest wystarczająco? co nieformalne przypadki użycia, tyle że w większym stopniu.
  • User stories mają najmniej dodatkowych danych i dostarczają najmniejszy kontekst.

Scenariusze przypadków użycia to nieco inny przypadek. Podobnie jak user story, scenariusz przypadku użycia opisuje jedną ścieżkę przez wielościeżkowy przypadek użycia. Warto więc połączyć słabość przypadku użycia (wysoka ilość danych dodatkowych) ze słabością user story (ograniczony kontekst) co w konsekwencji da dość spójny i zwinny oraz pomocny artefakt.


Specyfikacja oparta na scenariuszu

czwartek 2 lip 2009

Zwinne modelowanie polega miedzy innymi na tym, że budowana dokumentacja do projektu nie jest nadwymiarowa. Innymi słowy jest jej tyle ile potrzeba i nie mniej ani nie więcej. Jak na tym zapanować. Ja osobiście lubię stosować scenariusze (w SCRUM opowiadania klienta), które pozwalają mi na zbudowanie zwinnych przypadków użycia. Natomiast przypadki użycia pomagają mi efektywnie:

  • planować iteracje
  • szacować złożoność projektu
  • komunikować się z klientem
  • weryfikować wymagania klienta
  • planować testy
  • lepiej integrować systemy

Czym jest więc przypadek użycia? W moim rozumieniu przypadek użycia to agregat scenariuszy dostarczający konkretnych wartości. Dlatego też w moich modelach scenariusze odgrywają ważną rolę, a modele opierają się o przypadki użycia.

image


Najczęściej czytane

Kategorie

  • agile
  • architektura korporacyjna
  • Enterprise Architect
  • literatura
  • metodyki
  • modelowanie biznesowe
  • o inżynierii oprogramowania
  • ogólne
  • SCRUM
  • StarUML
  • szkolenia
  • teksty
  • WMB
  • wydarzenia
  • zarządzanie wymaganiami
  • zwinne modelowanie
  • Słowa kluczowe

    agile agile modeling aktor biznesowy aplikacje webowe ASP.NET biznesowy przypadek użycia byt biznesowy diagram aktywności diagramy Enterprise Architect Extreme Programming IBM Rational Software Modeler inżynieria oprogramowania konsultacje metoda punktów przypadków użycia metodyki wytwarzania oprogramowania model analizy biznesowej model biznesowych przypadków użycia modelowanie modelowanie biznesowe modelowanie procesów biznesowych modelowanie systemów informatycznych narzędzia CASE pracownik biznesowy proces wytwórczy oprogramowania procesy biznesowe projektowanie systemów informatycznych przypadki użycia Rational Software Architect Rational Unified Process RUP scenariusze procesów biznesowych SCRUM Service Oriented Architecture SOA StarUML szacowanie oprogramowania szkolenie testowanie UML Unified Modeling Language wymagania na system XP zarządzanie wymaganiami zwinne modelowanie

    Archiwum