Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Nie raz zdarza mi się samemu miec problem albo z problemem zwracają sie do mnie.Proponuje tu umieszczać diagramy co do których macie watpliwości i chcieli byście usłyszeć opinie innych. Nie zapominajcie, że <atakujemy> diagramy a nie ich autorów...:)
jest moją prośbą o utrzymanie zwyczaju:
- jeśli pytasz to obligatoryjnie słuchasz
- jeśli masz inne zdanie pokaż alternatywne rozwiązanie i uzasadnij a nie krytykuj
- jeśli zapytasz bądź gotów przyjąc odpowiedź
zwracam także uwagę, że wysłuchanie odpowiedzi to nie zgoda na nią a jedynie przyjęcie do wiadomości, to my samy wyciagamy wnioski - nie oczekujmy od innych gotowych rozwiazań a jedynie słuchajmy ich ale twórzmy sami...Jarek Żeliński edytował(a) ten post dnia 12.07.10 o godzinie 09:51
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Witam :)Wykonuję mały projekt na zajęcia. Zrobiłem taki Use Case Diagram i chciałbym usłyszeć opinie na jego temat, ponieważ coś mi w nim nie pasuje, ale nie wiem do końca co? :)
Aha i małe pytanie jeśli chodzi o nazwy funkcjonalności, czy mają to być formy rzeczownikowe czasownika (tak jak na moim diagramie), czy tej tryb rozkazujący czasownika (np. Rejestruj zlecenie)?

pozdrawiam
Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Jest tu bardzo nierównomierne "obciążenie gatunkowe" np. jest przypadek (UC ang. Use Case, przypadek użycia) złożony jak np. Naliczanie pensji i trywialny fakt Zmiana statusu zlecenia. Postaraj się wyobrażić sobie scenariusze do tych UC to odczujesz tę różnicę.Pamiętaj, że dobry diagram UC to potencjalna lista także prototypów GUI. Zmiana statusu wiec nie kwalifikuje się na UC a na pozycję w scenariuszu. Nie należy też diagramem UC próbować zastępować modeli procesów....
Po drugie zbyt duża liczba <<include>> i <<extend>> pokazuje, że coś nie tak ze zrozumieneim dziedziny systemu. Model UC i tak nie zastąpi diagramu klas wiec projektowanie na poziomie UC niemalże modułów programu nie jest dobrym rozwiązasniem. Są książki, które w ogóle odradzają stosowanie diagramów UC do czegokolwiek więcej niż "poglądowe przedstawienie funkcjonalności dla zamawiajacego".
UC nie powinno być modelem dla wykonawcy. Od modelowania systemu są klasy, diagramy maszyny stanów i interakcji.
Wskazówka: Opracuje mapę procesów biznesowych tego serwisu RTV. Każdy proces (lub czynność) na takim diaramie będąca w zakresie projektu to materiał na UC. Każdy UC powinien dać się podłączyć do prototypu GUI, jeżeli nie da sie to prawdopodobnie jest to element scenariusza a nie osobny UC. Osobiście jestem zwolennikiem tezy by nie stosować <include> i <extent> na takich diagramach gdyż odbiorca biznesowy tego nie zrozumie a ten diagram jest dla niego. Po drugie niczego to moim zdaniem nie wnosi do projektu.
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Dziękuję za cenne rady, na pewno z nich skorzystam przy poprawieniu diagramu :) pozdrawiam
Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Michał Kołacki:
Dziękuję za cenne rady, na pewno z nich skorzystam przy poprawieniu diagramu :) pozdrawiam
Poczekaj na inne opinie, moje mogą być subiektywne. Nie zapominaj, że ważna jest metodyka projektu w jakim użyłeś modelu UC. W Sytropy będzie inaczej w RUP inaczej..;) diagramy UC mają tam inną rolę do spełnienia.... są tak zwane metody analizy wymagań zorientowane na przypadki uzycia (np. RUP) sa inne zorientowne na model dziedziny (np. Syntropy).
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Witam,Wykonuje obecnie prace inżynierska i jednocześnie to w zasadzie mój pierwszy kontakt z UML. Tematem pracy jest projekt i implementacja aplikacji www do tworzenia galerii zdjęć. Obecnie stworzyłem diagram przypadków użycia wraz z scenariuszami

W tym diagramie na chwile obecna wydaje mi się ze mam 2 błędy, że aktor rejestrator nie jest tu potrzebny a PU z nim powiązany powinien byś włączony poprzez include do wszystkich pozostałych PU
Na chwilę obecną jestem na etapie tworzenia diagramu klas i mam kilka tu kilka pytań

Nie jestem przekonany czy miedzy kasami autor a administrator powinna być generalizacja czy agregacja (na chwile obecna jest agregacja uzyta w rysunku) oraz czy asocjacja miedzy osoba i galeria i miedzy autor i galeria jest poprawna ?
PozdrawiamMarcin Wrzesiński edytował(a) ten post dnia 24.01.09 o godzinie 17:26
Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Pierwsza uwaga: przypadek użycia to czasownik (wyrażenie odczasownikowe) mówiący o celu czynności (kontaktu z systemem). Po drugie brakuje definicji systemu, bez której diagram nie ma kontekstu i trudno go ocenić to choćby powiedzieć co jest aktorem a co nie. Lista galerii nie jest przypadkiem użycia. Po drugie przypadki użycia to nie proces ani lista czynności...Diagram klas: jak rozumieć Zdarzenie jako superklasę dla Galerii i Fotografii? jak rozumieć to, że Autor jest komponentem Administratora?
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Dzięki Panie Jarku trochę mi rozjaśniłeś moją półmorczność i zaraz naniosę poprawki i pokaże, co lepsza pokazałeś mi że mój promotor ma głęboko w.... moją prace inż bo dla niego jest ok (a mi się wydawało że jest coś nie tak). Co do diagramu klas i klasy Zdarznie zamysł mam taki żeby każda operacja w systemie była zapisywana w logach, a żeby nie powtarzać operacji stworzyłem klase abstrakcyjna z ktorej mają dziedziczyć inne klasy (prawdopodobnie przekombinowałem bo sensowniej mogło byc dodac do kazdej klasy ta jedna operacje).A z Autorem i administratorem to było tak że wcześniej użyłem tam generalizacji ale po jakiejś mądrej lekturze dostałem sieczki w mózgu i właśnie nie byłem przekonany czy generalizacje czy jednak agregację użyć
W każdym bądź razie już się biorę za korekty i zaraz dam rezultat
----------------------------
Fragment mojej pracy:
"Dziedziną problemu jest internetowa aplikacja do tworzenia galerii zdjęć. Aplikacja ta przeznaczona jest dla szerokiego grona odbiorców, którzy chcę publikować swoje cyfrowe fotografie w Internecie. Aplikacja ma umożliwiać jej użytkownikom rejestrację i logowanie aby można było w pełni korzystać z jej funkcjonalności. ...
Z aplikacji będą korzystać trzy grupy użytkowników. Będą to użytkownicy nie zarejestrowani, zarejestrowani i administratorzy aplikacji. ... Do przeglądania zawartości galerii zdjęć będą mogli mieć dostęp użytkownicy nie zarejestrowani.
Aplikacja powinna rejestrować operacje wykonywane przez użytkowników oraz nieudane próby logowania. ..."

Rozumiem że takie nazewnictwo jest poprawne? Co do aktorów to są to Administrator, Autor i Użytkownik publiczny oraz Użytkownik który jest bytem abstrakcyjnym łączącym wspólną część dla wszystkich trzech aktorów. Na diagramie nie uwzględniłem przypadku użycia "zapisz wykonywane operacje" gdyż jest on związany z prawie każdym przypadkiem i jest to uwzględnione w definicji każdego przypadku użycia. Za aktora nie uznaje bazy danych gdyż system nie realizuje moim zdaniem żadnych jej potrzeb.

Natomiast w pierwszym zamyśle diagram klas wyglądał takMarcin Wrzesiński edytował(a) ten post dnia 24.01.09 o godzinie 19:24
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Diagram przypadków użycia: diagram ten buduje się w oparciu o tzw. metodę separation of concern - podział na zagadnienia. W Twoim opisie np. Użytkownik używa przypadku Zaloguj się, który następnie zostaje rozszerzony o przypadek Załóż konto. Prawidłowo powinno być, że Aktor używa przypadku Załóż konto (bo tak naprawdę jest to jedno z głównych zagadnień), który to przypadek może być rozszerzony (a właściwie powinien być włączony - include) o przypadek użycia Logowanie. Logowanie jest pobocznym zagadnieniem w Twoim przypadku. Poza tym dziwne jest, że inni aktorzy nie wykorzystują przypadku użycia Zaloguj się. To że Administrator dziedziczy własności Użytkownika wcale nie oznacza, że Administrator dziedziczy asocjację do przypadku użycia Zaloguj się. Przynajmniej tak się nie podchodzi do tworzenia tego diagramu.Ważniejsza sprawa to include i extend (zwracaj uwagę na strzałki w tych związkach). Zazwyczaj include oznacza bezwarunkowe włączenie wskazanego dodatkowego przypadku do tzw. bazowego, natomiast extend pokazuje warunkowe włączenie dodatkowego przypadku do wskazywanego, rozszerzanego przypadku (często pokazuje się w rozszerzanym przypadku punkt rozszerzenia i warunek). Poza tym na Twoim diagramie nie trzeba rysować asocjacji Użytkownika z przypadkiem Zaloguj się (przy założeniu, że to przypadek Zaloguj się rozszerza przypadek Załóż konto, a nie jak u Ciebie), gdyż wystarczy pokazanie asocjacji do przypadku Zaloguj się. Wszystkie pozostałe przypadki włączane (include, exclude) nie muszą już mieć asocjacji z tym aktorem. Nie określiłeś również związku pomiędzy przypadkami Wygeneruj listę galerii, a Przeglądaj galerię. Wszystkie "główne" przypadki powinne być skojarzone z aktorem.
To tylko pierwszy rzut oka na ten diagram. Jak wcześniej wspomniałem diagram ten należy budować w oparciu o tzw. separation of concern, czyli kojarzyć aktorów z głównymi zagadnieniami.
To oczywiście początek, bo tak naprawdę poinieneś najlepiej rozpisać wszystkie scenariusze i dopiero wtedy zaczną Ci się układać przypadki użycia we właściwe związki i powiązania.
Diagram klas:
Agregacja - z diagramu wynika, że Administrator składa się wyłącznie z jednego autora, natomiast Autor może wejść w skład Administratora .... chyba Ci nie o to chodziło, prawda ?
Agregacja całkowita oznacza, że jak nie ma zdjęcia, to nie ma galerii - też chyba nie o to Ci chodziło, prawda ?
Zdarzenie to zupełnie odrębny byt, tak mi się wydaje, aniżeli Autor, Galeria, Fotografia, więc co oznacza to dziedziczenie ? Chyba Ci chodziło wyłącznie o jakiś związek pomiędzy tymi, różnymi bytami.
Mam nadzieję, że Ci nie pomieszałem zbytnio ;)
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Jerzy N. no namieszałeś mi i to ostro,aż sam się pogubiłem :)Ad Diagram przypadków użycia:
1. Aktor "Użytkownik" jak widać jest abstrakcyjny (jest pisany pochyła czcionką). Od "użytkownika" dziedziczą aktorzy "Administrator", "Autor" i "Użytkownik publiczny" (dla łatwość nazwijmy go po prostu "publiczny"). Tak więc w moim postrzeganiu PU poprzez aktora "użytkownik" może logować się i "administrator" i "autor" i "publiczny".
2. Jeśli chodzi o PU "zaloguj się" i "załóż konto" ja to widzę tak:
publiczny korzysta z aplikacji i chce założyć konto więc od razu korzysta z przypadku "załóż konto" lub "publiczny" korzysta z PU "zaloguj się", okazuje się że nie posiada konta więc przypadek "zaloguj się" jest rozszerzany o "załóż konto".
3. Includy i Extendy mam w dobra stronę (przynajmniej mi się tak wydaje) bo publiczny wywołując "wygeneruj listę autorów" włącza następnie (po wybraniu autora) "wygeneruj listę galerii". Tu z kolei po wybraniu galerii przechodzi do "przeglądaj galerie". (Za łożyłem że bez wybrania galerii z uprzednio wygenerowane listy nie można przejrzeć galerii)
Ad Diagram klas:
1. Spojrzałeś na poprzedni diagram a nie na ostatni chyba
2. Kompozycja (agregacja całkowita jak wolisz) z tego co wyczytałem i zrozumiałem to niema zdjęcia bez galerii gdyż galeria jest "całością" a zdjęcie "częścią" (z tego co mądre książki piszą to romb jest przy całości a nie przy części)
3. W poprzednim diagramie klas klasa Zdarzenie była abstrakcyjna i posiadała operacje wykorzystywana przez 3 inne klasy w ten sam sposób.
Chyba że ciągle coś źle pojmuję. :)
Mam nadzieję że dość jasno napisałem :)
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Marcin Wrzesiński:"Dziedziczenie" to pokazania tego typu mechanizmów rzadko się stosuje, albo wcale. Rozumiem o co Ci chodzi, że chciałeś sobie "skrócić", ale tego się nie praktykuje. A tak na dobrą sprawę musiałbym pogrzebać w UML czy to dozwolone ;)
Jerzy N. no namieszałeś mi i to ostro,aż sam się pogubiłem :)
Ad Diagram przypadków użycia:
1. Aktor "Użytkownik" jak widać jest abstrakcyjny (jest pisany pochyła czcionką). Od "użytkownika" dziedziczą aktorzy "Administrator", "Autor" i "Użytkownik publiczny" (dla łatwość nazwijmy go po prostu "publiczny"). Tak więc w moim postrzeganiu PU poprzez aktora "użytkownik" może logować się i "administrator" i "autor" i "publiczny".
Praktykuje się asocjacje od aktorów do odpowiednich przypadków.
Poza tym spróbuj może napisać sobie takie scenariusze (krok po kroku) ... ciekawe co Ci wyjdzie ;))))
2. Jeśli chodzi o PU "zaloguj się" i "załóż konto" ja to widzę tak:Dla początkujących projektantów problem istnieje w przyswojeniu sobie idei przypadków użycia. Przypadki użycia mają być zestawem zamkniętych kroków. A związki include, czy extend to nie jest kontrola sterowania, ale wyróżnianie w danym przypadku pewnych wspólnych kroków. Nie patrz na use case'y jak na czynności, które są w jakiejś kolejności wykonywane.
publiczny korzysta z aplikacji i chce założyć konto więc od razu korzysta z przypadku "załóż konto" lub "publiczny" korzysta z PU "zaloguj się", okazuje się że nie posiada konta więc przypadek "zaloguj się" jest rozszerzany o "załóż konto".
Wyobraź sobie wpierw co robi Użytkownik. Wprowadza adres strony i co dalej ? Formularz pokazuje mu albo się zaloguj, albo załóż nowe konto. Może powinien być przypadek wejdź na stronę ? Ależ nie. Zaloguj się jest tym pierwszym ekranem, więc Użytkownik, by założyć konto musi wpierw uruchomić przypadek Zaloguj się.
Oczywiście, o ile nie powinniśmy stworzyć przypadku obsługa konta i włączyć do tego przypadku pozostałe przypadki i w ten sposób unikamy sporej ilości asocjacji. I raczej ten kierunek bym Ci polecał, od ogółu do szczegółu.
3. Includy i Extendy mam w dobra stronę (przynajmniej mi się tak wydaje) bo publiczny wywołując "wygeneruj listę autorów" włącza następnie (po wybraniu autora) "wygeneruj listę galerii". Tu z kolei po wybraniu galerii przechodzi do "przeglądaj galerie". (Za łożyłem że bez wybrania galerii z uprzednio wygenerowane listy nie można przejrzeć galerii)Podobnie jak poprzednio. Włączany przypadek może być włączony na samym poczatku innego. Kolejność wchodzenia w interakcję aktora z przypadkami nie jest przedmiotem diagramu przypadków użycia. Opisuje tylko jakie funkcje oferuje system aktorowi.
Kompozycja może powodować to, że usunięcie jej części powoduje usunięcie obiektu głównego. Znaczy, że jak ze stołu usuniesz blat, to nie będziesz miał stołu. Jest to związek bardzo mocnego typu i rzadko się go stosuje. Aczkolwiek istnieją inne wersje związane z mechanizmem usuwania całości i poszczególnych elementów.
Ad Diagram klas:
1. Spojrzałeś na poprzedni diagram a nie na ostatni chyba
2. Kompozycja (agregacja całkowita jak wolisz) z tego co wyczytałem i zrozumiałem to niema zdjęcia bez galerii gdyż galeria jest "całością" a zdjęcie "częścią" (z tego co mądre książki piszą to romb jest przy całości a nie przy części)
3. W poprzednim diagramie klas klasa Zdarzenie była abstrakcyjna i posiadała operacje wykorzystywana przez 3 inne klasy w ten sam sposób.Co do obiektów. Jaki cel mają obiekty związane z aktorami ? Aktorzy są poza systemem i nie wchodzą w jego skład. Tutaj coś Ci się chyba dość mocno pomyliło. Z tego diagramu wynika, że bierzemy obiekt np. Autor i uruchamiamy metodę usunKonto(). Tutaj powinieneś zamodelować obiekt Konto i wprowadzić metodę usunKonto(). Albo może trzy obiekty kontoAutora, KontoAdministratora, Kontoosoby .... tylko czy to ma sens ???? Trzy różne konta ? Konto zapewne to samo, ale różne uprawnienia, w zależności od tego kto to konto posiada, prawda ?
Nie przejmuj się. Głównym celem modelowania jest to, by wszyscy, którzy mają mieć do czynienia z tym modelem, zrozumieli o co chodzi. A reguły używania poszczególnych elementów zawsze się mogą zmienić .... ;)))))))
Chyba że ciągle coś źle pojmuję. :)
Mam nadzieję że dość jasno napisałem :)
Mateusz
Kurleto
Analizuję biznesowo
i zarządzam
projektami.
Wdrażasz syst...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Generalnie te Twoje przypadki użycia są nieco zbyt szczegółowe, jeśli można tak powiedzieć. Przypadek użycia powinien reprezentować scenariusz współpracy aktora z systemem służący określonemu celowi. Dobry Przypadek użycia to np:nazwa: tworzenie konta
warunek początkowy: klient jest nie zalogowany, strona widoczna jest w przeglądarce, nie posiada konta
przebieg:
1. klika sobie zarejestruj
2. wyświetlany jest formularz rejestracji
3. klient wypełnia dane rejestracyjne i klika zapisz
4. potwierdza poprawność danych
5. wyświetlany jest regulamin
6. klient potwierdza regulamin
7. wysyłany jest mail aktywacyjny
8. klient aktywuje konto klikając w link
9. wyswietlana jest informacja o aktywowaniu konta (powiązany przypadek użycia: logowanie)
przebiegi alternatywne -
1) błędny email (kod aktywacyjny usuwany po 2 tygodniach, lub przez administratora), powiązany przypadek użycia logowanie (przebieg: konto nieaktywne)
2) poprawienie danych (klient wybiera opcję popraw dane, cofając się do punktu 2 scenariusza)
3) błedne dane w formularzu (negatywna walidacja) - wyświetlane przy polach informacje o tym jak wprowadzić dane które zostaną zaakceptowane
--
tak mniej wiecej przypadek użycia - więc takie przypadki jak
wygeeruj listę autorów, listę galerii - to raczej elementy scenariusza niż przypadki użycia - a napewno na etapie analizy wymagań (projektu analitycznego, definiowania zakresu - czy jak to nazwiesz zależnie o metodologii)
takie elementy mogą być przypadkami użycia, ale systemowymi, do których "podpinamy" dokładne diagramy sekwencji, stanów itp. żeby zaprezentować programiście jak dana funkcjonalność jest realizowana przez system
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
No to mi rozjaśniliście moja "połmroczność" :)Zobaczymy co z tego zrozumiałem później ale czuje że juz kapuję :)
Dzięki
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Panowie zastanawia mnie kwestia rejestrowania wykonywanych operacji w aplikacji, czy pominąć ten przypadek na diagramie czy dać go jako pierwszy i z niego asocjacje do pozostałych przypadków? Rejestracja wykonywanych operacji przez zalogowanych użytkowników (Autorów) jest jednym z celów aplikacji, dokładniej chodzi o to, że zanim żądanie użytkownika zostanie przekazane dalej aplikacja ma je przechwycić zapisać i przekazać do właściwego wykonania.Poniżej załączę moje nowe diagramy w dwóch wersjach z tym przypadkiem i bez niego. Diagramy stworzyłem nowe analizując wasze uwagi.
Diagram nowy bez przypadku "Zapis żądanej operacji z dalszym przekazaniem"

Diagram nowy z przypadkiem "Zapis żądanej operacji z dalszym przekazaniem"

Marcin Wrzesiński edytował(a) ten post dnia 27.01.09 o godzinie 12:59
Artur
Kęska
Senior Software
Developer, XNet
Communications
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Marcin Wrzesiński:
dokładniej chodzi o to, że zanim żądanie użytkownika zostanie przekazane dalej aplikacja ma je przechwycić zapisać i przekazać do właściwego wykonania.
Czy nie jest to przypadkiem próba odpowiedzi na pytanie Jak Ma To Być Zrobione, a nie Co Ma To Robić? Czy Aktor (w tym przypadku użytkownik) w jakikolwiek sposób widzi, lub oddziałuje na proces przekazywania żądania?Artur Kęska edytował(a) ten post dnia 27.01.09 o godzinie 14:21
Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Przychylam się do tego, i diagram UC:- nie jest modelem modułów ani niczego podobnego (od tego są diagramy klas)
- nie jest modelem procesu, od tego są diagramy czynności a lepiej BPMN (poza UML)
Po trzecie skłaniam się ku tezie, że stosowanie include/exclude niepotrzebnie kompiluje diagramy wnosząc niewiele do odpowiedzi "co system ma zrobić dla jego użytkownika i kim jest użytkownik".
Wystarczy dodać komentarz, że każdy aktor musi zostać autoryzowany w systemie oraz, że konta zakłada administrator i diagram staje się dużo lżejszy. (można dodać takie bąble na diagramie dla porządku i skomentować)
Korzystanie z galerii to: przeglądanie zdjęć, dodawanie/usuwanie/modyfikacja (tu CRUD), rejestracja w serwisie, zarządzanie kontami użytkowników. Koniec
Diagram UC ma na celu pokazanie funkcjonalności z perspektywy użytkownika oraz wskazania co jest w granicy systemu a co poza nim i tylko tyle.
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Artur Kęska:
Czy nie jest to przypadkiem próba odpowiedzi na pytanie Jak Ma To Być Zrobione, a nie Co Ma To Robić? Czy Aktor (w tym przypadku użytkownik) w jakikolwiek sposób widzi, lub oddziałuje na proces przekazywania żądania?Artur Kęska edytował(a) ten post dnia 27.01.09 o godzinie 14:21
W sumie nie, właściwie to wymaganie stawiane aplikacji powinno się wykonywać automatycznie, tylko zastanawiam się czy to przedstawić jakoś na diagramie czy po prostu uwzględnić w scenariuszu
Jarek
Żeliński
Analityk biznesowy,
systemowy,
projektant aplikacji
(i fo...
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Marcin Wrzesiński:
się wykonywać automatycznie, tylko zastanawiam się czy to przedstawić jakoś na diagramie czy po prostu uwzględnić w scenariuszu
Scenariusz UC opisuje TYLKO interakcje (dialog) systemu z użytkownikiem, od pokazywania bebechów tych scenariuszy są diagramy sekwencji, wcześniej diagram klas żeby zobrazować co ma do siebie gadać na diagramie sekwencji. Przy okazji tworząc diagramy sekwencji dla każdego UC zidentyfikujesz komplet metod dla klas biorących udział w tych zdarzeniach (kazde wywołanie klasy do odwołanie się do jej publicznej lub chronionej metody).Jarek Żeliński edytował(a) ten post dnia 27.01.09 o godzinie 14:34
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Jarek Żeliński:
Korzystanie z galerii to: przeglądanie zdjęć, dodawanie/usuwanie/modyfikacja (tu CRUD), rejestracja w serwisie, zarządzanie kontami użytkowników. Koniec
Czyli mam rozumieć że lepiej widziane byłyby 4 przypadki (te co wymieniłeś)? Ciężko mi jest sobie wyobrazić że z np. CRUD (Create, Retrieve , Update, Delete ) użytkownik wie że chodzi raz o galerie a raz o zdjęcia. Z tego co rozumiem to lepiej jest zachować "jeden poziom" (znaczy się bez takiego rozdzielania przez Extendy i Includy jak ja zastosowałem).
Jarek Żeliński:
Diagram UC ma na celu pokazanie funkcjonalności z perspektywy użytkownika oraz wskazania co jest w granicy systemu a co poza nim i tylko tyle.
Sądziłem że tworząc fragment diagramu Przejrzenie galerii z możliwością modyfikacji oraz wszystkie przypadki z nim związane pokazuje funkcjonalność systemu dla użytkownikaMarcin Wrzesiński edytował(a) ten post dnia 27.01.09 o godzinie 14:56
Marcin
W.
Informatyk, Centrala
Zakładu
Ubezpieczeń
Społecznych
Temat: UMLowa ośla łączka ;) czyli komentujemy ale nie czepiamy się
Wydaje mi się że tak duże uogólnienie spowoduje powstanie mniej szczegółowego scenariusza przypadku użycia które będę musiał uzupełnić dużo bardziej rozbudowanym diagramem czynności.Jeżeli już chodzi o maksymalne uproszczenie to chyba bardziej zrozumiale były by przypadki:
- Przeglądanie zdjęć
- Zarządzanie galeriami
- Zarządzanie zdjęciami
- Zarządzanie kontami
- Rejestracja w serwisie
Tylko w tym momencie powstaje kwestia tego jak bardzo scenariusz musi być rozbudowany bo pod przypadkiem np. "Zarządzanie galeriami" muszę uwzględnić chęć utworzenia, modyfikacji lub usunięcia galerii, czyli muszę zrobić wiele alternatywnych przepływów.Marcin Wrzesiński edytował(a) ten post dnia 27.01.09 o godzinie 15:48
