Podstawy Inżynierii Oprogramowania

Slides:



Advertisements
Podobne prezentacje
CLIMGEN (generator danych pogodowych w modelu CropSyst.
Advertisements

Metody badania stabilności Lapunowa
Modelowanie aktywności
Diagramy stanów i diagramy aktywności
Modelowanie przypadków użycia
ALGORYTM Co to jest algorytm?
MS Access 2000 Normalizacja Paweł Górczyński 2005.
Projektowanie Aplikacji Komputerowych
Podstawy informatyki Rekurencja i rekurencja Grupa: 1A
Diagram czynności (Activity Diagrams)
Podstawy Inżynierii Oprogramowania
Podstawy Inżynierii Oprogramowania
Podstawy Inżynierii Oprogramowania
Wstęp do programowania obiektowego
Matura z informatyki Arkusz I.
Projektowanie i programowanie obiektowe II - Wykład IV
Projektowanie i programowanie obiektowe II - Wykład II
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
Projektowanie - wprowadzenie
1 % Twojego podatku dla Hufca ZHP Konin Co zrobić, aby przekazać jeden procent podatku? Tylko kilka kroków przez Tobą!
Wykład 4 Analiza i projektowanie obiektowe
Zadania Bazy danych.
Inżynieria Oprogramowania
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Algorytmy.
Wprowadzanie opisu przedmiotu po stronie USOSweb (według sylabusa zgodnego z załącznikiem 1 do Zarządzenia nr 11 Rektora UW z dnia 19 lutego 2010) DAK.
Wykonanie: Iwona Szatkowska. Uwaga! Wszystkie opisane w instrukcji operacje oparte są o zapowiedzi oraz projekty odpowiednich ustaw i rozporządzeń. Te.
Metody Lapunowa badania stabilności
Rozważaliśmy w dziedzinie czasu zachowanie się w przedziale czasu od t0 do t obiektu dynamicznego opisywanego równaniem różniczkowym Obiekt u(t) y(t) (1a)
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Algorytmy.
Elżbieta Fiedziukiewicz
Podsumowanie metodologii OMT
1 Analiza obiektowa Peter Coad / Edward Yourdon Analiza obiektowa wydawnictwo: Oficyna Wydawnicza READ ME, Warszawa 1994 dr Waldemar Wolski.
Programowanie obiektowe 2013/2014
MICROSOFT Access TWORZENIE MAKR
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Spis treści W świecie algortmów -Budowa algorytmu
Modelowanie obiektowe Diagramy klas
Programowanie w języku C++
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Podstawy programowania
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Korespondencja seryjna
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Urząd Skarbowy w Rybniku
Urząd Skarbowy w Rybniku
Model obiektowy bazy danych
PROCESY W SYSTEMACH SYSTEMY I PROCESY.
Diagram aktywności (czynności)
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Modelowanie obiektowe - system zarządzania projektami.
Diagram czynności Diagram czynności (activity diagram) służy do modelowania dynamicznych aspektów systemu. Diagram czynności przedstawia sekwencyjne lub.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Diagramy przepływu danych
Projektowanie postaci formularza:
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
„Filtry i funkcje bazodanowe w EXCELU”
Prezentacja programu PowerPoint
PFR Wstępnie wypełnione zeznanie podatkowe PIT-37 i PIT-38 za rok 2015.
Grupa: administratorzy lokalni JST. Użytkownik systemu CEIDG - materiały szkoleniowe2 Informacje wstępne Zakładanie konta w CEIDG -Wybór sposobu dostępu.
Algorytmy. Co to jest algorytm? Przepis prowadzący do rozwiązania zadania.
Temat: Tworzenie bazy danych
Inżynieria systemów informacyjnych
Selekcja danych Korelacja.
Ms Access - formularze Marzena Nowakowska WZiMK, PŚk
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Podstawy Inżynierii Oprogramowania WYKŁAD 5 Modele cyklu życia oprogramowania MODEL KASKADOWY Faza analizy (c.d.) Dr hab. inż. Barbara Dębska, prof. PWSZ Dr hab. inż. Barbara Dębska, prof. PWSZ

DIAGRAMY PRZEJŚĆ STANÓW Prezentują dynamiczne, tj. zmienne w czasie aspekty systemu. Zdarzenie – zjawisko, które zachodzi w pewnym punkcie czasu i ma wpływ na modelowany system. Zdarzenie zewnętrzne (zachodzi poza systemem): wprowadzenie danych, wybranie polecenia z menu, przerwanie przez użytkownika wykonania operacji. Zdarzenie wewnętrzne (w ramach systemu): zakończenie wykonywania metody, błąd arytmetyczny, przekroczenie czasu. Dr hab. inż. Barbara Dębska, prof. PWSZ

Stan – okres czasu ograniczony przez dwa zdarzenia. Przejście – zdarzenie, które powoduje natychmiastową zmianę stanu systemu. Akcja – natychmiastowa czynność wykonywana w momencie zajścia zdarzenia. Operacja – czynność, której wykonanie trwa przez pewien niepomijalny okres. Jest wykonywana w czasie kiedy system znajduje się w pewnym stanie i może zostać przerwana w momencie zajścia zdarzenia, które powoduje wyjście z tego stanu. Jeśli operacja kończy się samoczynnie, generuje w momencie swojego zakończenia zdarzenie, które powoduje przejście do innego stanu. Przykład operacji: wyświetlenie aktualnego czasu, wykonanie skomplikowanych obliczeń. Dr hab. inż. Barbara Dębska, prof. PWSZ

Symbole stanu początkowego i końcowego Nazwa stanu Symbol stanu do:Operacja ... Entry/akcja ... Exit/akcja ... zdarzenie(parametry)[warunek]/akcja ... Stan 1 Opis stanu Symbole stanu początkowego i końcowego Start Koniec Symbol zdarzenia przedstawiający przejście ze stanu do stanu: Stan 1 Stan 2 zdarzenie(parametry)[warunek]/akcja Dr hab. inż. Barbara Dębska, prof. PWSZ

Formatowanie dokumentów Przykład hierarchii diagramów przejść stanów: Drukowanie do: Drukuj Żądanie wydruku Edycja Operacja drukuj jest dekomponowana do nowego diagramu przejść stanów Edycja parametrów do: Edytuj parametry wydruku Formatowanie dokumentów do: Formatuj dokument Transmisja danych do: transmituj dane Dr hab. inż. Barbara Dębska, prof. PWSZ

SPECYFIKACJA MODELU OBIEKTOWEGO Specyfikacja to dodatkowa informacja uzupełniająca diagramy obiektowe. Składowymi specyfikacji są nazwa oraz ogólny opis. W przypadku prostych metod nazwa lub krótki opis są wystarczające do zrozumienia sposobu działania metody. Jeżeli algorytm metody jest skomplikowany lub podobny efekt można osiągnąć stosując kilka metod, niezbędne staje się opisanie algorytmu metody. Dr hab. inż. Barbara Dębska, prof. PWSZ

Metody specyfikuje się podając: dane wejściowe, dane wyjściowe, algorytm, warunki wstępne, tj. warunki jakie muszą spełniać pola klasy, do której należy metoda oraz dane wejściowe, aby metoda mogła rozpocząć się poprawnie, warunki końcowe, tj. warunki jakie muszą 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, tj. sytuacje wyjątkowe, które mogą zajść w trakcie realizacji metody (np. błąd odczytu z pliku), złożoność czasowa, oraz złożoność pamięciowa. Dr hab. inż. Barbara Dębska, prof. PWSZ

Algorytm można opisać stosując język naturalny, schematy blokowe, lub minispecyfikacje – czyli pseudokod oparty na języku programowania PASCAL (pseudokod wykorzystuje instrukcje podobne do Pascala, pisząc je w języku polskim). Przykład. Algorytm siecznych służący do znalezienia miejsca zerowego funkcji jednej zmiennej. Danymi wejściowymi do tego algorytmu są granice przedziału w którym jest pierwiastek i dokładność . Jeżeli w jednym końcu przedziału funkcja osiąga wartość wystarczająco bliską zeru, to znalezione zostało rozwiązanie w przeciwnym wypadku jeżeli na końcach przedziału funkcja nie ma różnego znaku, to w podanym przedziale nie ma miejsca zerowego w przeciwnym wypadku powtarzaj wyznacz równanie siecznej i punkt przecięcia siecznej z osią x oblicz odległość tego punktu od analogicznego punktu wyznaczonego w poprzednim cyklu jeżeli wyznaczona różnica jest wystarczająco mała, to znalezione zostało rozwiązanie w przeciwnym przypadku przyjmij znaleziony punkt za nowy koniec przedziału dopóki nie zostanie znalezione rozwiązanie Dr hab. inż. Barbara Dębska, prof. PWSZ

PROCES TWORZENIA MODELU OBIEKTOWEGO Zadania wyróżniane w procesie budowy modelu obiektowego: identyfikacja klas i obiektów, identyfikacja związków klas i obiektów, identyfikacja i definiowanie pól, identyfikacja i definiowanie metod i komunikatów. Zadania 1-3 pozwalają na budowę modelu statycznego, zadanie czwarte jest wykorzystywane do zamodelowania sposobu w jaki obiekty współpracując ze sobą wykonują funkcje systemu. Dr hab. inż. Barbara Dębska, prof. PWSZ

IDENTYFIKACJA KLAS I OBIEKTÓW Typowe klasy i obiekty (o których informacje przechowuje system): przedmioty namacalne, role pełnione przez osoby (pracownik, student, wykładowca), zdarzenia (zamówienie, dostawa), interakcje pomiędzy osobami (pożyczka, konferencja), lokalizacje (miejsca przeznaczone dla ludzi lub przedmiotów), grupy przedmiotów namacalnych, organizacje (uczelnia, wydział, firma), koncepcje (zadanie), dokumenty (PIT, faktura), klasy będące interfejsami do systemów zewnętrznych, klasy będące interfejsami do urządzeń sprzętowych. Dr hab. inż. Barbara Dębska, prof. PWSZ

1. analiza dziedziny problemu, Metody stosowane przez analityków podczas definiowania klas i obiektów: 1. analiza dziedziny problemu, Wiedza ekspertów i zawarta literaturze dziedzinowej, wyniki poprzednich analiz podobnych systemów ułatwiają wskazanie klas i obiektów. 2. analiza opisu w języku naturalnym, Z krótkiego opisu modelowego systemu w języku naturalnym wybiera się rzeczowniki wraz z opisującymi je przymiotnikami (potencjalne klasy, obiekty i pola) oraz czasowniki (które stanowią metody lub związki klas). 3. wykorzystanie związków klas i obiektów, Wykorzystuje wyniki czynności wykonanej w następnej kolejności – wskazuje to, że proces analizy obiektowej nie jest w pełni sekwencyjny. 4. analiza funkcji (przypadków użycia), Funkcje wykonywane przez system mogą prowadzić do wykrycia klas. 5. weryfikacja klas i obiektów. Weryfikuje się listę klas i obiektów analizując ostateczny model systemu. Dr hab. inż. Barbara Dębska, prof. PWSZ

IDENTYFIKACJ A ZWIĄZKÓW KLAS I OBIEKTÓW Związek klas jest uogólnionym opisem wielu pojedynczych związków pojawiającymi się pomiędzy poszczególnymi obiektami tych klas. Diagramy obiektów służą do prezentacji związków. Prof. Rode Pracownik naukowy Prof. Wołowiec Pracownik naukowy Prof. Galina Pracownik naukowy Pracuje w Katedra Biochemii Katedra Katedra Materiałoznawstwa Katedra Realizuje Pracuje w COMODEC Grant Europejski Realizuje Pracuje w Pracownik Naukowy Grant Europejski 1+ Katedra Dr hab. inż. Barbara Dębska, prof. PWSZ

Związki agregacji - na ich występowanie wskazują takie zwroty pojawiające się w słowniku opisu systemu jak: zawiera się, składa się, obejmuje. Związki agregacji - ustala się wyszukując klasy posiadające części składowe i klasy będące zbiorami pewnych elementów. Dla ustalonych klas należy ustalić czy nie wchodzą one w skład większego zbioru. Przykłady klas: Uczelnia Wydział Zespół Katedra/Zakład 1+ Podatnicy Podatnik Dr hab. inż. Barbara Dębska, prof. PWSZ

Nazwy Pracownik naukowy i Pracownik techniczny Związki generalizacji-specjalizacji - na ich występowanie wskazują istniejące w danej dziedzinie klasyfikacje. Nazwa specjalizacji często składa się z nazwy generalizacji uzupełnionej o dodatkowy przymiotnik, np. nazwa Pracownik naukowy wskazuje, że klasą jest nazwa Pracownik, a specjalizacją klasy jest naukowy. Występowanie klas o nazwach zawierających ten sam fragment z różnymi przymiotnikami sugeruje, że nazwy klasy można uogólnić. Przykład. Nazwy Pracownik naukowy i Pracownik techniczny można uogólnić do klasy Pracownik Dr hab. inż. Barbara Dębska, prof. PWSZ

Związek, który ma sens tylko dla pewnych obiektów wskazuje na konieczność wprowadzenia specjalizacji. Przykład. Koło naukowe Opiekun Pracownik Pracownik naukowy Pracownik techniczny Dr hab. inż. Barbara Dębska, prof. PWSZ

A jest rodzajem B (jeżeli klasa A jest specjalizacją klasy B)? Weryfikacja związków – do tego celu służy tzw. test semantyczny. Dla dwóch klas A i B dla których zdefiniowano pewien związek należy sprawdzić, czy: A jest rodzajem B (jeżeli klasa A jest specjalizacją klasy B)? A [czasownik] B (jeśli klasy A i B są związane związkiem klas)? A jest częścią B lub B składa się (zawiera) z A (jeśli obiekty klasy A są składowymi obiektów klasy B)? Niekiedy związki są ukryte, np. Pracownik naukowy Wydział Pracownik Dr hab. inż. Barbara Dębska, prof. PWSZ

Faza analizy (modelowania) a. Opis słowny: Przykład. Faza analizy (modelowania) a. Opis słowny: Program ułatwia wyszukiwanie numerów telefonów indywidualnych abonentów jak również firm oraz instytucji i pozwala na gromadzenie informacji o klientach. Każdy odwiedzający może wyszukać osobę podając jej imię i nazwisko. Informacje o abonentach obejmują : imię i nazwisko, miasto, adres, telefon. Dr hab. inż. Barbara Dębska, prof. PWSZ

Faza analizy (modelowania) Przykład c.d. Faza analizy (modelowania)    b. schemat powiązań obiektów, związki agregacji abonent dane książka telefoniczna Lista abonentów abonent Abonent, firmy i instytucje dane Baza danych TP lista abonentów Książka telefoniczna abonent dane Dr hab. inż. Barbara Dębska, prof. PWSZ

Faza analizy (modelowania) Przykład c.d. Faza analizy (modelowania)    c. Opis słowny System internetowej książki telefonicznej – pola klas Książka telefoniczna Nazwa – ciąg znaków Adres www – ciąg znaków Abonent Nazwisko – ciąg znaków Inie – ciąg znaków Adres – dana złożona Telefon- ciąg cyfr Lista abonentów Dane - ciąg znaków   Firmy i instytucje Nazwa firmy – ciąg znaków Adres – dane złżone Telefon – ciąg cyfr Dr hab. inż. Barbara Dębska, prof. PWSZ

Faza analizy (modelowania) Przykład c.d. Faza analizy (modelowania) d. Opis słowny przepływu komunikatów. Edycja informacji o wpisie. Użytkownik wydaje polecenie wyświetlenia spisu abonentów Wyświetlana jest lista abonentów Użytkownik wydaje polecenie edycji określonego nazwiska abonenta. Wyświetlane są dane abonent. Dr hab. inż. Barbara Dębska, prof. PWSZ

Identyfikacja i definiowanie pól Identyfikacja pól wymaga wcześniej ustalenia: Co jest potrzebne do opisu danej klasy w ramach dziedziny problemu? Jakie dane będą potrzebne metodom danej klasy do realizacji ich zadań? Jakie pola należy wprowadzić, aby opisać stany w jakich mogą znajdować się obiekty danej klasy? Do identyfikacji i definiowania pół wykorzystuje się niekiedy opis słowny systemu, wyszukując w nim rzeczowniki i zastanawiając się, które z nich stanowią klasy, a które pola klas. Również zaakceptowany przez klienta prototyp interfejsu może dostarczyć informacji o wprowadzanych, edytowanych i prezentowanych użytkownikowi danych, które odpowiadają polom klas systemu. Dr hab. inż. Barbara Dębska, prof. PWSZ

Student Imię Miejsce pracy Numer indeksu Student dzienny Nazwisko Student zaoczny Zidentyfikowane pola należy umieścić na odpowiednim poziomie w hierarchii generalizacji-specjalizacji. Należy nie dopuszczać do błędnego umieszczenia tych pól. Pole umieszczone zbyt wysoko, nie zawsze mające sensowne wartości Pole umieszczone zbyt nisko, powtarzające się w różnych klasach Uwaga: Pole miejsce pracy nie zawsze ma sensowne wartości dla studentów studiów dziennych i powinno być umieszczone wyłącznie w klasie Student zaoczny. Pole nazwisko występuje w obu klasach i powinno się znaleźć po imieniu. Dr hab. inż. Barbara Dębska, prof. PWSZ

Identyfikacja i definiowanie metod i komunikatów. Metody które trzeba zdefiniować dzielą się na: algorytmiczne proste, i algorytmiczne złożone. Metody algorytmiczne proste to: konstruktory – metody tworzące nowe obiekty danej klasy, destruktory – metody usuwające obiekty danej klasy, metody służące do pobierania/ustawiania wartości pól danej klasy, metody służące do ustawiania związków pomiędzy obiektami, metody służące do edycji pól danej klasy. Metody algorytmiczne złożone to: metody służące do wykonywania obliczeń, oraz metody służące (monitorujące) pracę urządzeń i systemów zewnętrznych. Dr hab. inż. Barbara Dębska, prof. PWSZ

Analiza scenariuszy (przypadków użycia) Analiza scenariuszy polega na definiowaniu sposobu realizacji poszczególnych funkcji systemu. Analityk wybiera kolejne funkcje systemu, a następnie modeluje przepływ komunikatów niezbędnych dla realizacji tych funkcji. Scenariusz zewnętrzny – to przepływ komunikatów pomiędzy modelowanym systemem, a zewnętrznymi systemami, które są zaangażowane w realizację tych funkcji. Jeżeli systemem zewnętrznym jest człowiek, to scenariusz zewnętrzny opisuje komunikaty jakie użytkownik wysyła do modelowanego systemu. W budowie takiego scenariusza zewnętrznego pomocnym jest prototyp interfejsu użytkownika, który zawiera opis rozwijalnych menu, pasków narzędzi, przycisków używanych w dialogach, przycisków myszy, czy poleceń wydawanych z klawiatury. Dr hab. inż. Barbara Dębska, prof. PWSZ

Cykliczny algorytm Scenariusza przepływu komunikatów miedzy obiektami systemu: 1. wybierz jeden z komunikatów utrzymywanych przez system (np. wyświetl, ukryj), 2. określ klasę, której obiekt(y) otrzyma(ją) ten komunikat (np. tekst), 3. wybierz metodę, która będzie wywoływana przez ten komunikat lub wprowadź taka metodę, jeśli nie została jeszcze wprowadzona (np. wyświetl), 4. jeśli metoda: - jest elementarna może w pełni wykonać polecenia związane z komunikatem wyświetl (wyświetl(zdanie)), - nie jest elementarna określ klasy, które będą uczestniczyły w jej realizacji, dodaj komunikaty, które będą wysyłane do tych klas oraz wybierz/wprowadź wywoływane przez nie metody. Powtarzaj ten krok dla wszystkich nowo wprowadzonych metod. 5. powtarzaj kroki 1- 4 dla wszystkich komunikatów otrzymywanych przez system. Dr hab. inż. Barbara Dębska, prof. PWSZ

Przykład PITy 2003 – system do rozliczeń podatkowych Analizę rozpoczyna się od poszukiwania klas. Przygotowuje się opis słowny z wyróżnionymi w tekście rzeczownikami wraz z przymiotnikami. Program ułatwia przygotowanie i wypełnianie formularzy zeznań podatkowych (PITów) oraz gromadzenie informacji o źródłach przychodu i ulgach. Dr hab. inż. Barbara Dębska, prof. PWSZ

Zeznanie zawiera informacje o podatniku (podatnikach) oraz adres Urzędu Skarbowego do którego jest kierowane. Zeznanie może być tworzone dla pojedynczego podatnika, osoby samotnie wychowującej dziecko lub małżeństwa. Zeznanie obejmuje informacje o przychodach (w przypadku małżeństwa z podziałem na przychody męża i żony) oraz o ulgach podatkowych. Przychody podzielone są na klasy przychodów: wynagrodzenia ze stosunku pracy, emerytury – renty krajowe, działalność wykonywana osobiście, prawa autorskie, inne źródła. W ramach danej klasy przychodów podatnik mógł osiągnąć szereg przychodów z różnych źródeł (jeśli pracuje w różnych firmach). Wszystkie przychody danej klasy opisane są przez kwotę przychodu, kwotę kosztów, kwotę dochodu i kwotę zapłaconych zaliczek. Te dane pozwalają obliczyć należny podatek oraz kwotę do zapłaty/zwrotu. System pozwala zabezpieczyć zeznanie przed dalszymi zmianami. System pozwala na tworzenie listy podatników, gromadzenie danych o wszystkich złożonych zeznaniach a także listy Urzędów Skarbowych wykorzystywanych podczas tworzenia nowych zeznań podatkowych oraz przygotowywania korekt do zeznań wcześniej złożonych. Dr hab. inż. Barbara Dębska, prof. PWSZ

Uwagi do analizy opisu słownego: nie wszystkie rzeczowniki uznaje się za potencjalne klasy, niektóre słowa opisują to samo (program - system, PIT – formularz zeznania podatkowego – zeznanie), rzeczownik informacja nie odpowiada żadnej klasie, ale zwrot informacja o podatniku sugeruje powstanie klasy, czasowniki takie jak ułatwia/zezwala nie opisują czynności dokonywanej przez system. Dr hab. inż. Barbara Dębska, prof. PWSZ

OPISU W JĘZYKU NATURALNYM KLASY WYRÓŻNIONE W WYNIKU ANALIZY OPISU W JĘZYKU NATURALNYM Indywidualny podatnik Osoba wychowująca dziecko Małżeństwo Kwota przychodu Kwota kosztów uzyskania przychodów Kwota dochodu Kwota zapłaconych zaliczek Należny podatek Kwota do zapłaty Kwota do zwrotu Adres Urzędu podatkowego Program PIT Podatnik Urząd Skarbowy Przychody z danej klasy Przychody z konkretnego źródła Roczne przychody Ulgi podatkowe Lista podatników Lista urzędów skarbowych Terminy opisujące pola innych klas: Klasy w systemie PITy 2003: Dr hab. inż. Barbara Dębska, prof. PWSZ

Schematy powiązań obiektów należących do różnych klas: Jan Nowak: Podatnik Maria Nowak: Podatnik Jan Kowalski: Podatnik Ewa Kowalska: Podatnik PIT 2003/001 PIT PIT 2003/011 PIT PIT 2003/012 PIT Łańcut: Urząd skarbowy Rzeszów: Urząd skarbowy Jarosław: Urząd skarbowy Podatnik PIT Urząd skarbowy 1-2 Ponieważ PIT 2003 opisuje dochody tylko jednego roku można wprowadzić kwalifikowany związek klas i w ten sposób ograniczyć krotność związku: Podatnik ROK PIT 1-2 Dr hab. inż. Barbara Dębska, prof. PWSZ

Przychody z danej klasy 1+ PIT 2003 zawiera dane zagregowane – wyniki obliczeń, a więc związek agregacji można przedstawić schematem: PIT Roczne przychody Przychody z danej klasy 1+ 1-2 Przychody z konkretnego źródła Ulgi podatkowe Dr hab. inż. Barbara Dębska, prof. PWSZ

Lista urzędów skarbowych Inne związki agregacji występujące w systemie PITy 2003 Lista podatników Podatnik Lista PITów PIT Lista urzędów skarbowych Urząd skarbowy Dr hab. inż. Barbara Dębska, prof. PWSZ

Schemat związków generalizacji-specjalizacji oraz zmodyfikowanych związków klas istniejących w systemie PITy 2003 : PIT PIT indywidualnego podatnika PIT osoby samotnie wychowującej dziecko PIT małżeństwa 2 Roczne przychody 2 Podatnik ROK Podatnik ROK Podatnik ROK Podatnik ROK Uwaga: dwukrotne wystąpienie na diagramie klasy podatnik zmniejsza liczbę połączeń między klasami. Dr hab. inż. Barbara Dębska, prof. PWSZ

Przychody z konkretnego źródła Klasy: Przychody z danej klasy Przychody z konkretnego źródła Roczne przychody mają wspólny człon przychody, który można wykorzystać przy ustalaniu kolejnych związków generalizacji-specjalizacji: Przychody Przychody z konkretnego źródła Roczne przychody Przychody z danej kasy Dr hab. inż. Barbara Dębska, prof. PWSZ

Uwzględniając wszystkie ustalone związki pomiędzy klasami otrzymujemy ostateczną postać diagramu klas dla projektu PITy 2003: Lista Urzędów. Skarb. Podatnik Lista PITów PIT PIT pojedynczego podatnika PIT osoby samotnie wychow. dzieci PIT małżeństwa Podatnik ROK Roczne przychody 2 Ulgi podatkowe Lista podatników Przychody Przychody z konkretnego źródła Przychody z danej klasy 1+ Dr hab. inż. Barbara Dębska, prof. PWSZ

System Pity 2003 – pola klas (fragment): Urząd Skarbowy Nazwa – ciąg znaków Adres – dana złożona Podatnik NIP – 10 cyfr Nazwisko – ciąg znaków Pierwsze imię – ciąg znaków Data urodzenia – data PIT Rok – 10 cyfr Podstawa opodatkowania – kwota pieniężna Należny podatek – kwota pieniężna Kwota do zwrotu – kwota pieniężna PIT indywidualnego podatnika PIT osoby samotnie wychowującej dziecko PIT małżeństwa Adres męża – dana złożona Adres żony – dana złożona Przychody Kwota przychodu – kwota pieniężna Kwota kosztów – kwota pieniężna Kwota dochodu – kwota pieniężna Kwota zaliczek – kwota pieniężna 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 pieniężna Dr hab. inż. Barbara Dębska, prof. PWSZ

Klasa Roczne przychody dziedziczy pola z klasy Przychody Pola z klasy przychody spełniają ograniczenia: Kwota przychodu, Kwota kosztów, Kwota zaliczek  0 Kwota przychodu > Kwoty zaliczek Kwota dochodu = Kwota przychodu – Kwota kosztów uzyskania przychodu Dodatkowe ograniczenia pól klas: Roczne przychody, Przychody z danej klasy, Przychody z konkretnego źródła: Roczne przychody.Kwota przychodu = sumie pól Przychody z danej klasy.Kwota przychodu po wszystkich składowych obiektach Przychody z danej klasy.Kwota przychodu = sumie pól Przychody z konkretnego źródła.Kwota przychodu po wszystkich składowych obiektach Dr hab. inż. Barbara Dębska, prof. PWSZ

Opis słowny przepływu komunikatów dla funkcji Edycja Informacji o przychodach: Użytkownik wydaje polecenie edycji rocznych przychodów Wyświetlana jest lista przychodów z poszczególnych klas Użytkownik wydaje polecenie edycji przychodów z danej klasy Zapamiętywane są aktualne kwoty opisujące przychody z danej klasy Wyświetlana jest lista przychodów z konkretnych źródeł Użytkownik wydaje polecenie dodania nowego przychodu z konkretnego źródła 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 wybranego źródła Edytowany jest opis przychodów z wybranego źródła . . . Dr hab. inż. Barbara Dębska, prof. PWSZ

Scenariusz przepływu komunikatów Roczne przychody Przychody z danej klasy Przychody z konkretnego źródła dla funkcji Edycja Informacji o przychodach: Edytuj Użytkownik wydaje polecenie edycji rocznych przychodów Pobierz dane Wyświetlana jest lista przychodów z poszczególnych klas Edytuj przychody z klasy Użytkownik wydaje polecenie edycji przychodów z danej klasy Edytuj Zapamiętywane są aktualne kwoty opisujące przychody z danej klasy Pobierz dane Wyświetlana jest lista przychodów z konkretnych źródeł Dodaj przychody ze źródła Użytkownik wydaje polecenie dodania nowego przychodu z konkretnego źródła Przychody z konkretnego źródła Tworzony i edytowany jest opis nowego przychodu z konkretnego źródła Uaktualniana jest lista przychodów z konkretnych źródeł Edytuj Dr hab. inż. Barbara Dębska, prof. PWSZ

Polecenie przeglądania Obiekty klasy PIT mogą zmieniać swój Stan, tzn. po wysłaniu PITu do Urzędu Podatkowego konieczne jest, aby obiekty klasy PIT zostały zabezpieczone przed dalszymi zmianami. Możliwe powinno być tylko ich przeglądanie. Niezbędne jest zatem dodanie do klasy PIT pola Stan, które przenosi informację o tym w jakim aktualnie stanie jest obiekt klasy PIT. Utworzony model przejść stanów klasy PIT pokazuje jak można zrealizować opcję Edycja i Przeglądanie: Koniec edycji Edycja do: Edytuj Polecenie odbezpieczenia Niezabezpieczony Zabezpieczony Polecenie zabezpieczenia Polecenie edycji Przeglądanie do: Przeglądaj Polecenie przeglądania Koniec przeglądania Dr hab. inż. Barbara Dębska, prof. PWSZ

Dziękuję za uwagę Dr hab. inż. Barbara Dębska, prof. PWSZ