Istota i paradygmat obiektowości - wymienić i scharakteryzować
Obiektowość - sposób myślenia i ujmowania rzeczywistości oparty na widzeniu otaczającej nas rzeczywistości (świata) jako zbioru obiektów fizycznych, wzajemnie powiązanych.
Paradygmat obiektowy:
Abstrahowanie - odfiltrowywanie atrybutów i operacji klasy nieistotnych z punktu widzenia aktualnie realizowanego zadania - rozwiązywanego problemu. W wyniku abstrahowania w strukturze klasy uwzględniamy zatem jedynie istotne składniki (atrybuty i operacje) .
Hermetyzacja (kapsułkowanie) - obiekt widziany jest jako czarna skrzynka połączona z jego otoczeniem wyłącznie poprzez interfejs.
Hermetyzacja -zamknięcie informacji o obiekcie w 1 „bryle”, umożliwienie manipulowania tą „bryłą” jako całością, ukrywanie zbędnych informacji.
Wiąże się z ukrywaniu informacji o obiektach (tzw. składowe prywatne).
Stan obiektu jest dostępny przez metody (tzw. funkcje publiczne).Uumożliwia bezpieczne użycie kodu, bez możliwości zmian wnętrza przy pomocy innych środków niż udostępnione operacje.
Interfejs -informacje o tych własnościach klasy, które są konieczne do poprawnego manipulowania obiektami danej klasy. Opisuje co obiekt robi a nie jak.
Znajomość interfejsu nie oznacza pełnej wiedzy o klasie. Klasa może być wyposażona w wiele interfejsów jak i jeden interfejs może być związany z kilkoma klasami.
Następstwa hermetyzacji w projektowaniu SI:
możliwość zrównoleglenia prac projektowych;
błędy w jednym module nie przenoszą się na inne;
większa łatwość ponownego (wielokrotnego) wykorzystania fragmentów oprogramowania , na zasadzie komponentów.
Generalizacja (uogólnienie) -umożliwia stworzenie hierarchii dziedziczenia, co oznacza, że obiekty podklasy dziedziczą cechy obiektów nadklasy. Potomek dziedziczy strukturę i zachowanie przodka, a ponad to ma cechy własne.
Polimorfizm - oznacza, że ta sama nazwa operacji w różnych klasach może oznaczać różne działania (ten sam komunikat wysłany do różnych obiektów może wywołać różne operacje, decyzja o wyborze metody jest podejmowana dynamicznie, w czasie wykonywania tzw. późne wiązanie).
Klasa - pojęcie i elementy składowe
Klasa - abstrakcja, wzorzec obiektów o jednakowej charakterystyce.
Klasa - zbiór obiektów o tych samych, wyróżnionych przez nas, ich składnikach (atrybutach i metodach).
Rola fazy modelowania w identyfikacji wymagań na SI
Faza modelowania systemu obejmuje :
rozpoznanie, wyjaśnianie, modelowanie, specyfikowanie i dokumentowanie rzeczywistości lub problemu będącego przedmiotem projektu;
uszczegółowienie kontekstu projektu;
uszczegółowienie wymagań użytkowników;
uszczegółowienie wymagań organizacyjnych;
inne ustalenia i uszczegółowienia, np. dotyczące preferencji sprzętowych, preferencji w zakresie oprogramowania, ograniczeń finansowych, ograniczeń czasowych, itd.
W związku z powyższym, prawidłowo przeprowadzona faza modelowania pozwala na uzyskanie wyższego poziomu szczegółowości w zakresie dziedziny problemowej danej organizacji. W wyniku czego diagramy stworzone w tej fazie stają się bardziej rozbudowane i dokładniej odwzorowują modelowany wycinek rzeczywistości, co z kolei ułatwia określenie i identyfikację wymagań na system.
Wyniki fazy projektowania
Rezultatem fazy projektowania są uaktualnione wymagania, a także model logiczny systemu.
Dokumentacja projektowa powinna zawierać:
diagramy - klas, interakcji, stanów,
definicje klas - ich pól i metod,
projekt interfejsu użytkownika,
projekt bazy danych,
projekt struktury fizycznej SI - określenie struktury kodu źródłowego, podział systemu na poszczególne aplikacje, fizyczne rozmieszczenie danych na stacjach roboczych i serwerach
harmonogram fazy implementacyjnej,
słownik pojęć.
Co obejmuje faza wdrożenia?
Na fazę wdrażania składają się:
szkolenie użytkowników końcowych i administratorów systemu;
instalacja sprzętu i przeniesienie oprogramowania;
wypełnienie bazy danych;
nadzorowane korzystanie z systemu, często równoległe z tradycyjnym sposobem pracy;
usuwanie błędów w oprogramowaniu i dokumentacji użytkowej;
przekazanie SI klientowi.
Realizacja wdrożenia SI obejmuje:
programowanie i kastomizację,
konfigurację podstawową SI,
szkolenie użytkowników końcowych SI,
szkolenie administratorów SI;
testowanie konfiguracji podstawowej SI;
konfigurację finalną SI;
testowanie akceptacyjne konfiguracji finalnej SI.
Pożądane umiejętności zespołu realizującego „określenie wymagań”:
umiejętność wszechstronnej analizy potrzeb klienta;
znajomość przepisów i specyfikacji branży w jakiej działa informatyzowana organizacja;
umiejętność współpracowania ze specjalistami innych dziedzin, dla których ma powstać oprogramowanie;
zdolność logicznego myślenia i twórcza wyobraźnia ;
umiejętność przewidywania wszystkich możliwych przypadków tworzonego programu oraz ich konsekwencje;
umiejętność współpracy z programistą;
kreatywność i niestandardowe ujmowanie problemu, zdolność do koncentracji i podzielności uwagi, dokładność, umiejętność podejmowania szybkich decyzji;
umiejętność nawiązywania kontaktów.
Cel modelowania biznesowego
Celem pracy jest zdefiniowanie:
procesów,
ról,
zakresów odpowiedzialności.
Powyższe cele wynikają z potrzeby zrozumienia dynamiki i struktury organizacyjnej w której system informatyczny będzie rozwijany.
Wyrażane jest to poprzez modele:
biznesowych przypadków użycia,
obiektów biznesowych.
Wykorzystywane są w tym celu diagramy UML, takie jak:
przypadków użycia,
klas,
aktywności,
sekwencji,
komunikacji.
Modelowanie biznesowe, jak:
Stwórz słownik pojęć biznesowych;
Stwórz model biznesowych przypadków użycia:
zidentyfikuj aktorów biznesowych,
zidentyfikuj przypadki biznesowe,
utwórz diagram biznesowych przypadków użycia,
zidentyfikuj szczegóły przepływów pracy;
Stwórz model obiektów biznesowych:
zidentyfikuj pracowników biznesowych,
zidentyfikuj encje biznesowe,
zidentyfikuj sposób współdziałania obiektów biznesowych w procesach biznesowych poprzez tzw. realizację biznesowych przypadków użycia.
Faza analizy przedwdrożeniowej gotowej aplikacji i ich charakterystyka
Opracowanie modelu funkcjonowania informatyzowanej organizacji lub jej dziedziny problemowej
Informatyzacja organizacji, może być zorientowana na usprawnienie:
biznesowe- modelowanie procesów biznesowych które realizowane jest w trzech etapach:
identyfikacja proces ów głównych określających jej specyfikacja;
dekompozycja procesów głównych na podprocesy;
konstrukcja map poprawnych realizacji procesów biznesowych najpierw określić jak jest a następnie jak powinno być;
realizacja ważnych funkcji- możemy informatyzować wybrane obszary funkcjonowania organizacji.
Analiza potrzeb użytkownika i specyfikacji wymagań funkcjonalnych wobec SI
wspieranie informatyczne procesów biznesowych - opiera się na mapie procesów biznesowych organizacji, takich jak sporządzanie listy płac;
wspieranie ważnych funkcji.
Analiza infrastruktury informatycznej organizacji
W ramach etapu analizy przedwdrożeniowej należy dokonać analizy istniejącej techniczno-programowej infrastruktury informatycznej organizacji pod kątem stopnia zaspokojenia potrzeb techniczno-programowych oraz możliwości współpracy wdrażanej aplikacji z aplikacjami już użytkowanymi.
Opracowanie projektu wstępnego wdrożenia SI
Na podstawie wyników z wcześniejszych faz opracowujemy projekt wstępny określający:
cel projektu;
zakres projektu;
oszacowanie budżetu czasu trwania projektu;
zasoby ludzkie i infrastruktura informatyczna zamawiającego zaangażowana w projekcie;
określenie sposobu sprawowania audytu podczas realizacji projektu.
Znaczenie modelowania środowiska SI podczas realizacji przedsięwzięcia informatycznego w organizacji
W cyklu życia systemów informatycznych, etap „formułowania wymagań na system” uważany jest za jeden z najbardziej istotnych. Wynika to z faktu że:
w ponad 50% przedsięwzięciach przekroczony termin i budżet,
ponad 25% przedsięwzięć programistycznych jest przerywanych.
Przyczyną takiej rzeczywistości w 56% jest właśnie etap formułowania wymagań. Modelowanie biznesowe środowiska funkcjonowania systemu informatycznego jest sposobem na obniżenie procentowe udziału etapu „formułowania wymagań na system” w przyczynach niepowodzeń przedsięwzięć informatycznych.
Obiekt systemowy - pojęcie i elementy składowe
Obiekt w pojęciu UML, to obiekt systemowy, który jest reprezentantem wyodrębnionego obiektu fizycznego organizacji (elementu środowiska).
Przykłady obiektów fizycznych : osoba, urządzenie, dokument, interfejs, baza danych itp.
Obiekt systemowy opisywany jest za pomocą wielkości charakteryzujących:
tożsamość (ang. identyty) - niepowtarzalna nazwa obiektu,
stan (ang. state) - wartość atrybutu obiektu,
zachowanie (ang. behavior) - opis operacji (metod) , jakie obiekt może realizować na własne potrzeby, bądź w ramach świadczonych usług na rzecz innych obiektów.
Rezultaty fazy analizy
model, zawierający:
diagram klas,
diagram przypadków użycia SI,
diagramy sekwencji komunikatów (dla wybranych sytuacji),
diagramy stanów (dla wybranych sytuacji),
diagramy czynności,
raport zawierający definicje i opisy klas, atrybutów, związków, metod, itd.
słownik danych, zawierający specyfikację modelu;
poprawiony dokument opisujący wymagania;
harmonogram fazy projektowania.
Znaczenie etapu analizy w ustalaniu pożądanych właściwości SI
Faza „analizy” wspiera realizację „określania wymagań”. W fazie analizy powstaje logiczny model systemu, który wspomaga identyfikacje wymagań na system (logiczny model systemu określa sposób realizacji przez system wymagań, bez podawania szczegółów implementacyjnych).
Czynności realizowane w fazie analizy - modelowania systemu :
rozpoznanie, wyjaśnianie, modelowanie, specyfikowanie i dokumentowanie rzeczywistości lub problemu będącego przedmiotem projektu;
uszczegółowienie kontekstu projektu;
uszczegółowienie wymagań użytkowników;
uszczegółowienie wymagań organizacyjnych;
inne ustalenia i uszczegółowienia, np. dotyczące preferencji sprzętowych, preferencji w zakresie oprogramowania,
ograniczeń finansowych, ograniczeń czasowych, itd.
Zarządzanie zakresem wymagań
W realizacji każdego przedsięwzięcia, w tym informatycznego, występują trzy wzajemnie zależne wielkości je charakteryzujące :
zakres - określony przez wymagania;
koszt ;
czas.
Metoda ustalania zakresu przedsięwzięcia informatycznego
pożądane właściwości projektowanego systemu informatycznego opisujemy za pomocą skończonej liczby cech - w literaturze zaleca się 25-99;
sporządza się listę pożądanych cech projektowanego systemu, z podaniem ich:
ważności: konieczna, ważna, użyteczna;
wysiłku - pracochłonności: duża, średnia, mała;
ryzyka niewykonania (w pożądanym terminie): duże, średnie, małe;
listę pożądanych cech porządkuje się ze względu na ważność- w kolejności: konieczna, ważna, użyteczna;
cechy o wadze „konieczne' wyznaczają tzw. „Linię bazową systemu”,
cechy systemu powyżej tej linii muszą być bezwzględnie zrealizowane.
Zarządzanie zakresem poprzez zarządzanie klientem - podstawowe zasady:
zaangażowanie klienta,
„mniej obiecuj, szybciej dostarczaj”,
każde wymaganie funkcjonalne i niefunkcjonalne powinno być uzgadniane i akceptowanie formalnie przez zamawiającego;
jak najszerzej stosować prototypowanie;
ustal hierarchie wymagań funkcjonalnych.
Cel modelowania systemowego organizacji
Celem modelowania systemowego jest zwiększenie efektywności funkcjonowania danej organizacji oraz poznanie struktury i procesów zachodzących w projektowanym systemie. Model SI wytwarza się w celu lepszego zrozumienia modelowanego systemu.
Opracował mgr Piotr Czerpak na podstawie wykładów dr hab. Edwarda Kołodzińskiego