RAD (programování)

RAD (z anglického  rapid application development  - rapid application development) - koncepce organizace technologického procesu vývoje softwarových produktů , zaměřená na co nejrychlejší výsledky při velkých časových a rozpočtových omezeních a nejasně definovaných požadavcích na produkty. Efektu zrychlení vývoje je dosahováno použitím vhodných technických prostředků a průběžným, souběžně s postupem vývoje, upřesňováním požadavků a vyhodnocováním aktuálních výsledků se zapojením zákazníka. RAD byl vytvořen na konci 80. let jako alternativa k dřívějším vodopádovým a iterativním modelům. Od konce 20. století se RAD rozšířil.

Stejný termín se používá pro softwarové nástroje pro rychlé prototypování a vývoj softwaru. Typickými vlastnostmi těchto nástrojů je maximální automatizace rutinních operací a široké využití vizuálního programování .

Historie

Vznik konceptu RAD byl výsledkem kombinace řady faktorů.

Zakladatelem RAD je zaměstnanec IBM James Martin, který v 80. letech formuloval základní principy RAD na základě myšlenek Barryho Boyma a Scotta Schultze. A v roce 1991 vydal Martin slavnou knihu, ve které podrobně popsal koncept RAD a možnosti jeho aplikace. RAD se nyní stává uznávaným rámcem pro vytváření nástrojů pro vývoj softwaru .

Schůzka

RAD předpokládá, že vývoj softwaru provádí malý tým vývojářů po dobu asi tří až čtyř měsíců pomocí inkrementálního prototypování pomocí vizuálního modelování a vývojových nástrojů. Technologie RAD zajišťuje aktivní zapojení zákazníka v raných fázích - průzkum organizace, vývoj požadavků na systém. Poslední z těchto vlastností implikuje plné splnění požadavků zákazníka, funkčních i nefunkčních, s přihlédnutím k jejich případným změnám v průběhu vývoje systému, jakož i pořízení kvalitní dokumentace, která zajistí snadnou obsluhu a údržbu systému. systém. To znamená, že dodatečné náklady na podporu ihned po dodání budou výrazně nižší. Celková doba od začátku vývoje do získání přijatelného produktu se tedy při použití této metody výrazně zkrátí.

Aplikace

Technologie RAD není univerzální, je vhodné ji použít pouze v případě, že projekt splňuje všechny nebo některé z podmínek:

  1. Krátká doba. Je potřeba co nejrychleji vytvořit systém splňující požadavky dnešní doby. Navýšení termínů vytváří vysokou pravděpodobnost tak výrazné změny základních ustanovení upravujících automatizované činnosti, že systém morálně zastará ještě před dokončením návrhu.
  2. Nejasně definované a/nebo měnící se požadavky během vývoje. Zákazník má velmi hrubou představu o práci budoucího softwarového produktu a nemůže jasně formulovat všechny požadavky na software. Požadavky nemusí být definovány na začátku projektu nebo se mohou v průběhu projektu měnit.
  3. Omezený rozpočet s ochotou zákazníka podílet se na vývoji. Zákazník nemá prostředky na to, aby dlouhodobě zaplatil práci velkého týmu designérů a vývojářů, ale je ochota vyčlenit specialisty pro neustálou přímou účast na vývoji a posuzování jeho aktuálního stavu.
  4. Malé objemy nebo možnost rozdělit projekt na funkční komponenty. Pokud je zamýšlený systém velký, musí být možné jej rozdělit na menší části, z nichž každý má jasnou funkčnost a minimální závislost na ostatních. Mohou být vydávány postupně nebo paralelně (v druhém případě je zapojeno několik skupin RAD).
  5. Grafické uživatelské rozhraní  je nejdůležitější nebo jedna z nejdůležitějších součástí systému. Právě při tvorbě rozhraní poskytuje technologie RAD největší výhody, protože rozhraní je předvedeno přímo na prototypu a to poměrně brzy po zahájení projektu. Dokonce je možné přímo zapojit zástupce zákazníka do návrhu rozhraní ve vizuálním editoru. Tento přístup se vyhýbá typické situaci, kdy se rozhraní popsané uživatelem v požadavcích (zpravidla bez zohlednění technologických omezení) chová v praxi zcela jinak, než uživatel očekával, ačkoli systém formálně plně vyhovuje dokumentovaným požadavkům.
  6. Nízká výpočetní náročnost. Zpracování dat v projektu spočívá v kombinaci typických operací, z nichž všechny nebo většina je již implementována ve formě dostupných knihoven. Původní algoritmy zpracování dat nejsou buď vůbec potřeba, nebo jsou poměrně jednoduché a lze je implementovat rychle a bez větších potíží.

Pokud jsou požadavky na systém jasně definovány a nelze je měnit, není nutné zapojení zákazníka do procesu vývoje a může být efektivnější tradiční hierarchický vývoj ( kaskádová metoda ). RAD také neposkytuje prakticky žádné výhody v projektech, jejichž hlavní složitost je dána nutností implementovat složité, nestandardní algoritmy zpracování dat a uživatelské rozhraní buď jako takové chybí, nebo je velmi jednoduché a zcela standardní.

Základní principy

Principy technologie RAD jsou zaměřeny na poskytování jejích tří hlavních výhod - vysoká rychlost vývoje, nízká cena a vysoká kvalita. Dosažení vysoce kvalitního softwarového produktu je velmi obtížné a jedním z hlavních důvodů vzniklých potíží je to, že vývojář a zákazník vidí předmět vývoje (software) různými způsoby.

Principy RAD platí nejen pro implementaci, ale také pro všechny fáze životního cyklu, zejména pro fázi průzkumu organizace, budování požadavků, analýzu a návrh.

Vývojové fáze

  1. Plánování  je soubor požadavků získaných z plánování systému a analýzy postupu vývoje životního cyklu (SDLC). V této fázi uživatelé, manažeři a IT specialisté diskutují o cílech projektu, jeho rozsahu, systémových požadavcích a také o potížích, které mohou nastat během vývoje. Fáze končí tím, že se skupina RAD dohodne na klíčových bodech a získá povolení od vedoucích projektu pokračovat.
  2. Uživatelský návrh  – Během této fáze uživatelé komunikují se systémovými analytiky za účelem vývoje modelů a prototypů, které zahrnují všechny požadované systémové funkce. K převodu uživatelských prototypů do pracovních modelů tým RAD obvykle používá techniky společného vývoje aplikací (JAD) a nástroje CASE . Uživatelský design se ukazuje jako dlouhý interaktivní proces, který umožňuje uživatelům pochopit, upravit a nakonec vybrat pracovní model, který splňuje jejich požadavky.
  3. Design  je fáze, ve které je hlavním úkolem vývoj programů a aplikací. Podobně jako ve fázi „implementace“ v SDLC. V RAD se však uživatelé nadále účastní a stále mohou navrhovat změny nebo vylepšení ve formě sestav, které vytvořili. Mezi jejich úkoly patří programování a vývoj aplikací, kódování, integrace modulů a testování systému.
  4. Přepínání  – zahrnuje operace konverze dat, testování, přechod na nový systém a školení uživatelů. Ve svých úkolech se podobá konečné fázi SDLC. Ve srovnání s tradičními metodami vývoje softwaru je celý proces časově komprimován. Díky tomu je nový systém rychleji postaven, doručen zákazníkovi a instalován na pracovišti.

Výhody

Technologie Rapid Application Development (RAD) vám umožňuje poskytovat:

Viz také