Prototypový model v softwarovém inženýrství
Co je prototypový model?
Prototypování modelu je model vývoje softwaru, ve kterém je prototyp postaven, testován a přepracován, dokud není dosaženo přijatelného prototypu. Vytváří také základnu pro výrobu finálního systému nebo softwaru. Nejlépe funguje ve scénářích, kde nejsou podrobně známy požadavky projektu. Je to iterativní metoda pokusů a omylů, která probíhá mezi vývojářem a klientem.
Fáze prototypování modelu
Model prototypování má následujících šest fází SDLC:
Krok 1: Shromáždění a analýza požadavků
Prototypový model začíná analýzou požadavků. V této fázi jsou podrobně definovány požadavky na systém. Během procesu jsou uživatelé systému dotazováni, aby věděli, co od systému očekávají.
Krok 2: Rychlý návrh
Druhá fáze je předběžný návrh nebo rychlý návrh. V této fázi je vytvořen jednoduchý návrh systému. Nejedná se však o kompletní návrh. Poskytuje uživateli stručnou představu o systému. Rychlý design pomáhá při vývoji prototypu.
Krok 3: Vytvořte prototyp
V této fázi je navržen skutečný prototyp na základě informací získaných z rychlého návrhu. Je to malý pracovní model požadovaného systému.
Krok 4: Počáteční uživatelské hodnocení
V této fázi je navržený systém předložen klientovi k úvodnímu vyhodnocení. Pomáhá zjistit sílu a slabinu pracovního modelu. Komentář a návrhy jsou shromažďovány od zákazníka a poskytovány vývojáři.
Krok 5: Zdokonalení prototypu
Pokud uživatel není s aktuálním prototypem spokojen, musíte prototyp vylepšit podle zpětné vazby a návrhů uživatele.
Tato fáze neskončí, dokud nebudou splněny všechny požadavky zadané uživatelem. Jakmile je uživatel spokojen s vyvinutým prototypem, je na základě schváleného finálního prototypu vyvinut konečný systém.
Krok 6: Implementujte produkt a udržujte jej
Jakmile je finální systém vyvinut na základě finálního prototypu, je důkladně testován a nasazen do výroby. Systém prochází běžnou údržbou pro minimalizaci prostojů a prevenci rozsáhlých poruch.
Typy prototypových modelů
Čtyři typy prototypových modelů jsou:
- Prototypy Rapid Throwaway
- Evoluční prototyp
- Přírůstkový prototyp
- Extrémní prototyp
Rapid Throwaway Prototyp
Rychlé vyhození je založeno na předběžném požadavku. Je rychle vyvinut, aby ukázal, jak bude požadavek vypadat vizuálně. Zpětná vazba od zákazníka pomáhá uskutečňovat změny požadavku a prototyp je znovu vytvářen, dokud není požadavek stanoven.
Při této metodě bude vyvinutý prototyp vyřazen a nebude součástí nakonec přijatého prototypu. Tato technika je užitečná pro zkoumání nápadů a získávání okamžité zpětné vazby pro požadavky zákazníků.
Evoluční prototypování
Zde je vyvinutý prototyp postupně zdokonalován na základě zpětné vazby od zákazníka, dokud není nakonec přijat. Pomáhá vám ušetřit čas i námahu. Je to proto, že vývoj prototypu od nuly pro každou interakci procesu může být někdy velmi frustrující.
Tento model je užitečný pro projekt, který používá novou technologii, která není dobře pochopena. Používá se také pro komplexní projekt, kde je třeba každou funkčnost jednou zkontrolovat. Je užitečné, když požadavek není stabilní nebo není v počáteční fázi jasně pochopen.
Inkrementální prototypování
Při inkrementálním prototypování je konečný produkt zdecimován na různé malé prototypy a vyvíjen individuálně. Nakonec jsou různé prototypy sloučeny do jediného produktu. Tato metoda je užitečná pro zkrácení doby zpětné vazby mezi uživatelem a vývojovým týmem aplikace.
Extrémní prototypování
Metoda extrémního prototypování se většinou používá pro vývoj webových aplikací. Skládá se ze tří po sobě jdoucích fází.
- Základní prototyp se všemi existujícími stránkami je přítomen ve formátu HTML.
- Proces dat můžete simulovat pomocí vrstvy prototypových služeb.
- Služby jsou implementovány a integrovány do finálního prototypu.
Best Practices of Prototyping
Zde je několik věcí, které byste měli sledovat během procesu prototypování:
- Pokud nejsou požadavky jasné, měli byste použít prototypování
- Je důležité provádět plánované a řízené prototypování.
- Pravidelné schůzky jsou zásadní pro udržení projektu včas a zamezení nákladným zpožděním.
- Uživatelé a návrháři by si měli být vědomi problémů a úskalí prototypování.
- Ve velmi rané fázi musíte schválit prototyp a teprve poté umožnit týmu přejít k dalšímu kroku.
- V metodě softwarového prototypování byste se nikdy neměli bát změnit dřívější rozhodnutí, pokud je třeba nasadit nové nápady.
- Pro každou verzi byste měli vybrat vhodnou velikost kroku.
- Implementujte důležité funkce včas, takže i když vám dojde čas, budete mít stále užitečný systém
Výhody prototypového modelu
Zde jsou důležité výhody/výhody používání prototypových modelů:
- Uživatelé se aktivně podílejí na vývoji. Proto mohou být chyby odhaleny v počáteční fázi procesu vývoje softwaru.
- Chybějící funkcionalitu lze identifikovat, což pomáhá snižovat riziko selhání, protože prototypování je také považováno za aktivitu snižující rizika.
- Pomáhá členům týmu efektivně komunikovat
- Spokojenost zákazníka existuje, protože zákazník cítí produkt ve velmi rané fázi.
- Nebude téměř žádná šance na zamítnutí softwaru.
- Rychlejší zpětná vazba od uživatelů vám pomůže dosáhnout lepších řešení vývoje softwaru.
- Umožňuje klientovi porovnat, zda softwarový kód odpovídá specifikaci softwaru.
- Pomůže vám zjistit chybějící funkce v systému.
- Také identifikuje složité nebo obtížné funkce.
- Podporuje inovace a flexibilní navrhování.
- Je to jednoduchý model, takže je snadno pochopitelný.
- Na stavbu modelu nejsou potřeba specializovaní odborníci
- Prototyp slouží jako základ pro odvození specifikace systému.
- Prototyp pomáhá lépe porozumět potřebám zákazníka.
- Prototypy lze měnit a dokonce i vyhazovat.
- Prototyp také slouží jako základ pro provozní specifikace.
- Prototypy mohou nabídnout včasné školení pro budoucí uživatele softwarového systému.
Nevýhody prototypového modelu
Zde jsou důležité nevýhody/nevýhody prototypového modelu:
- Prototypování je pomalý a časově náročný proces.
- Náklady na vývoj prototypu jsou totální plýtvání, protože prototyp je nakonec vyhozen.
- Prototypování může podporovat nadměrné požadavky na změny.
- Někdy zákazníci nemusí být ochotni se zúčastnit iteračního cyklu po delší dobu.
- Při každém hodnocení prototypu zákazníkem může existovat příliš mnoho odchylek v požadavcích na software.
- Špatná dokumentace, protože požadavky zákazníků se mění.
- Pro vývojáře softwaru je velmi obtížné vyhovět všem změnám požadovaným klienty.
- Po zhlédnutí raného prototypového modelu si zákazníci mohou myslet, že skutečný produkt mu bude brzy dodán.
- Klient může ztratit zájem o konečný produkt, když není spokojen s původním prototypem.
- Vývojáři, kteří chtějí rychle stavět prototypy, mohou skončit vytvářením nestandardních vývojových řešení.
Shrnutí
- V softwarovém inženýrství je metodika prototypu modelem vývoje softwaru, ve kterém je prototyp postaven, testován a poté podle potřeby přepracován, dokud není dosaženo přijatelného prototypu.
- 1) Shromažďování a analýza požadavků, 2) Rychlý návrh, 3) Sestavení prototypu, 4) Počáteční uživatelské hodnocení, 5) Zdokonalování prototypu, 6) Implementace produktu a údržba; je 6 kroků procesu prototypování
- Typy prototypových modelů jsou 1) Rapid Throwaway prototypy 2) Evoluční prototyp 3) Inkrementální prototyp 4) Extrémní prototyp
- Pravidelné schůzky jsou nezbytné pro udržení projektu včas a pro zamezení nákladných zpoždění v přístupu k prototypování.
- Lze identifikovat chybějící funkcionalitu, což pomáhá snižovat riziko selhání, protože prototypování je také považováno za aktivitu snižující riziko v SDLC.
- Prototypování může podporovat nadměrné požadavky na změny.