Úvod
Metodiky softwarového inženýrství představují soubor prezentačních technik (výrazových prostředků) a metodických postupů, které podporují systematický vývoj a údržbu programového díla, včetně plánování a řízení prací na programovém projektu. Metodiky se tedy mohou lišit prezentačními technikami (notací), metodickými postupy (proces) a dostupnými nástroji. Každá metodika přinesla něco nového, obvykle však též novou notaci. Rozmanité novinky jen výjimečně přinesly i novou kvalitu.To bylo důvodem snahy o unifikaci vyjádření. Vznikají metodiky které se snaží sjednotit výhodné vlastnosti různých notací a metodických postupů. Patří sem např. metodika Fusion (Coleman, 1994), či Unified Method (Rumbaugh/Booch, 1995), která vznikla integrací metodiky OMT (Object Modeling Technique - Rumbaugh) a OOD (Object-Oriented Design – Booch).
Vývoj unifikované metodiky si dala za jeden ze svých hlavních cílů firma Rational [2], kterou založili Rumbaugh a Booch. Později se k nim připojil i Jacobson se svou metodikou OOSE (Object-Oriented Software Engineering) a společně vypracovali prvý návrh UML (1996). v roce 1997 převzalo tento návrh sdružení OMG (Object Management Group [1]) a pod označením UML 1.1 jej začalo doporučovat jako standard (1997). Současná verze z března 2003 má označení UML 1.5, pracuje se na verzi standardu UML 2.0.
UML je zamýšlen jako univerzální standard pro záznam, konstrukci, vizualizaci a dokumentaci artefaktů systémů s převážně softwarovou charakteristikou. Definice UML obsahuje 4 základní části:
Notace UML
Při analýze požadavků se často jako nástroj pro komunikaci mezi zadavatelem a řešitelem využívá modelování. Vznikají různé modely navrhovaného systému, které mohou být na této úrovni testovány, ověřovány a upravovány. Teprve po dosažení shody mezi analytikem a zadavatelem může být model dekomponován a převeden do cílového implementačního jazyka.Používané modely mohou být různých typů. Obecně lze model softwarového systému definovat jako souhrn informací, které jsou určitým způsobem strukturovány. Model by měl obsahovat veškeré shromážděné informace o systému.
Diagram je graficky znázorněný pohled na model. Diagram popisuje jistou část modelu pomocí grafických symbolů. Na rozdíl od modelu, jeden diagram málokdy popisuje celý systém – většinou je k popisu systému použito více pohledů, z nichž každý se zaměřuje na jeden aspekt modelu.
Analytické modely se zabývají zejména otázkou "CO" by měl systém dělat.
Návrhové modely popisují dekompozici systému na programátorsky zvládnutelné části - zabývají se otázkou "JAK" by to mělo být uděláno. Implementační modely dokumentují implementaci.
UML se snaží shrnout nejlepší známé pohledy a definuje osm základních druhů diagramů, které budou popsány dále. UML sice nebrání vytváření dalších možných pohledů a diagramů, takový postup je však trochu proti duchu unifikace. Smyslem unifikace naopak je, aby stejné pohledy na model systému bylo možno vyjádřit tak, aby znázornění bylo obecně srozumitelné. Notace UML definuje, jak se zapisují základní pohledy na modelovaný systém.
Autor: Filip Koval