background image

PRZEDMIOT:

:

Przygotował:
mgr inż. Rafał Kasprzyk

Inżynieria 

oprogramowania

background image

Rafał KASPRZYK

2

Czym jest model?

Model jest uproszczeniem rzeczywistości

Zbiór diagramów i informacji dodatkowych, 

opisujących statyczne i dynamiczne aspekty 

budowanego systemu

Modele opracowujemy z kilku powodów:

Aby lepiej zrozumieć system, który budujemy

Ponieważ nie jesteśmy w stanie „ogarnąć” 

rzeczywistych systemu w całości

Model steruje procesem budowy systemu

Reprezentuje wynik analizy wymagań

Opisuje projekt

Jest doskonałym wprowadzeniem do implementacji

Musi być łatwy do zrozumienia

Odzwierciedla rozwiązanie problemu

background image

Rafał KASPRZYK

3

Zasady modelowania

Modele można opracowywać na różnych 
poziomach szczegółowości

Modele muszą odpowiadać rzeczywistości, 
ale każdy model upraszcza rzeczywistość

Uproszczenie nie może dotyczyć istotnych 
szczegółów

Żaden jeden model nie jest wystarczający

Kilka niemal niezależnych modeli to najlepsze 
rozwiązanie w przypadku niebanalnego 
systemu

Podjęcie decyzji, jakie modele tworzyć ma 
istotny wpływ na to jaki kształt przyjmie 
rozwiązanie

background image

Rafał KASPRZYK

4

Powody standaryzacji notacji

W przeszłości używano wielu różnych 

notacji do budowy modeli obiektowych, co 

zaczęło hamować rozwój obiektowego 

podejścia do budowy SI

Stosowana notacja powinna być zrozumiała 

dla wszystkich członków zespołu

Niezbędnym czynnikiem przy budowie SI jest 

dobre rozumienie się współpracujących stron

Jest wskazane, aby notacja była popularna 

i powszechnie uznana (moim zdaniem)

Zalety standardowej notacji

Większa liczba ekspertów

Dostępność książek i szkoleń

Dostępność narzędzi

background image

Rafał KASPRZYK

5

Historia UML

OMT

Jim Rumbaugh

OOADA

Grady Booch

Unified Method

1995 v0.8

UML

1996 v0.9

Partnerzy

(IBM, Microsoft,

HP, DEC, ...)

OOSE

Ivar Jacobson

UML

1997 v1.0

OMG

UML Standard

UML

1999 v1.3

OMG Revision

Task Force

UML

2004 v2.0

background image

Rafał KASPRZYK

6

UML

UML jest językiem graficznym i jak każdy język prócz 

składni (

syntaktyka

) posiada 

semantykę

 i 

pragmatykę

UML jest uniwersalny, co oznacza, że może być 

stosowany  do modelowania SI przedsiębiorstw, 

systemów WWW, systemów czasu rzeczywistego, …:

UML wykorzystywany jest do:

Wizualizowania (wspomaga porozumienie)

Specyfikowania (jest precyzyjny)

Konstruowania (podstawa do generacji kodu)

Dokumentowania (koleje artefakty są doskonałą dokumentacją)

UML nie jest 

językiem programowania graficznego

metodyką obiektową

background image

Rafał KASPRZYK

7

Słownik UML

Elementy

Strukturalne - statyczne części modelu reprezentujące 

składniki pojęciowe lub fizyczne: klasa, interfejs, 

przypadek użycia, kooperacja, komponent, węzeł

Czynnościowe - dynamiczne części modelu: interakcja, 

maszyna stanów

Grupujące - bloki organizacyjne modelu: pakiet

Komentujące - elementy objaśniające: notatka

Związki

zależność, 

asocjacja, agregacja, kompozycja

uogólnienie (generalizacja),

realizacja

Diagramy = Elementy + Związki

background image

Rafał KASPRZYK

8

Elementy strukturalne

Przypadek użycia

Kooperacja

Klasa

Interfejs

Komponent

Węzeł

UseCase

UseCase Realization

Class

Attribute

Operation()

Interface

Operation()

<<Interface>>

Component

Node

background image

Rafał KASPRZYK

9

Elementy czynnościowe

Interakcja

Maszyna stanów

background image

Rafał KASPRZYK

10

Elementy grupujące

Odgrywają rolę organizacyjną

Bloki, na które można rozłożyć model

Podstawowy element grupujący to 
pakiet

Luźno powiązane i spójne wewnętrznie

Package

background image

Rafał KASPRZYK

11

Elementy komentujące

Odgrywają rolę objaśniającą

Służą do opisywania lub uwypuklania 
dowolnych elementów modelu

Podstawowy element komentujący to notka

Używa się ich w celu wzbogacenia 
diagramu o ograniczenia i objaśnienia, 
które najłatwiej wyrazić za pomocą 
nieformalnego tekstu 

Treść notatki

background image

Rafał KASPRZYK

12

Związki

Zależność

Asocjacja

Jednokierunkowa

Dwukierunkowa

Agregacja

Kompozycja

Generalizacji

Realizacja

background image

Rafał KASPRZYK

13

Mechanizmy rozszerzeń

Stereotypy – umożliwiają rozszerzenie słownictwa 

stosowanego w UML.

Nowe bloki konstrukcyjne wywodzą się z już istniejących 

i są specjalizowane dla określonego zadania

Ograniczenia

Etykiety (metki, wartości nazwane)

background image

Rafał KASPRZYK

14

Diagramy UML

Diagram klas

Diagram obiektów

Diagram przypadków użycia

Diagram sekwencji / przebiegu

Diagram współpracy / kooperacji 

Diagram stanów

Diagram aktywności / czynności

Diagram komponentów

Diagram wdrożenia


Document Outline