Kuidas kirjutada kasutajalugusid (näidete ja vastuvõtukriteeriumidega)
Kasutajalugu on lühike kirjeldus funktsioonist kasutaja vaatenurgast: „Kasutajana [kasutaja tüüp] tahan [eesmärk], et [põhjus].“ Selle all kirjutate vastuvõtukriteeriumid, mõned konkreetsed tingimused, mis peavad olema täidetud, et lugu loetaks valmis. Hoidke iga lugu piisavalt väikesena, et seda saaks korraga ehitada ja testida, ning kirjutage kriteeriumid nii, et keegi saaks neid kontrollida.
Kasutajalood said populaarseks agiilsete tarkvarameeskondade seas, kuid need on sama kasulikud, kui ehitate ise AI rakenduste koostajaga. Hea lugu on hea prompt.
Formaat
Kasutajalool on kolm osa:
Kasutajana [kes], tahan [mida], et [miks].
- Kes on konkreetne kasutajatüüp: esmakordne külastaja, maksev liige, kliiniku registripidaja, administraator. Mitte „kasutaja“.
- Mida on see, mida nad tahavad teha, nende enda sõnadega. Mitte see, kuidas ekraan töötab.
- Miks on tulemus, millest nad hoolivad. See on osa, mida inimesed vahele jätavad, ja see, mis hoiab ära vale asja ehitamise.
Näide:
Kasutajana spordisaali liikmena tahan tühistada tunni broneeringu oma telefonist, et keegi ootenimekirjas saaks mu koha ja mind ei laetaks no-show tasuga.
„Miks“ ütleb teile kaks asja, mida „mida“ ei öelnud: see peab telefonides töötama ning ootenimekirja ja tasu reeglid on kaasatud.
Vastuvõtukriteeriumid
Lugu ütleb, mida soovitakse. Vastuvõtukriteeriumid ütlevad, millal see on valmis. Need peavad olema piisavalt konkreetsed, et kaks inimest oleks nõus, kas iga kriteerium läbib.
Tavaline viis neid kirjutada on Eeldusel / Kui / Siis:
- Eeldusel on algne olukord
- Kui kasutaja teeb midagi
- Siis on see tulemus
Spordisaali broneerimise loo jaoks:
- Eeldusel, et mul on broneering rohkem kui 12 tundi ees, kui ma puudutan Tühista ja kinnitan, siis broneering eemaldatakse ja ma näen teadet „Broneering tühistatud“.
- Eeldusel, et ma tühistan broneeringu ja tunnil on ootenimekiri, kui tühistamine salvestub, siis saab esimene ootenimekirjas olev inimene koha ja e-kirja.
- Eeldusel broneering, mis on vähem kui 12 tunni kaugusel, kui ma puudutan Tühista, siis näen enne kinnitamist, et kehtib hilise tühistamise tasu.
- Eeldusel, et olen telefonilaiusega ekraanil, siis on nupp Tühista nähtav ilma külgsuunas kerimata.
Tavaline kontrollnimekiri toimib samuti, kui iga punkt on testitav. „Tühistamine on lihtne“ ei ole testitav. „Tühistamine võtab broneeringute nimekirjast kõige rohkem kaks puudutust“ on.
Samm-sammult: hea loo kirjutamine
Samm 1: alustage reaalsest kasutajast ja reaalsest probleemist
Valige üks kasutajatüüp ja midagi, mis neil praegu raske on. Kui olete teinud klientide intervjuusid, kasutage nende sõnu. „Ma unustan alati tühistada ja mind laetakse“ on parem algus kui „lisa tühistamise funktsioon“.
Samm 2: kirjutage üherealine lugu
Täitke mall. Kui te ei suuda kirjutada veenvat „et“-osa, küsige, kas funktsioon on üldse vajalik.
Samm 3: lisage kolm kuni kuus vastuvõtukriteeriumi
Katke kõigepealt peamine edukas juhtum, seejärel olulised variatsioonid: teine roll, tühi olek, piirang, viga. Kui kirjutate rohkem kui kuus, on lugu tõenäoliselt liiga suur.
Samm 4: märkige, mis on ulatusest väljas
Üks rida säästab palju edasi-tagasi: „Ulatusest väljas: tasuliste tundide tagasimaksed; administraatorid, kes tühistavad liikmete eest.“ See hoiab loo ehitamise ajal kasvamast.
Samm 5: kontrollige INVEST-i vastu
INVEST on tavaline kontrollnimekiri heade lugude jaoks. Lugu peaks olema:
| Täht | Tähendab | Kiire test |
|---|---|---|
| I | Sõltumatu | Saab ehitada ilma ootamata teist lugu |
| N | Läbirääkitav | Kirjeldab vajadust, mitte kindlat disaini |
| V | Väärtuslik | Kasutaja märkaks seda, kui see tootesse jõuaks |
| E | Hinnatav | Saate umbkaudu arvata, kui suur see on |
| S | Väike | Ehitatud ja testitud ühe istumisega |
| T | Testitav | Iga vastuvõtukriteeriumi saab kontrollida |
Kõiki lugusid ei pea hindama. See on kõige kasulikum, kui lugu tundub vale ja tahate teada, miks.
Head ja halvad näited
| Nõrk lugu | Probleem | Parem lugu |
|---|---|---|
| Kasutajana tahan töölauda. | Pole konkreetset kasutajat, põhjust ega testitavust | Kauplejana tahan näha ühel ekraanil tänaseid tellimusi ja käivet, et ma näen hetkega, kas päev läheb hästi. |
| Administraatorina tahan, et andmebaasis oleks staatuse veerg. | Kirjeldab teostust, mitte vajadust | Administraatorina tahan märkida tellimused saadetuks, et kliendid lõpetaksid e-kirjade saatmise, et küsida, kus nende asi on. |
| Kliendina tahan oma kontot hallata. | Liiga suur: hõlmab paljusid funktsioone | Kliendina tahan muuta oma e-posti aadressi, et kviitungid lähevad mu uude postkasti. |
| Külastajana tahan, et sait oleks kiire. | Pole lugu, vaid kvaliteet, mida kõik vajavad | Kirjutage see kriteeriumina igale loole või eraldi jõudlusnõudena. |
Kuidas jagada liiga suurt lugu
Suured lood on need, kus projektid seisma jäävad. Tavalised viisid jagamiseks:
- Kasutajarolli järgi. Liikmed tühistavad oma broneeringud; personal tühistab kellegi omad.
- Voo sammu järgi. Sirvi tunde; broneeri tund; saa meeldetuletus.
- Lihtne juhtum esimesena. Tühista tasuta tund kohe; käsitle tasusid ja tagasimakseid hilisemas loos.
- Andmete variatsiooni järgi. Toeta esmalt ühte asukohta, hiljem mitut.
- Õnnestunud tee, siis vead. Ehita esmalt töötav versioon, seejärel lisa täitunud tundide, aegunud pääsmete jms käsitlus.
Iga tükk peaks ikka olema midagi, mida kasutaja saaks kasutada ja märgata.
Kasutajalood promptidena
Kasutajalugu koos vastuvõtukriteeriumidega on väga lähedal heale prompdile AI rakenduste koostajale. See annab tehisintellektile kes, mida, miks ja valmisoleku definitsiooni. Saatke üks lugu sõnumi kohta:
Kasutajana spordisaali liikmena tahan tühistada tunni broneeringu oma telefonist, et ootenimekirjas olev inimene saaks mu koha. Vastuvõtukriteeriumid:
- Tühistamine on igal broneeringul lehel Minu broneeringud, koos kinnitusetapiga.
- 12 tundi enne tundi tühistamine lihtsalt eemaldab broneeringu.
- Vähem kui 12 tundi enne näita enne kinnitamist „Kehtib hilise tühistamise tasu 5 €“ ja salvesta tasu broneeringule.
- Kui tunnil on ootenimekiri, saab esimene inimene koha ja e-kirja.
- Töötab telefonilaiusega ekraanil. Ulatusest väljas: tagasimaksed, personal tühistamas liikmete eest. Ehita see ja kontrolli eelvaates iga kriteeriumi, siis ütle, millised läbivad.
Samuti saate paluda tehisintellektil koostada lugusid karmist ideest ja seejärel neid ise muuta:
Siin on minu rakenduse idee: [kaks-kolm lauset]. Kirjutage esimese versiooni kasutajalood, grupeerituna kasutajatüübi järgi, igaüks 3–5 Eeldusel / Kui / Siis vastuvõtukriteeriumiga. Märkige, millised on käivitamiseks hädavajalikud ja millised võivad oodata.
Alati lugege ja redigeerige tulemust. Tehisintellekt ei tunne teie kasutajaid; teie tunnete.
Vastuvõtukriteeriumid on samal ajal ka teie testplaan. Kui lugu on ehitatud, käige iga kriteerium ise läbi. Meie juhend rakenduse testimisest enne käivitamist ehitab sellele edasi.
Kus kasutajalood teiste dokumentidega sobivad
- Tootenõuete dokument kirjeldab kogu toodet: probleemi, kasutajaid, ulatust. Kasutajalood on selle sees olevad üksikasjalikud tükid. Vaata kuidas kirjutada PRD tehisintellektiga.
- Veateade kirjeldab midagi, mis on katki võrreldes juba ehitatud looga. Vaata kuidas kirjutada head veateadet.
- MVP on väikseim lugude hulk, mis annab põhiväärtuse. Vaata mis on MVP.
Levinud vead
- „Kasutajana…“ Liiga ebamäärane. Nimetage kasutaja tegelik tüüp.
- „et“-osa väljajätmine. Ilma põhjuseta ei saa te mõistlikke kompromisse teha.
- Lahenduse kirjutamine vajaduse asemel. „Tahan rippmenüüd“ lukustab disaini enne, kui keegi on sellele mõelnud.
- Kriteeriumid, mida ei saa testida. „Lihtne“, „kiire“ ja „intuitiivne“ on soovid, mitte kriteeriumid.
- Lood, mis on tegelikult epic'id. „Halda oma kontot“ on kümme lugu.
- Kõigi lugude kirjutamine ette. Kirjutage järgmised mõned põhjalikult; hoidke ülejäänud ühe lausena, kuni nendeni jõuate.
Lood Mythexis
Mythexis on režiim Plan hea koht ideede muutmiseks lugudeks: agent arutab lähenemist enne mis tahes muutmist. Kui lugu on valmis, lülituge režiimile Build ja kleepige see sisse, üks lugu sõnumi kohta. Pärast iga lugu saab /test klõpsata läbi eelvaate ja kontrollida voogu, ning kui mõni vastus läks valesti, saate selle tagasi võtta nupuga Revert to this point. Vaata dokumentatsioonist tõhusaid promptisid ja meie juhendit promptide kirjutamisest AI rakenduste koostajale.
Kasutajalooks kontrollnimekiri
- Nimetab konkreetse kasutajatüübi
- Kirjeldab vajadust, mitte disaini
- Sisaldab tegelikku „et“-põhjust
- Sisaldab kolm kuni kuus testitavat vastuvõtukriteeriumi
- Katab vähemalt ühe äärmusliku juhtumi või vea
- Märgib, mis on ulatusest väljas
- Piisavalt väike, et ehitada ja testida ühe korraga
- Kriteeriumid kontrollitud pärast ehitamist, üks kaupa
Küsimused
Mis on kasutajaloo formaat?
Tavaline mall on: Kasutajana [kasutaja tüüp] tahan [eesmärk], et [põhjus]. Sellele järgnevad vastuvõtukriteeriumid, lühike loetelu tingimustest, mis peavad olema täidetud, et lugu loetaks valmis.
Mis on vastuvõtukriteeriumid?
Vastuvõtukriteeriumid on konkreetsed, testitavad tingimused, mis määravad, millal kasutajalugu on valmis. Need kirjutatakse sageli vormis Eeldusel / Kui / Siis: eeldusel teatud algne olukord, kui kasutaja teeb midagi, siis toimub kindel tulemus.
Kui suur peaks kasutajalugu olema?
Piisavalt väike, et seda saaks ühe korraga ehitada ja testida, ning siiski ise väärtuslik. Kui loos on rohkem kui viis-kuus vastuvõtukriteeriumi või see hõlmab mitut ekraani, jagage see kasutajarolli, voo sammu või lihtsa juhtumi järgi esimesena ja äärmuslikud juhtumid hiljem.
Kas kasutajalood on kasulikud tehisintellektiga ehitamisel?
Jah. Kasutajalugu koos vastuvõtukriteeriumidega on peaaegu ideaalne prompt: see ütleb, kellele funktsioon on mõeldud, mida nad vajavad ja täpselt, kuidas kontrollida, et see töötab. Ühe loo saatmine sõnumi kohta hoiab ka tehisintellekti muudatused väikesed ja lihtsasti testitavad.