• Nie Znaleziono Wyników

Rozwiązania do Sprawdzianu 1

N/A
N/A
Protected

Academic year: 2021

Share "Rozwiązania do Sprawdzianu 1"

Copied!
1
0
0

Pełen tekst

(1)

Polecenia

1. Zbuduj diagram kontekstowy w oparciu o zamieszczony poniżej tekst wymagań. (2 pkt.)

2. Zbuduj diagram przypadków użycia, włączając w to funkcjonalność sugerowaną w ostatnim punkcie (dokładnie w 7-dmym) tekstu wymagań. (10 pkt.)

Uwaga: Diagram należy skonstruować z perspektywy aktorów systemu i z uwzględnieniem hierarchii aktorów (o ile ma miejsce).

3. Dla przypadku użycia związanego z wysyłaniem zaproszeń do wyborców przez k.w. najniższego stopnia:

 napisz scenariusz (4 pkt.)

 narysuj diagram przypadków użycia zgodny z powyższym scenariuszem. (2 pkt.)

Wybory do „Mównicy Europejskiej”

Firma „Raster” otrzymała zamówienie na wykonanie systemu informatycznego wspomagającego obsługę wyborów do Mównicy Europejskiej (zwanej dalej w skrócie: ME) w kolejnych latach. System z założenia ma być przystosowany do wykorzystania w dowolnym kraju europejskim.

1. Kraj jest podzielony na rozłączne okręgi wyborcze (nazwa, nr /unikatowy/, granice obejmowanego obszaru). Komitety wyborcze partii politycznych (nazwa komitetu, skrót /niewymagany/, adres siedziby komitetu) zgłaszają, co najmniej na tydzień przed wyborami, okręgowe listy kandydatów na posłów do Mównicy Europejskiej (data zgłoszenia listy, okręg wyborczy, data wyborów) – po jednej liście dla każdego okręgu z każdego komietu wyborczego.

2. Liczba kandydatów (nazwisko i imiona, data urodzenia, adres zamieszkania, nr ewidencyjny – w Polsce jest to PESEL, wykształcenie) zgłoszonych na liście okręgowej nie może być niższa 5 i wyższa niż 10. Kandydować można tylko z jednej listy okręgowej, mając ukończone co najmniej 21 lat.

3. Wybory przeprowadzają komisje wyborcze (zwane dalej w skrócie: k.w.) różnego stopnia

(nazwa /unikatowa/, stopień/1-5/, granice obejmowanego obszaru oraz adres siedziby). Zadaniem

k.w. wyższego stopnia jest nadzór nad komisjami niższego stopnia. Każda k.w. niższego stopnia

jest nadzorowana przez tylko jedną komisję wyższego stopnia. W granicach obszaru okręgu

wyborczego znajduje się wiele wzajemnie rozłącznych k.w. najniższego stopnia (co najmniej

jedna). Obszar k.w. najniższego stopnia zawiera się w granicach obszaru jednego okręgu

wyborczego. Okręg wyborczy wchodzi w skład obszaru nadzorowanego przez jedną komisję

wyższego stopnia (obszary obejmowane przez k.w. tego samego stopnia są wzajemnie rozłączne) .

4. W składzie każdej k.w. jest 3-5 członków powoływanych co najmniej na miesiąc przed wyborami

na to stanowisko (nazwisko i imiona, data urodzenia, adres zamieszkania, nr ewidencyjny, zawód,

data powołania). Członkowie komisji ani nie mogą wchodzić w skład innych k.w. ani nie mogą

być jednocześnie kandydatami na posłów do ME (w danym roku).

(2)

5. System ma przechowywać także informacje o wyborcach: nazwisko i imiona, imię ojca, imię matki, datę urodzenia, nr ewidencyjny i adres zamieszkania. Wyborcą może być wyłącznie osoba pełnoletnia (mająca ukończone 18 lat).

6. Wyborca oddaje swój głos wskazując na tylko jednego kandydata ze wszystkich list okręgowych – obowiązujących w jego okręgu wyborczym (ustalanym na podstawie adresu zamieszkania wyborcy).

7. System powinien umożliwiać, między innymi:

 Zarejestrowanie głosu oddanego przez wyborcę na jednego z kandydatów znajdujących się na listach w okręgu wyborczym, w którym wyborca mieszka (wybory są tajne).

 Wyliczenie frekwencji wyborczej w skali kraju.

 Wyliczenie ile głosów otrzymał każdy z kandydatów.

 Wyliczenie ile głosów otrzymał komitet wyborczy partii politycznej na wszystkich swoich kandydatów razem.

 Wysłanie przez k.w. najniższego stopnia do wszystkich osób pełnoletnich zaproszeń do udziału w wyborach na co najmniej tydzień przed ich terminem z informacją o siedzibie k.w. właściwej dla danego wyborcy. Zaproszenia do kandydatów na posłów powinny zawierać także informację o okresie obowiązywania ciszy wyborczej, a zaproszenia kierowane do członków komisji:

nazwiska i imiona wszystkich pozostałych osób wchodzących w jej skład.

 Sporządzenie protokołu przez k.w. Protokól ma zawierać: nazwę k.w., datę i godz. sporządzenia protokołu, nazwę okręgu wyborczego/okręgów wyborczych, których dotyczy działalność komisji, liczbę wyborców zamieszkałych w obszarze objętym działalnością komisji, liczbę wyborców z tego obszaru, którzy wzięli udział w wyborach oraz liczbę głosów oddanych na poszczególnych kandydatów zgłoszonych na listach kandydatów dla tego obszaru.

Rozwiązanie do zadania 1-szego

Uwaga: Ze względu na to, że w tekście wymagań nie określono liczby komisji stopnia 5-tego

zdecydowałam się na wykorzystanie aktorów Generalny Komisarz Wyborczy i Biuro Generalnego

Komisarza Wyborczego. Mieli by oni pełnić nadzorczą rolę w stosunku do bezpośrednio im

podległych komisji wyborczych, czyli do komisji stopnia 5-tego.

(3)

System ewidencji ludności System ewidencji

ludności «system»

System wspierający wybory do ME

«system»

System wspierający wybory do ME

Wyborca Wyborca

Podsystem czasu Podsystem

czasu

Komitet wyborczy partii politycznej Komitet wyborczy

partii politycznej Komisja wyborcza

Komisja wyborcza Biuro Generalnego

Komisarza Wyborczego Biuro Generalnego Komisarza Wyborczego

Rozwiązanie do zadania 2-giego

Uwaga: Ze względu na czytelność, podzieliłam przypadki na trzy diagramy.

(4)

Komisja wyborcza

ud System wspierający wybory do ME (1)

Biuro Generalnego

Komisarza Wyborczego Powołaj bezpośrednio podległe komisje wyborcze

niższego stopnia

Określ granice obszarów nadzorowanych przez bezpośrednio

podległe komisje wyborcze

Rejestruj wyborców zamieszkałych w obszarze nadzorowanym

przez komisję wyborczą

«extend»

{ Funkcjonalność dostępna tylko dla komisji wyborczych stopnia 1}

System ewidencji ludności

{ Funkcjonalność niedostępna dla

komisji wyborczych stopnia 1}

Rejestruj nowe wybory do ME

Generalny Komisarz Wyborczy

Komisja wyborcza

Komisja wyborcza

ud System wspierający wybory do ME (1) ud System wspierający wybory do ME (1)

Biuro Generalnego Komisarza Wyborczego

Biuro Generalnego

Komisarza Wyborczego Powołaj bezpośrednio podległe komisje wyborcze

niższego stopnia

Określ granice obszarów nadzorowanych przez bezpośrednio

podległe komisje wyborcze

Rejestruj wyborców zamieszkałych w obszarze nadzorowanym

przez komisję wyborczą

«extend»

{ Funkcjonalność dostępna tylko dla komisji wyborczych stopnia 1}

System ewidencji ludności System ewidencji

ludności

{ Funkcjonalność niedostępna dla

komisji wyborczych stopnia 1}

Rejestruj nowe wybory do ME

Generalny Komisarz Wyborczy

Generalny

Komisarz Wyborczy

(5)

Komisja wyborcza

Sporządź prokół

Wylicz frekwencję wyborczą w obszarze nadzorowanym

przez komisję

Komitet wyborczy parii politycznej

Wylicz liczbę głosów oddanych na kandydatów zgłoszonych

na okręgowych listach komitetu partii

Zgłoś okręgową listę kandydatów

Prześlij protokół do komisji wyborczej wyższego stopnia /Biura Generalnego

Komisarza Wyborczego

Wylicz liczbę głosów oddanych na każdego z kandydatów zgłoszonych w obszarze nadzorowanym przez komisję

Wylicz liczbę głosów oddanych na jednego kandydata zgłoszonego w obszarze nadzorowanym przez komisję

Komisja wyborcza Wyślij zaproszenia do udziału

w wyborach do osób pełnoletnich zamieszkałych w obszarze nadzorowanym przez komisję

«extend»

«include»

«include»

«include»

«include»

ud System wspierający wybory do ME (2)

{ Funkcjonalność dostępna tylko dla komisji wyborczych stopnia 1}

Edytuj tekst zaproszenia do udziału w wyborach

«extend»

Komisja wyborcza

Komisja wyborcza

Sporządź prokół

Wylicz frekwencję wyborczą w obszarze nadzorowanym

przez komisję

Komitet wyborczy parii politycznej Komitet wyborczy

parii politycznej

Wylicz liczbę głosów oddanych na kandydatów zgłoszonych

na okręgowych listach komitetu partii

Zgłoś okręgową listę kandydatów

Prześlij protokół do komisji wyborczej wyższego stopnia /Biura Generalnego

Komisarza Wyborczego

Wylicz liczbę głosów oddanych na każdego z kandydatów zgłoszonych w obszarze nadzorowanym przez komisję

Wylicz liczbę głosów oddanych na jednego kandydata zgłoszonego w obszarze nadzorowanym przez komisję

Komisja wyborcza

Komisja wyborcza Wyślij zaproszenia do udziału

w wyborach do osób pełnoletnich zamieszkałych w obszarze nadzorowanym przez komisję

«extend»

«include»

«include»

«include»

«include»

ud System wspierający wybory do ME (2) ud System wspierający wybory do ME (2)

{ Funkcjonalność dostępna tylko dla komisji wyborczych stopnia 1}

Edytuj tekst zaproszenia do udziału w wyborach

«extend»

(6)

Wyborca

Rejestruj oddanie głosu na kandydata na posła do ME ud System wspierający wybory do ME (3)

Przeglądaj listy kandydatów na posłów do ME

«extend»

Komisja wyborcza { Funkcjonalność dostępna tylko dla

komisji wyborczych stopnia 1}

Dotyczy: list zgłoszonych w okręgu wyborczym związanym z miejscem zamieszkania wyborcy lub list zgłoszonych w obszarze nadzorowanym przez komisję wyborczą i całego kraju dla Biura Generalnego komisarza wyborczego/Komitetów wyborczych partii politycznych

Biuro Generalnego Komisarza Wyborczego Komitet wyborczy

parii politycznej

Podsystem czasu

Przypomnij Biurze Generalnego Komisarza Wyborczego/

komisjom wyborczym stopnia wyższego niż 1 o konieczności powołania bezpośrednio podległych komisji wyborczych

Przypomnij komitetom wyborczym partii politycznych o konieczności zgłaszania okręgowych list kandydatów

Przypomnij komisjom wyborczym stopnia 1 o konieczności wysyłania zaproszeń do udziału

w wyborach do pełnoletnich wyborców

{ nie później niż miesiąc przed wyborami }

{ nie później niż tydzień przed wyborami } Wyborca

Wyborca

Rejestruj oddanie głosu na kandydata na posła do ME ud System wspierający wybory do ME (3)

ud System wspierający wybory do ME (3)

Przeglądaj listy kandydatów na posłów do ME

«extend»

Komisja wyborcza

Komisja wyborcza { Funkcjonalność dostępna tylko dla

komisji wyborczych stopnia 1}

Dotyczy: list zgłoszonych w okręgu wyborczym związanym z miejscem zamieszkania wyborcy lub list zgłoszonych w obszarze nadzorowanym przez komisję wyborczą i całego kraju dla Biura Generalnego komisarza wyborczego/Komitetów wyborczych partii politycznych Dotyczy: list zgłoszonych w okręgu wyborczym związanym z miejscem zamieszkania wyborcy lub list zgłoszonych w obszarze nadzorowanym przez komisję wyborczą i całego kraju dla Biura Generalnego komisarza wyborczego/Komitetów wyborczych partii politycznych

Biuro Generalnego Komisarza Wyborczego Komitet wyborczy

parii politycznej Komitet wyborczy

parii politycznej

Podsystem czasu Podsystem

czasu

Przypomnij Biurze Generalnego Komisarza Wyborczego/

komisjom wyborczym stopnia wyższego niż 1 o konieczności powołania bezpośrednio podległych komisji wyborczych

Przypomnij komitetom wyborczym partii politycznych o konieczności zgłaszania okręgowych list kandydatów

Przypomnij komisjom wyborczym stopnia 1 o konieczności wysyłania zaproszeń do udziału

w wyborach do pełnoletnich wyborców

{ nie później niż miesiąc przed wyborami }

{ nie później niż tydzień przed wyborami }

Rozwiązanie do zadania 3-ciego

Poniżej znajduje się przykładowy scenariusz dla przypadku użycia związanego z wysyłaniem zaproszeń do wyborców przez k.w. najniższego stopnia. Scenariusz został rozszerzony o warunek wstępny i warunek końcowy.

Warunek wstępny 1. Zostały zarejestrowane nowe wybory (znana jest data wyborów).

2. Zostały powołane komisje wyborcze.

3. Zarejestrowano wyborców.

4. Komitety wyborcze partii politycznych zgłosiły okręgowe listy kandydatów na posłów do ME.

5. Nie wszystkie zaproszenia zostały już wydrukowane.

Główny przepływ zdarzeń 1. Przypadek użycia rozpoczyna aktor Komisja wyborcza.

2. System odpytuje o nazwę komisji. Aktor

wprowadza nazwę.

(7)

3. Jeżeli nie wysłano (wydrukowano) jeszcze ani jednego zaproszenia, system udostępnia możliwość edytowania tekstu zaproszenia.

Aktor wprowadza treść zaproszenia.

4. System odpytuje o wielkość partii zaproszeń do wydrukowania. Aktor określa wielkość partii.

5. Po wydrukowaniu partii zaproszeń, system odpytuje czy drukować kolejną partię. Aktor potwierdza.

Alternatywne przepływy zdarzeń 2a. Jeśli nazwa identyfikuje komisję stopnia wyższego niż 1, system informuje aktora o braku uprawnień i kończy przypadek użycia.

2b. Jeżeli drukowanie rozpoczęto później niż tydzień przed datą wyborów, system odpytuje czy kontynuować.

3a. Jeżeli wysłano już co najmniej jedno zaproszenie, ponowna edycja tekstu nie jest możliwa.

3b. Jeżeli tekst zaproszenia został już określony wcześniej, aktor może zrezygnować lub nie z możliwości dodatkowej edycji.

5b. Jeśli aktor rezygnuje z drukowania kolejnej partii zaproszeń, system kończy przypadek użycia.

Warunek końcowy 1. Jeśli zaproszenia drukowane są później niż tydzień przed wyborami system wyśle informację o opóźnieniu do komisji nadrzędnej.

2. Zostaną wydrukowane zaproszenia do udziału w wyborach z informacją o siedzibie komisji wyborczej właściwej dla danego wyborcy.

Zaproszenia do kandydatów na posłów będą zawierały także informację o okresie obowiązywania ciszy wyborczej, a zaproszenia kierowane do członków komisji:

nazwiska i imiona wszystkich pozostałych osób wchodzących w jej skład.

3. Zostanie zapamiętana informacja do kogo wysłano zaproszenia.

4. Zostanie zapamiętany % wyborców, dla

których zaproszenia zostały już wydrukowane

– włączając w to wcześniej wydrukowane

zaproszenia.

(8)

Przykładowy podział przypadku, związanego z wysyłaniem zaproszeń do wyborców przez k.w.

najniższego stopnia, na podprzypadki ilustruje diagram poniżej.

Edytuj tekst zaproszenia do udziału w wyborach Komisja

wyborcza

Wyślij zaproszenia do udziału w wyborach do osób pełnoletnich

zamieszkałych w obszarze nadzorowanym przez komisję

«extend»

«extend»

ud Wyślij zaproszenia do udziału w wyborach

Wyślij informację o opóźnieniu wysyłania zaproszeń do komisji

bezpośrednio nadrzędnej Edytuj tekst zaproszenia

do udziału w wyborach Komisja

wyborcza Komisja wyborcza

Wyślij zaproszenia do udziału w wyborach do osób pełnoletnich

zamieszkałych w obszarze nadzorowanym przez komisję

«extend»

«extend»

ud Wyślij zaproszenia do udziału w wyborach

Wyślij informację o opóźnieniu wysyłania zaproszeń do komisji

bezpośrednio nadrzędnej

Najczęstsze błędy:

 Tylko nieliczna grupa osób rozważyła dodatkową funkcjonalność, oprócz tej sugerowanej w 7-dmym punkcie tekstu wymagań – a należało to zrobić.

 W większości diagramów brakuje ram i nagłówków.

 Zdarzają się nazwy aktorów w liczbie mnogiej, np. Wyborcy.

 Część osób uważa, że nazwy: Komisja wyborcza i Czlonek komisji wyborczej oznaczają dwóch różnych aktorów, a tymczasem są to synonimy dla tego samego bytu.

 W części prac występują różnice pomiędzy aktorami umieszczonymi na diagramie kontekstowym i aktorami z diagramu skonstruowanego dla zadania 2-giego. Uwaga: wszyscy aktorzy z diagramu kontekstowego powinni pojawić się na diagramie z zadania 2-giego. I vice versa, żaden aktor nie umieszczony na diagramie kontekstowym nie może pojawić się na diagramie z zadania 2-giego.

 Ponadto, można zauważyć niezgodności w nazwach aktorów na obu, wymienionych w poprzednim akapicie, diagramach: np. raz mamy Komisja wyborcza najniższego stopnia, innym razem Komisja wyborcza najniższego szczebla, a jeszcze innym Komisja wyborcza stopnia 1 – to wszystko dotyczy jednej i tej samej pracy.

 Zdarza się błędna hierarchia aktorów, np. jak poniżej:

(9)

Kw1 Kw1

Kw2 Kw2

Kw3 Kw3

Kw4 Kw4

Kw5 Kw5

Komentarz: A co w przypadku, gdyby było więcej niż pięć komisji różnego stopnia?

 Niektóre osoby wymieniały Bazę danych systemu jako aktora, czyli potencjalnego użytkownika systemu. Jest to błąd, ponieważ baza danych nie jest „bytem zewnętrznym” w stosunku do systemu (przynajmniej nie jest to rozważane na etapie budowania modelu pojęciowego) – jest jego częścią, a diagram miał być rysowany z perspektywy kontekstu systemu. Ponadto, lepszą nazwą byłoby tutaj: Podsystem zarządzania bazą danych. Baza danych kojarzy się raczej ze strukturą danych (byt pasywny) obsługiwaną przez system zarządzania. Aktor z definicji jest bytem aktywnym, zdolnym wejść w interakcję z systemem.

 Przykładowe diagramy z błędną identyfikacją aktorów:

Kandydat na posła

Komitet wyborczy

Wyślij wyborcy zaproszenie do udziału

w wyborach Wyborca

Kandydat na posła Kandydat

na posła Komitet wyborczy

Komitet wyborczy

Wyślij wyborcy zaproszenie do udziału

w wyborach Wyborca Wyborca

---

(10)

Przyjmij zaproszenie do udziału

w wyborach

Wyborca

Kandydat na posła

Członek komisji wyborczej Przyjmij

zaproszenie do udziału w wyborach

Wyborca

Kandydat na posła

Członek komisji wyborczej Wyborca

Wyborca

Kandydat na posła Kandydat

na posła

Członek komisji wyborczej Członek komisji

wyborczej

Komentarz: Na obu powyższych diagramach można zauważyć następujące błędy:

– Ani kandydat, ani wyborca czy też członek komisji wyborczej nie wejdą w interakcję z systemem dla żadnego z obu przypadków.

– Kandydat nie powinien w ogóle być tu zidentyfikowany jako aktor dla systemu – trudno jest określić sensowny przypadek, który mógłby być przez niego wywoływany. Jeśli Kowalski, zgłoszony jako kandydat na posła, będzie chciał oddać na kogoś głos, to zaloguje się do systemu w roli wyborcy.

Aktor oznacza rolę, a nie konkretną fizyczną osobę. Do każdej roli jest przypisany zbiór powiązanych z nią usług systemu (przypadków użycia). Jedna fizyczna osoba może pełnić w systemie wiele ról i vice versa – do jednej roli może być przypisanych wiele fizycznych osób.

– Aktor Członek komisji wyborczej nie powinien dziedziczyć po aktorze Wyborca, ponieważ do roli Wyborca jest przypisany także przypadek związany z rejestrowaniem głosu oddanego przez wyborcę.

Tylko członkowie komisji wyborczych najniższego stopnia mogą zarejestrować głos wyborcy – gdy oddając głos nie skorzysta on z systemu, ale wrzuci odpowiedni papierowy formularz do urny.

 Niektóre osoby wprowadzały do diagramów tzw. przypadki wewnętrzne, czyli przypadki wywoływane nie przez aktorów, ale przez inne przypadki. Jest to błąd na tym etapie.

Prawidłowa kolejność w budowaniu modelu przypadków użycia jest następująca: 1) diagram kontekstowy, 2) diagram przypadków z perspektywy aktorów systemu, 3) dokumentacja dla każdego z przypadków (włączająca między innymi scenariusze), 4) podział niektórych przypadków na podprzypadki – w oparciu o dokumentację – w celu: 1) redukcji złożoności i 2) wyodrębniania bloków ponownego użycia.

 Zdarzają się nazwy przypadków nie będące nazwami zadań, jak na poniższym diagramie:

Informacja o wyborcach

Komentarz: Trudno jest tu określić tzw. obserwowalny rezultat, innymi słowy trudno jest sprecyzować co właściwie miałby zrobić system dla aktora w tak nazwanym przypadku użycia: miałby zapisać?

odczytać? a może zmodyfikować dane wyborców? Podobne trudności można zaobserwować dla

przypadków nazwanych, np., tak jak następujące: Nadzór nad prawidłowym przebiegiem głosowania,

Nadzór nad pracami podległych komisji, Rejestr wyborców, Nazwa partii czy też Data zgłoszenia

listy.

(11)

Komentarz: Nazwa przypadku to nazwa zadania zlecanego przez system aktorowi do wykonania.

Jakie zadanie miałby wykonać system dla aktora w przypadku nazwanym Nazwa partii?

 Zdarzał się też inny rodzaj nieprawidłowości w nazywaniu przypadków, np. przypadek nazwany jak poniżej:

Oddają głosy

Nazwa Oddają głosy sugeruje raczej czynność realizowaną przez wyborców bez wsparcia ze strony systemu (i trwającą w czasie), niż polecenie wydane przez aktora systemowi do niezwłocznego wykonania.

 Brak oznaczenia dla relacji między przypadkami użycia

P1 P2 P1 P2

a) b)

Komentarz: Na diagramie na rys. a) relacja między przypadkami nie została oznaczona przerywaną linią, nie posiada grotu, ani nie została opatrzona żadnym z przeznaczonych do tego celu stereotypów («include» czy «extend»). Mimo że na rys. b) dwa pierwsze błędy zostały poprawione, to nadal nie można określić rodzaju relacji występującej między przypadkami P1 i P2. Nie wiadomo, czy to P2 jest wywoływane z P1 (tak by było, gdyby P1 było połączone z P2 relacją «include» ─ z P1 jako przypadkiem bazowym) czy też to P1 jest wywoływane z P2 (gdyby relacja została opatrzona stereotypem «extend» ─ wtedy P2 byłoby przypadkiem bazowym).

 Przykładowy diagram z kilkoma rodzajami błędów

Komisja wyborcza

Zarejestrowanie i uaktualnienie liczby głosów Oddanie głosu

na kandydata

Sporządzenie protokołu

«include»

«include»

Wyborcy

Komisja wyborcza Komisja wyborcza

Zarejestrowanie i uaktualnienie liczby głosów Oddanie głosu

na kandydata

Sporządzenie protokołu

«include»

«include»

Wyborcy

Zarejestrowanie i uaktualnienie liczby głosów Oddanie głosu

na kandydata

Sporządzenie protokołu

«include»

«include»

Wyborcy Wyborcy

Komentarz: Popełniono tu następujące błędy.

– Dla aktora Wyborcy niepotrzebnie użyto liczby mnogiej.

Komitet wyborczy

Komitet wyborczy

Rejestrowanie

listy kandydatów Nazwa partii

Data zgłoszenia listy

«include»

«include»

(12)

– Diagram miał być skonstruowany z perspektywy aktorów systemu, bez zagłębiania się w wewnętrzną strukturę każdego z przypadków, więc nie należało umieszczać tu bloku ponownego użycia (ani żadnego innego przypadku, dla którego nie istniałaby interakcja z aktorem systemu).

– Połączono relacją przypadki wywoływane w różnych przebiegach systemu. W efekcie, każde oddanie głosu na dowolnego kandydata będzie skutkowało sporządzeniem protokołu. Przypominam, że protokół miał być sporządzany po zakończeniu głosowania.

Scenariusze – tu najczęściej popełniano następujące błędy:

– Brakowało podziału na scenariusz główny (główny przepływ zdarzeń) i scenariusze alternatywne (alternatywne przepływy zdarzeń).

– Odpytywano o datę wyborów czy też o skład komisji, a dane tego rodzaju powinny być na tym etapie (drukowania zaproszeń) już przechowywane w systemie – wystarczyło je odczytać.

Uwaga: Chociaż nie istnieje zestandardyzowany format dokumentu opisującego przypadek użycia (w tym określającego format dla scenariuszy – w praktyce sposoby opisu różnią się od autora do autora), to można tu posłużyć się pewną uproszczoną regułą, która dzieli opis na pięć, kolejno następujących po sobie części:

1. Założenia: należy tu umieszczać warunki, które ani nie będą sprawdzane przez przypadek użycia ani też nie muszą być sprawdzane bezpośrednio przed jego wywołaniem. Przyjmuje się założenie, że w momencie wywołania warunki te będą spełnione. Do typowych warunków, umieszczanych w tej części opisu przypadku, należą autentykacja i autoryzacja. Część Założenia często nie jest umieszczana w dokumencie, ponieważ domyślnie zakłada się spełnienie jej warunków, tak aby wywołanie przypadku w ogóle było możliwe.

2. Warunek wstępny: opisuje „świat sprzed”, czyli określa warunki, których spełnienie wymaga wcześniejszego wywołania innych przypadków użycia. Spełnienie warunków umieszczonych w tej części opisu jest sprawdzane tuż przed lub od razu po wywołaniu przypadku i od wyniku sprawdzenia zależy, czy przypadek będzie dalej kontynuowany.

3. Dialog: jak sama nazwa mówi, umieszczamy tu konwersację (tzw. specyfikację przepływu zdarzeń) pomiędzy bytem wywołującym (może być nim aktor lub inny przypadek użycia) a danym przypadkiem użycia. Celem konwersacji jest pozyskanie danych potrzebnych do realizacji przypadku (nie dotyczy to tych danych, które w danym momencie są przechowywane w systemie). Dialog przybiera formę scenariuszy – i to właśnie było zadanie, które mieliście Państwo wykonać.

4. Zakończenie: tu opisuje się, w jaki sposób przypadek użycia jest kończony. Często wynika to bezpośrednio ze scenariusza i w takiej sytuacji część Zakończenie może być po prostu opuszczona.

5. Warunek końcowy: Opisuje „świat po”, czyli określa co będzie wykonane, zapamiętane, itd. po zrealizowaniu przypadku.

Podział przypadku na podprzypadki – najczęstszym błędem popełnianym w tym zadaniu było

naśladowanie scenariusza, a nie o to tutaj chodzi. Przypominam raz jeszcze: podział przypadku na

podprzypadki jest podziałem kodu na części i jest dokonywany w celach takich jak: 1) zmniejszenie

złożoności kodu i 2) wyodrębnianie bloków ponownego użycia. Oba rodzaje działalności służą

wspieraniu podnoszenia wydajności przy budowie oprogramowania.

(13)

Cytaty

Powiązane dokumenty

powiatowe urzędy pracy wpisały do ewidencji 8 487 oświadczeń o powierzeniu wykonywania pracy obywatelom Republiki Armenii, Republiki Białorusi, Republiki Mołdawii,

13.Film na CASie - Fundacja Rozwoju Społecznego SPINACZ 14.Opolcon 2021 - Stowarzyszenie OKF Fenix. 15.1.Umiem pływać 2.Bez barier - Wojewódzkie Zrzeszenie Ludowe Zespoły Sportowe

przewozów kolejowych będzie ogłaszało przetargi na realizację przewozów regionalnych nie zmienia faktu, że fundusze na ten cel będą i tak przepływały przez województwo jako

Wydłużenie linii nr 18 do Wapienicy skutkowałoby wprowadzeniem znacznych redukcji w rozkładzie jazdy (wydłużenie czasu przejazdu). Uruchomienie dodatkowych kursów na linii nr 18

Żyłka Wydz.GKI Wykonanie przedmiotowego zadania wymaga opracowania dokumentacji projektowej oraz zabezpieczenia środków w budżecie gminy.. 24.04.2018 Komisja Spraw

ŚLUBOWANIE PIERWSZOKLASISTÓW Dnia 14 października odbyła się w naszej szkole uroczystość ślubowania uczniów klas pierwszych. To bardzo ważne wydarzenie nie tylko

1.. w sprawie wytycznych dla terytorialnych komisji wyborczych dot. ustalania wyników głosowania i wyników wyborów do organów jednostek samorządu terytorialnego

Ilu z nas może pochwalić się zwiedzeniem 25 krajów w kilka lat?. Nie rezygnując ze studiów dziennych