Case study - bankomat Piotr Ciskowski
diagramy UML UML diagram Structure diagram Behavior diagram Class diagram Component diagram Use case diagram Interaction diagram Object diagram Deployment diagram Activity diagram Sequence diagram Composite structure diagram Package diagram State machine diagram Communication diagram Profile diagram Interaction overview diagram Timing diagram
CASE STUDY BANKOMAT
o tworzenie systemu: wymagania analiza projekt implementacja testowanie o inżynieria wsteczna: funkcjonalność dziedzina architektura zachowanie
Funkcjonalność PERSPEKTYWA PRZYPADKÓW UŻYCIA DIAGRAMY PRZYPADKÓW UŻYCIA
Bankomat - funkcjonalność o Z jakich bankomatów korzystasz? o Co możesz zrobić przy ich pomocy? o Co inni mogą z nim zrobić?
ATM o klient może: aktor podjąć gotówkę przypadek użycia sprawdzić stan konta przypadek użycia sprawdzić historię przypadek użycia doładować telefon przypadek użycia wykonać przelew przypadek użycia o serwisant może: aktor naprawić maszynę przypadek użycia o ochroniarz może: aktor załadować gotówkę przypadek użycia
Bankomat diagramy przypadków użycia uc ATM use case diagram ATM account operations Customer + authorize + check balance + check history + purchase cellphone credit + transfer money + withdraw cash «system» Interbank network maintenance + access machine's interior + load money + service the machine Serviceman Securityman
Bankomat diagramy przypadków użycia uc account operations ATM check balance «extend» check history «extend» «extend» withdraw cash authorize «extend» Customer «extend» transfer money Interbank network purchase cellphone credit
Bankomat diagramy przypadków użycia uc maintenance ATM service the machine access machine's interior «include» «include» Serviceman load money Securityman
Bankomat diagramy przypadków użycia Enterprise Architect
Bankomat diagramy przypadków użycia Visual Paradigm for UML
Bankomat diagramy przypadków użycia Visual Studio
Bankomat - scenariusze o Z jakich bankomatów najczęściej korzystasz? o Co się wtedy dzieje? - krok po kroku
Bankomat - scenariusze o Z jakich bankomatów najczęściej korzystasz? o Co się dzieje gdy wypłacasz gotówkę z bankomatu? - krok po kroku
Dziedzina, budowa systemu (urządzenia) PERSPEKTYWA LOGICZNA DIAGRAMY KLAS
Bankomat o Opisz bankomat używając prostego języka o Opisz cały kontekst: klienta, bank, kartę,...
Bankomat - dziedzina na podst. Wikipedii (ang.): Bankomat jest skomputeryzowanym urządzeniem telekomunikacyjnym zapewniającym klientom instytucji finansowych dostęp do transakcji finansowych w przestrzeni publicznej, bez potrzeby kontaktu z kasjerem, czy konsultantem. ( ) W większości współczesnych bankomatów klient jest identyfikowany przez włożenie plastikowej karty wyposażonej w pasek magnetyczny lub chip, posiadającej unikalny numer oraz zawierającej dodatkowe informacje zabezpieczające, takie jak data ważności i kod CVVC (CVV). Uwierzytelnienie odbywa się przez podanie przez klienta kodu PIN. ( ) Przy użyciu bankomatu klient może uzyskać dostęp do swojego konta w banku, aby: wypłacić gotówkę, sprawdzić stan konta, a nawet doładować konto telefonu komórkowego. Client 1..2 owns 1..* Account Bank Plastic card
Bankomat - dziedzina na podst. Wikipedii (ang.): W większości współczesnych bankomatów klient jest identyfikowany przez włożenie plastikowej karty wyposażonej w pasek magnetyczny lub chip, posiadającej unikalny numer oraz zawierającej dodatkowe informacje zabezpieczające, takie jak data ważności i kod CVVC (CVV). Uwierzytelnienie odbywa się przez podanie przez klienta kodu PIN. ( ) Plastic card Payment card Magnetic card Chip card Credit card Debit card Charge card The customer is granted a credit line, from which the money is borrowed for payments. The balance may be payed each month in full or partially (in that case an interest is charged) The funds are withdrawn directly from either the account or the remaining balance of the card like credit card, except that the ba;ance must be payed in full each month
Bankomat - dziedzina na podst. Wikipedii (ang.): W większości współczesnych bankomatów klient jest identyfikowany przez włożenie plastikowej karty wyposażonej w pasek magnetyczny lub chip, posiadającej unikalny numer oraz zawierającej dodatkowe informacje zabezpieczające, takie jak data ważności i kod CVVC (CVV). Uwierzytelnienie odbywa się przez podanie przez klienta kodu PIN. ( ) Payment card - Card number :long - Cardholder's name :char - Expiration date :date - Personal Identification Number
Bankomat urządzenie na podst. Wikipedii (ang.): Bankomat składa się zwykle z następujących elementów: - CPU (do obsługi interfejsu użytkownika i sterowania pozostałymi urządzeniami) - czytnik kart magnetycznych i/lub chipowych (do uwierzytelniania klienta) - PIN Pad ( ), często umieszczony w zabezpieczonej obudowie - procesor szyfrujący, zwykle w zabezpieczonej obudowie - wyświetlacz (używany przez użytkownika podczas transakcji) - klawisze funkcyjne (zwykle blisko wyświetlacza) lub ekran dotykowy (używany podczas transakcji do wyboru opcji) - drukarka (drukująca potwierdzenia transakcji) - pancerna obudowa (z ograniczonym dostępem, a w niej szczególnie ważne części urządzenia) - obudowa (żeby było na czym zawiesić logo ;-) obrazek: Wikipedia
Bankomat urządzenie na podst. Wikipedii (ang.): Pancerna obudowa jest specjalnie zabezpieczona przed niepowołanym dostępem, mocno przymocowana do podłoża i zawiera szczególnie ważne elementy maszyny ( ) a są to m.in. : - mechanizm wypłacający gotówkę - mechanizm przyjmujący depozyty (w bankomatach umożliwiających deponowanie gotówki): - moduł przetwarzający czeki - moduł przetwarzający banknoty - czujniki bezpieczeństwa (magnetyczny, termiczny, sejsmiczny, itp.) - zamki (zabezpieczające dostęp do części pancernej ) - systemy raportujące, ( ) zapewniające pełny zapis aktywności urządzenia, w tym: czas, dane karty, liczba wydanych banknotów itp. obrazek: Wikipedia
Bankomat urządzenie na podst. Wikipedii (ang.): Bankomat składa się zwykle z następujących elementów: - CPU czytnik kart - PIN Pad procesor szyfrujący wyświetlacz klawisze funkcyjne - drukarka pancerna obudowa - obudowa CPU Card reader PIN pad Cryptoprocessor ATM Vault Display Function keypad Printer Housing
Zachowanie PERSPEKTYWA DYNAMICZNA DIAGRAM CZYNNOŚCI
Bankomat diagram sekwencji obrazki: Wikipedia, NCR
Zachowanie PERSPEKTYWA DYNAMICZNA DIAGRAM SEKWENCJI
Bankomat diagram sekwencji Chip card Card reader Function keypad PIN pad CPU Display Customer insert card() get card data() get card data() get bad PIN counter() select language() get language() display prompt (language selection) display prompt (enter PIN) enter PIN() get PIN() verify PIN()
Zachowanie PERSPEKTYWA DYNAMICZNA DIAGRAM STANÓW
Bankomat diagram stanów stm ATM state machine diagram Waiting [error] out of order [insert card] Transaction [authorization successfull] Customer authorization