Dobički:
- Sposobnost razlikovanja funkcionalnih in nefunkcionalnih zahtev ter pisanja jasnih, merljivih izrazov zahtev s podporo umetne inteligence
- Sposobnost uporabe umetne inteligence s strukturiranimi pozivi za pridobivanje uporabniške zgodbe, meril za sprejem in omejitev obsega iz zapiskov intervjuja
- Pridobite navado preverjanja zahtev, ustvarjenih z umetno inteligenco, glede dvoumnosti, protislovij in manjkajočih pravil ter njihove potrditve z zainteresiranimi stranmi
Analiza zahtev je naloga opredelitve na popoln, jasen in preverljiv način, kaj naj sistem počne. To je ena od stopenj, kjer specialist MIS ustvari največjo vrednost; ker tukaj napaka eksponentno raste na koncu projekta. Obstajata dve osnovni vrsti analize zahtev. Funkcionalna zahteva opisuje nalogo, ki bi jo sistem moral opraviti: "Sistem mora stranki poslati e-pošto, ko potrdi naročilo." Nefunkcionalna zahteva opisuje, kakšen mora biti sistem: lastnosti, kot so zmogljivost, varnost, uporabnost in dostopnost. »Zaslon s poročilom se mora pri povprečni obremenitvi odpreti v manj kot 2 sekundah« je nefunkcionalna zahteva.
Dobra zahteva ima tri značilnosti: je jasna (ima eno samo razlago), je merljiva (ima prag, ki ga je mogoče preizkusiti) in je sledljiva (jasno je, iz katere poslovne potrebe izhaja). "Sistem mora biti hiter" ne izpolnjuje nobenega od teh; "hitro" je subjektivno, ni ga mogoče izmeriti, ni ga mogoče preizkusiti. Na tej stopnji je umetna inteligenca močna pomoč pri oblikovanju zahtev in lovljenju dvoumnega besedila; vendar se samo deležnik odloči, katero poslovno pravilo je resnično.
Uporabniška zgodba in merila sprejemljivosti
Pogost format v sodobnem pisanju zahtev je uporabniška zgodba: "Kot [vloga], za [namen], želim [funkcijo]." Primer: "Kot komercialist želim izračun popusta z zaslona mobilnega telefona, da lahko na terenu pripravim hitre ponudbe." Zgodba je kratka in poslovno naravnana; Ne vsiljuje tehnične rešitve.
Vsaka zgodba mora imeti merila sprejemljivosti: preizkusne pogoje, ki morajo biti izpolnjeni, da se zgodba šteje za "v redu". Pogosto uporabljen vzorec je vzorec "Given/When/Then": "Given: kupec je v VIP segmentu. Ko: naroči nad 10.000 TL. Nato: sistem uporabi 5% popust." Ta vzorec odpravlja dvoumnost, ker jasno povezuje stanje in pričakovani rezultat.
Namig: Ko pišete uporabniško zgodbo umetni inteligenci, ne pozabite reči "generirajte vsaj 2 merila sprejemljivosti v obliki Given/When/Then za vsako zgodbo." Ko je model prisiljen ustvariti merila uspešnosti, postanejo vidne skrite vrzeli v zahtevi.
Korak za korakom: ekstrakcija zahtev s pomočjo umetne inteligence
1. korak — Zberite neobdelane vnose. Dnevniki klicev, e-poštna sporočila, obstoječi posnetki zaslona, seznami pritožb. Več resničnega vnosa, manj izmišljotin.
2. korak — Ekstrahirajte prvi sklop zgodb. Umetni inteligenci dajte neobdelane vhodne podatke in naj ustvari osnutke uporabniških zgodb. Ta korak ni popoln seznam, ampak prvi korak.
3. korak — dodajte merila sprejemljivosti. Za vsako zgodbo ustvarite merila »Dano/Kdaj/Takrat«. Zgodba, za katero ni mogoče izdelati kriterijev, pravzaprav pomeni, da ni dovolj definirana.
4. korak — Iskanje protislovij in vrzeli. Vprašajte AI "ali obstajajo protislovja, podvajanja ali nedefinirane situacije med temi zahtevami?" Vprašajte in dajte preveriti. Filtrirajte rezultat kot človek.
5. korak — Določite prednost in potrdite. Določite prednost zgodbam z zainteresiranimi stranmi na podlagi poslovne vrednosti in nujnosti. Prednostna odločitev pripada poslovni enoti, ne AI.
Ne pozabite na nefunkcionalne zahteve
Večina projektov ima težave na terenu, ker med pisanjem funkcionalnih zahtev pozabijo na nefunkcionalne. Poročilo lahko deluje »pravilno«, a če se odpre 45 sekund, ga nihče ne bo uporabil. Naslednja tabela prikazuje pogosto spregledane vrste nefunkcionalnih zahtev in merljive primere pisanja.
Žanr
slab izraz
merljiv izraz
Učinkovitost
"Mora biti hiter"
"Odziv na poizvedbo < 2 sekundi pri povprečni obremenitvi"
dostopnost
"Vsak bi ga moral znati uporabljati"
"Združljivo z WCAG 2.1 AA; popolna navigacija s tipkovnico"
Varnost
"Moralo bi biti varno"
"Osebni podatki so v mirovanju šifrirani; dostop temelji na vlogah"
razpoložljivost
"Moralo bi biti enostavno"
"Nov uporabnik zaključi naročilo v 3 korakih brez usposabljanja"
Razpoložljivost/kontinuiteta
"Ne bi se smelo zrušiti"
"Mesečni čas delovanja ≥ 99,5 %"
Trije mini kovčki: po številkah
Primer 1 – Cena neizmerljive potrebe. Zaslon, ki so ga razvili v banki z zahtevo, da se mora "zaslon za poročilo hitro odpreti", se je pod obremenitvijo polja odprl v 22 sekundah. Razvijalec je mislil, da v svojem okolju zagotavlja besedo "hitro" (2 sekundi). Če bi bila zahteva napisana kot "< 3 sekunde ob uri največje porabe, dejanska prepustnost", bi bila težava ulovljena pri testiranju. Prenova je stala 3 tedne in merljivi dodatni stroški.
Primer 2 – Vrzel, zajeta z merili sprejemljivosti. Med pisanjem meril sprejemljivosti za zgodbo "sistem uporablja popust" v projektu e-trgovine je zainteresirana stran opazila, da o tem, kaj bi se zgodilo, če bi bil popust v nasprotju s kuponom in VIP popustom, sploh niso razpravljali. Eno samo vprašanje Given/When/Then je preprečilo napako dvojnega popusta pred objavo; Ta napaka je povzročila resno izgubo prihodkov pri podobnih projektih.
Primer 3 – pravilo, ki ga je izdelala umetna inteligenca. V projektu HR je umetna inteligenca v osnutek zahtev dodala stavek »prošnja za dopust je samodejno odobrena v 24 urah«. Na sestanku se ni razpravljalo o takšni samodejni odobritvi; Model je sestavil pravilo, ki se je zdelo »razumno«. Strokovnjak poleg vsake zahteve napiše "vir: kateri intervju/dokument?" Z dodajanjem stolpca je odstranil 4 stavke brez vira.
Šibek poziv / močan poziv
Šibek poziv:
Napišite uporabniške zgodbe za ta projekt.
Močan poziv:
Vaša vloga: Ste poslovni analitik MIS. Izvlecite uporabniške zgodbe iz spodnje opombe o intervjuju. Pravila: - Oblika: »Kot [vloga], za [namen] želim [funkcijo].« - Napišite VSAJ 2 merila sprejemljivosti za vsako zgodbo v obliki Podano/Kdaj/Potem. - Dodajte stolpec »Vir« poleg vsake zgodbe: iz katerega stavka je izšla? - Označite [NEGOTOVO] vsako pravilo, ki v opombi ni jasno; prileganje.- Zapišite merljive nefunkcionalne zahteve (zmogljivost, varnost, dostopnost) v ločen razdelek. Opomba intervjuja: [besedilo]
Zmogljiv poziv uveljavlja format zgodbe, merila sprejemljivosti, sledljivost vira in nefunkcionalne zahteve naenkrat; Tako je lažje nadzorovati izhod.
Štiri kopirane predloge
1) Pojasnilo zahtev:
Preglejte spodnjo zahtevo. Označite vsako trditev, ki je nejasna, nesorazmerljiva ali odprta za več kot eno razlago, in za vsako napišite pojasnjevalno vprašanje. Ne izmišljuj si odgovora. Zahteva: [besedilo]
2) Skeniranje protislovij:
Na spodnjem seznamu zahtev poiščite elemente, ki si nasprotujejo, se ponavljajo ali puščajo logične vrzeli. O vsaki ugotovitvi poročajte s številkami postavk in utemeljitvijo v enem stavku. Seznam: [besedilo]
3) Ustvarjanje meril za sprejemljivost:
Napišite vsaj 4 merila sprejemljivosti za naslednjo uporabniško zgodbo v obliki Podano/Kdaj/Potem, vključno z omejitvami in izjemami. Navedite tudi vse nejasne točke. Zgodba: [besedilo]
4) Oris področja uporabe:
Postavke »V obsegu« in »Izven obsega« pripravite kot tabelo z dvema stolpcema v skladu z naslednjimi zahtevami. Označite [ZAHTEVA SE POTRDITEV] za vsak predmet, za katerega niste prepričani. Zahteve: [besedilo]
Pogoste napake
- Misliti, da je rešitev potreba. »Dodaj spustni meni« je rešitev, ne zahteva. Zahteva pravi, da "uporabnik mora imeti možnost izbrati državo z opredeljenega seznama"; IT ekipa oblikuje rešitev.
- Preskakovanje nefunkcionalnih. Preprosto zapisati »kaj storiti« in pozabiti »kako biti« (hitrost, varnost, dostopnost) je najpogostejša in najdražja vrzel.
- Uporaba neizmerljivih pridevnikov. Besede, kot so "hitro, enostavno, varno, uporabniku prijazno", so neveljavne brez praga.
- Ne opazite pravila, ki ga je sestavil AI. Model lahko doda »razumna«, vendar ne dejansko izgovorjena pravila; Zahtevajte sredstva za vsako potrebo.
- Prednostno prepuščanje AI. Kaj storiti najprej, je odločitev o poslovni vrednosti; To daje poslovna enota.
Pozor: najbolj nevaren stavek v analizi zahtev je "to že vsi vedo". Neizgovorjene domneve ne pridejo v dokumentacijo, nikoli ne pridejo v kodo in se pojavijo na terenu. Vprašajte AI: "Kaj je predvideno, vendar ni zapisano v tej zahtevi?" naredi te skrite predpostavke vidne.
Če povzamem
Analiza zahtev na jasen, merljiv in sledljiv način definira, kaj mora sistem narediti. Funkcionalne zahteve opisujejo delovno mesto, nefunkcionalne pa lastnosti, na slednje pa se pogosto pozablja. Uporabniška zgodba in merila sprejemljivosti Given/When/Then so močna orodja, ki odpravljajo negotovost. Umetna inteligenca znatno pospeši izdelavo snemalnih knjig, kriterijev sprejemljivosti, zaznavanje konfliktov in pojasnjevalnih vprašanj; Vendar pa so pravilnost poslovnega pravila, obsega in prednostne odločitve ter vir vsakega stavka odgovornost človeka. Ne dokončajte nobene zahteve, ki je brez virov in je neizmerljiva.
Aplikacijska naloga
Napišite poslovno zahtevo v enem odstavku za namišljen »sistem za spletno naročanje sestankov« (npr. »Stranke bi morale imeti možnost naročanja na sestanke prek spleta, osebje bi moralo imeti možnost videti koledarje«). (1) Ustvarite vsaj 5 uporabniških zgodb in 2 merila sprejemljivosti za vsako z močnim pozivom iz te zahteve. (2) Poiščite vsaj 2 skriti vrzeli v merilih, ki jih je ustvaril model (npr. dvojni termin ob istem času, pravilo o odpovedi). (3) Vključite vsaj 3 nefunkcionalne zahteve v merljivi obliki. (4) Označite vsaj 3 elemente kot "Zunaj obsega". (5) Označi pravilo, ki si ga je morda izmislil model, in napiši, kako bi ga potrdil.
kontrolni seznam
- [ ] Ločeno sem napisal funkcionalne in nefunkcionalne zahteve.
- [ ] Vsaka zahteva je jasna, merljiva in preizkuljiva.
- [ ] Vsaka zgodba ima kriterije sprejemljivosti Podano/Kdaj/Potem.
- [ ] Lahko izsledim vir (pogovor/dokument) vsake zahteve.
- [ ] Označil sem možna pravila, ki jih je sestavil AI in jih pustil za potrditev.
- [ ] Prioriteto sem opravil skupaj s poslovno enoto.