Objektově orientované programování (OOP) umožňuje lepší využití kódu,než knihovny procedur. Navíc knihovny tříd zvyšují znovupoužitelnost již jednou napsaného kódu. bjektově orientovaná analýza a návrh (OOAN) není pouze použití objektů a objektově orientovaných principů, ale zahrnuje i osvědčené postupy strukturovaných metodik.
Rozdíl oproti strukturovaným metodikám
Strukturované metodiky analýzy a návrhu rozdělují modelování systému na:- tvorbu datového modelu,
- tvorbu funkčního modelu,
- tvorbu modelu uživatelského rozhraní.
Naproti tomu objektový přístup neodděluje data a funkce, chápe je jako neoddělitelnou součást objektu. Tento přístup zavádí také nový způsob myšlení, technologickou kázeň a větší podporu počítačů ve fázi analýzy a návrhu použitím CASE nástrojů.
Tři základní modely objektové metodologie jsou:
- statický model – popisuje statickou strukturu, jednotlivé třídy objektů,jejich vzájemné vazby, třídy a operace,
dynamický model – jedná se o model chování systému v čase, zachycuje tok řídících informací,- funkční model – popisuje transformace dat.
Objektově orientované metodiky :
- OMT(object modeling technique) – základ vychází ze strukturovaného modelování(z ER diagramu rozšířeného o objektové rysy). Místo DFD diagramu je vložen Use Case model(použití k vymezení hranic systému a interakci systému s vnějším okolím).
- Booch – jedna z prvních metodik, pokrývá oblasti analýzy požadavků a analýzu reality,ale hlavní důraz je kladen na design. Z metodiky vyzařuje silný vztah k programování.Kroky metodologie Booch:
(1) Logická struktura: diagram tříd, objektový diagram
(2) Fyzická struktura: diagram modulů
(3) Dynamika tříd : stavový diagram
(4) Dynamika instancí : diagram interakcí
- OOMT(objektově orientované metodiky a technologie) – OOMT se zaměřuje hlavně na fáze analýzy a designu.
Problém se zde dělí na 3 části :
Etapizace : postup pro řešení složitějších problémů. Výsledkem je množina etap, na které má smysl návrh systému dělit.
Modely : zabývají se pouze některými aspekty řešeného problému, ostatní zanedbávají. Podstatou metody je vzájemné porovnávání a ovlivňování jednotlivých modelů. )
Rozklad na dílčí problémy : někdy se mu říká hierarchický rozklad. Při vývoji složitějších systémů je hierarchicky rozkládán celý postup. Takže např. fáze návrhu obsahuje také rozbor zadání, analýzu, systémový design a objektový design.