-
Data: 2009-01-16 15:44:34
Temat: Re: UML a modelowanie funckjonalnoci systemu
Od: tsharny <t...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Wiktor Zychla pisze:
> rozpisanie scenariuszy/przypadków użycia nie zaprojektuje Ci samo
> architektury systemu, ani nie zbuduje modelu
> analitycznego/dziedzinowego, może tylko pomóc.
> spróbuj jakoś tak: scenariusz jaki rozpisujesz:
>
> 1. Zalogowanie sie do systemu,
> 2. Sprawdzenie dostepnych wolnych dni od pracy,
> 3. Wyslanie prosby o urlop do kierownika.
> 4. Otrzymanie akceptacji urlopu.
> 5. Zapisanie w bazie danych urlopu.
To co Megas podał (5 kroków przypadku użycia 'Wypisanie przez
pracownika urlopu') jest niczym innym jak osobnymi przypadkami użycia.
Aktorem będzie Użytkownik, który może wybrać następujące opcje w
systemie (przypadki użycia):
1. Zaloguj
2. Sprawdź wolne dni
3. Wypisz urlop
4. Wyświetl dni urlopu
Dla każdego z przypadków użycia powinno się napisać scenariusz użycia.
Podczas dalszej pracy w budowaniu całego modelu, wiemy jaką
funkcjonalność reprezentuje dany przypadek użycia i na tej podstawie
tworzymy dynamikę systemu.
Przykład:
Nazwa: Zaloguj (Nazwa przypadku użycia)
Twórca: Imię i Nazwisko
Aktorzy: Użytkownik (Aktorzy wchodzący w interakcję z danym przypadkiem
użycia)
Krótki opis: np. Logowanie użytkownika do systemu
Warunki wstępne:np. podanie identyfikatora użytkownika i hasło
(konieczne warunki inicjujące przypadek)
Warunki końcowe:np. identyfikator użytkownika i hasło zgodne z danymi w
bazie (stan systemu po realizacji przypadku użycia)
Główny przepływ:a) Użytkownik uruchamia aplikację
b) Wyświetla się okno logowania do systemu
c) Użytkownik wpisuje w pola swoje dane: identyfikator oraz hasło
d) Użytkownik naciska klawisz OK
e) Po poprawnym zalogowaniu uruchamia się główne okno aplikacji
Alternatywny przepływ:
b1) Po wyświetleniu formatki logowania użytkownik naciska klawisz ANULUJ
b2) Okno logowania wraz z aplikacją zostają zamknięte
e1) System wyświetla informację o błędnym identyfikatorze użytkownika
lub haśle
e2) Użytkownik wraca do punktu c) Głównego przepływu
.
.
.
w alternatywnym przepływie wypisujemy pełny scenariusz jaki może
spotkać użytkownik realizując dany przypadek użycia
Specjalne wymagania:Wypunktowana i scharakteryzowana lista dodatkowych
zidentyfikowanych wymagań niefunkcjonalnych, które mogą być istotne
przykładowo podczas projektowania czy kodowania
Notatki: Lista wszystkich komentarzy dotyczących przypadku użycia i
lista otwartych kwestii, które powinny zostać rozwiązane wraz z
propozycjami osób, które mogłyby je rozwiązać
Zapisanie w bazie danych urlopu nie jest przypadkiem użycia, tylko
funkcjonalnością, która powinna zostać uruchomiona automatycznie w
przypadku zatwierdzenia urlopu przez przełożonego (w przypadku
niezatwierdzeniu również powinna być taka możliwość). Natomiast
akceptacja urlopu powinna się pojawić podczas uruchomienia opcji
'Wyświetl dni urlopu' - jeszcze jedną funkcjonalnością przy
akceptacji/odrzuceniu urlopu przez przełożonego dodałbym powiadomienie
via mail.
>
> już widać, że model analityczny musi przewidywać jakichś użytkowników,
> jakiś rejestr dni wolnych, jakiś rejestr próść o urlop, coś
> przechowującego akceptacje / nieakceptacje.
To już logika systemu.
> dopiero z takiego przybliżenia analitycznego można bardzo uważnie
> zaprojektować ścisły model dziedzinowy (czyli diagram klas części
> biznesowej aplikacji).
:)
> podsystemów GUI/IO w ogóle bym nie modelował, bo one są zwykle pochodną
> technologii jakiej użyjesz i nie masz na nią zbyt dużego wpływu.
Jak najbardziej może zaprojektować wygląd formatek.
pozdrawiam
tsharny
Następne wpisy z tego wątku
- 16.01.09 18:57 ZbyszekZ
- 19.01.09 07:58 Wiktor Zychla
Najnowsze wątki z tej grupy
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają