Cz 3 Oi ZPI Przypadki uycia Obiektowy model
Część 3 Oi. ZPI >Przypadki użycia >Obiektowy model organizacji w materiałach wykorzystano: K. Subieta: Budowa i integracja systemów informatycznych A. Kobieliński: Inżynieria Oprogramowania I. Sommerville: Software Engineering Guides Organizacja i Zarządzanie Projektem Informatycznym
Przypadki użycia i aktorzy • • Przypadek użycia – opis zbioru ciągów akcji i ich wariantów wykonywanych przez system w celu dostarczenia określonemu aktorowi godnego uwagi rezultatu. Przypadek użycia opisuje co robi system ale nie określa jak to robi. Aktor – spójny zbiór ról odgrywanych przez użytkowników przypadku użycia w czasie interakcji z tym przypadkiem użycia. Aktorem może być dowolny byt zewnętrzny, także systemy i urządzenia Organizacja i Zarządzanie Projektem Informatycznym
Notacja badanie składu laborant Przypadek użycia: użycia Powinien mieć unikalną nazwę, opisującą przypadek użycia z punktu widzenia jego zasadniczych celów. Aktor: Powinien mieć unikalną nazwę. Interakcja: Interakcja Pokazuje interakcję pomiędzy przypadkiem użycia a aktorem. «include» Relacja zależności : o stereotypach «include» lub «extend» : stereotypach Pokazuje związek zachodzący między dwoma przypadkami użycia. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Aktor • Budowa modelu przypadków użycia wymaga od analityka określenia wszystkich aktorów związanych z wykorzystywaniem projektowanego systemu, • Aktor - “przyszły użytkownik systemu”. • Aktor to osoba, ale także pewna organizacja (np. biuro prawne) lub inny system komputerowy. • Aktor modeluje grupę osób pełniących pewną rolę, a nie konkretną osobę. • Jedna osoba może wchodzić w interakcję z systemem z pozycji wielu aktorów; np. być zarówno sprzedawcą, jak i klientem. • I odwrotnie, jeden aktor może odpowiadać wielu konkretnym osobom, np. aktor “strażnik budynku”. • Czy system może być aktorem sam dla siebie ? Nie - aktor to przecież, zgodnie z definicją, byt z otoczenia systemu. • Aktor jest pierwotną przyczyną napędzającą przypadki użycia. • Jest on sprawcą zdarzeń powodujących uruchomienie przypadku użycia, jak też odbiorcą danych wyprodukowanych przez przypadki użycia. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Przypadek użycia • Dla przypadków użycia podaje się dokładną specyfikację • Specyfikuje się czynność lub ciąg czynności • Specyfikacja może mieć różną formę ( np. tekst ustrukturalizowany) • Można wyspecyfikować również scenariusz Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Przykład diagramu przypadków użycia przykład: Automat do sprzedaży papierosów uzupełnienie towaru zakup paczki papierosów operacja pieniężna operator klient wnętrze systemu sporządzenie raportu granica systemu otoczenie systemu kontroler Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Relacja uogólnienia - aktorzy operator systemu hutnik kierownik rafinerii mistrz laborant próbkarz księgowy Mistrz dziedziczy dostęp do przypadków użycia wyspecyfikowanych dla każdego hutnika, oraz ma dostęp do przypadków związanych z jego własnym, specyficznym sposobem wykorzystywania systemu. Kierownik rafinerii nie jest mistrzem ponieważ nie występuje w przypadkach użycia w których mistrz jest aktorem Organizacja i Zarządzanie Projektem Informatycznym
Relacja uogólnienia – przypadki użycia § § § Przypadki użycia można uporządkować przez zdefiniowanie uogólnień uogólnienie oznacza, że przypadek użycia – potomek, dziedziczy całe zachowanie i znaczenie po przypadku – przodku Potomek może dodać do odziedziczonego zachowania dodać nowe elementy, albo – jeśli to konieczne – całkowicie je zmienić Organizacja i Zarządzanie Projektem Informatycznym
Zależności - przypadki użycia § § Zależność – dla przypadków użycia znaczenie zależy od stereotypu Stereotypy – określa przebieg § § <<include>> - przebieg podstawowy <<extend>> - przebieg opcjonalny «include» p 1 p 2 «extend» p 2 przebieg podstawowy (sekwencyjny): p 1 zawsze włącza (używa) p 2. przebieg opcjonalny (alternatywny): p 1 jest czasami rozszerzane o p 2 (inaczej: p 2 czasami rozszerza p 1). Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Zależności - przypadki użycia przykład: Logowanie użytkownika do systemu Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Konstrukcja modelu Użytkownik Jan Kowalski Adam Malina Gość Konkretny klient Aktor Przypadek użycia Administrator systemu Restart systemu Pracownik Wejście z kartą Osoba informowana Poinformowanie Klient Wypłata z konta Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Konstrukcja modelu § § Konstrukcja modelu opiera się na kilku krokach Wymaga ścisłej współpracy z przyszłym użytkownikiem, co implikuje zasadę: “nie opisuj przypadków użycia w sposób, który nie jest łatwo zrozumiały dla użytkownika”. Sporządzenie słownika pojęć Dokument: Słownik pojęć Określenie aktorów Określenie przypadków użycia Dokument: Opis aktorów Tworzenie opisu każdego przypadku użycia, podział na nazwane części, znalezienie wspólnych części w różnych przypadkach użycia Diagram przypadków użycia plus dokument opisu przypadków użycia Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Sporządzanie słownika pojęć § § § Słownik dotyczy dziedziny problemowej. Tworzenie go polega na wyłowieniu wszystkich terminów z wymagań użytkownika. Terminy mogą odnosić się do aktorów, przypadków użycia, obiektów, operacji, zdarzeń, itp. Terminy w słowniku powinny być zdefiniowane w sposób precyzyjny i jednoznaczny. Posługiwanie się terminami ze słownika powinny być regułą przy opisie każdego kolejnego problemu, sytuacji czy modelu. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Warsztaty przypadków użycia (wersja uproszczona Use-Case Workshop) § Warsztaty przypadków użycia to spotkanie osób uczestniczących w projekcie mające na celu opracowanie modelu biznesowego opisanego notacją diagramów przypadków użycia. § Opisany przebieg warsztatu jest nieco uproszczony w stosunku do wytycznych opisanych w Rational Unified Process ™. § Uproszczenia wynikają z ograniczeń dotyczących wyposażenia i czasu jakim dysponują studenci na ćwiczeniach. § W tej uproszczonej wersji do realizacji warsztatu konieczne są: § co najmniej kilka kartek formatu A 4, § kilkanaście formatu A 5 (lub również A 4), § pisaki w dwóch kolorach (np. niebieski, i czerwony), § bardzo pomoże duży stół lub tablica do rozłożenia lub rozwieszenia kartek, § ponadto konieczne jest posiadania dokumentu wymagań i słownika. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
cz. I warsztatów – identyfikacja aktorów § Na środku jednej z kartek formatu A 4 należy narysować kształt przypominający chmurkę (korzystamy teraz z niebieskiego pisaka). § Teraz należy zastanowić się jakie osoby (lub jakiego rodzaju użytkownicy) będą korzystały z systemu - to Aktorzy. § Interesują nas tylko te osoby, które pracują bezpośrednio przy komputerze. § Staramy się określić rolę takiej osoby (np. Magazynier, Administrator, Księgowy, Sprzedawca, itp. ). § Należy zwrócić uwagę na to, aby zbytnio nie generalizować i nie wskazywać aktorów typu „Użytkownik Systemu”. § Dla każdego aktora rysujemy postać „chłopka” (stick man) na kartce z narysowaną „chmurką” i opisać ją nazwą określającą rolę. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
cz. II warsztatów – identyfikacja przypadków użycia § Teraz wyciągamy nową kartkę formatu A 4 i przerysowujemy na nią aktorów jednego po drugim zastanawiając się za każdym razem gdy na kartce pojawia się nowy aktor, jakie czynności w systemie będzie on realizować. § Dla każdej czynności dorysowujemy na kartce przypadek użycia. § Nazywamy go skrótem myślowym dobrze określającym ową czynność. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
cz. III warsztatów – opis przypadków użycia § Bierzemy mniejsze kartki. § Przenosimy na nie każdy przypadek użycia wraz z aktorem, który go realizuje (jeden przypadek użycia na jednej kartce). § Opisujemy w trzech zadaniach czynność realizowaną w ramach danego przypadku użycia. § Możemy też wypisać kolejne kroki wykonywane w ramach realizacji określonej funkcji. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
cz. IV warsztatów – przypadki użycia i wymagania § Teraz musimy skonfrontować ze sobą dwie wizje systemu: tę zarysowaną w dokumencie wymagań oraz tę, którą opracowano w ramach warsztatu przypadków użycia. § Do każdej z kartek zawierających opis przypadku użycia dopisujemy czerwonym pisakiem numer wymagania (numery wymagań) najniższego poziomu, które jest odpowiedzialne za realizację danej czynności. Organizacja i Zarządzanie Projektem Informatycznym Źródło: K. Subieta wykł.
Model organizacji (business model) § Model obiektowy organizacji (business object model) – model organizacji, model działania organizacji, w której w przyszłości będzie realizowany projekt informatyczny § Synonimy ang. business model, model biznesowy, model procesów biznesowych § Model integruje cztery aspekty § Pracowników organizacji (business workers) § Byty występujące w organizacji (Business entities) § Przypadki użycia (Business use-cases) § Realizacje przypadków użycia (Business usce-cse realizations) Organizacja i Zarządzanie Projektem Informatycznym
Cele modelowania § Zrozumienie struktury i działania organizacji, której będzie tworzony system informatyczny § Zrozumienie obecnych problemów organizacji i wskazanie potencjalnych usprawnień § Upewnienie się, że klienci, użytkownicy i twórcy oprogramowania w sposób jednakowy postrzegają organizację i jej problemy § Umożliwienie „wyprowadzenia” wymagań względem systemu (model jako źródło dla dyscypliny formułowania wymagań) Organizacja i Zarządzanie Projektem Informatycznym
Narzędzia typu e-biznes § W szczególności modelowanie organizacji zaleca się, jeśli elementem organizacji jest tzw. e-biznes (znowu – „nie jako modne słówko”, buzzword) § Klasyfikacja narzędzi e-biznes § C 2 B; C 2 B ang. Customer to business; aplikacje wspomagające na zakup towarów i usług za pośrednictwem sieci Internet § B 2 B; B 2 B ang. Business to business; oprogramowanie służące do automatyzacji wymiany danych w ramach łańcucha dostaw pomiędzy dwoma firmami (organizacjami); § B 2 C; B 2 C Business to customer; pasywne oprogramowanie dostarczające informacji klientom (np. newsletter, RSS) § C 2 C; C 2 C ang. Customer to customer; oprogramowanie pozwalające wymieniać się informacjami. Zachodzi z pewną pomocą dostawcy usługi/oprogramowania. (np. aukcje) Organizacja i Zarządzanie Projektem Informatycznym
Motywacje § Oprogramowanie jest już jedynie dodatkiem do zasadniczego zestawu narzędzi działania organizacji, jest zasadniczym narzędziem § Oprogramowanie musi zatem pasować do organizacji i być przydatne , na pewno - nie może pozostawać kosztownym „wodotryskiem” § Oprogramowanie musi efektywnie wpływać na sposób prowadzenia działalności (nie chodzi jedynie o automatyzację pracy) Organizacja i Zarządzanie Projektem Informatycznym
Wskazywane scenariusze § § § „Organisation Chart” (schemat organizacji); § tworzony jest prosty, podstawowy model organizacji i zachodzących w niej procesów. § jest elementem projektu informatycznego „Domain Modeling” (modelowanie dziedziny); § tworzony jest dla systemów, w których nadrzędnym celem jest kontrolowanie i prezentacja informacji w obrębie jednej dziedziny przedmiotowej § Jest elementem projektu informatycznego „One Business, Many Systems” (jedna organizacja, wiele systemów); § tworzony jest w celu opracowania jednego (spójnego) modelu stanowiącego bazę dla kilku projektów informatycznych lub dla jednego ale obszernego systemu § Jest autonomicznym projektem Organizacja i Zarządzanie Projektem Informatycznym
Wskazywane scenariusze § § § „Generic Business Model” (model typowej organizacji); § tworzony jest w celu opracowania jednego (spójnego) modelu typowej organizacji w celu ujednolicenia wymagań dla systemów przeznaczonych do użytku w wielu organizacjach podobnego typu § jest elementem projektu informatycznego § ułatwia selekcję wymagań względem priorytetu „New Business” (nowy pomysł na działalność); § tworzony jest dla systemów, w których docelowym polem działania będzie zupełnie nowa (nowatorska) działalność § jest autonomicznym projektem „Revamp” (zmiana struktury i funkcjonowania organizacji); § tworzony jest w przypadku, w którym organizacja pragnie diametralnie zmienić sposób funkcjonowania (BPR – business process reengineering) § jest autonomicznym projektem Organizacja i Zarządzanie Projektem Informatycznym
Pracownicy organizacji § Pracownik organizacji (business worker) reprezentuje rolę lub zestaw ról jaką może pełnić jakaś osoba (jakieś osoby) w modelowanej organizacji § Pracownik organizacji reprezentowany jest w modelu przez klasę o stereotypie <<business worker>> § Dla stereotypu tego przewidziano określony w metodyce RUP ™ symbol. Organizacja i Zarządzanie Projektem Informatycznym
Byty organizacji § Byt organizacji (business entity) reprezentuje dowolną rzecz jaką "zajmują" się pracownicy organizacji § Bytem może być dowolny zasób, zdarzenie lub byt pojęciowy występujący w organizacji § Byt organizacji reprezentowany jest w modelu przez klasę o stereotypie <<business entity>> § Dla stereotypu tego przewidziano określony w metodyce RUP ™ symbol. Organizacja i Zarządzanie Projektem Informatycznym
Realizacje przypadków użycia § Realizacja przypadku użycia opisuje sposób współdziałania pracowników i bytów organizacji § W metodyce RUP ™ realizację przypadku użycia przedstawia się w postaci trzech rodzajów diagramów języka UML § Diagramu klas § Diagramu czynności § Diagramu przebiegu § Odpowiedni element języka UML - przypadek użycia o stereotypie <<use-case realization>> § Dla stereotypu tego przewidziano określony w metodyce RUP ™ symbol Organizacja i Zarządzanie Projektem Informatycznym
Konstrukcja modelu (identyfikacja bytów, podejście uproszczone) § Model organizacji - duża zawartość informacji § W uproszczonym podejściu warto zastosować metodykę identyfikacji bytów § Cel identyfikacji bytów – określenie zbioru bytów, które w dalszym procesie analizy staną się: § Klasami aktywnymi § Zbiorami danych Organizacja i Zarządzanie Projektem Informatycznym
Identyfikacja (podejście uproszczone) § Przebieg procesu identyfikacji bytów może być następujący: § Przygotować roboczy wydruk słownika projektu § Utworzyć nowy diagramu klas § Nanieść na diagram klasy reprezentujące aktorów z diagramu Przypadków Użycia i ustaw ich stereotyp na <<Business Worker>> § Dla każdego z aktorów ustalić, jakimi "rzeczami" może się on zajmować w organizacji Organizacja i Zarządzanie Projektem Informatycznym
Identyfikacja (podejście uproszczone) § Przebieg procesu identyfikacji bytów c. d. : § Wprowadzić na diagram klasy odpowiadające tym rzeczom i połączyć je z klasą reprezentującą pracownika relacją zależności § Można sprawdzić, czy ta "rzecz" jest opisana w słowniku projektu, jeśli tak, to na roboczym wydruku skreśl ów termin, § Jeśli już wydaje się, że opisano wszystkie rzeczy, sprawdzić, czy w słowniku projektu są jeszcze jakieś terminy (rzeczowniki), dla których nie ma żadnych klas § Jeśli takie terminy istnieją to wprowadzić je na diagram klas i połączyć z określoną klasą reprezentującą pracownika § Nadać klasom podstawowe atrybuty (takie, które nasuwają się od razu) Organizacja i Zarządzanie Projektem Informatycznym
Przykładowy diagram klas Organizacja i Zarządzanie Projektem Informatycznym
Przykład - opis dziedziny problemowej § Pokazuje przejście od modelu organizacji do modelu analitycznego § Pewna firma świadczy usługi w zakresie outsourcingu IT. § Podpisuje umowy z klientami, którzy posiadają bardziej rozbudowaną infrastrukturę informatyczną. § Realizacja umowy polega na: § usuwaniu awarii sprzętu i oprogramowania, § pracach prewencyjnych, § pracach rozwojowych. Organizacja i Zarządzanie Projektem Informatycznym
Opis dziedziny problemowej § Obsługę konkretnego klienta zwykło się nazywać “Projektem”. § Projekt to zazwyczaj obsługa infrastruktury w siedzibie klienta, ale także w innych lokalizacjach, tj. innych miejscach prowadzenia działalności przez klienta. § Projekty obsługiwane są rotacyjnie, tzn. pracownicy firmy usługodawcy zgodnie z opracowanym harmonogramem odwiedzają określone lokalizacje. § Niekiedy wizyta ma charakter całodziennego dyżuru. § Dyżury są zakontraktowane w umowach. Na przykład z klientem X obowiązuje umowa, w której wskazano, że pracownik firmy usługodawcy będzie dostępny w siedzibie klienta X dwa dni robocze w tygodniu od 8: 00 do 16: 00. Organizacja i Zarządzanie Projektem Informatycznym
Opis dziedziny problemowej – scena 1 Jest nowy temat. Prezes firmy X skarży się na niską wydajność przyłącza sieci Internet. Zobacz mają tam jakieś stare urządzenia. To nie jest zatem tylko kwestia przyłącza. Trzeba zmodernizować cały węzeł sieciowy. Pytanie, czy mają na to pieniądze. Jest kasa. Możemy kupić zabawek za 10 tysięcy, a koszt miesięczny abonamentu nie może przekroczyć 300 zł. Zajmijcie się tym z chłopakami, musimy się wyrobić do końca miesiąca. Ty zrób specyfikację zakupów i wyznacz zadania dla chłopaków. Organizacja i Zarządzanie Projektem Informatycznym
Opis dziedziny problemowej – scena 2 Na prośbę Starego zrobiłem specyfikację do zakupów dla X S. A. Zabawki sieciowe przyjdą jutro (szafka i switch, Wi. Fi). Trzeba je poskładać i zamontować. Po jutrze przyjdzie software do Qo. Sa, zainstaluj go. Potem załatw z TPSA podniesienie łącza do DSL 2. Zamelduj mi potem w mailu ile godzin Ci to zajęło. Ostatnio wydaje mi się, że trzeba będzie z nimi porozmawiać o tym, żeby wykupili jeszcze jeden dzień. Napisz dokładnie co robiłeś – muszę mieć jakieś argumenty. O. K. zrobię to. Będę potrzebował jakichś trzech dniówek. Organizacja i Zarządzanie Projektem Informatycznym
Opis dziedziny problemowej scena 3 Faktycznie – tandeta. Jak to mogło do tej pory działać? !! Samo rozplątanie tych kabli to robota na parę ładnych godzin. Organizacja i Zarządzanie Projektem Informatycznym
Co będziemy modelować – zakres modeli? System ITCMMS Zarządzanie pracą Modelowanie organizacji Obsługa tematów Realizacja przypadków użycia organizacji Nowy temat Model przypadków użycia systemowych Rejestracja tematu Realizacja przypadków użycia systemowych Organizacja i Zarządzanie Projektem Informatycznym
Co będziemy modelować – zakres modeli? Organizacja i Zarządzanie Projektem Informatycznym
Prześledźmy proces biznesowy (proces organizacyjny) Tego nie było w scenkach, ale była o tym mowa – tu musi zadziałać nasza wyobraźnia! Spotkanie z klientem 1. Zgłoszenie problemu 2. Pojawienie się nowego wątku 3. Odnotowanie wątku np. w notesie sponsora 1. Analiza problemu 2. Zlecenie obsługi wątku 1. Analiza problemu 2. Wyznaczenie zadań 3. Zlecenie realizacji zadań 1. Wykonanie czynności w ramach realizacji zadania 2. Odnotowanie czasu pracy Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – od czego zacząć § Rookie: To jest trochę skomplikowane, co powinniśmy zrobić, żeby sobie wszystko poukładać w głowie? § Guru: Trzeba postępować metodycznie krok po kroku, i w danym momencie koncentrować się tylko na danym zadaniu. § R: Jakie zadania musimy zrealizować w pierwszej kolejności. § G: Najlepiej zacząć od sporządzenia słownika pojęć (RUP – Capturing common business vocabulary). § R: Jak to zrobimy ? Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – od czego zacząć § G. Zbierzemy nasze materiały i wynotujemy wszystkie pojęcia, które wydadzą się nam istotne. § R: Skąd będziemy wiedzieć co jest istotne, a co nie? § G: Na to niestety nie mam gotowego przepisu, trzeba „mieć nosa”, to przychodzi z czasem. Na początku można przyjąć zasadę: „od przybytku głowa nie boli” i jeśli mamy wątpliwość co do istotności danego terminu – odnotować go. § R: Jakim narzędziem się posłużymy? § G: Wystarczy edytor MS Word, dla większych projektów lepiej posłużyć się elementem narzędzia CASE np. Rational Requisite Pro™. Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie pojęć § Pewna firma świadczy usługi w zakresie outsourcingu IT. § Podpisuje umowy z klientami, którzy posiadają bardziej rozbudowaną infrastrukturę informatyczną. § Realizacja umowy polega na: § usuwaniu awarii sprzętu i oprogramowania, § pracach prewencyjnych, § pracach rozwojowych. Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie pojęć § Obsługę konkretnego klienta zwykło się nazywać “Projektem”. § Projekt to zazwyczaj obsługa infrastruktury w siedzibie klienta, ale także w innych lokalizacjach, tj. innych miejscach prowadzenia działalności przez klienta. § Projekty obsługiwane są rotacyjnie, tzn. pracownicy firmy usługodawcy zgodnie z opracowanym harmonogramem odwiedzają określone lokalizacje. § Niekiedy wizyta ma charakter całodziennego dyżuru. § Dyżury są zakontraktowane w umowach. Na przykład z klientem X obowiązuje umowa, w której wskazano, że pracownik firmy usługodawcy będzie dostępny w siedzibie klienta X dwa dni robocze w tygodniu od 8: 00 do 16: 00. Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie pojęć Tego nie było w scenkach, ale była o tym mowa – tu musi zadziałać nasza wyobraźnia! Spotkanie z klientem 1. Zgłoszenie problemu 2. Pojawienie się nowego wątku 3. Odnotowanie wątku np. w notesie sponsora 1. Analiza problemu 2. Zlecenie obsługi wątku koordynatorowi 1. Analiza problemu 2. Wyznaczenie zadań 3. Zlecenie realizacji zadań 1. Wykonanie czynności w ramach realizacji zadania 2. Odnot. czasu pracy Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie pojęć – słownik organizacji Firma usługodawcy Klient (firma usługobiorcy) Pracownik Firma świadcząca usługi outsourcingowe. Klient firmy usługodawcy korzystający z usług outsourcingu. Osoba zatrudniona w firmie usługodawcy na podstawie umowy o pracę, umowy cywilno-prawnej, kontraktu menadżerskiego. Projekt Współpraca firmy usługodawcy z klientem w zakresie outsourcingu IT. Koordynator Pracownik odpowiedzialny z koordynację działań związanych z określonym projektem lub projektami. Sponsor Członek zarządu firmy usługodawcy wspierający działania określonych projektów. Siedziba firmy klienta podana jako siedziba w dokumentach rejestrowych. Infrastruktura informatyczna Pozostające pod opieką firmy usługodawcy elementy infrastruktury. Element infrastruktury Serwer, stacja robocza, terminal, urządzenie sieciowe, urządzenie zewnętrzne, oprogramowanie. Lokalizacja Miejsce prowadzenia działalności przez klienta, w którym mogą byś świadczone usługi związane z prowadzeniem projektu. Serwer Komputer pełniący rolę dostawcy usług dla innych komputerów. Stacja robocza Komputer klienta (zlokalizowany na biurku użytkownika). Wątek (temat) Obszerny tematycznie zakres działań związanych z realizacją określonego celu, np: Wdrożenie nowego systemu ERP Bieżące utrzymanie ruchu IT Budowa sieci korporacyjnej Zadanie wyznaczone pracownikowi w ramach działań związanych z danym wątkiem, np. w ramach wątku „Wdrożenie systemu ERP”: Instalacja serwera bazy danych MS SQL Serwer Opracowanie podziału bazy indeksów materiałowych Konfiguracja algorytmów płacowych dla umów o pracę w systemie 6 godzinowym Instalacja czytnika kart RCP Czynność Efektywne przepracowanie określonego czasu przez pracownika w ramach realizacji określonego zadania, np. w ramach zadania „Instalacja czytnika kart RCP”: Montaż czytnika na ścianie w budynku portierni, Kowalski Jan, 2006 -11 -02, 2 godziny Rozprowadzenie instalacji elektrycznej i logicznej czytników, Kowalski Jan, 2006 -11 -03, 4 godziny Podłączenie czytnika do stacji roboczej, testy, Kowalski Jan, 2006 -11 -05, 4 godziny Zgłoszenie problemu Poinformowanie sponsora o poważnym problemie przez klienta. Odnotowanie wątku Utrwalenie informacji o problemie zgłoszonym przez klienta Zlecenie obsługi wątku Skierowanie do koordynatora prośby o zajęcie się danym wątkiem (tematem) Zlecenie zadania Skierowanie do koordynatora polecenia wykonania określonego zadania i nadzorowanie jego wykonania. Wykonanie czynności przez pracownika na podstawie polecenia koordynatora lub z własnej inicjatywy. Odnotowanie czasu pracy Zapisanie liczby godzin poświęconych na realizacje zadania Wyznaczenie zadania Wydzielenie zadania w ramach wątku Organizacja i Zarządzanie Projektem Informatycznym
Poszukujemy aktorów § R: Och! Dużo tego, w dodatku strasznie wymieszane. § G: Tak zgadzam się, gdyby pojęć było więcej musielibyśmy pogrupować je np. osobno przedmioty, osobno osoby, osobno czynności. § R: Co teraz zrobimy? § G. Wyłowimy ze słownika pojęcia, które oznaczają osoby. § R: Po co? § G: Znajdziemy „kandydatów” na aktorów. § G: Potem wyłowimy pojęcia oznaczające jakieś czynności. § R: Po co? § G: Znajdziemy „kandydatów” na przypadki użycia. Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie aktorów Firma usługodawcy Klient (firma usługobiorcy) Pracownik Firma świadcząca usługi outsourcingowe. Klient firmy usługodawcy korzystający z usług outsourcingu. Osoba zatrudniona w firmie usługodawcy na podstawie umowy o pracę, umowy cywilno-prawnej, kontraktu menadżerskiego. Projekt Współpraca firmy usługodawcy z klientem w zakresie outsourcingu IT. Koordynator Pracownik odpowiedzialny z koordynację działań związanych z określonym projektem lub projektami. Sponsor Członek zarządu firmy usługodawcy wspierający działania określonych projektów. Siedziba firmy klienta podana jako siedziba w dokumentach rejestrowych. Infrastruktura informatyczna Pozostające pod opieką firmy usługodawcy elementy infrastruktury. Element infrastruktury Serwer, stacja robocza, terminal, urządzenie sieciowe, urządzenie zewnętrzne, oprogramowanie. Lokalizacja Miejsce prowadzenia działalności przez klienta, w którym mogą byś świadczone usługi związane z prowadzeniem projektu. Serwer Komputer pełniący rolę dostawcy usług dla innych komputerów. Stacja robocza Komputer klienta (zlokalizowany na biurku użytkownika). Wątek (temat) Obszerny tematycznie zakres działań związanych z realizacją określonego celu, np: Wdrożenie nowego systemu ERP Bieżące utrzymanie ruchu IT Budowa sieci korporacyjnej Zadanie wyznaczone pracownikowi w ramach działań związanych z danym wątkiem, np. w ramach wątku „Wdrożenie systemu ERP”: Instalacja serwera bazy danych MS SQL Serwer Opracowanie podziału bazy indeksów materiałowych Konfiguracja algorytmów płacowych dla umów o pracę w systemie 6 godzinowym Instalacja czytnika kart RCP Czynność Efektywne przepracowanie określonego czasu przez pracownika w ramach realizacji określonego zadania, np. w ramach zadania „Instalacja czytnika kart RCP”: Montaż czytnika na ścianie w budynku portierni, Kowalski Jan, 2006 -11 -02, 2 godziny Rozprowadzenie instalacji elektrycznej i logicznej czytników, Kowalski Jan, 2006 -11 -03, 4 godziny Podłączenie czytnika do stacji roboczej, testy, Kowalski Jan, 2006 -11 -05, 4 godziny Zgłoszenie problemu Poinformowanie sponsora o poważnym problemie przez klienta. Odnotowanie wątku Utrwalenie informacji o problemie zgłoszonym przez klienta Zlecenie obsługi wątku Skierowanie do koordynatora prośby o zajęcie się danym wątkiem (tematem) Zlecenie zadania Skierowanie do koordynatora polecenia wykonania określonego zadania i nadzorowanie jego wykonania. Wykonanie czynności przez pracownika na podstawie polecenia koordynatora lub z własnej inicjatywy. Odnotowanie czasu pracy Zapisanie liczby godzin poświęconych na realizacje zadania Wyznaczenie zadania Wydzielenie zadania w ramach wątku Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – diagram przypadków użycia – aktorzy § G: Czy można jeszcze coś do tego dodać? § R: Jakieś dodatkowe informacje? § G: Właśnie! Można uporządkować klasyfikatory i wprowadzić uogólnienia. § R: A właśnie! Przecież sponsor i koordynator to też pracownicy. To się na pewno przyda. Organizacja i Zarządzanie Projektem Informatycznym
Poszukiwanie aktorów i przypadków użycia Firma usługodawcy Klient (firma usługobiorcy) Pracownik Firma świadcząca usługi outsourcingowe. Klient firmy usługodawcy korzystający z usług outsourcingu. Osoba zatrudniona w firmie usługodawcy na podstawie umowy o pracę, umowy cywilno-prawnej, kontraktu menadżerskiego. Projekt Współpraca firmy usługodawcy z klientem w zakresie outsourcingu IT. Koordynator Pracownik odpowiedzialny z koordynację działań związanych z określonym projektem lub projektami. Sponsor Członek zarządu firmy usługodawcy wspierający działania określonych projektów. Siedziba firmy klienta podana jako siedziba w dokumentach rejestrowych. Infrastruktura informatyczna Pozostające pod opieką firmy usługodawcy elementy infrastruktury. Element infrastruktury Serwer, stacja robocza, terminal, urządzenie sieciowe, urządzenie zewnętrzne, oprogramowanie. Lokalizacja Miejsce prowadzenia działalności przez klienta, w którym mogą byś świadczone usługi związane z prowadzeniem projektu. Serwer Komputer pełniący rolę dostawcy usług dla innych komputerów. Stacja robocza Komputer klienta (zlokalizowany na biurku użytkownika). Wątek (temat) Obszerny tematycznie zakres działań związanych z realizacją określonego celu, np: Wdrożenie nowego systemu ERP Bieżące utrzymanie ruchu IT Budowa sieci korporacyjnej Zadanie wyznaczone pracownikowi w ramach działań związanych z danym wątkiem, np. w ramach wątku „Wdrożenie systemu ERP”: Instalacja serwera bazy danych MS SQL Serwer Opracowanie podziału bazy indeksów materiałowych Konfiguracja algorytmów płacowych dla umów o pracę w systemie 6 godzinowym Instalacja czytnika kart RCP Czynność Efektywne przepracowanie określonego czasu przez pracownika w ramach realizacji określonego zadania, np. w ramach zadania „Instalacja czytnika kart RCP”: Montaż czytnika na ścianie w budynku portierni, Kowalski Jan, 2006 -11 -02, 2 godziny Rozprowadzenie instalacji elektrycznej i logicznej czytników, Kowalski Jan, 2006 -11 -03, 4 godziny Podłączenie czytnika do stacji roboczej, testy, Kowalski Jan, 2006 -11 -05, 4 godziny Zgłoszenie problemu Poinformowanie sponsora o poważnym problemie przez klienta. Odnotowanie wątku Utrwalenie informacji o problemie zgłoszonym przez klienta Zlecenie obsługi wątku Skierowanie do koordynatora prośby o zajęcie się danym wątkiem (tematem) Zlecenie zadania Skierowanie do koordynatora polecenia wykonania określonego zadania i nadzorowanie jego wykonania. Wykonanie czynności przez pracownika na podstawie polecenia koordynatora lub z własnej inicjatywy. Odnotowanie czasu pracy Zapisanie liczby godzin poświęconych na realizacje zadania Wyznaczenie zadania Wydzielenie zadania w ramach wątku Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – diagram przypadków użycia Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – porządkowanie przypadków użycia § R: Strasznie to rozdrobniłeś. Można to jakoś uprościć. § G: Nawe trzeba. Niektóre scenariusze można scalić. § R: Jak? § G: Stosując relację zależności. Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – przypadki użycia – ostatni niuans § § § § R: Czy moglibyśmy w naszym diagramie rozróżnić aktorów wewnętrznych i zewnętrznych. G: Można to zrobić. Przynajmniej tak zaleca metodyka RUP. R: Jak? G: Stosując klasy o stereotypie <<business worker>>, <<case worker>> i <<business actor>> - rola działająca w otoczeniu organizacji <<case worker>> - rola działająca na styku organizacji ze „światem” <<business worker>> - rola działająca wewnątrz organizacji, pracownik. Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – przypadki użycia – wersja finalna (prawie) Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – porządkowanie słownictwa § R: Teraz należy zamodelować realizację naszych trzech przypadków użycia. § G: Racja. Najpierw jednak sugeruję uporządkowanie pojęć. § R: Po co? § G: Dla lepszego zrozumienia dziedziny problemowej. § R: Skąd weźmiemy pojęcia? § G: Naturalnie ze słownika. Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – porządkowanie słownictwa Firma usługodawcy Klient (firma usługobiorcy) Pracownik Firma świadcząca usługi outsourcingowe. Klient firmy usługodawcy korzystający z usług outsourcingu. Osoba zatrudniona w firmie usługodawcy na podstawie umowy o pracę, umowy cywilno-prawnej, kontraktu menadżerskiego. Projekt Współpraca firmy usługodawcy z klientem w zakresie outsourcingu IT. Koordynator Pracownik odpowiedzialny z koordynację działań związanych z określonym projektem lub projektami. Sponsor Członek zarządu firmy usługodawcy wspierający działania określonych projektów. Siedziba firmy klienta podana jako siedziba w dokumentach rejestrowych. Infrastruktura informatyczna Pozostające pod opieką firmy usługodawcy elementy infrastruktury. Element infrastruktury Serwer, stacja robocza, terminal, urządzenie sieciowe, urządzenie zewnętrzne, oprogramowanie. Lokalizacja Miejsce prowadzenia działalności przez klienta, w którym mogą byś świadczone usługi związane z prowadzeniem projektu. Serwer Komputer pełniący rolę dostawcy usług dla innych komputerów. Stacja robocza Komputer klienta (zlokalizowany na biurku użytkownika). Wątek (temat) Obszerny tematycznie zakres działań związanych z realizacją określonego celu, np: Wdrożenie nowego systemu ERP Bieżące utrzymanie ruchu IT Budowa sieci korporacyjnej Zadanie wyznaczone pracownikowi w ramach działań związanych z danym wątkiem, np. w ramach wątku „Wdrożenie systemu ERP”: Instalacja serwera bazy danych MS SQL Serwer Opracowanie podziału bazy indeksów materiałowych Konfiguracja algorytmów płacowych dla umów o pracę w systemie 6 godzinowym Instalacja czytnika kart RCP Czynność Efektywne przepracowanie określonego czasu przez pracownika w ramach realizacji określonego zadania, np. w ramach zadania „Instalacja czytnika kart RCP”: Montaż czytnika na ścianie w budynku portierni, Kowalski Jan, 2006 -11 -02, 2 godziny Rozprowadzenie instalacji elektrycznej i logicznej czytników, Kowalski Jan, 2006 -11 -03, 4 godziny Podłączenie czytnika do stacji roboczej, testy, Kowalski Jan, 2006 -11 -05, 4 godziny Zgłoszenie problemu Poinformowanie sponsora o poważnym problemie przez klienta. Odnotowanie wątku Utrwalenie informacji o problemie zgłoszonym przez klienta Zlecenie obsługi wątku Skierowanie do koordynatora prośby o zajęcie się danym wątkiem (tematem) Zlecenie zadania Skierowanie do koordynatora polecenia wykonania określonego zadania i nadzorowanie jego wykonania. Wykonanie czynności przez pracownika na podstawie polecenia koordynatora lub z własnej inicjatywy. Odnotowanie czasu pracy Zapisanie liczby godzin poświęconych na realizacje zadania Wyznaczenie zadania Wydzielenie zadania w ramach wątku Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – porządkowanie słownictwa Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – realizacja przypadków użycia § G: Wykonaliśmy dwie operacje. Z jednej strony zidentyfikowaliśmy określone byty fizyczne i pojęciowe, z drugiej – ustaliliśmy relacje pomiędzy nimi. § R: Co dalej? § G: Oczywiście przedstawimy sobie realizacje naszych przypadków użycia przy pomocy diagramów czynnościowych. § G: Ograniczymy się do zagadnienia „Obsługi wątku”, pominiemy też opis przypadków użycia. § R: A co to za śmieszne znaczki – jakaś nowa notacja. § G: Nie to tylko graficzna prezentacja stereotypów zdefiniowanych dla modelowania biznesowego (modelowania organizacji). Organizacja i Zarządzanie Projektem Informatycznym
Model organizacji – realizacja przypadków użycia – interakcja „Obsługa Wątku” Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – transformacja modelu organizacji § R: Czy teraz trzeba to odnieść do wszystkich przypadków użycia? § G: Tak, ale żeby skrócić tok myślowy, przejdziemy do kolejnego kroku. § R: Jakiego? § G: Kolejnym krokiem będzie transformacja naszej realizacji w model analityczny. § R: Co to oznacza ? § G: Teraz zrobimy z naszych pracowników wewnętrznych aktorów w modelu analitycznym. § R: A co potem ? § G: „Posadzimy ich przy komputerach” komputerach i wymyślimy dla nich przypadki użycia zgodnie z operacjami biznesowymi, które wcześniej ustaliliśmy. § R: Czyli można powiedzieć, że staną się oni użytkownikami systemu, przesiądą się do komputerów i te same operacje wykonają posługując się komputerem. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – transformacja modelu organizacji § § R: Hola! Nie tak szybko, skąd się to wszystko wzięło. G: Dla każdego pracownika organizacji (<<business worker>>) tworzysz nowego aktora – jak mówiliśmy. R: A przypadki użycia? G: Ustalasz je sam, choć nie do końca, jest tu element proceduralny – przeważnie kandydatem na przypadek użycia jest operacja klasy pracownika organizacji. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – transformacja modelu organizacji § R: Co dalej ? § G: Teraz uporządkujemy przypadki użycia i i skonfrontujemy je z wymaganiami. § R: Jeśli coś pominęliśmy? § G: To jest spora szansa, że teraz na to wpadniemy. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – porządkowanie modelu analitycznego § § § R: A co to za dziwny przypadek o stereotypie <<CRUD>>? G: To jeden z najbardziej typowych scenariuszy – związany jest z edycją bazy danych dla określonej klasy (tabeli) R: Skąd ten skrót? G: Create, Read, Update, Delete. G: Zauważ, że nasze przypadki scaliłem z tym typowym, gdyż są jego elementami. Organizacja i Zarządzanie Projektem Informatycznym
§ § § § Model systemu – transformacja modelu organizacji R: A te rozszerzenia? G: Przypadek „Powiadom koordynatora” wynika wprost z metody klasy WSponsor. A Drugi? G: Umieściłem go na diagramie, gdyż wiem, że docelowo system ma umożliwić szybką rejestrację wątków, zadań i czynności. R: Czyli można powiedzieć, że wyczytałeś go w wymaganiach. G: Tak? R: Jaka będzie różnica. G: Edytowanie danych z użyciem formularza lub tabeli jest niewygodne. Przygotujemy więc inny, prostszy scenariusz, który liczbę kliknięć niezbędnych do wprowadzenia nowego wiersza ograniczy do minimum. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – transformacja modelu organizacji § § R: Mam wątpliwość, czy „Powiadomienie” jest obowiązkowe, czy opcjonalne. G: Ja też, ale zakładam, że opcjonalne. Jak sobie chłopaki pogadają, to po co mają do siebie słać e-maile? ? Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – poziom analityczny – dalsze kroki § Gdzie jesteśmy – model systemu poziom analityczny § Dokąd zmierzamy – model systemu poziom projektowy § Dalsze kroki § Opis scenariuszy (pomijamy). § Realizacja przypadków użycia. § Architektura. § Ustalenie słownictwa systemu (słownik projektu – systemowy). § Porządkowanie analitycznego modelu klas. § Transformacja do modelu projektowego. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia § R: Jaki przypadek należy teraz zrealizować. § G: „Utrzymanie bazy wątków”, niestety ze względu na czas zrealizujemy tylko jego pierwszą część. § R: Jaką? § G: Związaną z rejestracją wątku. § R: Skąd weźmiemy pojęcia do tej realizacji? § G: Musimy wypracować te pojęcia. § R: Jak? § G: Analizując różne źródła 1. Mamy aktorów analitycznych i biznesowych 2. Mamy byty organizacji 3. Znamy typowe pojęcia związane z systemami takie jak: baza danych, zbiór danych, formatka Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia – pojęcia systemowe § R: Dlaczego właśnie ten zestaw pojęć wybrałeś? § G: Są to moim zdaniem wszystkie byty niezbędne do skutecznego przeprowadzenia naszej interakcji. § G: Stereotyp <<IDE>> wprowadziłem sobie, sobie żeby wyróżnić klasy, które projektant „zaczerpnie” z biblioteki swojego środowiska programistycznego. § R: Jak przedstawimy interakcję dla tej realizacji? § G: Tradycyjnie – za pomocą diagramu przebiegu. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia – interakcja Standardowa edycja. Szybka rejestracja. § R: Litości! Co to jest? § G: Spokojnie spróbujmy sobie wszystko wytłumaczyć. § R: To że klient najpierw „prosi” Sponsora o odnotowanie nurtującego go problemu jest jasne. Ale ta ramka w środku. § G: To tzw. fragment wyodrębniony § R: A linia przerywana? § G: Rozdziela tzw. operandy, operandy czyli „podfragmenty”. § R: A napis „alt”? alt § G: To jeden z możliwych operatorów interakcji, interakcji ten oznacza przebiegi alternatywne. W tym przypadku: rejestrację za pomocą standardowych elementów formatki, lub szybką rejestrację za pomocą czegoś w rodzaju kreatora. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia – klasy i operacje § R: Co oznaczają te symbole „wtyczek” ? § G: To są interfejsy „podłączone” do klas, czyli specyfikacje usług udostępnianych i wymaganych przez klasy: § § § Formatka odwołuje się do kilku funkcji związanych z obsługą Zbioru Danych, podobnie jak Wątek. § Ponadto formatka odwołuje się do funkcji zarządzających Wątkiem. R: Jakie relacje łączą te klasyfikatory, tzn. np. klasę Formatka. Edycji. Wątków z IZarządzanie oraz Wątek z IZarzadzanie? G: Formatkę z IZarządzanie – relacja zależności, zależności a IZarządzanie z Wątkiem relacja realizacji Operacje ustalone w trakcie konstruowania interakcji Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia – klasy i operacje § R: Co teraz – atrybuty? § G: Tak. § R: Jak zwykle zapytam skąd ? § G: Specyfikacje, Wymagania dot. Danych, Słownik Organizacji. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – realizacja przypadku użycia – klasy i operacje § R: A atrybuty Klienta, Pracownika? § G: Nie teraz, zasada abstrakcji – teraz interesuje nas realizacja określonego scenariusza. Organizacja i Zarządzanie Projektem Informatycznym
Model systemu – co dalej? § R: Czy jeszcze coś w tym fragmencie modelu? § G: Nie, analitycy już kończą, reszta to praca dla projektantów. Mam nadzieję, że opanowałeś podstawy metodyki związanej z analizą? § R: Hmmmm? …. Organizacja i Zarządzanie Projektem Informatycznym
Z lotu ptaka Diagram Use Case i scenariusze Realizacja Use Case Słownik pojęć Niezbędne przedmioty „Ujawnione” (operacje) Diagramy interakcji (przebiegu i współdziałania) Organizacja i Zarządzanie Projektem Informatycznym
Z lotu ptaka Diagram Use Case i scenariusze Realizacja Use Case Słownik systemu Klasy „Ujawnione” (operacje, atrybuty) Diagramy interakcji (przebiegu i współdziałania) Organizacja i Zarządzanie Projektem Informatycznym
- Slides: 74