Novinky v UML 2.5 a agilní modelování

Podobné dokumenty
2. Začlenění HCI do životního cyklu software

Návrh softwarových systémů - úvod, motivace

7 Jazyk UML (Unified Modeling Language)

7 Jazyk UML (Unified Modeling Language)

Návrh softwarových systém. Návrh softwarových systémů

Vývoj informačních systémů. Přehled témat a úkolů

Vývoj informačních systémů. Přehled témat a úkolů

Agilní modelování. ing. Alena Buchalcevová, Ph.D. Katedra informačních technologií VŠE Praha nám. W.Churchilla 4, Praha 3

Softwarový proces Martin Hlavatý 4. říjen 2018

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ

Vývoj informačních systémů. Jak vyvíjet v týmu

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

Principy UML. Clear View Training 2005 v2.2 1

Řízení reálných projektů, agilní metodiky

8 Přehled OO metodik (metod, metodologií)

8 Přehled OO metodik (metod, metodologií)

Analýza a Návrh. Analýza

Úvod do softwarového inženýrství a týmového vývoje

RUP - MOTIVACE, PRINCIPY JAROSLAV ŽÁČEK

RUP - Motivace, principy. Jaroslav Žáček

27/11/2017. Business analýza a sběr požadavků. Dotazy na event #G865

SOFT-ENG ACADEMY 2017/2018

UML. Unified Modeling Language. Součásti UML

Unifikovaný proces vývoje

Využití SysML pro tvorbu modelů v systémovém inženýrství

CASE nástroje. Jaroslav Žáček

Unifikovaný modelovací jazyk UML

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

Metodika analýzy. Příloha č. 1

PŘÍLOHA C Požadavky na Dokumentaci

Architektura softwarových systémů

TREND POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE

OOT Objektově orientované technologie

OOT Objektově orientované technologie

Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Agile. nejžádanější způsob vývoje software. Tomáš Tureček. Business consultant, Lean&Agile coach Tieto

Návrh IS - UML. Jaroslav Žáček

UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Návrh IS - UML. Jaroslav Žáček

Vývoj řízený testy Test Driven Development

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

SOFTWAROVÉ INŽENÝRSTVÍ 1

4IT445 - AGILNÍ VÝVOJ WEBOVÝCH APLIKACÍ AGILNÍ METODIKY VÝVOJE SW ING. JAN ČERNÝ

Obsah. Zpracoval:

Návrh softwarových systémů - architektura softwarových systémů

KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

Modelování řízené případy užití

Agilní metodiky vývoje softwaru

Zuzana Šochová MFF Modelování a realizace softwarových projektů

SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů

Co je to COBIT? metodika

Základy analýzy. autor. Jan Novotný února 2007

Semestrální práce ke kurzu 4IT421 Zlepšování procesů budování IS

AGILNÍ MODELOVÁNÍ A METODA BORM

CASE. Jaroslav Žáček

Přednáška. Sběr požadavků na SW s použitím metody C.C a nástroje Craft.CASE. e-fractal, s.r.o.

XINF1. Jaroslav Žáček

Softwarový proces. Bohumír Zoubek, Tomáš Krátký

Budování architektury pomocí IAA

SPEM 2.0 úvod, účel. Matoušková Soňa ZS 2013/2014 4IT421 Zlepšování procesů budování IS

Agile Software Development

SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů

Agilní metodiky a techniky. analýza a vývoj IS

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

7.6 Další diagramy UML

Objektová tvorba SW, Analýza požadavků 2006 UOMO 53

Informační systémy. Jaroslav Žáček

TÉMATICKÝ OKRUH Softwarové inženýrství

7.6 Další diagramy UML

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

Architektury informačních systémů

Architektury informačních systémů

Informační systémy ve strojírenství

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Analýza a design na reálném projektu. Richard Michalský

Vysoká škola ekonomická Fakulta informatiky a statistiky

7.5 Diagram tříd pokročilé techniky

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

6INF2. RNDr. Jaroslav Žáček, Ph.D.

UML: Unified Modeling Language

Analýza a design na reálném projektu. Richard Michalský

Modelování webových služeb v UML

Životní cyklus vývoje SW. Jaroslav Žáček

Architektury Informačních systémů. Jaroslav Žáček

Informační systémy. Jaroslav Žáček

Vývoj informačních systémů. Obecně o IS

Softwarový proces Bohumír Zoubek 1. říjen 2018

Procesní dokumentace Process Management. Pavel Čejka

Communist Party of Nepal (Unified Marxist-Leninist) Unified Modeling Language University of Massachusetts Lowell User-mode Linux.

Ročníkový projekt. Jaroslav Žáček

7.5 Diagram tříd pokročilé techniky

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: AVTK. Úvod. strana 1

Agenda. Docházka Odhadování Neohlášený test Vedení projektů Historie projektů

3 druhy UML diagramů

SPECIFICKÁ PRAVIDLA PRO ŽADATELE A PŘÍJEMCE

7.3 Diagramy tříd - základy

Transkript:

Novinky v UML 2.5 a agilní modelování Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů Přednáška pro AIS 15. října 2015 Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 1 / 24

Obsah 1 Novinky v UML 2.5 a doménově specifické jazyky Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky 2 Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 2 / 24

UML 2.5 Novinky v UML 2.5 a doménově specifické jazyky Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky UML 2.5 bylo oficiálně vydáno v červnu 2015. (ale vyšlo již v říjnu 2012 jako pracovní verze ) Zjednodušuje dokument, implementaci a spolupráci UML nástrojů. (specifikační dokument skutečně jednodušší, jinak není zjednodušení moc vidět) Přibyly tři nové strukturální diagramy. (navýšení z 16 na 19 diagramů mezi UML 2.0 a 2.5) Nové diagramy v podstatě upřesňují způsob aplikace některých stávajících diagramů pro konkrétní oblasti návrhu. diagram modelů seskupuje balíčky do modelů v diagramu balíčků (např. pro popis vysokoúrovňové architektury seskupením balíčků do vrstev) diagram manifestací popisuje impl. komponent pomocí artefaktů (mezi diagramy komponent a nasazení, fyzická manifestace komponent) diagram sít ové architektury popisuje log. a fyz. sít ovou arch. (vychází z diagramu nasazení, orientován na sít ovou infrastrukturu) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 4 / 24

Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky Ukázka diagramu modelů (Model Diagram) (převzato z UML Package Diagrams Overview ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 5 / 24

Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky Ukázka diagramu manifestací (Manifestation Diagram) (převzato z UML Package Diagrams Overview ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 6 / 24

Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky Ukázka diag. sít ové arch. (Network Arch. Diagram) (převzato z Network Architecture Diagrams ) Specifikace UML 2.5 nestanovuje grafickou notaci, jak je uvedeno výše; grafická podoba by dle specifikace byla podobná prvkům diagramu nasazení. Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 7 / 24

Cíl UML 2.5 a nové diagramy Ukázka nových diagramů Doménově specifické modelovací jazyky Doménově specifické modelovací jazyky UML není jediný správný modelovací jazyk. (návrhář/vývojář musí znát i jiné jazyky, UML není vhodné na vše) Mnoho alternativ/doplňků UML je navázáno na metodiky vývoje. (např. modely Agile Modeling či ERD/DFD v Coad-Youronově strukt. analýze) Navíc, použitím UML pro specifické účely, vznikají UML profily. Některé z UML profilů se osamostatňují, např. Systems Engineering Modeling Language (SysML) (pro modelování HW systémů, vč. metodiky specifikace, analýzy a vývoje) UML Testing Profile (UTP) (pro specifikaci, analýzu, návrh a realizaci artefaktů pro testování) Modeling and Analysis of Real-Time and Embedded Sys. (MARTE) (pro real-time zabudované systémy, především pro návrh jejich software) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 8 / 24

(Agile Modeling, AM) Soubor best-practices pro modelování a dokumentaci software. (z klasického RUP, agilního extrémního progr. i moderních metodik, jako je Scrum) Definuje hodnoty, principy a praktiky pro modelování software. (5 hodnot, 11+2 principů a 13+5 praktik pro prosazování principů) Popisuje jak jsou výše uvedené zapojeny do vývoje software. (Agile Model Driven Development, AMDD, přístup k vývoji software) Konkrétně definuje AM následující hodnoty komunikace (komunikace je důležitá a častá, uvnitř týmů i ven mezi týmem a zákazníkem) jednoduchost (tvorba jednoduchých modelů, spíš pro porozumění, než pro dokumentaci) zpětná vazba (rychlá a častá zpětná vazba, reakce na předložené modely a interakce) odvaha (dělat rychlá rozhodnutí, zkoušet nové, zahazovat či měnit stávající) pokora/respekt (naslouchat ostatním vývojářům i zákazníkům, přijímat jejich nápady) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 10 / 24

v agilním modelování (převzato z Agile Modeling ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 11 / 24

: Active Stakeholder Participation Stakeholders (SH) jsou všichni účastníci projektu. (přímí/nepřímí uživatelé, jejich vedoucí, tech. podpora, investoři, auditoři, atd.) Potřeba je zapojit do řešení, mají informace, které vývojářům chybí. (nestačí komunikovat jen s uživateli, nutné co nejvíce zapojit každého) Různé způsoby jak je zapojit do řešení časté diskuze SH musí být připraveni a ochotni se jich účastnit (vývojáři by neměli plýtvat jejich časem, jinak ztratí důvěru) inclusive modelling SH mohou používat snadné model. techniky (tvorba návrhů uživatelských rozhraní, popisů scénářů, atp; zvyšuje motivaci) vzdělávání v IT naučit SH vidět pohledem IT, příležitosti a hrozby (musí mít zájem se takto vzdělávat, musí vidět, jak jim to pomůže v růstu) časné zapojení uživatelů/podpory snižuje potřebu je školit (SH pak lépe přijmou systém, mohou pomoci vzdělat další uživatele) Vývojáři musí porozumět potřebám SH a pracovat s nimi. Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 12 / 24

: Document Continously Dokumentace by měla vznikat spolu se vznikem finálního kódu. (to se týká i modelů, které s tím kódem souvisí; např. diagramů tříd, balíčků, atp.) Modeluje se již před kódem, pro porozumění, ne pro dokumentaci. (model je tvořen pro porozumění problematice, až potom prostředek dokumentace) Často se kombinuje s just-in-time a executable specification. (modelování až, když je potřeba; vývoj řízený testem, Test-driven Development) (převzato z Document Continuously: An Agile Best Practice ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 13 / 24

: Document Late Dokumentace se musí udržovat, je lepší ji připravit až na konec. (počáteční/průběžné modely se většinou zahodí; dok. musí být vždy aktuální) Odložená tvorba dokumentace zvyšuje flexibilitu, ale i rizika. (může chybět, když je potřeba, např. při předání rozpracovaného; odkládá náklady) Často se kombinuje s just-in-time a executable specification. (modelování až, když je potřeba; vývoj řízený testem, Test-driven Development) (adopted from Document Late: An Agile Best Practice ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 14 / 24

: Test-driven Development (TDD) (převzato z Introduction to Test Driven Development (TDD) ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 15 / 24

Agile Design Practices (převzato z Agile Design ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 16 / 24

Agile Model Driven Development (AMDD) (převzato z Agile Model Driven Development (AMDD): The Key to Scaling Agile Software Dev. ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 17 / 24

: Just Barely Good Enough /... In Time Modely je vhodné tvořit, když, jak a dokud jsou potřeba. (časné či velké úsilí věnované tvorbě modelů je zbytečné; používejte papír/tabuli!) Hodnota modelů podle toho, jak nám pomohou k lepšímu SW. (tj. užitečnějšímu a bezchybnému, ale i k lépe udržovatelnému software) (převzato z Just Barely Good Enough Models and Documents: An Agile Best Practice ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 18 / 24

: Multiple Models & Single Source Info. Každý druh modelu/diagramu má své specifické použití. (je potřeba mít přehled, znát, na co který model (ne)použít, nejen v UML) Pokud se něco nedaří namodelovat, je asi chybný druh modelu. (často zkoušet různé druhy modelů/diagramů, tedy různé pohledy na problém) Modely provázané, různé pohledy na tytéž entity, ne jejich kopie. (použít modelovací prostředí, které udržuje modely (a kód) synchronizované) (převzato z Single Source Information: An Agile Best Practice for Effective Documentation ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 19 / 24

Agile Development (I) (převzato z Agile Design ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 20 / 24

Agile Development (II) (převzato z Agile Design ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 21 / 24

Disciplined Agile 2.0: Agile Delivery Iterativní, částečně založené na Scrum, ale s jinou terminologií. (vychází ze skutečnosti, že v praxi se čistý Scrum moc nepoužívá) Pracuje se externími vstupy, úkoly v prioritní frontě a milníky. (zpracovávájí se vždy úkoly s nejvyšší prioritou, vhodné i pro nezkušené týmy) (převzato z The Agile/Basic Lifecycle: Extending Scrum ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 22 / 24

Disciplined Agile 2.0: Lean & Continous Delivery Jen zkušené týmy si mohou dovolit lean přístup. Není fronta úkolů, ale tyto jsou zařazeny do čtyř kategorií. (zpracovávají se úkoly, co mají blízký termín či je tým sám chce řešit) (převzato z The Advanced/Lean DAD Lifecycle ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 23 / 24

Shrnutí a závěr Shrnutí a závěr UML 2.5 zjednodušuje a zavádí tři nové strukturální diagramy. (diagram modelů, diagram manifestací, diagram sít ové architektury) popisuje best-practices v oboru. (definuje hodnoty, principy a praktiky pro modelování software) Vychází, využívá a je navázáno na moderní metody vývoje SW. (z klasického RUP, Scrum, XP, Agile Data,... ) Marek Rychlý Novinky v UML 2.5 a agilní modelování Přednáška pro AIS, 15. října 2015 24 / 24