Nevěříte Extrémnímu programování? Zkuste klasiku: Rational Unified Process

Pokud patříte mezi zastánce tradičních softwarových procesů, klasických přístupů a osvědčených metodik, znáte možná firmu Rational Software a její metodiku Rational Unified Process. Jedná se o celosvětově používanou, velmi propracovanou, robustní, komplexní přístup k vývoji a k životnímu cyklu software. Zajímá vás, jak metodika vypadá? Kolik stojí, na čem staví, jakou má formu a do jaké kategorie patří?
Před týdnem jsme na Živě ukončili sérii článků o moderním, netradičním vývoji softwaru – o Extrémním programování. V závěru článku jsem slíbil, že ode dneška se budeme zabývat jinou metodikou – tradičnější a konzervativnější. Připoutejte se – odlétáme: cílem letu je seznámení s metodikou Rational Unified Process.

Zatímco Extrémnímu programování bývá vytýkáno, že vývoj pod jeho patronátem se jeví jako chaotický a neorganizovaný, o metodice Rational Unified Process lze prohlásit pravý opak. Rational Unified Process představuje nesmírně propracovaný, detailně zdokumentovaný rigorózní přístup k vývoji: každý krok ve vývojovém cyklu lze dopředu předpovědět a lze o něm najít mnoho informací. Vše uvidíte později, až si podrobně vysvětlíme jednotlivé aspekty této metodologie.

Rational Unified Process – základní informace

Rational Unified Process (RUP) je rozsáhlá, propracovaná objektově orientovaná iterativní metodologie vývoje softwaru přístupná jako sada internetových stránek tvořících znalostní bázi. Je vyvinuta a dodávána firmou Rational Software; jedná se o komerční produkt s poměrně vysokou pořizovací cenou (cena za 1 licenci se pohybuje okolo $695 USD). RUP podrobně odpovídá na všechny otázky související s procesem tvorby softwaru, které začínají slovy kdo, co, kdy a jak.

Jakým způsobem je metodika k dispozici? Zakoupíte-li si licenci, dostanete elegantní krabici s několika CD a s několika stručnými papírovými přílohami. V závislosti na aktuální nabídce a na nových produktech najdete na jednotlivých CD kromě RUP ještě řadu dalších bonusů – mnoho ukázkových aplikací, utilit a pomůcek pro vývoj a neobsáhnutelné množství dokumentace. Firma Rational myslí i na uživatele jiných operačních systémů než Windows: jedno CD obsahuje RUP pro platformu UNIX.

Klepněte pro větší obrázek

Poté, co se zorientujete v obsahu jednotlivých disků, nainstalujete hlavní produkt – metodiku Rational Unified Process. Celá metodika je dodávána ve formě sady internetových stránek; spuštění RUP provedete otevřením úvodní stránky. Následně vás do konce života čeká především čtení a nic než čtení... S trochou nadsázky se snažím vyjádřit skutečnost, že RUP je nesmírně obsáhlá metodika; kdybyste si dali za cíl projít jej kompletně celý, potřebovali byste skutečně hodně dlouhý časový úsek. Designu stránek však není příliš co vytknout – jejich vzhled je konzistentní, jsou skvěle provázané a díky mnoha průvodcům a pomocníkům je velká šance, že se v jejich hlubině neztratíte. Pro začátečníky je navíc k dispozici speciální průvodce „Getting Started“ (viz obrázek), který vám doporučí nejdůležitější stránky, po jejichž přečtení byste měli do metodiky alespoň trochu nahlédnout (trochu se zdráhám použít pojmu „proniknout“).

Klepněte pro větší obrázek

Protože si je firma Rational Software dobře vědoma rozsáhlosti své metodologie, dodává sadu nástrojů pro přizpůsobení metodlogie potřebám konkrétní organizace a konkrétního projektu. Základní nástroj pro přizpůsobení („kustomizaci“) metodiky se nazývá RUP Builder a později se mu budeme podrobněji věnovat.

Cílem procesu, podle firmy Rational Software, je produkovat vysoce kvalitní software, který splňuje potřeby svých koncových uživatelů, a to při predikovatelném harmonogramu a rozpočtu.

Firma Rational Software přirovnává svůj produkt k online instruktorovi, který poskytuje metodické pokyny, instrukce, šablony a příklady pro všechny aspekty a fáze vývoje softwaru. RUP je plně komplexní produkt kombinující v sobě procedurální aspekty vývoje (např. definice fází, technik, postupů a praktik) s dalšími komponentami vývoje (jako dokumenty, modely, manuály, programový kód apod.). To vše se pokouší zahrnout do jednotného rámce zajišťujícího konzistenci celého procesu. Snahu o konzistenci podporuje také použití jednotné notace v jazyce UML, která je použita pro dokumentaci pracovních procesů, případů použití, modelů a všech dalších procesních prvků.

Než si RUP začneme představovat a popisovat, stručně zmíníme některé historické souvislosti a pokusíme se nalézt kořeny této metodiky.

Vznik a vývoj metodiky

RUP byl vyvíjen po dobu mnoha let; podle svého výrobce reflektuje zkušenosti rozsáhlé skupiny vývojářů, manažerů a společností. Jeho kořeny sahají do roku 1987, kdy Ivar Jacobson zužitkoval své poznatky z působení u švédského výrobce telekomunikačních technologií – firmy Ericsson AB – a vyvinul tzv. Objectory Process, v němž se poprvé objevuje koncept případů použití (use-case) a objektově orientovaného návrhu. V roce 1995 vznikl ve firmě Rational koncept iterativního vývoje a architektury. V témže roce přejala firma Rational také principy získávání a řízení požadavků (requirement management) od firmy Requisite, Inc.

Výsledkem bylo vytvoření produktu Rational Objectory Process 4.0, k němuž došlo roku 1996. V roce 1998 byl tento produkt přejmenován na Rational Unified Process 5.0, o rok později byla uvolněna verze 5.5 a v roce 2000 pak Rational Unified Process 2000. Nové verze vznikly i v letech 2001 a 2002. Každá nová verze byla rozšířena o nové oblasti a části, např. Business Engineering, konfigurační a změnové řízení, podpora malých projektů, pracovní procesy týkající se šíření aplikací, podpora nových verzí UML, nástroj RUP Builder, atd.

RUP je široce používanou metodologií (na konci roku 1999 existovalo více než 1000 velkých společností, které se jí při vývoji softwaru řídily). Pomáhal při vývoji rozsáhlých i menších projektů. Ze známých firem používajících RUP lze jmenovat Ericsson, Alcatel, Xerox, Volvo, Intel, Visa, Oracle nebo Deloitte&Touch.

Obecný popis

RUP náleží do skupiny. tzv. přístupů řízených případy použití (use-case-driven approach). Znamená to, že jako základní element je chápán případ použití definovaný jako posloupnost akcí prováděných systémem či uvnitř systému, která poskytuje určitou hodnotu uživateli systému (v nejobecnějším smyslu).

RUP zavádí čtyři základní fáze vývoje, přičemž každá z nich je organizována do několika iterací. Před započetím nové iterace musí být splněna definovaná kritéria předchozí iterace.

Ve fázi zahájení (inception) musí vývojáři definovat účel a rozsah projektu a jeho obchodní kontext; ve fázi projektování (elaboration) je úkolem vývojářů analyzovat potřeby projektu a zákazníka a definovat základy architektury. Třetí fáze, realizace (construction), je zaměřena na vývoj designu aplikace a tvorbu zdrojových kódů, zatímco v poslední fázi, ve fázi předání (transition), dochází k předání projektu – buď zákazníkovi nebo do dalšího vývojového cyklu.

Klepněte pro větší obrázek

Uvnitř každé fáze dále probíhají iterace; jejich počet závisí na konkrétních potřebách týmu a rozsahu projektu. Každá iterace je rámci RUP podrobně rozpracována; je stanoveno, kdo ji má dělat (roles), jak ji má dělat (activities) a co má být jejím výsledkem (artifacts).

Na závěr

Tolik pro dnešek k úvodnímu popisu metodiky Rational Unified Process. V příštím článku budeme postupovat hlouběji a hlouběji; budeme podrobně poznávat jednotlivé aspekty této známé, velmi propracované a komplexní metodiky pro vývoj softwaru.

Diskuze (26) Další článek: Znovuzrození Napsteru nadosah

Témata článku: Software, Programování, Rat, Základní popis, Základní verze, Propracovaný detail, Produkt kombinující, Papírová verze, Extrém, Jednotlivý produkt, Základní nástroj, Základní stránka, Extrémní systém, Fáze, Inception, Třetí fáze, Rational, Velký pomocník, Pracovní fáze, Proces


Určitě si přečtěte

Takhle zemřete, když asteroid dopadne na vaše město

Takhle zemřete, když asteroid dopadne na vaše město

** Jak by to dopadlo, kdyby na světovou metropoli či do nedalekého moře dopadl velký asteroid? ** Simulovali to odborníci z University of Southampton ** Výsledky jsou velmi zajímavé

Petr Kubala | 32

15 věcí, které umí Windows 10, ale možná o nich vůbec nevíte

15 věcí, které umí Windows 10, ale možná o nich vůbec nevíte

** Systém Windows 10 umí spoustu užitečných drobností ** O mnoha praktických funkcích pravděpodobně ani nevíte ** Poznejte užitečné tipy, které se vám mohou hodit každý den

Vladislav Kluska | 36

Sex a rozmnožování při mezihvězdné cestě: Kolik lidí je potřeba pro let k Proximě Centauri?

Sex a rozmnožování při mezihvězdné cestě: Kolik lidí je potřeba pro let k Proximě Centauri?

** Vědci spočítali, jak velká by musela být posádka pro vícegenerační let k nejbližší hvězdné soustavě ** Proxima Centauri se nachází 4,3 světelných let od nás ** Za současných technologií bychom k ní letěli 6300 let

Petr Kubala | 53

Alan Turing: Genius, který matematicky stvořil počítač

Alan Turing: Genius, který matematicky stvořil počítač

Řešením matematického problému se dostal k modelu teoretického stroje, který nese jeho jméno a je základem logiky univerzálních počítačů.

Pavel Tronner | 56

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

** Portál občana už funguje, vyřídíte na něm první požadavky ** Funkce se budou postupně rozšiřovat ** Web je docela moderní a přehledný

David Polesný | 65

Google ADT-2: Miniaturní krabička s Android TV 8.0, kterou si nikdy nekoupíte

Google ADT-2: Miniaturní krabička s Android TV 8.0, kterou si nikdy nekoupíte

** Dlouho se nevědělo, co to přesně má být ** Pak se s krabičkou Google pochlubil na I/O ** Do „Chromecastu“ vtěsnal celý Android TV

Jakub Čížek | 24


Aktuální číslo časopisu Computer

Velký test 18 bezdrátových sluchátek

Vše o přechodu na DVB-T2

Procesory AMD opět porážejí Intel

7 NVMe M.2 SSD v přímém souboji