z cyklu: "USE CASE'owe historie" - zagadki

0

witam ponownie, moj ostatni temat zapewne z powodu swojej obszernosci nie byl za czesto komentowany wiec tym razem postaram sie krocej ;)

ponizej przedstawiam 2 sporne sytuacje, na ktore nie udalo mi sie uzyskac jednoznacznej odpowiedzi - sa to takie pseudozagadki, sytuacje, ktore chcialbym byscie skomentowali jesli macie jakies zdanie w tych kwestiach

a wiec "zagadka" nr 1:
user image

"zagadka" nr 2:
user image

0

Ad. Zagadka nr.1: Osobiście uważam, że rozwiązanie a jest lepsze. Dlaczego? A no bo przy dowolnym rozszerzeniu możliwości dodaje się ją albo do "Przeglądaj ankietę", jeśli ma być dostępna dla wszystkich, albo w "Przeglądaj ankietę przez użytkownika", jeśli tylko dla zarejestrowanych użytkowników. Można tam dodać jeszcze jeden poziom, do którego dostęp będzie miał przypuśćmy administrator i na równie prostych zasadach go rozbudowywać. I dodając nową funkcjonalność dla userów nie trzeba pamiętać, że administrator też winien taką opcję posiadać, bo po prostu opcje administratora będą rozszerzeniem (nie wiem, czy to dobre słowo, w sumie nie zgadza się z użytym przez Ciebie <<extend>>, a bardziej odpowiada tej strzałce z białym grotem ;) ) tych dla użytkownika.

Trochę zamotałem, ale może coś się da z tego zrozumieć ;)

Co do Zagadki nr.2: Nie znam się na tym na tyle, by oceniać, czy coś jest poprawnie zrobione czy nie :).

0

o ile pierwsza czesc wypowiedzi dobrze rozumiem i zgadzam sie z Toba (w sumie o tym tez pisalem pod tymi przykladami tylko troszke inaczej to okreslilem odwolujac sie juz w dluzszej perspektywie do iteracji w fazie implementacji)

opcje administratora beda wtedy...dziedziczyc (tego slowa chyba do konca zamiennie nie mozna uzyc zamiast generalizacj,ale lepiej oddaje sens jej istnienia-ta strzalka biala o ktorej piszesz) wszystkie opcje uzytkownika i goscia, oprocz tego do poziomu administratora bedzie mozna extendami ukazac funkcjonalnosci dostepne tylko dla administratora - o to Ci moze chodzi ? jesli tak to tez sie zgadzam;) cos podobnego tez mialem ale obcialem ten diagram by skupic sie na pojedynczym problemie

tak w ogole to uwazam ze oba rozwiazania sa dobre i pewnie w zaleznosci od sytuacji raz jedno bedzie lepsze, raz drugie, no ale chcialbym tu poznac wasze zdanie by upewnic sie ze dobrze tu mysle ;)

0

opcje administratora beda wtedy...dziedziczyc (tego slowa chyba do konca zamiennie nie mozna uzyc zamiast generalizacj,ale lepiej oddaje sens jej istnienia-ta strzalka biala o ktorej piszesz) wszystkie opcje uzytkownika i goscia, oprocz tego do poziomu administratora bedzie mozna extendami ukazac funkcjonalnosci dostepne tylko dla administratora - o to Ci moze chodzi ? jesli tak to tez sie zgadzam;)
O to dokładnie mi chodzi ;). Rzecz w tym, że nawet, jeśli w początkowej fazie projektu nie zostanie to uwzględnione, a zimplementowane w ten sposób, to dodanie możliwości wprowadzenia użytkownika z wyższymi uprawnieniami będzie proste. W przypadku rozwiązania b) będzie więcej roboty. Taka w sumie jest główna zaleta opierania się na tego typu strukturze - jak czegoś się nie uwzględni z początku, to potem dodanie tego jest dziecinnie proste. Nawet, jeśli inna możliwość wydaje się być bardziej optymalna, to jest dużo bardziej mozolna w rozbudowie. Już nie mówiąc o tym, jak kod zaczyna być zagmatwany.

tak w ogole to uwazam ze oba rozwiazania sa dobre i pewnie w zaleznosci od sytuacji raz jedno bedzie lepsze, raz drugie, no ale chcialbym tu poznac wasze zdanie by upewnic sie ze dobrze tu mysle ;)

Moim zdaniem - tak jak pisałem wyżej - to drugie rozwiązanie jest o wiele gorsze w rozbudowie. Jednak jeśli dostajesz dokładną specyfikację tego, co to ma być i wiesz, że nic się tam nie zmieni (bardzo istotne założenie!) oraz że w przyszłości nie wykorzystasz tego kodu ponownie (bardzo pesymistyczne założenie w dzisiejszych czasach), wówczas ma sens - samo działanie będzie wówczas optymalniejsze.

P.S. Ech, Coyote mógłby automagicznie zamieniać [quote][/quote] na cytat :)

0

zgadzam sie z Toba. Piszac ze oba sa poprawne chodzilo mi o to, ze sa poprawne w sensie notacji UML, no i ze zapewne czasami jedno moze byc lepsze, a czasem drugie - doskonale uzupelniles ta wypowiedz podajac trafne przyklady:)

dzieki ze podzieliles sie swoim pogladem na sprawe i utwierdziles mnie w przekonaniu, ze ide dobrym kierunku:)
jesli ktos by sie nie zgadzal ze zdaniami tu przytoczonymi to prosze o jakies argumenty na nie ;)

pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1