Metodi moderni biex jiġu deskritti rekwiżiti funzjonali għal sistemi. Alistair Coburn. Reviżjoni tal-ktieb u żidiet

Il-ktieb jiddeskrivi metodu wieħed għall-kitba ta 'parti minn dikjarazzjoni ta' problema, jiġifieri l-metodu tal-każ ta 'użu.

X'inhu? Din hija deskrizzjoni tax-xenarju tal-interazzjoni tal-utent mas-sistema (jew man-negozju). F'dan il-każ, is-sistema taġixxi bħala kaxxa sewda (u dan jagħmilha possibbli li l-kompitu kumpless tad-disinn jinqasam f'interazzjoni ta 'tfassil u tiżgura din l-interazzjoni). Fl-istess ħin, jiġu introdotti standards ta' notazzjoni, li jiżguraw faċilità ta' qari, inkluż għal dawk li mhumiex parteċipanti, u jippermettu xi kontrolli għall-kompletezza u l-konformità mal-għanijiet tal-parti interessata.

Eżempju ta' każ ta' użu

Kif jidher ix-xenarju, billi tuża l-eżempju ta' awtorizzazzjoni fuq is-sit permezz tal-email:

(Sistema) Idħol fil-websajt biex taċċessa l-kont personali tiegħek. ~~ (livell tal-baħar)

Kuntest: Klijent mhux awtorizzat jidħol fis-sit sabiex is-sit jirrikonoxxih u juri informazzjoni personali għalih: l-istorja tal-browsing, l-istorja tax-xiri, in-numru attwali ta 'punti bonus, eċċ., billi juża l-email bħala login. 
Livell: għan tal-utent
Karattru ewlieni: klijent (viżitatur tal-ħanut online tagħna)
Skop: Interazzjoni tal-klijent mal-websajt tal-ħanut online
Partijiet interessati u interessi:

  • in-negozjant irid li n-numru massimu ta 'viżitaturi tas-sit jiġi identifikat għal kopertura akbar ta' mailings personali,
  • l-ispeċjalista tas-sigurtà jrid jiżgura li ma jkun hemm l-ebda każ ta’ aċċess mhux awtorizzat għad-dejta personali tal-viżitatur, inklużi tentattivi biex wieħed isib il-password għal kont wieħed jew ifittex kont b’password dgħajfa,
  • l-attakkant irid jikseb aċċess għall-bonuses tal-vittma,
  • il-kompetituri jridu jħallu reviżjonijiet negattivi fuq il-prodotti,
  • Il-botnet irid jikseb il-bażi tal-klijenti tal-maħżen u juża attakk biex jagħmel is-sit inoperabbli.

Prekundizzjonijiet: il-viżitatur m'għandux ikun awtorizzat.
Garanziji minimi: il-viżitatur ikun jaf jekk l-attentat ta' awtorizzazzjoni kienx ta' suċċess jew le.
Garanziji ta' suċċess: il-viżitatur huwa awtorizzat.

Xenarju ewlieni:

  1. Il-klijent jibda l-awtorizzazzjoni.
  2. Is-sistema tikkonferma li l-klijent mhuwiex awtorizzat u ma jaqbiżx in-numru ta 'attentati ta' awtorizzazzjoni mingħajr suċċess minn sessjoni partikolari (tfittxija għal password dgħajfa għal kontijiet multipli) skond "Regola ta 'Sigurtà Nru 23".
  3. Is-sistema żżid il-counter għan-numru ta' tentattivi ta' awtorizzazzjoni.
  4. Is-sistema turi formola ta' awtorizzazzjoni lill-klijent.
  5. Il-klijent idaħħal l-email u l-password tiegħu.
  6. Is-sistema tikkonferma l-preżenza ta 'klijent b'email bħal din fis-sistema u li l-password taqbel u n-numru ta' tentattivi ta 'login f'dan il-kont ma jinqabiżx skont "Regola ta' Sigurtà Nru 24".
  7. Is-sistema tawtorizza lill-klijent, iżżid l-istorja tal-browsing u l-basket ta 'din is-sessjoni mal-aħħar sessjoni ta' dan il-kont tal-klijent.
  8. Is-sistema turi messaġġ ta 'suċċess ta' awtorizzazzjoni u timxi għall-pass tal-iskript li minnu l-klijent ġie interrott għall-awtorizzazzjoni. F'dan il-każ, id-dejta fuq il-paġna terġa' tiġi mgħobbija b'kont meħud tad-dejta tal-kont personali.

Estensjonijiet:
2.a. Il-klijent huwa diġà awtorizzat:
 2.a.1. Is-sistema tinnotifika lill-klijent dwar il-fatt tal-awtorizzazzjoni mwettqa qabel u toffri li jew tinterrompi l-iskrittura jew tmur għall-pass 4, u jekk il-pass 6 jitlesta b'suċċess, allura l-pass 7 jitwettaq bi kjarifika:
 2.a.7. Is-sistema tiddeactorizes lill-klijent taħt il-kont il-qadim, tawtorizza lill-klijent taħt il-kont il-ġdid, filwaqt li l-istorja tal-ibbrawżjar u l-karrettun ta 'din is-sessjoni ta' interazzjoni jibqgħu fil-kont il-qadim u ma jittrasferixxux għal dak il-ġdid. Sussegwentement, mur għall-pass 8.
2.b In-numru ta’ tentattivi ta’ awtorizzazzjoni qabeż il-limitu skont ir-“Regola ta’ Sigurtà Nru 23”:
 2.b.1 Mur fil-pass 4, captcha jintwera addizzjonalment fuq il-formola tal-awtorizzazzjoni
 2.b.6 Is-sistema tikkonferma d-dħul korrett tal-captcha
    2.b.6.1 Captcha mdaħħal ħażin:
      2.b.6.1.1. is-sistema żżid il-counter ta 'tentattivi ta' awtorizzazzjoni bla suċċess għal dan il-kont ukoll
      2.b.6.1.2. is-sistema turi messaġġ ta' falliment u terġa' lura għall-pass 2
6.a. Ma nstab l-ebda kont b'din l-email:
 6.a.1 Is-sistema turi messaġġ dwar il-falliment u toffri għażla li jew tmur għall-pass 2 jew tmur fix-xenarju ta’ “Reġistrazzjoni tal-Utent” u ssalva l-email imdaħħla,
6.b. Il-password għall-kont b'din l-email ma taqbilx ma' dik imdaħħla:
 6.b.1 Is-sistema żżid il-counter ta' tentattivi ta' login li ma rnexxewx f'dan il-kont.
 6.b.2 Is-sistema turi messaġġ dwar il-falliment u toffri għażla li jew tmur għax-xenarju ta' "Irkupru tal-Password" jew tmur għall-pass 2.
6.c: Il-counter tat-tentattivi ta' login għal dan il-kont qabeż il-limitu għal "Regola ta' Sigurtà Nru 24."
 6.c.1 Is-sistema turi messaġġ dwar l-imblukkar tal-login tal-kont għal X minuti u tipproċedi għall-pass 2.

X'inhu kbir

Kontrolli għall-kompletezza u l-konformità mal-għanijiet, jiġifieri, tista 'tagħti rekwiżiti lil analista ieħor għall-verifika, u tagħmel inqas żbalji fl-istadju tal-formulazzjoni tal-problema.

Il-ħidma b'sistema ta 'kaxxa sewda tippermettilek li tissepara l-iżvilupp u l-koordinazzjoni mal-klijent ta' dak li se jkun awtomatizzat mill-metodi ta 'implimentazzjoni.

Hija parti mit-triq tal-analista, waħda mill-partijiet ewlenin tal-użabilità. Ix-xenarju tal-utent jiddefinixxi l-mogħdijiet ewlenin tal-moviment tiegħu, li jnaqqas ħafna l-libertà tal-għażla għad-disinjatur u l-klijent u jgħin biex tiżdied il-veloċità tal-iżvilupp tad-disinn.

Ninsab kuntent ħafna bil-post fid-deskrizzjoni fejn huma identifikati eċċezzjonijiet għal kull pass ta 'interazzjoni. Sistema kompleta tal-IT trid tipprovdi għal xi tip ta' ġestjoni tal-eċċezzjonijiet, xi wħud manwalment, uħud awtomatikament (bħal fl-eżempju ta' hawn fuq).

L-esperjenza turi li t-tqandil tal-eċċezzjonijiet mhux maħsub jista 'faċilment jibdel sistema f'sistema terriblement inkonvenjenti. Niftakar l-istorja meta fi żminijiet Sovjetiċi, biex tieħu deċiżjoni, kellek tikseb diversi approvazzjonijiet minn servizzi differenti, u kemm tkun uġigħ meta jgħid l-aħħar servizz - iżda l-applikazzjoni tiegħek tkun f'isem ħażin jew xi żball ieħor f' punteġġjatura, erġa kollox u ikkoordina kollox mill-ġdid.

Spiss niltaqa' ma' sitwazzjonijiet fejn il-loġika operattiva ta' sistema li ma kinitx maħsuba għal eċċezzjonijiet kienet teħtieġ ħidma mill-ġdid sinifikanti tas-sistema. Minħabba dan, is-sehem tal-iljun tax-xogħol tal-analista jintefaq fuq l-immaniġġjar tal-eċċezzjonijiet.

In-notazzjoni tat-test, għall-kuntrarju tad-dijagrammi, tippermetti li jiġu identifikati u koperti aktar eċċezzjonijiet.

Żieda mal-metodu mill-prattika

Il-każ tal-użu mhuwiex parti prijoritizzata b'mod indipendenti tad-dikjarazzjoni, b'differenza mill-istorja tal-utent.

Fix-xenarju ta' hawn fuq, ikkunsidra l-eċċezzjoni “6.a. Ma nstab l-ebda kont b'din l-email.” u l-pass li jmiss "6.a.1 Is-sistema turi messaġġ ta' ħsara u tipproċedi għall-pass 2." X’affarijiet negattivi tħallew wara l-kwinti? Għall-klijent, kull ritorn huwa ekwivalenti għall-fatt li x-xogħol kollu li għamel biex idaħħal id-data jintrema f'landfill. (Mhux viżibbli fl-iskrittura!) X'jista' jsir? Ibni mill-ġdid l-iskript sabiex dan ma jseħħx. Huwa possibbli li tagħmel dan? Tista' - bħala eżempju, tħares lejn l-iskript ta' awtorizzazzjoni ta' Google.

Ottimizzazzjoni tax-xenarju

Il-ktieb jitkellem dwar il-formalizzazzjoni, iżda ftit jgħid dwar metodi biex jiġu ottimizzati xenarji bħal dawn.

Iżda huwa possibbli li jissaħħaħ il-metodu billi jiġu ottimizzati xenarji, u l-metodu ta 'formalizzazzjoni tal-każ ta' użu jippermetti li dan isir. Speċifikament, trid taħseb dwar kull eċċezzjoni li sseħħ, tiddetermina l-kawża, u tibni mill-ġdid l-iskrittura sabiex teħles mill-eċċezzjoni jew timminimizza l-vjaġġ tal-klijent.

Meta tagħmel ordni minn ħanut online, trid tidħol fil-belt tal-kunsinna. Jista 'jirriżulta li l-maħżen ma jistax iwassal oġġetti lejn il-belt magħżula mill-klijent minħabba li ma jwassalx hemmhekk, minħabba restrizzjonijiet ta' daqs, jew minħabba n-nuqqas ta 'oġġetti fil-maħżen korrispondenti.

Jekk sempliċement niddeskrivu x-xenarju ta 'interazzjoni fl-istadju tar-reġistrazzjoni, nistgħu niktbu "ninforma lill-klijent li l-kunsinna hija impossibbli u noffru li tibdel il-belt jew il-kontenut tal-karrettun" (u ħafna analisti novizzi jieqfu hemm). Imma jekk ikun hemm ħafna każijiet bħal dawn, allura x-xenarju jista 'jiġi ottimizzat.

L-ewwel ħaġa li trid tagħmel hu li tħallik tagħżel biss il-belt fejn nistgħu nwasslu. Meta tagħmel dan? Qabel ma tagħżel prodott fuq il-websajt (awtodetection tal-belt permezz ta 'IP bi kjarifika).

It-tieni nett, irridu nagħtu għażla biss tal-merkanzija li nistgħu nwasslu lill-klijent. Meta tagħmel dan? Fil-mument tal-għażla - fuq il-madum tal-prodott u l-karta tal-prodott.

Dawn iż-żewġ bidliet imorru ħafna lejn l-eliminazzjoni ta 'din l-eċċezzjoni.

Rekwiżiti għal kejl u metriċi

Meta tikkunsidra l-kompitu li timminimizza l-immaniġġjar tal-eċċezzjonijiet, tista’ tissettja kompitu ta’ rappurtar (il-każ tal-użu mhuwiex deskritt). Kemm kien hemm eċċezzjonijiet, f'liema każijiet seħħew, flimkien ma' kemm xenarji deħlin għaddew b'suċċess.

Imma sfortunatament. L-esperjenza wriet li r-rekwiżiti ta' rappurtar għal xenarji f'din il-forma mhumiex biżżejjed; huwa meħtieġ li jiġu kkunsidrati r-rekwiżiti ta' rappurtar għal proċessi li huma deskritti prinċipalment mhux fil-forma ta' każ ta' użu.

Aċċess għall-Użabilità

Fil-prattika tagħna, aħna espandew il-formola tad-deskrizzjoni tal-każ ta 'użu b'deskrizzjoni ta' attributi speċifiċi ta 'entitajiet u data għall-klijent biex jieħu deċiżjoni, li ttejjeb l-użabilità sussegwenti.

Għad-disinn tal-użabilità, aħna żidna taqsima tal-input - dejta tal-wiri.

F'xenarju b'awtorizzazzjoni, dan huwa l-fatt li l-klijent huwa awtorizzat fis-sistema. Jekk il-klijent ikun awtorizzat minn qabel, imbagħad uri twissija dwar il-bidla tal-istorja tan-navigazzjoni u l-karrettun għall-kont il-ġdid wara awtorizzazzjoni b'suċċess.

B'mod ġenerali, din hija wirja tal-informazzjoni meħtieġa għall-klijent sabiex ikun jista' jieħu deċiżjoni dwar l-azzjonijiet ulterjuri tiegħu skont ix-xenarju (tista' tistaqsi jekk din id-dejta hijiex biżżejjed għall-klijent, x'hemm bżonn ieħor, x'informazzjoni tagħmel il-klijent jeħtieġ li jieħu deċiżjonijiet).  
Ta 'min ukoll taqsam l-informazzjoni mdaħħla f'oqsma ta' input jekk jiġu pproċessati separatament u bil-formazzjoni ta 'eċċezzjonijiet differenti.

Fl-eżempju bl-awtorizzazzjoni tal-klijent, jekk tissepara l-informazzjoni mdaħħla fil-login u l-password, allura ta 'min ibiddel l-iskrittura tal-awtorizzazzjoni biex tenfasizza l-istadji tad-dħul ta' login separat u password separata (u dan isir f'Yandex, Google, iżda mhux magħmul fil-biċċa l-kbira tal-ħwienet online).

Jintlaħqu t-trasformazzjonijiet tad-dejta meħtieġa

Tista 'wkoll tiġbed ir-rekwiżiti għall-algoritmi ta' konverżjoni tad-dejta mill-iskrittura.

Eżempji:

  • Biex jieħu deċiżjoni li jixtri prodott f'ħanut online, il-klijent jeħtieġ li jkun jaf fuq il-karta tal-prodott il-possibbiltà, l-ispiża, il-ħin tal-kunsinna lejn il-belt tiegħu ta 'dan il-prodott (li huma kkalkulati mill-algoritmu bbażati fuq id-disponibbiltà tal-prodott f' imħażen u parametri tal-katina tal-provvista).
  • Meta ddaħħal frażi fil-linja tat-tfittxija, il-klijent jintwera suġġerimenti ta 'tfittxija skont l-algoritmu (li huma ġġenerati mill-algoritmu...).

B'kollox

B'mod ġenerali, wara li taqra l-ktieb, sfortunatament, mhuwiex ċar kif tmur it-triq kollha minn analista għal problemi tan-negozju għal speċifikazzjoni teknika formalizzata għal żviluppatur. Il-ktieb jgħidlekx biss parti mill-proċess, bil-passi tal-input mhux ċari u l-passi li jmiss mhux ċari. Il-każ tal-użu innifsu ħafna drabi mhuwiex dikjarazzjoni kompluta għall-iżviluppatur.

Madankollu, dan huwa mod tajjeb ħafna biex tifformalizza u tipproċessa xenarji ta 'interazzjoni bejn oġġett u suġġett, meta l-interazzjoni tikkawża bidla f'xi ħaġa fis-suġġett. Huwa wieħed mill-ftit metodi ta 'kitba li jippermetti rekwiżiti verifikabbli b'punti ta' tfittxija ta 'eċċezzjoni espliċiti.

Il-ktieb huwa indispensabbli biex l-analisti jibdew jiktbu drammi li jistgħu jiġu ttestjati.

Sors: www.habr.com

Żid kumment