UML - PowerPoint PPT Presentation

About This Presentation
Title:

UML

Description:

Bartosz Bali , Na podstawie, m.in.: Introduction to UML: Structural and Use Case Modeling, Cris Kobryn Projektowanie Obiektowe, Ian Sommerville – PowerPoint PPT presentation

Number of Views:134
Avg rating:3.0/5.0
Slides: 40
Provided by: homeAghE5
Category:
Tags: uml | sommerville

less

Transcript and Presenter's Notes

Title: UML


1
UML Unified Modeling Language (1)
  • Bartosz Balis,
  • Na podstawie, m.in.
  • Introduction to UML Structural and Use Case
    Modeling, Cris Kobryn
  • Projektowanie Obiektowe, Ian Sommerville
  • Agile modeling http//www.agilemodeling.com

2
Wstep
  • UML Unified Modeling Language
  • Graficzny jezyk do analizy i projektowania
    obiektowego
  • Standaryzuje kilka metod graficznej reprezentacji
  • UML jest jezykiem posiada skladnie (notacja
    graficzna) i semantyke (znaczenie symboli
    graficznych)
  • Diagramy
  • 4 strukturalne (klas, obiektów, komponentów,
    wdrozen)
  • 5 do modelowania zachowania (przypadków uzycia,
    sekwencji, aktywnosci, wspólpracy / kolaboracji,
    stanów)
  • 3 do zarzadzania modelem (pakiety, podsystemy,
    modele)
  • Historia
  • UML 1.1 1997
  • UML 1.3 listopad 1999
  • UML 1.4
  • UML 1.5
  • Obecnie UML 2.0 znaczne zmiany

3
Zasadnicze skladniki UML
  • Elementy modelu (klasy, interfejsy, komponenty,
    przypadki uzycia, etc.)
  • Relacje pomiedzy nimi (powiazania, generalizacja,
    zaleznosci, etc.)
  • Diagramy (diagramy klas, diagramy przypadków
    uzycia, diagramy interakcji, etc.)

4
Przyklad diagramu klas
5
Przyklad diagramu obiektów (instancji klas)
6
  • Modele struktury

7
Modelowanie struktury
  • Model systemu, który podkresla strukture
    obiektów, powiazania miedzy klasami, ich atrybuty
    i operacje
  • Rodzaje diagramów
  • Statyczne diagramy struktury
  • Klas, obiektów
  • Diagramy implementacji
  • Komponentów, wdrozen

8
Model struktury zasadnicze elementy
9
Model struktury podstawowe relacje
10
Statyczne diagramy struktury
  • Diagram klas
  • Diagram obiektów instancji klas

11
Klasy przyklad
Pracownik
nazwisko string adres string dataUrodzenia
Date numerPracownika integer PESEL
string dzial Dzial przelozony
Pracownik wynagrodzenie integer stan
zatrudniony, zwolniony, emerytowany NIP
integer ... dolacz() opusc() przejdzNaEmeryture()
zmienSzczególy()
t
a
t
u
s




c
u
r
r
e
n
t
,

l
e
f
t
,

r
e
t
i
r
e
d

t
a
x
C
o
d
e


i
n
t
e
g
e
r
.

.

.
j
o
i
n

(
)
l
e
a
v
e

(
)
r
e
t
i
r
e

(
)
c
h
a
n
g
e
D
e
t
a
i
l
s

(
12
Diagram klas przyklad
13
Hierarchia uogólnien przyklad
Pracownik
Kierownik zarzadzaneBudzety dataPrzyjecia
Programista przedsiewziecie jezykiProg
Kierownik Przedsiewziecia przedsiewziecie
Kierownik Strategiczny obowiazki
Kierownik Dzialu dzial
14
Powiazania przyklad
Dzial
Pracownik
jest-czlonkiem
jest-zarzadzany-przez
Kierownik
zarzadza
15
Powiazania jedno i dwukierunkowe
http//www.agilemodeling.com
16
Agregacja i kompozycja
  • Agregacja i kompozycja obiekt sklada sie z
    innych obiektów
  • Agregacja zespól sklada sie z pracowników
  • Kompozycja samolot sklada sie z czesci
  • Regula kompozycja jest "silniejsza" forma
    agregacji jesli calosc jest niszczona, to jej
    czesci takze, w przypadku agregacji tak nie jest.

17
Generalizacja-specjalizacja przyklad
taksonomia obiektów
18
Interfejsy notacja skrótowa
Fig. 3-29, UML Notation Guide
19
Interfejsy notacja rozszerzona
Fig. 3-29, UML Notation Guide
20
Diagram obiektów
21
Diagramy implementacji
  • Pokazuja takie aspekty implementacji jak
    struktura kodu zródlowego, oraz struktura podczas
    wykonywania sie systemu
  • Rodzaje
  • Diagram komponentów
  • Diagram wdrozen (deployment)

22
Komponenty i wdrozenia przyklad
23
Komponenty przyklady
Fig. 3-99, UML Notation Guide
24
Diagram komponentów przyklad
Fig. 3-95, UML Notation Guide
25
Diagram wdrozen przyklad
Fig. 3-97, UML Notation Guide
26
  • Projektowanie oparte o interfejsy

27
Projektowanie oparte o interfejsy
(interface-based design)
  • Skupia sie na specyfikacji interfejsów systemu
  • Oddziela sie specyfikacje operacji jakiejs uslugi
    (interfejsy) od ich realizacji (implementacja)
  • Przyklad CORBA IDL (Interface design language)
    jako projektowanie aplikacji rozproszonych oparte
    o interfejsy
  • IDL definiuje interfejsy obiektów bez nakladania
    ograniczen na ich implementacje
  • Definiuje strukture aplikacji rozproszonej
  • Nie pozwala na specyfikowanie zachowania obiektów
    lub relacji pomiedzy klasami poza generalizacja

28
Przyklad punkt sprzedazy (point of sale)
  • module POS
  • typedef long POSId
  • typedef string Barcode
  • interface InputMedia
  • typedef string OperatorCmd
  • void barcode_input(in Barcode
    item)
  • void keypad_input(in OperatorCmd
    cmd)
  • interface OutputMedia
  • boolean output_text(in string
    string_to_print )
  • ...

Generic IDL Point of Sale (POS) example. Siegel
00
29
Przyklad punkt sprzedazy (c.d.)
  • ...
  • interface POSTerminal
  • void login()
  • void print_POS_sales_summary()
  • void print_store_sales_summary()
  • void send_barcode(in Barcode item)
  • void item_quantity(in long quantity)
  • void end_of_sale()
  • endif / _POS_IDL_ /

30
From Kobryn 00.
31
  • Przypadki uzycia

32
Diagram przypadków uzycia
Fig. 3-53, UML Notation Guide
33
Relacje pomiedzy przypadkami uzycia
  • Generalizacja (uogólnienie)
  • Jeden przypadek uzycia jest uogólnieniem innego
  • Dolaczanie (include)
  • Zachowanie dolaczanego przypadku uzycia jest
    dolaczane do podstawowego przypadku uzycia
  • Rozszerzenie (extend)
  • Zachowanie rozszerzajacego przypadku uzycia jest
    dolaczane do podstawowego przypadku uzycia w
    scisle okreslonym miejscu (okreslanym przez tzw.
    extension point)

ltltincludegtgt
ltltextendgtgt
34
Extend vs. include
  • ltltincludegtgt
  • Uzywa sie wtedy, gdy dolaczany przypadek uzycia
    musi byc wykonany
  • ltltextendgtgt
  • Uzywa sie, gdy rozszerzajacy przypadek uzycia
    moze lecz nie musi byc wykonany
  • Przez zdefiniowanie tzw. extension points okresla
    sie w którym dokladnie miejscu moze byc wykonany
    rozszerzajacy przypadek uzycia

35
Diagram przypadków uzycia przyklad
36
Relacje pomiedzy aktorami
Fig. 3-55, UML Notation Guide
37
Opis przypadku uzycia
  • Actors traveler, client account db, airline
    reservation system
  • Preconditions
  • Traveler has logged on to the system and
    selected change flight itinerary option
  • Basic course (podstawowy przebieg)
  • System retrieves travelers account and flight
    itinerary from client account database
  • System asks traveler to select itinerary segment
    she wants to change traveler selects itinerary
    segment.
  • System asks traveler for new departure and
    destination information traveler provides
    information.
  • If flights are available then
  • System displays transaction summary.
  • Alternative courses (gdy wystapi jakas sytuacja
    wyjatkowa)
  • If no flights are available then

38
Opis przypadku uzycia tabela
39
Dalsza lektura
  • Ian Sommerville, Inzynieria oprogramowania, r. 12
  • http//www.agilemodeling.com ? Artifacts, UML 2
Write a Comment
User Comments (0)
About PowerShow.com