At prototype eller ikke prototype: det er spørgsmålet.

Jeg har været involveret i en række projekter, der krævede udvikling af prototyper på kort tid. Disse prototyper hjalp med at evaluere idéernes levedygtighed og brugeroplevelsen af ​​en bestemt løsning. Nogle gange tjente de som bevis for, at konceptet kunne udvikles i betragtning af begrænsningerne.

Hvad er software prototyping?

Prototyping er processen med at oprette ufuldstændige versioner af en foreslået løsning. Det lyder dårligt - det er ufuldstændigt! Men formålet med prototyping er kun at simulere et par nøgleaspekter af løsningen. Dette hjælper os med at evaluere levedygtigheden af ​​potentielle løsninger med hensyn til omkostninger, kompleksitet, brugervenlighed og værdi.

Projekter påtages ofte, før teammedlemmer fuldt ud forstår den krævede indsats for at nå deres mål. Nogle gange forstår de ikke, om løsningen er det, der kræves. Prototyping kan hjælpe med analysen af ​​disse krav og kan hjælpe teamet med at lære mere om løsningsdomænet eller problemdomænet afhængigt af tilgangen.

Prototyping og designtænkning

Design tænkning, som en tankegang, er metoden til at skabe løsninger på komplekse problemer ved hjælp af kreative teknikker. Du skal redegøre for både det kendte landskab og de potentielle muligheder inden for dette landskab.

Prototyping er en stor del af designtænkning. Visuel repræsentation, forståelse, evaluering og læring af ideer er kernen i designtænkning. Designtænkere beskæftiger sig med løsningsrummet, ikke kun problemrummet. I designtænkning er det almindeligt at afdække eller skabe nye problemer, der skal løses, når man vurderer prototyper - og det er en god ting.

Hvorfor prototype?

Tidlig test af brugeraccept

Folk får en chance for at bruge og opleve løsningen tidligt i udviklingen. Dette vil resultere i tidlig feedback fra brugerbasen og giver dig mulighed for at implementere ændringer tidligere snarere end senere. Omkostningerne ved en ændring i et projekt stiger markant i senere udviklingsfaser.

Indse krav og begrænsninger, der ikke tidligere blev overvejet

Ved at simulere noget af produktets funktionalitet kan teamet opdage bivirkninger, begrænsninger eller yderligere krav, som ikke blev overvejet før. Dette hjælper med at opnå en mere komplet og robust løsning.

Bedre omkostnings-, tids- og kompleksitetsestimater

Ved at realisere yderligere krav og begrænsninger tidligt samt modtage brugerfeedback tidligt kan du lave bedre kompleksitet og tidsestimater. Dette resulterer i bedre omkostnings- og tidsestimater. Disse skøn påvirker en række aktiviteter, når der implementeres en løsning på produktionen.

Dræb dragen

I softwareudvikling taler vi om at dræbe dragen: Et enkelt team af helte forsøger at dræbe et stort projekt (eller "drage"). Med softwareprototyping forsøger vi at gøre dræben mere som at skyde fisk i en tønde - vi tackler først mindre eller mere komplekse funktioner.

En proces til prototyping

Trin 1: Forstå landskabet

Du skal forstå det eksisterende teknologi- og forretningslandskab såvel som fremtidens vision og strategi. Dette er et afgørende fundament for udvikling af enhver løsning.

Trin 2: Identificer kernekravene

Dette er kravene til løsningen. Disse stammer normalt fra idéerne ved hånden eller fra de problemer, du forsøger at løse. Krav udvikler sig normalt, når du lærer mere.

Trin 3: Forskning

Find ud af, om der allerede findes noget, der opfylder kravene. Se på konkurrenter eller lignende løsninger. Afdæk de detaljer, der ikke er nævnt i kernekravene. Disse udækkede detaljer kan være en blokering af løsningen eller potentielt åbne døren for bedre og mere værdifulde funktioner.

Trin 4: Udvikl en indledende prototype

Prototype de funktioner, der er vigtige og har stor indflydelse. Dette afhænger af prototypens mål. Hvis der findes komplicerede funktioner med ukendte muligheder, skal du først tackle disse. Hvis der er mange enkle funktioner, så prøv at simulere en oplevelse på tværs af alle disse funktioner uden at fordybe sig i kompleksiteten i hver.

Trin 5: Evaluer og gennemgå prototypen

Du bør gennemgå den udviklede prototype med målbrugergruppen og relevante interessenter. Nogle prototyper kunne endda frigives til produktion til evaluering.

Funktionernes ydeevne og anvendelighed skal evalueres og måles både kvantitativt og kvalitativt. Dette betyder, at du får viden fra målbare tal og anden info fra menneskelig intuition og observation.

Trin 6: Revidere og forbedre prototypen

Efter at have gennemgået feedback fra prototypen, samler du information. Derefter kan du foretage forbedringer og ændringer.

Trin 7: Gentag

Hvis der stadig eksisterer ukendte, gentag ovenstående proces. Faktisk, selv med løsninger i produktionen, kan denne proces udnyttes til at teste nye ideer til løsningen.

Dimensioner for prototyping

Horisontal prototyping

Målet er at give et bredt overblik over hele løsningen. Der vil være lidt kompleksitet i individuelle funktioner. Denne tilgang er god for websteder og tilfælde, hvor du har brug for at opnå en generel fornemmelse for produktet.

Disse er typisk løsninger, der er målrettet mod offentligheden, eller løsninger, der kræver intensiv brugervenlighedstest.

Lodret prototyping

Prototypen vil fokusere på et lille sæt funktioner, nogle gange endda bare en eller to. De valgte funktioner udforskes og undersøges fuldstændigt. Denne tilgang er god til løsninger, hvor du bruger obskure eller komplekse algoritmer, eller når du prøver noget usædvanligt eller uortodoks.

Dette er nyttigt til at eksperimentere med nye teknologier, nye tilgange og typisk når du ønsker "forstyrrelse."

Typer af prototyping

Throwaway Prototyping

Dette er også kendt som prototype-protokol. Hurtig prototyping involverer at skabe en arbejdsmodel af dele af systemet på et tidligt udviklingsstadium efter en relativt kort undersøgelse.

Denne form for prototyping viser folk, hvordan funktionen vil se ud. Men kodebasen eller projektet bruges ikke nødvendigvis til produktionsversionen af ​​applikationen.

Evolutionær prototyping

Hovedmålet her er at opbygge en meget robust prototype på en struktureret måde og konstant forfine den. Prototypen udgør kernen i produktionsapplikationen, og der tilføjes yderligere funktioner til den.

Inkrementel prototyping

I inkrementel prototyping udvikles dele af systemet som separate prototyper og tilsluttes for at danne en komplet applikation. Det er vigtigt at udvikle grænsefladerne til de separate komponenter tidligt, da integration kan vise sig at være et mareridt.

Ekstrem prototyping

Ekstrem prototyping anvendes hovedsageligt til webapplikationer og normalt i tre faser:

  1. Statisk HTML / CSS / JS oprettes - dette giver brugerne en øjeblikkelig håndgribelig fornemmelse for produktet.
  2. Derefter simuleres servicelaget - dette inkluderer forretningsregler og logik.
  3. Endelig er det egentlige servicelag udviklet - dette involverer integration med virkelige systemer og tilslutning til frontend HTML / CSS / JS-visninger.

Dette giver brugerne et tidligt overblik over applikationen uden at have den faktiske funktionalitet bag sig. Bagenden kommer gradvist sammen, når processen bevæger sig fremad.

Ulemper ved prototyping

Utilstrækkelig analyse

Tilliden til en prototype kunne få holdet til at opgive yderligere analyse af funktioner. Dette kan resultere i, at en del af systemet er veldefineret, mens de resterende dele er vage og ufuldstændige. Dette kan styres gennem korrekte processer i kravanalyse.

Brugerforvirring mellem prototypen og det færdige system

Hvis det endelige system er helt anderledes end prototypen, kan brugerne være forvirrede over, hvordan det fungerer.

Udgifter til prototyping

Selvom prototyping sparer omkostninger i den aktuelle udviklingsfase til en løsning, vil der være omkostninger forbundet med implementering af en prototypefase.

Risikoen for at bruge penge på en prototype, der potentielt kan kastes, skal forstås. Hvad du lærer af at udvikle denne prototype er stadig værdifuldt!

Fordele ved prototyping

Reduceret tid og omkostninger

Ved at udforske kravene og begrænsningerne kan du bedre estimere den kommende indsats.

Forbedret og øget brugerinddragelse

Brugerinddragelse er vigtig. Prototyper rydder misforståelser og forventninger, og de hjælper med at samle brugerfeedback fra tidlige udviklingsstadier.

Kvalitetssikring

Realiser tilsyn, yderligere krav og begrænsninger.

Innovation

Uden at være modig nok til at udforske de skøre ideer, kan en organisation let stagnere.

Der er en række emner relateret til prototyping. For at lære mere kan det hjælpe at undersøge disse udtryk: designtænkning, brugeroplevelsesdesign, smidig .

Tak for læsningen! Hvis du nød dette indlæg, så giv mig nogle klapper, så flere mennesker ser det.