Objektově orientovaná analýza a návrh

From Wikivyuka
Revision as of 11:03, 26 March 2015 by Dur30 (talk | contribs) (Oblast tvorby hledání tříd)

Jump to: navigation, search

Cíle předmětu

  1. Prohloubit základní znalosti objektově orientovaných technologií.
  2. Získat hlubší znalost diagramů UML.
  3. Seznámit se s postupy při tvorbě nejen OO systému.

Požadavky

Zápočet

Minimální počet bodů nutný k získání zápočtu je 17 bodů. Možnosti jsou vypsány pro prezenční a kombinované studenty zvlášť.

Zkouška

Zkouška bude probíhat písemnou a ústní formou. V písemné části bude ověřeno, zda je student schopen na základě stručného popisu oblati vytvořit prvotní model systému a namodelovat jej některým z diagramů. Minimum z písemné části je stanoveno takto: dosažené body z písemky + body za zápočet musí dohromady dosáhnout alespoň 51 bodů.

Prezenční studium

  1. Vypracovat a odevzdat projekt dle pokynů cvičícího.
  2. Prezentovat vybraný nástroj UML.
  3. Obhájit projekt prezentací nejpozději v zápočtovém týdnu.

Pokyny k prezentaci nástroje UML.

Výběr:

  • Nástroje pro řízení požadavků (Modul Requirements ve VP, RequisitePro(www.ibm.com), DOORS(www.telelogic.com)), případně další
  • Vyzkoušení jednotlivých nástrojů - dle domluvy (VioletUML, Umbrello, ArgoUML, SmartDraw, StarUML, ...)

Vybrané nástroje:

  • Microsoft Visio 2013 - Peterek 24/3 propojeni na Office
  • SmartDraw - Kováč 7/4
  • StarUML - Volný 24/2 - presun na pondeli 2/3?
  • VioletUML - Otisková 3/3
  • ArgoUML
  • EnterpriseArchitect - Šmířák, Molovčák 17/3
  • BOUML
  • Software Ideas Modeller - Ochodek 31/3

V prezentaci se zaměřte se na následující vlastnosti:

Jak nástroje kontrolují vazby mezi prvky jednotlivých modelů (například mezi třídním a sekvenčním diagramem)? 
Podporuje nástroj znovupoužitelnost jednotlivých grafických prvků?
Umožňuje nástroj pracovat v obou rovinách, které nás zajímají - analytické i návrhové? Jak jsou provázány?
Je možné vytvořit všech 13 typů diagramů UML?
Je nástroj schopen importovat diagramy z jiných nástrojů?
V jakých formátech je možné exportovat výstup? Pouze jako obrázky, nebo je lze použít pro přenos mezi nástroji různých výrobců? Vyzkoušejte a prezentujte!
Funguje nástroj jako CASE, tj. je možné generovat kódy? V jakých programovacích jazycích?

Za cvičení je možné získat maximálně 33 bodů. Minimální počet nutný ke získání zápočtu je 17 bodů.

  • 24 body - Projekt (povinný) - termín odevzdání je 6. 5. 2015. Za pozdní odevzdání budou automaticky strženy 2 body za každý započatý den.
  • 5 bodů - Prezentace na zvolené téma, související se zaměřením předmětu (10 minut - odp, pdf, ppt, ...).
  • 4 body - Prezentace výsledku projektu (povinná) - proběhne v zápočtovém týdnu.

Požadavky na projekt jsou uvedeny níže pod označením "Informace k projektu".

Body je možné získat jednak za kvalitně vypracovaný zápočtový projekt, jeho prezentaci a referát (viz výše - 33 bodů). Dále za aktivitu na cvičení (maximálně 5 bodů). Body za aktivitu na cvičení jsou "navíc" a mohou sloužit ke zlepšení bodového hodnocení zápočtu (případně zkoušky).

Informace k projektu

Projekt by měl obsahovat tyto části:

  1. Specifikace projektu včetně taxonomického seznamu požadavků (3 body)
  2. Use Case diagram rozpracovaný včetně vazeb mezi UC, scénáře v souvislostech (tj. alternativy, include, extend) (3 body)
  3. Tabulka mapování požadavků na případy užití (2 body)
  4. Glosář (2 body)
  5. Realizace případů užití (Sekvenční diagram k vybranému scénáři) (3 body)
  6. Návrhový model tříd (3 body)
  7. Aktivitní diagram (pohled na celý systém nebo rozpracování problematické části systému) (3 body)
  8. Stavový diagram (vyberte objekt, u kterého jsou změny stavů zajímavé - včetně událostí a podmínek, případně rozpis akcí během stavu) (3 body)
  9. Diagram balíčků (2 body)

Pro kombinované studenty

Vypracovat a odevzdat projekt dle pokynů cvičícího. Pro dálkaře platí: 33 bodů za projekt (dálkaři mají pouze projekt s termínem odevzdání v zápočtovém týdnu, v každé podúloze o 1 bod navíc).

Projekt bude odevzdán pod označením login_OOAN.zip a bude obsahovat tyto soubory: zdrojový soubor z prostředí VP pojmenovaný login.vpp a dokumentační soubor login.pdf, kde budou vloženy požadované diagramy a popsány vůči specifikaci systému. Dle pokynů cvičícího odevzdat mailem na adresu daniela.szturcova@vsb.cz. Pozdní odevzdání je sankcionováno strhnutím 1 bodu za každý započatý den po termínu.


Přednášky

Přednáškové materiály předmětu OOAN.

Cvičení

Oblast Specifikace požadavků, hledání aktérů a případů užití

Specifikace a správa požadavků

Tvorba Use Case modelu Po nalezení požadavků i UC provedeme kontrolu mapování požadavků na UC.

Tvorba glosáře - půběžně během celého vývoje. Ukázka první fáze Glosáře

Pomůcka: Kapitola z knihy Hledání UC a požadavků

Oblast tvorby hledání tříd

Tvorba Class diagram - CRC, textová analýza

Realizace UC - sekvenční diagram

Tvorba stavového diagramu Ukazka diagramu - Media:BankovniUcet.pdf

Tvorba aktivitního diagramu - ve formě celkového pohledu na systém, nebo zachycení algoritmu metody

Kontrola konzistence diagramů

Pomůcky OO

Literatura

  • Fowler, M.: Destilované UML, 2009
  • Pender, T.: UML Bible
  • Arlow, J., Neustadt I.: UML2 a unifikovaný proces vývoje aplikací, 2007
  • Schmuller, J.: Myslíme v jazyku UML, 2001
  • Kruchten, P.: Architectural Blueprints—The “4+1” View, Model of Software Architecture, in IEEE Software 12 (6), 1996, ke stažení 4+1 View
  • Design Pattern
  • Vondrák, I.: Metody byznys modelování, 2004