Ang modernong mga pamaagi alang sa paghulagway sa mga kinahanglanon sa pagpaandar alang sa mga sistema. Alistair Coburn. Pagrepaso sa libro ug mga pagdugang

Gihubit sa libro ang usa ka paagi sa pagsulat bahin sa usa ka pahayag sa problema, nga mao ang pamaagi sa paggamit sa kaso.

Unsa ni? Kini usa ka paghulagway sa senaryo sa interaksiyon sa tiggamit sa sistema (o sa negosyo). Niini nga kaso, ang sistema naglihok isip usa ka itom nga kahon (ug kini nagpaposible sa pagbahin sa komplikadong buluhaton sa disenyo ngadto sa pagdesinyo sa interaksyon ug pagsiguro niini nga interaksyon). Sa samang higayon, gipaila ang mga sukdanan sa notasyon, nga nagsiguro sa kasayon ​​sa pagbasa, lakip sa mga dili partisipante, ug nagtugot sa pipila ka mga pagsusi alang sa pagkakompleto ug pagsunod sa mga tumong sa stakeholder.

Gamita ang pananglitan sa kaso

Unsa ang hitsura sa senaryo, gamit ang panig-ingnan sa pagtugot sa site pinaagi sa email:

(System) Log in sa website aron ma-access ang imong personal nga account. ~~ (dagat)

Konteksto: Ang usa ka dili awtorisado nga kliyente nag-log in sa site aron ang site makaila kaniya ug magpakita sa personal nga impormasyon alang kaniya: kasaysayan sa pag-browse, kasaysayan sa pagpalit, kasamtangan nga gidaghanon sa mga puntos sa bonus, ug uban pa, gamit ang email isip login. 
Ang lebel: tumong sa tiggamit
Panguna nga karakter: kliyente (bisita sa among online nga tindahan)
Kasangkaran: Interaksyon sa kliyente sa website sa online store
Mga stakeholder ug interes:

  • gusto sa tigpamaligya nga ang labing kadaghan nga mga bisita sa site mailhan alang sa labi nga pagsakop sa mga personal nga pagpadala,
  • gusto sa espesyalista sa seguridad nga masiguro nga wala’y mga kaso sa dili awtorisado nga pag-access sa personal nga data sa bisita, lakip ang pagsulay sa pagtag-an sa password alang sa usa ka account o pagpangita sa usa ka account nga adunay huyang nga password,
  • gusto sa tig-atake nga maka-access sa mga bonus sa biktima,
  • Gusto sa mga kakompetensya nga magbilin negatibo nga mga pagsusi sa mga produkto,
  • Gusto sa botnet nga makuha ang base sa kostumer sa tindahan ug mogamit usa ka pag-atake aron dili magamit ang site.

Preconditions: ang bisita kinahanglan dili awtorisado.
Minimum nga mga garantiya: mahibal-an sa bisita kung ang pagsulay sa pagtugot nagmalampuson o wala.
Mga garantiya sa kalampusan: awtorisado ang bisita.

Panguna nga senaryo:

  1. Gisugdan sa kliyente ang pagtugot.
  2. Gipamatud-an sa sistema nga ang kliyente dili awtorisado ug dili molapas sa gidaghanon sa wala molampos nga mga pagsulay sa pagtugot gikan sa gihatag nga sesyon (pagpangita sa huyang nga password alang sa daghang mga account) sumala sa "Security Rule No. 23".
  3. Ang sistema nagdugang sa counter alang sa gidaghanon sa mga pagsulay sa pagtugot.
  4. Gipakita sa sistema ang porma sa pagtugot sa kliyente.
  5. Ang kliyente mosulod sa iyang email ug password.
  6. Gipamatud-an sa sistema ang presensya sa usa ka kliyente nga adunay ingon nga email sa sistema ug nga ang password nagtugma ug ang gidaghanon sa mga pagsulay sa pag-login niini nga account dili molapas sumala sa "Security Rule No. 24".
  7. Gitugotan sa sistema ang kliyente, gidugang ang kasaysayan sa pag-browse ug ang bukag niini nga sesyon sa katapusan nga sesyon sa kini nga account sa kliyente.
  8. Gipakita sa sistema ang usa ka mensahe sa kalampusan sa pagtugot ug mibalhin sa lakang sa script diin ang kliyente nabalda alang sa pagtugot. Sa kini nga kaso, ang datos sa panid gi-reload nga gikonsiderar ang personal nga datos sa account.

Mga extension:
2.a. Ang kliyente awtorisado na:
 2.a.1. Ang sistema nagpahibalo sa kliyente bahin sa kamatuoran sa kaniadto nga gihimo nga pagtugot ug nagtanyag nga mabalda ang script o moadto sa lakang 4, ug kung ang lakang 6 malampuson nga nahuman, ang lakang 7 gihimo uban ang pagpatin-aw:
 2.a.7. Ang sistema nag-deactorize sa kliyente ubos sa daan nga account, nagtugot sa kliyente ubos sa bag-ong account, samtang ang kasaysayan sa pag-browse ug cart niini nga sesyon sa interaksyon magpabilin sa daan nga account ug dili ibalhin ngadto sa bag-o. Sunod, adto sa lakang 8.
2.b Ang gidaghanon sa mga pagsulay sa pagtugot milapas sa threshold sumala sa "Lagda sa Seguridad No. 23":
 2.b.1 Adto sa lakang 4, usa ka captcha ang dugang nga gipakita sa porma sa pagtugot
 2.b.6 Ang sistema nagpamatuod sa husto nga captcha entry
    2.b.6.1 Sayop ang pagsulod sa Captcha:
      2.b.6.1.1. ang sistema nagdugang sa counter sa wala molampos nga pagtugot sa pagsulay alang niini nga account usab
      2.b.6.1.2. ang sistema nagpakita sa usa ka mensahe sa kapakyasan ug mibalik sa lakang 2
6.a. Walay account nga adunay kini nga email nga nakit-an:
 6.a.1 Ang sistema nagpakita sa usa ka mensahe mahitungod sa kapakyasan ug nagtanyag sa usa ka pagpili sa pag-adto sa lakang 2 o sa pag-adto sa "User Registration" senaryo ug sa pagluwas sa gisulod nga email,
6.b. Ang password alang sa account nga adunay kini nga email dili motakdo sa usa nga gisulod:
 6.b.1 Ang sistema nagdugang sa counter sa dili malampuson nga mga pagsulay sa pag-login sa kini nga account.
 6.b.2 Ang sistema nagpakita sa usa ka mensahe mahitungod sa kapakyasan ug nagtanyag og usa ka pagpili sa pag-adto sa β€œPassword Recovery” nga senaryo o pag-adto sa step 2.
6.c: Ang counter sa pagsulay sa pag-login alang niini nga account milapas sa threshold alang sa "Lagda sa Seguridad No. 24."
 6.c.1 Ang sistema nagpakita ug mensahe bahin sa pag-block sa pag-login sa account sulod sa X minutos ug mopadayon sa lakang 2.

Unsa ka nindot

Pagsusi alang sa pagkakompleto ug pagsunod sa mga katuyoan, nga mao, mahimo nimong hatagan ang mga kinahanglanon sa lain nga analista alang sa pag-verify, nga naghimo labi ka gamay nga mga sayup sa yugto sa pagporma sa problema.

Ang pagtrabaho sa usa ka sistema sa itom nga kahon nagtugot kanimo sa pagbulag sa pag-uswag ug koordinasyon sa kustomer kung unsa ang awtomatiko gikan sa mga pamaagi sa pagpatuman.

Kabahin kini sa agianan sa analista, usa sa mga nag-unang bahin sa usability. Ang senaryo sa tiggamit naghubit sa mga nag-unang agianan sa iyang paglihok, nga makapakunhod pag-ayo sa kagawasan sa pagpili alang sa tigdesinyo ug sa kustomer ug makatabang sa pagdugang sa katulin sa pagpalambo sa disenyo.

Nalipay kaayo ko sa lugar sa paghulagway diin ang mga eksepsiyon sa matag lakang sa interaksyon giila. Ang usa ka kompleto nga sistema sa IT kinahanglan maghatag alang sa usa ka matang sa pagdumala sa eksepsiyon, ang uban mano-mano, ang uban awtomatiko (sama sa pananglitan sa ibabaw).

Gipakita sa kasinatian nga ang dili maayo nga paghunahuna sa pagdumala sa eksepsiyon dali nga makahimo sa usa ka sistema nga usa ka dili kaayo kombenyente nga sistema. Nahinumdom ko sa istorya sa dihang sa panahon sa Sobyet, aron makakuha og desisyon, kinahanglan ka nga makakuha og daghang mga pag-apruba gikan sa lain-laing mga serbisyo, ug unsa kasakit kini sa diha nga ang katapusan nga serbisyo nag-ingon - apan ang imong aplikasyon anaa sa sayop nga ngalan o sa uban nga sayop sa punctuation, buhata ang tanan ug i-coordinate pag-usab ang tanan.

Kanunay kong makit-an ang mga sitwasyon diin ang operating logic sa usa ka sistema nga wala gihunahuna alang sa mga eksepsiyon nanginahanglan hinungdanon nga pagbag-o sa sistema. Tungod niini, ang dako nga bahin sa trabaho sa analista gigasto sa pagdumala sa eksepsiyon.

Ang notasyon sa teksto, sukwahi sa mga diagram, nagtugot sa daghang mga eksepsiyon nga mailhan ug matabonan.

Dugang sa pamaagi gikan sa praktis

Ang kaso sa paggamit dili usa ka independente nga prayoridad nga bahin sa pahayag, dili sama sa istorya sa tiggamit.

Sa senaryo sa ibabaw, ikonsiderar ang eksepsiyon β€œ6.a. Wala’y nakit-an nga account nga adunay kini nga email. ” ug ang sunod nga lakang "6.a.1 Ang sistema nagpakita sa usa ka mensahe sa kapakyasan ug nagpadayon sa lakang 2." Unsang negatibo nga mga butang ang nahabilin sa mga talan-awon? Alang sa kliyente, ang bisan unsang pagbalik katumbas sa kamatuoran nga ang tanan nga trabaho nga iyang gihimo sa pagsulod sa datos gilabay sa usa ka landfill. (Dili lang kini makita sa script!) Unsa ang mahimo? Pagtukod pag-usab sa script aron dili kini mahitabo. Posible ba nga buhaton kini? Mahimo nimo - isip pananglitan, tan-awa ang script sa pagtugot sa Google.

Pag-optimize sa senaryo

Ang libro naghisgot bahin sa pormalisasyon, apan gamay ra ang gisulti bahin sa mga pamaagi sa pag-optimize sa ingon nga mga senaryo.

Apan posible nga mapalig-on ang pamaagi pinaagi sa pag-optimize sa mga senaryo, ug ang paagi sa pagpormal sa use case nagtugot niini nga mahimo. Sa piho, kinahanglan nimo nga hunahunaon ang matag eksepsiyon nga mahitabo, mahibal-an ang hinungdan, ug tukuron pag-usab ang script aron mawala ang eksepsiyon o maminusan ang pagbiyahe sa kustomer.

Kung nagbutang usa ka order gikan sa usa ka online nga tindahan, kinahanglan ka mosulod sa lungsod sa pagpadala. Mahimo nga ang tindahan dili makahatud sa mga butang sa lungsod nga gipili sa kliyente tungod kay wala kini maghatud didto, tungod sa mga pagdili sa gidak-on, o tungod sa kakulang sa mga butang sa katugbang nga bodega.

Kung ihulagway lang nato ang senaryo sa interaksyon sa yugto sa pagrehistro, mahimo natong isulat ang "ipahibalo sa kliyente nga imposible ang paghatod ug itanyag nga usbon ang siyudad o ang sulod sa kariton" (ug daghang mga bag-ong analista ang mihunong didto). Apan kung adunay daghang ingon nga mga kaso, nan ang senaryo mahimong ma-optimize.

Ang unang butang nga kinahanglan nimong buhaton mao ang pagpili kanimo lamang sa siyudad diin kami makahatod. Kanus-a kini buhaton? Sa wala pa magpili usa ka produkto sa website (autodetection sa lungsod pinaagi sa IP nga adunay pagpatin-aw).

Ikaduha, kinahanglan nga hatagan namon ang pagpili lamang sa mga butang nga mahimo namon ihatud sa kliyente. Kanus-a kini buhaton? Sa panahon sa pagpili - sa tile sa produkto ug card sa produkto.

Kini nga duha ka mga pagbag-o moadto sa usa ka taas nga paagi sa pagwagtang niini nga eksepsiyon.

Mga kinahanglanon alang sa mga sukod ug sukod

Kung gikonsiderar ang tahas sa pagminus sa pagdumala sa eksepsiyon, mahimo nimong itakda ang usa ka buluhaton sa pagreport (wala gihubit ang kaso sa paggamit). Pila ka mga eksepsiyon ang naa, kung unsang mga kaso ang nahitabo, dugang kung pila ka mga umaabot nga mga senaryo ang malampuson nga milabay.

Apan alaot. Gipakita sa kasinatian nga ang pagreport sa mga kinahanglanon alang sa mga senaryo sa kini nga porma dili igo; kinahanglan nga tagdon ang mga kinahanglanon sa pagtaho alang sa mga proseso nga gihulagway sa panguna dili sa porma sa usa ka kaso sa paggamit.

Pag-access sa Usability

Sa among praktis, among gipalapdan ang porma sa paghubit sa kaso sa paggamit nga adunay usa ka paghulagway sa mga piho nga mga kinaiya sa mga entidad ug datos alang sa kliyente aron makahimo usa ka desisyon, nga nagdugang sa sunod nga pagkagamit.

Alang sa disenyo sa usability, nagdugang kami usa ka seksyon sa input - ipakita ang datos.

Sa usa ka senaryo nga adunay pagtugot, kini ang kamatuoran nga ang kliyente gitugotan sa sistema. Kung ang kliyente pre-awtorisado, dayon ipakita ang usa ka pasidaan bahin sa pagbalhin sa kasaysayan sa nabigasyon ug kariton sa bag-ong account pagkahuman sa malampuson nga pagtugot.

Sa kinatibuk-an, kini usa ka pagpakita sa gikinahanglan nga kasayuran alang sa kliyente aron makahimo siya usa ka desisyon bahin sa iyang dugang nga mga aksyon sumala sa senaryo (mahimo nimong pangutan-on kung kini nga datos igo ba alang sa kliyente, unsa pa ang kinahanglan, kung unsa nga kasayuran ang mahimo ang kliyente kinahanglan nga maghimo mga desisyon).  
Angayan usab nga bahinon ang gisulod nga impormasyon ngadto sa mga input field kung giproseso kini nga gilain ug uban ang pagporma sa lainlaing mga eksepsiyon.

Sa panig-ingnan nga adunay pagtugot sa kliyente, kung imong gibulag ang gisulod nga kasayuran sa pag-login ug password, nan angay nga usbon ang script sa pagtugot aron ipasiugda ang mga yugto sa pagsulod sa usa ka bulag nga pag-login ug usa ka bulag nga password (ug kini gihimo sa Yandex, Google, apan wala gibuhat sa kadaghanan sa mga online store).

Pag-abot sa gikinahanglan nga mga pagbag-o sa datos

Mahimo usab nimo makuha ang mga kinahanglanon alang sa mga algorithm sa pagkakabig sa datos gikan sa script.

mga panig-ingnan:

  • Aron makahimo usa ka desisyon sa pagpalit sa usa ka produkto sa usa ka online nga tindahan, kinahanglan mahibal-an sa kliyente sa kard sa produkto ang posibilidad, gasto, oras sa paghatud sa kini nga produkto sa iyang lungsod (nga gikalkula sa algorithm base sa pagkaanaa sa produkto sa mga bodega ug mga parameter sa kadena sa suplay).
  • Kung nagsulod sa usa ka hugpong sa mga pulong sa linya sa pagpangita, ang kliyente gipakita nga mga sugyot sa pagpangita sumala sa algorithm (nga gihimo sa algorithm ...).

Total

Sa kinatibuk-an, pagkahuman sa pagbasa sa libro, sa kasubo, dili klaro kung giunsa ang pag-adto gikan sa usa ka analista hangtod sa mga problema sa negosyo hangtod sa usa ka pormal nga teknikal nga detalye alang sa usa ka developer. Ang libro nagsulti lamang sa bahin sa proseso, nga ang input nga mga lakang dili klaro ug ang sunod nga mga lakang dili klaro. Ang kaso sa paggamit mismo kasagaran dili usa ka kompleto nga pahayag alang sa developer.

Bisan pa, kini usa ka maayo kaayo nga paagi aron mapormal ug maproseso ang mga senaryo sa interaksyon tali sa usa ka butang ug usa ka hilisgutan, kung ang interaksyon hinungdan sa pagbag-o sa usa ka butang sa hilisgutan. Usa kini sa pipila ka mga pamaagi sa pagsulat nga nagtugot sa mapamatud-an nga mga kinahanglanon nga adunay klaro nga mga punto sa pagpangita sa eksepsiyon.

Ang libro usa ka kinahanglan nga basahon alang sa mga analista aron magsugod sa pagsulat sa masulayan nga mga dula.

Source: www.habr.com

Idugang sa usa ka comment