Analiza i Projetkowanie Obiektowe

background image

OOP

Analiza obiektowa

1

Analiza i Projektowanie

Obiektowe

Analiza

co trzeba zrobić (opis problemu) - model

Projekt

jak to zrobić (rzeczy zależne od platformy)

Implementacja (prototyp)

Analiza - studium dziedziny problemu

Grady Booch, Object - Oriented Design with Applications, 1991

James Rumbaugh i in, Object-Oriented Modelling and Design, 1991

James Martin, James Odell, Object-Oriented Analysis and Design,

Object-Oriented Methods: a Foundation, 1993

Ian Graham, Object Oriented Methods, 1994

Peter Coad, Edward Yourdon, Analiza obiektowa,

Projektowanie obiektowe, 1991

Peter Coad, Jill Nicola, Programowanie obiektowe, 1993

S. Shlaer, S.J.Mellor, Object Oriented System Analisis - Modelling

the World in Data, 1988

S. Shlaer,S.J.Mellor, Object - Lifecycles: Modelling the World in

States, 1991

background image

OOP

Analiza obiektowa

2

Historia metod obiektowych

Faza I

- lata 70-te, The Age of Invention

(wynalezienia)

symulacja (discrete event simulation),
Simula 67,
Smalltalk: Alan Key, Xerox rResearch Center

Faza II

- lata 80-te, The Age of Confusion

(zamieszania)

rozwój graficznych interfejsów użytkownika - GUI
WIMP interfejs (Windows, Icons, Mice and Poiters),
podejście obiektowe umożliwiło szybki rozwój

takich interfejsów (Macintosh),

sztuczna inteligencja (Actor systems, systemy

równoległe),

głowne problemy:

efektywność,
brak baz danych operujących na obiektach

Eiffel. C++, inne języki hybrydowe

Faza III

- The Age of Ripening

(przyspieszonego rozwwoju)

zwrócenie uwagi na analizę i projektowanie,
systemy CASE dla metod obiektowych,
postrelacyjne i obiektowe bazy danych,
standardy OMG

OMG - Object Management Group,

zrzesza duże firmy komputerowe, opracowuje standardy
dla metod obiektowych

CORBA (Common Object Request Broker

Architecture),

standard umożliwiający współpracę obiektowych
aplikacji, standardy interfejsów.

background image

OOP

Analiza obiektowa

3

Pojęcia i terminologia

obiekt

podstawowa “cegiełka”, składa się z

atrybutów (ukrytych) i metod (interfejs)

klasa

kolekcja obiektów posiadających te same

metody i takie same atrybuty, implementacja
abstrakcyjnego typu danych

hermetyzacja

ukrywanie informacji,

udostępnianie tylko metod (interfejs), ukrywanie
szczegółów implement.

abstrakcja

zasada ignorowania tych aspektów

przedmiotu, które nie są istotne z punktu widzenia
bieżącego celu

dziedziczenie

technika wyrażania

podobieństw, wyrażanie związku generalizacja -
specjalizacja

komunikat

, komunikowanie się poprzez wysyłanie

komunikatów

protokół

zbiór komunikatów rozumianych przez

obiekt

polimorfizm

możliwość użycia tego samego

wyrażenia do oznaczenia różnych operacji,
dynamiczne wiązanie metod

Struktury klas

• struktura dziedziczenia, generalizacja - specjalizacja

AKO (is a kinf of ...)

• struktura całość - część, APO (is a part of...)

background image

OOP

Analiza obiektowa

4

Analiza i Projektowanie -

metody obiektowe

Wspólna zasada: zaczynamy od rozpoznania

struktury obiektów. Najważniejsze jest,
czym są obiekty, a nie co robią.

Wspólne kroki wszystkich metod

obiektowych:

Identyfikacja klas i obiektów, ich atrybutów i

metod

Ustalenie powiązań między obiektami

Ustalenie interfejsu każdego obiektu (protokołu)

Ustalenie współpracy obiektów, przepływ

informacji

Implementacja, tworzenie prototypu.

Analiza - Metoda
Coad/Yourdon

5 głównych czynności

1. znajdowanie klas i obiektów
2. identyfikacja struktur
3. identyfikacja tematów
4. definiowania atrybutów
5. definiowania usług

model analizy obiektowej zawiera 5 warstw

1. warstwa tematów
2. warstwa klas i obiektów
3. warstwa struktury
4. warstwa atrybutów
5. warstwa usług

background image

OOP

Analiza obiektowa

5

Analiza

metoda OMT

(metoda Rumbaugh)

OMT - Object Modelling Technique

3 części składowe modelu, pokazujące różne jego aspekty:

Model Obiektów (OMT Object Model)

statyczny obraz struktury modelu
- klasy
- atrybuty
- operacje
- relacje między klasami i instancjami (powiązania - asocjacje,

całość - część (agregacje), gen- spec)

Model Dynamiczny (OMT Dynamic Model)

współdziałanie obiektów (powiązania wyznaczone przez komunikaty).
Tu mieszczą się różne diagramy pokazujące przepływ sterowania,
także ograniczenia i warunki na wartości atrybutów.

Model Funkcyjny (OMT Functional Model)

specyfikacja operacji jako funkcji przekształacących wejście na
wyjście, warunki poprawności (asercje).

background image

OOP

Analiza obiektowa

6

I. Klasy i obiekty

W danej dziedzinie problemu szukamy klas i obiektów (tylko tych,
które są potrzebne do wyrażenia zadań systemu -
abstrakcja na poziomie systemu)

Przykład:
Agencja Sprzedaży Nieruchomości.
Obiekty: mieszkania, klienci, urzędnicy, właściciele agencji, umowy,
biuro, przedmioty stanowiące wyposażenie biura itp.

Sposoby szukania:

obserwacje, rozmowy, czytanie opisów i dokumenacji itd.

Przykład:

If a customer enters a store with the intention of buing a toy for
a child, then advice must be available within a reasonable time
concerning the suitability of the toy for a child. This will depend
on the age range of the child and the attributes of the toy. If the
toy is a dangerous item, then it is unsuitable.

potencjalne klasy
potencjalne usługi (akcje)

Wynik:

klasy: customer, store, toy, child, advice, time, age range,

dangerous item

operacje: enter, buy, giving the advice

background image

OOP

Analiza obiektowa

7

System rejestracji pojazdów i tytułów własności

Sformułowanie problemu:
System przechowuje informacje o następujących rzeczach:
Organizacja

nazwa, kierownik, adres, telefon

Urzędnik

nazwisko, adres, jednoznaczny identyfikator,
autoryzacja, data poczatkowa, data końcowa

Właściciel

nazwisko, adres, telefon

Tytuł własności

numer, dowód własności, przedstawiony tytuł
własności, data i czas tytułu wlasności, opłata

Rejestracja

data i czas, poczatkowa data i czas, końcowa
data i czas, opis tablicy rejestracyjnej, nalepka,
opłata

Pojazd

numer, rok, marka, model, rodzaj nadwozia, kolor,
wartość;

oraz

dla ciężarówek: liczba pasażerów, przebieg, rodzaj paliwa,

nośność

dla motocykli: liczba pasażerów, przebieg
dla przyczep: waga brutto
dla przyczep podróżnych: liczba pasażerów, przebieg, rodzaj

paliwa, numer nadwozia, długość

Urzędnicy są odpowiedzialni za rejestrację i wydany tytuł własności
oraz za przyjęte opłaty.
Każdy urzędnik należy do Organizacji (powiat, gmina itd).
System wysyła zawiadomienie o konieczności wznowienia rejestracji.

Potencjalne klasy i obiekty:
- klasy pochodzące z innego systemu (różne pojazdy)
- zapamiętane zdarzenia (czynność urzędowa wydania tytułu własności,
czynność urzędowa rejestracji)
- odgrywane role (Osoba właściel, osoba urzędnik)
- organizacja

background image

OOP

Analiza obiektowa

8

Coad/Yourdon

Klasa-i-obiekt

Klasa

II. Znajdowanie struktury

(sposób organizacji)

struktura Gen - Spec (generalizacja - specjalizacja)

oznacza: “jest”, “jest rodzajem”
np. pojazd -- pojazd osobowy, “pojazd osobowy jest pojazdem”

generalizacja

specjalizacja1

specjalizacja2

Przy decydowaniu o strukturze Gen-Spec trzeba rozpoznać:
podobieństwa klas, wspólne atrybuty i usługi, nowe atrybuty i usługi

czy “podklasa” jest rodzajem “nadklasy”

background image

OOP

Analiza obiektowa

9

Struktura gen - spec musi odzwierciedlać generalizację - spec.
istniejącą w dziedzinie problemu !

Osoba_urzędnik

Identyfikator

Osoba

Nazwisko

Osoba_właściciel

Obywatelstwo

Osoba_urz_właściciel

Obywatelstwo
Identyfikator

Osoba

Nazwisko

Osoba_właściciel

Obywatelstwo

Osoba_urzędnik

Identyfikator

Osoba_urzędnik_właściciel

Hierarchia

Krata

background image

OOP

Analiza obiektowa

10

Struktura całość - część

Oznacza: “posiada”

samolot -- silnik

“samolot posiada silnik”

całość

część1

część2

1,m

1,m

1

1

Oznaczenia liczbowe: a, b

0 <= a <= b

a

0 <= a


“całość składa się z 1 lub więcej części; każda część należy do
dokładnie jednej całości”

Strategia zajdowania struktury całość - część:

Zwracamy uwagę na warianty:
zestawienie -- części

samolot -- silnik

pojemnik --- zawartość

samolot -- ładunek

kolekcja --- elementy itp.

firma -- pracownik

Klasy reprezentujące części powinny należeć do dziedziny problemu
i mieć dla niej znaczenie.

background image

OOP

Analiza obiektowa

11

III. Zajdowanie tematów

Podział całej dziedziny na mniejsze, jednorodne części, rzadko się
komunikujące, jak najbardziej niezależne od siebie.

Przykład z rejestracją pojazdów:

1. Organizacja

2. CzynnośćUrzędowa

3. Osoba

4. Pojazd

Po przemyśleniu i minimalizacji styków i zależności:

1.

Ludzie

1.

Prawo

IV. Definiowanie atrybutów

Atrybuty to są pewne dane (stan systemu), dla których każdy obiekt
ma swoją własną wartość.

(1) znalezienie atrybutów (stwierdzenie, jakie wiadomości o obiekkcie
są potrzebne)
(2) umieszczenie atrybutów we właściwej klasie (może zmienić się
struktura gen - spec)
(3) znalezienie powiązań obiektów (niejawne atrybuty)
(4) sprawdzenie sensowności i potrzeby pewnych atrybutów
(5) specyfikacja atrybutów
(typ, domyślna wartość, czy obowiązkowy, zależności od innych
atrybutów, jaki jest do niego dostęp itp.)

background image

OOP

Analiza obiektowa

12

Powiązania między obiektami (associations)

Powiązanie obiektów jest modelem relacji między obiektami.
Liczby przy powiązaniach oznaczają ile obiektów widzi dany obiekt.

Samolot

PlanLotu

0, m

1

Powiązanie “jeden do wielu lub zera”.
Samolot jest opisany w wielu (lub żadnym) planie lotu,
PlanLotu opisuje dokładnie jeden Samolot.

Inne rodzaje powiązań:

“wiele do wielu” --- tego należy unikać (chyba, że się nie da)
“jeden do wielu”
“jeden lub nic do jednego”
itp.

Pozbywanie się powiązania “wiele do wielu”:

0, m

0, m

Student

Egzamin

Praca egzaminacyjna

0, m

1

1

0, m

Ocena

background image

OOP

Analiza obiektowa

13

Rysunek z Yourdona - warstwy tematów i atrybutów

background image

OOP

Analiza obiektowa

14

Metoda OMT (Rumbaugh)
Model obiektów

Wykonujemy kolejne kroki:
K1. Piszemy specyfikację systemu w języku naturalnym
K2. Tworzymy diagram klas

- rozpoznajemy klasy
- identyfikujemy atrybuty obiektów (rodzaj, typ itd)
- definiujemy operacje obiektu
- ustalamy relacje między obiektami

K3. Tworzymy tekstową specyfikację każdej klasy, tzn. dokładny opis

każdej klasy, atrybutów, operacji, związków relacyjnych -
dokumentacja systemu
(na ogół system CASE sam to robi)

K4. Wypełniamy słownik danych, czyli opis słowny wszystkich

elementów modelu (obiektów, powiązań , atrybutów i operacji)

K5. Sprawdzamy zgodność z innymi modelami (dynamicznym

i funkcyjnym)

K6. Generujemy prototyp.

Nazwa

atrybut: typ
atrybut: typ = wart. pocz.

operacja (pf) : typ
.....

Klasa

(nazwa klasy)
atrybut = wartość
...

Instancja

Powiązania:

klasa 1

klasa 2

klasa 1

klasa 2

kwal.

nazwa powiązania

rola 1

rola 2

nazwa powiązania

rola 1

rola 2

kwalifikator

atrybuty klasowe poprzedzone $

background image

OOP

Analiza obiektowa

15

jeden do jednego

jeden do zero lub jednego

jeden do zero lub wielu

wiele do wielu

+1

jeden do co najmniej jednego

atrybut powiązania

całość - część (składa się z ... )

nadklasa

podklasa

powiązanie - association
(ma, wie o , ...)

samolot

pasażer

wiezie

samolot wiezie wielu (być może zero) poasażerów

samolot

koło

koła

samolot składa się z wielu (być może zera) kół

background image

OOP

Analiza obiektowa

16

Przykład - samochód

K1. Specyfikacja systemu:
System ma przechowywać informacje o samochodzie, takie jak
ilość benzyny (gasQuantity). Użytkownik może uruchomić samochód,
prowadzić go, zatrzymać, dodać pasażera, usunąć pasażera,
zatelefonować z telefonu komórkowego i odebrać taki telefon.

K2. Diagram klas

Car

speed

start

operate

stop

addPassenger

removePassenger

makePhoneCall

receivePhoneCall

CellularPhone

currentPhoneNumber
makePhoneCall

receivePhoneCall

Motor

rpm
start

operate

stop

Tire

pressure
inflate

Vehicle

number
register

Passenger

age

fastenSeatBelt

unfastenSeatBelt

currentTires

currentMotor

currentPassengers

currentCellularPhone

gasQuantity

K3. Specyfikacja każdej klasy, atrybutów, operacji i powiązań,

może być według jakiegoś szablonu

K4. Słownik danych, np:

Vehicle

klasa abstrakcyjna, pojazd

Car

klasa, posiada jeden obiekt, konkretny rodzaj
pojazdu

background image

OOP

Analiza obiektowa

17

Powiązania

1. Powiązania nie-binarne.
Programista programuje w języku w danym projekcie.

Diagram klas..

Projekt

Osoba

Język

(Projekt)

system bankowy

(Osoba)

Piotr

(Język)

Cobol

(Projekt)

edytor

(Język)

C++

Diagram instancji klas.

2. Nazwa powiązania i role, jakie pełnią obiekty w tym powiązaniu.

Osoba

Firma

pracownik

pracodawca

pracuje dla

background image

OOP

Analiza obiektowa

18

3. Atrybuty powiązań i role.

Osoba

nazwisko
numer ubezp.
adres

Firma

nazwa
adres

pracuje dla

płaca
nr umowy

ocena wydajności

szef

pracownik

4. Kwalifikacja powiązania - redukuje ‘liczebność” powiązania

Katalog

Plik

Katalog

Plik

nazwa pliku

katalog zawiera wiele plików, plik należy do 1 katalogu.

plik jest jednoznacznie identyfikowany przez nazwę w katalogu

5. Całość - część (składa się z.., jest zbudowany z ...). Ma własność

propagacji (operacja na całości przenosi się na części)

Mikrokomputer

Monitror

RAM

Mysz

Klawiatura

Procesor

CPU

1+

background image

OOP

Analiza obiektowa

19

Propagacja operacji: automatyczne zastosowanie operacji do części.

Osoba

Dokument

Akapit

Znak

kopiuj

kopiuj

kopiuj

posiada

kopiuj

kopiuj

Metadane - dane opisujące inne dane (np. klasa opisuje instancje)

realacja “instancjonowania” (instantiation) opisuje zależność między
klasą a jej instancją, lub (na innym poziomie) między pewnym szblonem
a konkretnymi obiektami będącymi instancjami tego szablonu,
lub między metadaną a danymi przez nie opisywanymi.

Rus. 4.5 z Rumbaough - str. 61

background image

OOP

Analiza obiektowa

20

Przykład - system okien

background image

OOP

Analiza obiektowa

21

Coad - Yourdon

Definiowanie usług (akcji obiektu)

Usługi określają sposób zachowania się obiektu.

Usługi proste:

tworzenie i inicjowanie nowego obiektu (usługa klasy)
pobranie / ustawienie atrybutu
ustalenie / skasowania powiązania
usuwanie obiektu
usługi specyficzne dla problemu
.....

Usługi złożone:

funkcje coś obliczające, posiadające nietrywialny algorytm

Każdy komunikat wyznacza połączenie (relację):

Nadawca

Odbiorca

Aby wyznaczyć takie połączenia (i sprawdzić kompletność modelu)
używamy wątków wykonania (chodzimy po relacji wyznaczonej
przez komunikaty) - rodzaj symulacji zachowania systemu.

Specyfikacja usługi - jak zwykła specyfikacja funkcji.

usługa

background image

OOP

Analiza obiektowa

22

Przykład scenariusza komunikacji (wątku wykonania):

Wydanie polecenia “sprzedaj” produktowi (wątek komunikacji z kasą):

Produkt

dostaję polecenie, że mam się sprzedać

M1 znam swoja cenę

wiem, z którą kasą jestem związany
wysyłam do kasy komunikat, żeby zebrała pieniądze

inkasuj

Kasa
M2 dostaję pieniądze

weźPieniądze

zwracam ilość zebranych pieniędzy

Produkt

Jeśli otrzymana kwota jest większa lub równa mojej cenie,

M1 każę mojemu dystrybutorowi, żeby mnie wydał

wydaj

każę mojej kasie wydać resztę

zwróćResztę

w przeciwnym przypadku

zwracam wynik “nie wydane” nadawcy polecenia

Kasa
M3 wydaję resztę
Produkt
M1
zwracam wynik “wydane” do nadawcy polecenia

Dystrybutor

wydaj

Produkt

sprzedaj

Kasa

inkasuj
weźPieniądze
zwróćResztę

0, m

1

1

0, m

M1

sprzedaj

M2

inkasuj

M3

zwróćResztę

background image

OOP

Analiza obiektowa

23

Rysunek z Yourdona - warstwy tematów, klas i usług

background image

OOP

Analiza obiektowa

24

Metoda OMT

II. Model Dynamiczny

Szereg diagramów pokazujących dynamiczne zachowanie się
systemu - reakcje na zdarzenia, zmiany stanu i przekazywanie
komunikatów (przepływ sterowania)

Opisujemy zalezności:
zdarzenie -- wysłanie komunikatu (ów) -- wynik

External

User

object - motor1

message - operate

input event

- operate

Transportation System

output event -

acceptCurrentStatus

object - car1

Car States: OffState or

OperatingState

message - stop

Krok 1. Flow diagram dla zdarzeń systemu

External

User

Transportation

System

Input Events: Start,

Operate, AddPassenger,

RemovePassenger,

MakePhoneCall,

ReceivePhoneCall, Stop

Output Event: AcceptCurrentStatus

Krok 2. Opisanie sekwencji komunikatów (scenariusz, wątek)

odpowiadającej każdemu zdarzeniu

Sekwencja

nadawca

odbiorca

1

external user

car1.start()

2

car1

motor1.start()

3

car1.Accept Extern

background image

OOP

Analiza obiektowa

25

Krok 3. Diagram interakcji obiektów (2 sposoby)

car1:Car

motor1:Motor

2 - start ()

1 - start ()

3 - acceptCurrentStatus ()

Krok 4. State transition diagram - model systemu jako automatu

skończonego.
Ustalamy: stany, operacje, warunki przejścia od stanu do stanu,
zdarzenia zewnętrzne (dla każdego obiektu).

OffState

OperatingState

start [gasStatus = GasOK]/

motor1.start ()

stop / motor1.stop()

operate [gasStatus = NoGas]/

motor1.stop()

operate

[gasStatus =

GasOK] /

motor1.operate()

_

To Initial State

To Termination

Key

State

do: Activity

Event

[Condition]/

Action

Initial State

To Termination

start [gasStatus =

GasNotOK]/motor1.start ()

background image

OOP

Analiza obiektowa

26

Notacja

przejście ze stanu do stanu

zdarzenie (atrybuty) [warunek] /wykonywana akcja

operacja może być związana także ze stanem

operacja - akcja wywołana zdarzeniem, jej czas trwania jest
nieistotny

zdarzenie

stan

do: operacja

w tym przypadku operacja trwa od momentu wejścia do stanu do
momentu jego opuszczenia.

Uwaga: takie diagramy powinny być rysowane dla całego systemu,
i dla każdego obiektu (jeśli obiekt ma jakieś dynamiczne zachowanie).
Diagramy posiadaja strukturę, tzn elementem diagramu może być inny
diagram, przejście może być uszczegółowione przez diagram itd.

czeka

Przyjmuje monety

do: dodaj do zebranej sumy

przyjmij monetę / ustal sumę

skasuj / oddaj monety

przyjmij monetę

do: sprawdź produkt i oblicz resztę

do: wydaj produkt

do: wydaj resztę

[brak]

wybierz(produkt) [reszta < 0]

[reszta > 0]

[reszta = 0]

background image

OOP

Analiza obiektowa

27

Przykład - telefon.

scenariusz (wątek):

caller lifts receiver
dial tone begins
caller dials digit (5)
dial tone ends
caller dials digit (5)
caller dials digit (5)
caller dials digit (1)
caller dials digit (2)
caller dials digit (3)
caller dials digit (4)
called phone begins ringing
ringing tone apperars in calling phone
called party answers
called phone stops ringing
ringing tone disappears in calling phone
phones are connected
called party hangs up
phones are disonnected
caller hangs up

event trace diagram (identyfikujemy nadawców i odbiorców)

rys. 5.3 Rumbaugh

background image

OOP

Analiza obiektowa

28

Identyfikujemy stany obiektów lub systemu i opisujemy je

co oznacza stan,
zdarzenia, ktore do niego prowadzą,
warunki charakteryzujące stan (własności spełniane przez atrybuty)
akceptowane zdarzenia i podejmowane akcje

Diagram zmiany stanów (automat)

Diagram zmiany stanów linii telefonicznej (tylko dla jednej klasy, ale
opisuje działanie wszystkich obiektów tej klasy).

rys. 5.10 Rumbaugh

background image

OOP

Analiza obiektowa

29

Metoda OMT

III. Model Funkcyjny

Co robi system?

Opisujemy wejście i wyjście każdej operacji, na poziomie całego systemu
(np. operacja start) i na poziomie każdego obiektu.
Forma opisu - dowolna (tabelka, opis tekstowy, formuły logiczne,
diagramy data - flow).

Zbiór transformacji i asercji (warunki wstepne, końcowe, niezmienniki,
zgłaszane wyjątki i błędy).

Przykładowa forma opisu:

Precondition

Exception

Postcondition

Exception

Transformation/

Formula/
Equation

Input

Objects

(Parameters)

Output

Objects

(Parameters)

Class or Object Operation

Opis operacji start dla samochodu:

precondition:

gasQuantity > 0

exception:

noGasError

transformation:

gasQuantity =

gasQuantity - .1

postcondition:

oldGasQuantity =

gasQuantity + .1

exception:

updateError

No

Parameters

No

Parameters

background image

OOP

Analiza obiektowa

30

Diagramy przepływu danych (data flow diagrams)

proces

magazyn danych

aktor

przepływ danych

opis danych

aktywny obiekt sterujący
przepływem danych

służy do przechowywania danych
na później

procesy opisują akcje
atomowe lub złożone
(poddiagramy)

przepływ sterowania bez przekazania
danych

warunek

Rachunek

sprawdzenie

klient

aktualizacja

hasło

ile chce

gotówka

saldo

zakodowane hasło

hasło OK

oznacza przepływ. System przechodzi no nastepnego stanu,
jeśli zostały zebrane wszystkie dane (starowanie danymi)

background image

OOP

Analiza obiektowa

31

Analiza - podsumowanie metody OMT

Model świata rzeczywistego.
3 modele OMT budowane są iteracyjnie.

Users

Developers

Managers

Generate
Requests

Problem
Statement

User interviews

Domain knowledge

Real-world experience

Generate
Requests

Object Model
Dynamic Model
Functional Model

Analiza

Projekt


Document Outline


Wyszukiwarka

Podobne podstrony:
Analiza taktyczna obiektu i otoczeniaVV
analiza dynamiczna obiektow mec Nieznany
odkrywki ANALIZA SUBSTANCJI OBIEKTU
Analiza strukturalna i obiektowa, WI, Semestr I N2, Modelowanie i analiza systemów, Poprawione wykła
UML i wzorce projektowe Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacj
UML i wzorce projektowe Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacj
UML i wzorce projektowe Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacj
Analiza SWOT obiekt Bank Tomasz Tonder gr BN 011 WSB
UML i wzorce projektowe Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacj
UML i wzorce projektowe Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacj
Wykład II Analiza podstawowych pojęć eksploatacyjnych i użytkowanie obiektów ED
21 Podstawy metodyczne analizy energetyczno ekologicznej obiektu budowlanego w pełnym cyklu istnieni
W6 2 Obiektowe modelowanie i analiza

więcej podobnych podstron