Przychody z danej klasy

Transkrypt

Przychody z danej klasy
Systemy informatyczne w
zarządzaniu wiedzą
„W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest
znajomość odpowiedzi”
Funkcje systemu zarządzania wiedzą
Podstawowa – dostarczenie użytkownikowi informacji, która po
przetworzeniu umożliwia skuteczne podejmowanie
decyzji. Nieodzowne jest stosowanie systemów informatycznych.
Pełnią one jednak rolę wspomagająca zarządzanie wiedzą w
organizacji a nie zarządzają.
Inne funkcje
• gromadzenie danych (ich klasyfikacja wg poziomu ważności)
• przechowywanie danych – ich archiwizacja
• zarządzanie danymi (wszelkiego rodzaju analizy)
Hierarchia wiedzy
Wiedza w gestii ludzi
Dane w hierarchii wiedzy: fakty, obrazy,
dźwięki, liczby ….
Interpretacja danych – analizy, syntezy,
agregacje itd. – dają informacje
(przefiltrowane i podsumowane dane często
zamienione we wzory)
Informacje są podstawą wiedzy po
dodaniu do nich działania i zastosowania.
(wykorzystanie wzorów w danym kontekście w celu
osiągnięcia zaplanowanych efektów jest widzą. W
trzystopniowej hierarchii są nią: instynkty, idee,
przepisy, procedury które pozwalają podjąć decyzję)
Rola systemów informatycznych w
zarządzaniu wiedzą – wspomagająca
(nawet najinteligentniejsze systemy nie są w chwili
obecnej w stanie podejmować decyzji – systemy
deterministyczne i rozmyte)
Systemy Zarządzania Wiedzą
ICONS (Intelligent CONtent Management) – Rodan System
Portale korporacyjne jako najbardziej zaawansowane systemy pod
względem funkcjonalności
Portal korporacyjny
1. SAP (Systems Applications and Products in Data Processing)
Kompletne rozwiązania korporacyjne umożliwiajace użytkownikom spersonalizowany i
wygodny dostęp do wszystkiego, czego potrzebują, w dowolnym czasie i miejscu w
bezpieczny sposób poprzez INTERNET, aby zrealizować swoje zadania
2. IBM (International Business Machines)
Centralny interfejs WWW do wszystkiego, co w przeciwnym wypadku byłoby osobną i
niekompatybilną informacja rozproszoną w wielu oddzielnych aplikacjach
(interfejs pomiędzy użytkownikiem – pracownikiem, dostawcą, klientem lub partnerem
oraz systemami informatycznymi w przedsiębiorstwie)
Współczesny portal korporacyjny
Interfejs pomiędzy użytkownikiem – pracownikiem, dostawcą,
klientem lub partnerem oraz systemami informatycznymi w
przedsiębiorstwie
Funkcje:
- wsparcie dla pracy zespołowej;
- zarządzanie użytkownikami;
- import i eksport dokumentów;
- nawigacja i wyszukiwanie.
Role:
- sprawne zarządzanie informacjami i danymi;
- usprawnienie kontaktów międzyludzkich;
- platforma wymiany informacji;
- narzędzie do wspomagania pracy zespołowej.
(koncepcja zarządzania wiedzą pozwalająca uznać te systemy jako klasy IPSS
(Integrated Performance Supporting Systems) – wspomagające efektywność
Działanie systemów klasy IPSS
-brak odpowiedzi w systemie
-przekierowanie do ekspertów
-archiwizowanie odpowiedzi w
systemie
-proces poszukiwania odpowiedzi
odbywa się w środowisku systemu
-archiwizacja pytań i odpowiedzi
-katalogowanie informacji
-rejestracja ekspertów
-zadawanie pytań w obrębie
katalogu
Portale:
- AskMe, Orbital;
-Pyton Management
- Guru Sp z o.o. .
Inne narzędzia IT
Systemy zarządzania dokumentami (Document Management):
umożliwiają gromadzenie i klasyfikowanie dokumentów, ułatwiają ich
wyszukiwanie i dostęp do nich, a także rejestrowanie prac wykonanych na
tych dokumentach (np. kontrolowanie ich wersji, śledzenie wprowadzonych
zmian)
Systemy obiegu pracy (Workflow): (wspierają realizacje procedur
postępowania z dokumentami. Narzedzia służą do automatyzacji całego lub
części procesu biznesowego. System przydziela poszczególne zadania
pracownikom i zarządza harmonogramem ich realizacji. Umożliwia
usprawnienie zarządzania procesami w przedsiębiorstwie)
Systemy wspomagania decyzji, systemy eksperckie: (są to
interaktywne systemy komputerowe wykorzystywane w pełnieniu funkcji
planistycznych i decyzyjnych. Umożliwiają kierownikom uzyskanie
wyselekcjonowanej, skondensowanej i przeanalizowanej informacji oraz
ułatwiają podejmowanie nierutynowych decyzji, czyli umożliwiają
zarządzanie informacją )
PODZIAŁ WIELKICH SYSTEMÓW
Wzorce architektoniczne
→ Wzorce architektoniczne – uogólnione spojrzenie na strukturę systemu
→ Są wykorzystywane przy tworzeniu głównych części systemu – widocznych na
pierwszy rzut oka
→ Pozwalają na generacje podsystemów
→ Związki pomiedzy podsystemami pozwalają dopasować opracowywany system do
któregoś z wzorców architektonicznych
- Architektura trójwarstwowa
- Wzorzec potoków i filtrów
- Wzorzec architektury obiektowej
PODZIAŁ WIELKICH SYSTEMÓW
Architektura trójwarstwowa
(system obsługi zamówień)
<<subsystem>>
Interfejs Użytkownika
<<subsystem>>
Reguły biznesowe
<<subsystem>>
Baza Danych
Trzy warstwy - aby reguły biznesowe działały – muszą korzystać z bazy danych
Przypisanie poszczególnych części systemu do kolejnych warstw: Formularz – część Interfejsu Użytkownika;
Dane zebrane w związku z zamówieniem – warstwa Bazy Danych; Proces pobierania zamówienia – warstwa
Reguł Biznesowych
Korzyści: Jedna baza danych; zestaw procesów biznesowych - spójny
PODZIAŁ WIELKICH SYSTEMÓW
Wzorzec potoków i filtrów
(system obsługi zamówień)
<<subsystem>>
Przyjmowania Zamówień
<<subsystem>>
<<subsystem>>
Przyjmowania Przesyłek
Obsługa Płatności
<<subsystem>>
Baza Danych
Pewien syststem przyjmuje dane, w pewien sposób je przetwarza, a następnie je zwraca, potem kolejny
element pobiera zwrócone informacje, przetwarza itd.
Elementy są niezależne i tak naprawdę nic nie wiedza o sobie.
Przyjmowanie zamówień wykonuje prace i umieszcza ją na stosie zamówień
Wysyłanie przesyłek pobiera stos zamówień, przygotowuje je i wysyła tworząc stos płatności
Te są pobierane przez Obsługe płatności i są realizowane;
DUŻA NIEZALEŻNOŚĆ PODSYSTEMÓW – ZALEŻNOŚĆ OD STRUMIENIA DANYCH ZAPISYWANYCH
SIOS
PODZIAŁ WIELKICH SYSTEMÓW
Wzorzec architektury obiektowej
(system obsługi zamówień)
<<subsystem>>
Przyjmowanie zamówień
<<subsystem>>
Wysyłanie przesyłek
<<subsystem>>
Obsługa płatności
Podsystemy zdefiniowane wokół danych i związanych z nimi funkcjami
Pomiędzy podsystemami istnieją zależności, ale podsystemy nie wiedzą nic o sobie:
Przyjmowanie zamówień zawiera zamówienia i funkcje które je przetwarzają
Obsługa płatności zajmuje się opłatami, kredytami i kontami
Wysyłanie przesyłek zajmuje się przesyłkami i informacjami adresowymi.
Tutaj każda funkcja jest niezależna lokalizowana w jednej części – w trójwarstwowej każda funkcja istnieje w
trzech warstwach – w potokach i filtrach funkcje komunikują się za pomocą danych.
Proces zarządzania danymi
Zarządzanie danymi obejmuje czynności:
• gromadzenie danych (ich klasyfikacja wg poziomu ważności)
• przechowywanie danych
• zarządzanie danymi (wszelkiego rodzaju analizy)
Systemy informatyczne służące w/w celom to tzw.
Systemy Baz Danych (SBD)
Zaleta: prostota przeszukiwania np. od klucza
Edytor tekstu czy skomplikowana
baza danych
Stosowanie edytorów tekstów do tworzenia baz danych
jest właściwe jedynie w przypadku gromadzenia
niewielkiej ilości informacji, bądź operacje wykonywane na
tych danych nie będą skomplikowane.
Narzędzia Exel-owe Works-owe dają możliwość
wyszukiwania ale niewielką
Etapy rozwoju baz danych
Etap 1 - zwany tradycyjnym – poszczególne programy
użytkowe miały niezależne dane, procedury i modele.
Obok siebie istniały dane, sposób ich przetwarzania oraz
opisy obiektu
Program użytkowy 1
Program użytkowy 2
Model
Procedura
Dane
Model
Procedura
Dane
1
1
1
2
2
2
Tradycyjne systemy baz danych – mała elastyczność i
niezbyt duże możliwości, niewątpliwie związane z
ograniczeniami sprzętowymi (jednostanowiskowe)
itd.
Etapy rozwoju baz danych
Etap 2 – systemy baz danych z oprogramowaniem do
zarządzania danymi – możliwość współużytkowania danych
przez wielu użytkowników, systemy drugiej generacji
Program użytkowy 1
Model
1
Procedura
1
Program użytkowy 2
Model
2
Procedura
2
Program użytkowy N
Model
N
Procedura
N
System Zarządzania Danymi
Dane
1
Dane
2
itd.
Dane
N
Współużytkowanie dzięki dostępowi bezpośredniemu do
PAO. Zbiory danych oddzielone od programu który nimi
zarządza. Informacje w oddzielnych plikach.
Etapy rozwoju baz danych
Etap 2 – systemy baz danych z oprogramowaniem do
zarządzania danymi – możliwość współużytkowania danych
przez wielu użytkowników, systemy drugiej generacji
Program użytkowy 1
Model
1
Procedura
1
Program użytkowy 2
Model
2
Procedura
2
Program użytkowy N
Model
N
Procedura
N
System Zarządzania Danymi
Dane
1
Dane
2
itd.
Dane
N
Współużytkowanie dzięki dostępowi bezpośredniemu do
PAO. Zbiory danych oddzielone od programu który nimi
zarządza. Informacje w oddzielnych plikach.
Etapy rozwoju baz danych
Etap 3 – w obrębie jednego systemu może istnieć wiele baz
danych pod warunkiem, że zawartości poszczególnych baz będą
rozdzielone i nie powiązane ze sobą
Program użytkowy 1
Model
1
Procedura
1
Program użytkowy 2
Model
2
Procedura
2
Program użytkowy N
Model
N
Procedura
N
System Zarządzania Bazami Danych
Baza
danych
Zestaw baz danych – system baz danych obsługiwanych
przez System Zarządzania Bazami Danych
itd.
System zarządzania bazami danych
System Obsługi Baz Danych – zawiera mechanizmy
programistyczne pozwalające na efektywną obsługę baz danych,
zaliczamy do nich:
• środki do gromadzenia, utrzymywania i administrowania
zbiorami danych
• środki zapewniające bezpieczeństwo i spójność danych
• sprawny dostęp do danych
• aparat aktualizacji i przetwarzania danych
• mechanizmy wielodostępu – transakcyjność
• reguły autoryzacji
• mechanizmy odtworzenia bazy w przypadku awarii
• środki optymalizacji bazy
• mechanizmy umożliwiające pracę w środowisku rozproszonym
• pakiety statystyczne
• interfejsy do innych systemów
Rodzaje baz danych
Relacyjne Bazy Danych – najbardziej popularne, budowa oparta
o pojęcie rekordów oraz pól. Każdą RBD można potraktować
jako tabelę złożoną z „wierszy” – rekordów i „kolumn” pól.
(każdy rekord składa się z określonej ilości pól)
W relacyjnych bazach danych wprowadzono algebrę relacji
gdzie relację łączą tabele w których rekordach występują
wspólne pola
Obiektowe Bazy Danych – stanowią grupę obiektów których
własności zostały określone zgodnie z obiektowym modelem
danych. Implikuje to naturalną rozszerzalność bazy bez
wprowadzania zmian do systemu. Możliwe są dwa sposoby
rozszerzenia bazy danych: rozszerzenie zachowania się obiektu
i dziedziczenie. Zachowanie może być rozszerzone poprzez
dołączenie dodatkowych programów (medod) do już
istniejących. W dowolnym momencie życia systemu można
zdefiniować nowe klasy korzystając z już istniejących.
Tworzenie modelu obiektowego(1)
Metody strukturalne tworzenia oprogramowania,
opierają się na wyróżnianiu w tworzonym
oprogramowaniu dwóch rodzajów składowych:
pasywnych odzwierciedlających fakt
przechowywania w systemie pewnych danych oraz
składowych aktywnych odzwierciedlających fakt
wykonywania w systemie pewnych operacji.
Metody obiektowe wyróżniają w systemie składowe,
które łączą w sobie możliwość przechowywania
danych oraz wykonywania operacji
Tworzenie modelu obiektowego (2)
Analiza strukturalna
•
•
•
•
Analiza strukturalna zaczyna się od budowy dwóch
różnych modeli systemu: modelu, będącego opisem
pasywnej części systemu oraz modelu funkcji
opisującego aktywną część systemu.
Te dwa modele są następnie integrowane i wynikiem
jest model przepływów danych.
Zwolennicy analizy strukturalnej twierdzą, że
budowa dwóch oddzielnych modeli ułatwia
zrozumienie różnych aspektów systemu.
Krytycy zwracają uwagę, na to że integracja tych
dwóch modeli może być bardzo trudna.
Tworzenie modelu obiektowego (3)
Analiza obiektowa
System jest analizowany w sposób obiektowy jeśli:
Jest dzielony na obiekty posiadające:
Tożsamość, Stan, Zachowanie
Obiekty są grupowane w klasy złożone z obiektów o
podobnych stanach i zachowaniu
-
Metody obiektowe są wygodnym narzędziem analizy
złożonych systemów, w szczególności systemów o
dużej stronie pasywności i złożonej funkcjonalności
Notacja obiektowa (1)
analiza
Składowa dziedziny problemu posiadająca tożsamość,
stan i zachowanie
Obiekt (ang. Object)
projektowanie i
implementacji
analiza
Konstrukcja języka programowania łącząca
dane i metody (procedury i funkcje
Wzorzec grupy obiektów
Klasa (ang. Class)
projektowanie i
implementacji
Typ obiektowy w języku programowania
Notacja obiektowa (2)
Klasa (ang. Class)
pola (atrybuty)
opisują stan obiektów klasy
metod (usług,
operacji)
opisują operacje jakie można na polach tej
klasy wykonywać
Symbol klasy
Symbol obiektu
Nazwa klasy (np. ściana)
Nazwa klasy
Stan klasy: wysokość,
grubość,
jest nośna itp
Atrybuty klasy
Pomaluj
Zbuduj
Metody klasy
Nazwa obiektu : nazwa klasy
(np. Jan Kowalski : Osoba)
:Osoba
Jan Kowalski:
Notacja obiektowa (4)
Związek klas (definiowany poprzez)
nazwa związku
Zatrudnia
Uczelnia
Pracodawca
Pracownik
Instytut
role
Zatrudnia
Uczelnia
Zatrudnia
Pracuje
Czynności realizowane w związku
Bank
Bank
Karta kredytowa
PIN
Karta kredytowa
Związek kwalifikowany
Kwalifikator związku PIN
Instytut
Notacja obiektowa (3)
generalizacja - specjalizacja
Dwie klasy pozostają w związku generalizacjispecjalizacji, jeżeli jedna z nich, zwana specjalizacją
jest rodzajem drugiej zwanej generalizacją.
pracownik
generalizacja
pracownik
pracownik
nauczyciel
nauczyciel
Związek klas
specjalizacja
dziekan
zero lub wiele
zero lub jeden
Pracownik naukowy
Instytut
Kierowca
Prawo jazdy
Student
8-12
Grupa laboratoryjna
1+
Dziekan
1+
Wykład
Kierownik projektu
Notacja obiektowa (5)
Diagramy przejść stanów
Prezentują zmienne w czasie aspekty systemu
(dynamiczne zachowanie się klas i grup klas;
przedstawienie sposobów realizacji funkcji systemu)
Zdarzenie – zjawisko występujące w określonej chwili czasu (wprowadzenie danych,
wybranie opcji, odczyt parametru) – może być zewnętrzne lub wewnętrzne
data input
user interrupt
open file
koniec metody
Time limit
open file
Stan – okres pomiędzy zdarzeniami (np. stan overwrite, input, edycji, prezentacji)
Przejście systemu – zmiana stanu systemu j.w. (dodatkowe warunkowanie)
Akcja – czynności wykonywane w momencie zajścia zdarzenia, natychmiast
(wypełnienie wartością pola, realizacja określonego obliczenia)
Operacja – wykonywane w czasie określonego stanu systemu, przerywana
automatycznie poprzez zdarzenie zmieniające stan systemu (monitorowanie czasu)
Notacja obiektowa (6)
Diagramy przejść stanów
STAN 1
opis stanu
Do: operacja
...........
Entry: akcja 1
...........
...........
Exit: akcja n → przejście do STANU 2
...........
zdarzenie (parametry) [warunek]/akcja
Specyfikacja modelu obiektowego: nazwy, ogólny opis (klas i obiektów) oraz
lista pól;
lista metod;
ograniczenia dla pól określonej klasy;
liczba obiektów danej klasy;
trwałość,chwilowe czy trwałe życie obiektów danej klasy
Nazwa stanu
Notacja obiektowa (7)
Specyfikacja metod
dane wejściowe;
dane wyjściowe;
algorytm (opisywany poprzez język naturalny, schemat blokowy lub minispecyfikację);
warunki wstępne (warunki jakie musza spełniać pola klasy do której należy metoda oraz
dane wejściowe, aby metoda mogła rozpocząć się poprawnie) ;
warunki końcowe (warunki jakie musza spełniać pola klasy do której należy metoda oraz
dane wyjściowe po zakończeniu poprawnie rozpoczętej oraz poprawnie wykonanej metody);
wyjątki – sytuacje mogące zajść w trakcie realizacji metody (błąd otwarcia pliku);
złożoność czasowa;
złożoność pamięciowa;
Algorytm klasyfikacji na podstawie reguł decyzyjnych:
powtarzaj od reguły najważniejszej do najmniej ważnej
jeżeli obiekt spełnia warunki reguły, to
podejmowana jest reguła wskazywana przez regułę
dopóki nie podjęto decyzji lub nie sprawdzono wszystkich reguł
jeżeli nie podjęto decyzji, to
podejmij decyzję wskazywaną przez regułę domniemaną
Tworzenie modelu obiektowego (4)
Główne zadania
Identyfikacja klas
i obiektów
Identyfikacja
związków klas
i obiektów
Identyfikacja
metod
i komunikatów
Identyfikacja i
definiowanie
pól
Identyfikacja klas i obiektów:
-podejście klasyczne, oparte na obserwacji z propozycją pojawiających się w systemach typowych klas;
przedmioty, role, zdarzenia, interakcje, lokalizacje, dokumenty, organizacje, koncepcje, interfejsy dla
systemów zewnętrznych, itp.
- analiza dziedziny problemu; przeniesienie modelu opisanego przez ekspertów bądź w literaturze i
wcześniejszych podobnych realizacjach
- analiza w języku naturalnym; wykorzystuje opis fachowego modelu – rzeczowniki potencjalne klasy,
obiekty lub pola; czasowniki to potencjalne metody lub związki klas
- analiza scenariuszy; tworzenie przypadków użycia
Tworzenie modelu obiektowego (5)
Weryfikacja klas i obiektów: (odrzucenie zbędnych klas)
- nieobecność pól i metod – klasa poza odpowiedzialnością systemu
- nieliczne pola i metody – przenieść do innej klasy
- jeden obiekt w klasie – (klasa pit nowaka zbyt rozbudowane specjalizacje)
- brak związku z innymi klasami – klasa znajduje się poza zakresem odpowiedzialności systemu.
Identyfikacja związków klas i obiektów (uogólnienie wielu pojedynczych związków pojawiających się
pomiędzy obiektami tych klas)
związki agregacji : (zawiera, składa się, obejmuje)
1+ wydział
Uczelnia
Symbol wskazujący całość
2+
zakłady
2+
instytut
Tworzenie modelu obiektowego (6)
Identyfikacja związków klas i obiektów (uogólnienie wielu pojedynczych związków pojawiających się
pomiędzy obiektami tych klas)
związki generalizacji-specjalizacji (np. klasyfikacja wyrobów, pracowników itp.;
dziedziczenie pól i metod często wskazuje na związek G-S.)
Pracownik naukowy
Pracownik
Adres
Imię
Nazwisko
Edytuj dane
Pracownik
Adres
Imię
Nazwisko
Edytuj dane
Pracownik naukowy
Stopień naukowy
Podaj listę publikacji
Adres
Imię
Nazwisko
Stopień naukowy
Edytuj dane
Podaj listę publikacji
Tworzenie modelu obiektowego (7)
Identyfikacja i definiowanie pól
- co jest potrzebne dla opisu danej klasy w ramach dziedziny problemu
- jakie dane są potrzebne metodom danej klasy dla realizacji ich zadań
- jakie pola należy wprowadzić dla opisu stanów w jakich mogą się znajdować obiekty danej klasy
Student
Adres
Imię
Miejsce pracy
Numer indeksu
Błędy w umieszczaniu
Pól w związku G-S
Edytuj dane
Student dzienny
Student zaoczny
Nazwisko
Nazwisko
Tworzenie modelu obiektowego (8)
Identyfikacja i definiowanie metod i komunikatów
Algorytmicznie proste
Algorytmicznie złożone (metody śledzenia, wykonywanie obliczeń
Konstruktory (metody tworzące nowe obiekty danej klasy)
Destruktory (metody usuwające obiekty danej klasy)
Metody pobierania/ustawiania wartości pól danej klasy ( GetData, SetData, GetField, SetField
– stanowią bezpośrednie odwołania do pól, czasem z warunkami)
Metody służące do ustawiania związków pomiędzy obiektami
Metody służące do edycji pól danej klasy
Tworzenie modelu obiektowego (9)
Przykład – system podatkowy
Program ułatwia przygotowanie formularzy zeznań podatkowych (PIT-ów) oraz
przechowywanie informacji o źródłach przychodów i ulg. Zeznanie może być
tworzone dla pojedynczego podatnika lub małżeństwa. Zeznanie obejmuje
informację o rocznych przychodach (w przypadku małżeństwa z podziałem na
dochody męża i żony) oraz o ulgach podatkowych. Przychody podzielone są
na klasy ze względu na źródło uzyskania, na przykład pozarolnicza działalność
gospodarcza, wolny zawód. W ramach danej klasy przychodów podatnik mógł
osiągnąć szereg przychodów z różnych źródeł. Wszystkie przychody opisane
przez kwotę przychodu, kwotę kosztów, kwotę zapłaconych zaliczek oraz
kwotę dochodu. Powyższe informacje pozwalają obliczyć należny podatek oraz
kwotę do zapłaty/zwrotu. Zeznanie zawiera także informacje o podatniku(ach)
oraz adres Urzędu Skarbowego do którego jest kierowane. System pozwala
wydrukować wzorzec zeznania zawierający wszystkie informacje jakie podatnik
musi umieścić w formularzu. Zeznanie można zabezpieczyć przed dalszymi
zmianami (po złożeniu zeznania w Urzędzie). System pozwala na tworzenie
listy podatników oraz Urzędów Skarbowych.
Tworzenie modelu obiektowego (10)
Potencjalne klasy
Informacja?
Program
PIT
Przychody z danej klasy!! (klasa źródeł)
Przychody z konkretnego źródła
Roczne przychody
Ulgi podatkowe
Podatnik
Urząd Skarbowy
Lista Podatników
Lista Urzędów skarbowych
Tworzenie modelu obiektowego (11)
Pola klas
Kwota przychodu
kwota kosztów
kwota zapłaconych zaliczek
kwota dochodu
należny podatek
kwota do zapłaty
adres urzędu
adres podatnika
Specjalizacje klas
pozarolnicza działalność gospodarcza
wolny zawód
renty, emerytury
prawa autorskie
Tworzenie modelu obiektowego (12)
Powiązanie obiektów klas PIT i podatnik
Jan Kowalski
PIT1994/001
U.S. W_Górce
Janina Kowalska
PIT1995/011
U.S. W_Dole
Kamil Lewocza
PIT1995/012
U.S. W_Dolinie
Obligatoryjność związków obiektów klasy PIT z obiektami klasy Podatnik
Podatnik
1-2
PIT
Urząd Skarbowy
Kwalifikowany związek klas
Podatnik
ROK
1-2
PIT
Tworzenie modelu obiektowego (13)
Związki agregacji w systemie podatkowym
1-2
Pit
Roczne przychody
Symbol wskazujący całość
1+
Ulgi podatkowe
Przychody z danej klasy
Lista
podatników
Podatnik
Lista PITów
PIT
Lista urzędów
skarbowych
Urząd skarbowy
Przychody z
konkretnego źródła
Tworzenie modelu obiektowego (14)
Związki G-S w systemie podatkowym
Pit
PIT pojedynczego podatnika
ROK
PIT małżeństwa
Podatnik
Roczne przychody
ROK 2
2
Tworzenie modelu obiektowego (15)
Identyfikowanie pól
Urząd skarbowy
Nazwa – ciąg znaków
Adres – dana złożona
Podatnik
Imię – ciąg znaków
Nazwisko – ciąg znaków
Imię ojca – ciąg znaków
Imię matki – ciąg znaków
Adres – dana złożona
Data urodzenia – data
Miejsce urodzenia – ciąg znaków
PESEL – 11 cyfr
PIT
Rok – liczba całkowita
Podstawa opodatkowania – kwota zł
Należny podatek – kwota zł
Kwota do zwrotu – Kwota zł
PIT pojedynczego podatnika
Adres – dana złożona
PIT małżeństwa
Adres męża – dana złożona
Adres żony – dana złożona
Przychody
Kwota przychodu – kwota zł
Kwota kosztów – kwota zł
Kwota zaliczek – kwota zł
Kwota dochodu – kwota zł
Przychody z danej klasy
Nazwa źródła – ciąg znaków
Przychody z konkretnego źródła
Opis – ciąg znaków
Dokument – dana złożona
Ulgi podatkowe
Kwota ulg – Kwota zł
Ograniczenia pól
Kwota przychodu > Kwota zaliczek
Kwota dochodu = Kwota przychodu – koszty
itd.
Tworzenie modelu obiektowego (16)
Scenariusz przepływu komunikatów
Polecenie edycji rocznych przychodów
Wyświetlana jest list przychodów z poszczególnych klas
Polecenie edycji przychodów z danej klasy
Zapamiętywane są dane kwoty z wybranej klasy
Wyświetlana jest lista przychodów z konkretnych źródeł
Dodanie nowego przychodu z konkretnego źródła - polecenie
Tworzony i edytowany jest opis nowego przychodu z konkretnego źródła
Uaktualniana jest lista przychodów z konkretnych źródeł
Użytkownik wydaje polecenie edycji przychodu z konkretnego źródła
Zapamiętywane są aktualne kwoty opisujące przychody z określonego
źródła
Edytowany jest opis przychodów z określonego źródła
Na podstawie aktualnych kwot modyfikowane są przychody z danej klasy
Uaktualniana jest lista przychodów z konkretnych źródeł
Użytkownik wydaje polecenie usunięcia przychodu z konkretnego źródła
......
Po zakończeniu edycji przychodów z danej klasy modyfikowane są roczne
przychody
.......
Uaktualniana jest lista przychodów z poszczególnych klas
Porównanie baz danych
Relacyjne
Cechy
-dane zawarte w tabelach
podstawowe -tabele składają się z
kolumn
-typy predefiniowane
-zmienna liczba wierszy
-klucze zewnętrzne
zamiast wskaźników
Zalety
Obiektowe
-obiekt świata rzeczywistego jest
odzwierciedlany przez obiekt bazy
-typ obiektowy
-złożone typy danych
-enkapsulacja
-dziedziczenie:
strukturalne – potomek dziedziczy
strukturę danych
behavioralne – potomek dziedziczy
metody i operatory
-niezależność od języka
- łatwa reprezentacja świata
programowania
- dokładnie reprezentuje zależności
- dobrze zdefiniowana teoria
pomiędzy obiektami
-zarządzanie nawet wielką
- łatwość działania na złożonych
ilością danych
obiektach
- duża podatność na zmiany
Porównanie baz danych (2)
Relacyjne
Obiektowe
Zalety
- stosowanie złożonych
kryteriów wyszukiwawczych
- możliwość dostępu do
danych fizycznych
- kontrola dostępu do danych
- możliwość definiowania własnych
typów, metod
- dobra integracja z językami
programowania ogólnego
przeznaczenia
- ujednolicony model pojęciowy
Wady
- dla trudniejszych problemów
dużo tabel
- ograniczona podatność na zmiany
- brak złożonych typów
danych
- trudne operowanie na
danych złożonych
- trudne rozproszenie w
sieciach heterogenicznych
- niezgodność z modelem
używanym przez języki
ogólnego przeznaczenia
-powiązanie z jednym językiem
-słaba obsługa przeszukiwania
danych
- brak powszechnie
zaakceptowanego języka zapytań
- brak możliwości optymalizacji
zapytań
- trudny lub nawet niemożliwy dostęp
do danych
-słaba kontrola dostępu
-małe możliwości optymalizacji
serwera
Porównanie baz danych (3)
Relacyjne
Najlepsze - dane są proste
efekty
niezagnieżdżone, łatwe do
umieszczenia w tablicy
- dane mają postać bierną a
procesy korzystające z danych
stale się zmieniają
-często trzeba wyszukiwać dane
spełniające różnorodne warunki
Obiektowe
- dane złożone, zagnieżdzona
struktura
- dane tworzą hierarchię
- dane są rozproszone w sieci
heterogenicznej
- dane dynamicznie zmieniają
rozmiar