Sistemen eskakizun funtzionalak deskribatzeko metodo modernoak. Alistair Coburn. Liburuaren berrikuspena eta gehigarriak

Liburuak problema-adierazpen baten zati bat idazteko metodo bat deskribatzen du, hau da, erabilera kasuaren metodoa.

Zer da hau? Hau erabiltzailearen sistemarekin (edo negozioarekin) elkarrekintzaren eszenatokiaren deskribapena da. Kasu honetan, sistemak kutxa beltz baten moduan jokatzen du (eta horri esker diseinu-zeregin konplexua elkarrekintza diseinatzean eta elkarrekintza hori ziurtatzean banatzea ahalbidetzen du). Aldi berean, notazio estandarrak sartzen dira, eta horrek irakurtzeko erraztasuna bermatzen du, parte-hartzaile ez direnentzat barne, eta parte-hartzaileen helburuak osotasunean eta betetzen direla egiaztatzea ahalbidetzen du.

Erabilera kasuaren adibidea

Eszenatokiak nolakoa den, posta elektroniko bidez webguneko baimenaren adibidea erabiliz:

(Sistema) Hasi saioa webgunean zure kontu pertsonalean sartzeko. ~~ (itsas maila)

Testuingurua: Baimenik gabeko bezero bat gunean sartzen da, guneak hura ezagutu eta harentzat informazio pertsonala erakusteko: nabigazio-historia, erosketa-historia, uneko bonus-puntuen kopurua, etab., posta elektronikoa saio-hasiera gisa erabiliz. 
maila: erabiltzailearen helburua
Pertsonaia nagusia: bezeroa (gure lineako dendaren bisitaria)
Eremua: Bezeroaren interakzioa lineako dendaren webgunearekin
Interesdunak eta interesak:

  • merkatariak guneko bisitari kopuru maximoa identifikatzea nahi du posta pertsonalen estaldura handiagoa izateko,
  • segurtasun espezialistak bisitariaren datu pertsonaletarako baimenik gabeko sarbiderik ez dagoela ziurtatu nahi du, kontu baten pasahitza asmatzeko edo pasahitz ahula duen kontu bat bilatzeko saiakerak barne,
  • erasotzaileak biktimaren hobarietarako sarbidea lortu nahi du,
  • lehiakideek produktuen iritzi negatiboak utzi nahi dituzte,
  • Botnet-ek dendaren bezero-basea lortu nahi du eta eraso bat erabili gunea erabilezina izan dadin.

Aurrebaldintzak: bisitariak ez du baimenik izan behar.
Gutxieneko bermeak: bisitariak jakingo du baimen-saiakerak arrakasta izan duen ala ez.
Arrakastaren bermeak: bisitaria baimenduta dago.

Eszenatoki nagusia:

  1. Bezeroak baimena ematen du.
  2. Sistemak berresten du bezeroa ez dagoela baimendurik eta ez duela gainditzen saio jakin bateko baimen-saiakerak arrakastarik gabe (kontu askotarako pasahitz ahula bilatuz) "Segurtasun-arauaren 23. zenbakia"ren arabera.
  3. Sistemak baimen-saiakera kopuruaren kontagailua handitzen du.
  4. Sistemak baimen-inprimakia erakusten dio bezeroari.
  5. Bezeroak bere posta elektronikoa eta pasahitza sartzen ditu.
  6. Sistemak baieztatzen du sisteman halako posta elektronikoa duen bezero bat dagoela eta pasahitza bat datorrela eta kontu honetan saioa hasteko saiakera kopurua ez dela gainditzen "Segurtasun-arauaren 24. zenbakia"ren arabera.
  7. Sistemak bezeroari baimena ematen dio, nabigazio-historia eta saio honetako saskia gehitzen ditu bezero-kontu honen azken saioarekin.
  8. Sistemak baimenaren arrakasta-mezu bat bistaratzen du eta bezeroak baimena jasotzeko eten duen script-urratsera mugitzen da. Kasu honetan, orrialdeko datuak birkargatzen dira kontu pertsonaleko datuak kontuan hartuta.

Luzapenak:
2.a. Bezeroa dagoeneko baimenduta dago:
 2.a.1. Sistemak bezeroari aldez aurretik egindako baimenaren berri ematen dio eta scripta etetea edo 4. urratsera joatea eskaintzen dio, eta 6. urratsa behar bezala betetzen bada, 7. urratsa argibidearekin egiten da:
 2.a.7. Sistemak bezeroa desaktorizatzen du kontu zaharrean, bezeroari baimena ematen dio kontu berrian, eta elkarrekintza-saio honetako nabigazio-historia eta saskia kontu zaharrean geratzen dira eta ez dira berrira transferitzen. Ondoren, joan 8. urratsera.
2.b Baimen-saiakerak β€œ23. Segurtasun Arauaren” araberako muga gainditu du:
 2.b.1 Joan 4. urratsera, captcha bat ere bistaratuko da baimen-formularioan
 2.b.6 Sistemak captcha sarrera zuzena berresten du
    2.b.6.1 Captcha gaizki sartu da:
      2.b.6.1.1. sistemak arrakastarik gabeko baimen-saiakeren kontagailua handitzen du kontu honetarako ere
      2.b.6.1.2. sistemak huts-mezu bat bistaratzen du eta 2. urratsera itzultzen da
6.a. Ez da aurkitu mezu elektroniko honekin:
 6.a.1 Sistemak hutsegiteari buruzko mezu bat bistaratzen du eta 2. urratsera joan edo "Erabiltzaileen erregistroa" eszenatokira joan eta sartutako mezu elektronikoa gordetzeko aukera eskaintzen du.
6.b. Mezu elektroniko honekin duen kontuaren pasahitza ez dator bat sartutakoarekin:
 6.b.1 Sistemak kontu honetan arrakastarik gabeko saioa hasteko saiakeren kontagailua handitzen du.
 6.b.2 Sistemak hutsegiteari buruzko mezu bat bistaratzen du eta "Pasahitza berreskuratzea" eszenatokira edo 2. urratsera joateko aukera eskaintzen du.
6.c: Kontu honen saioa hasteko saiakeraren kontagailuak "24. Segurtasun Araua"ren atalasea gainditu du.
 6.c.1 Sistemak X minutuz kontuaren saioa blokeatzeari buruzko mezu bat bistaratzen du eta 2. urratsera jarraitzen du.

Zer da handia

Helburuak osotasuna eta betetzea egiaztatzen du, hau da, beste analista bati eskakizunak eman diezazkiokezu egiaztatzeko, arazoen formulazio fasean akats gutxiago eginez.

Kutxa beltz sistema batekin lan egiteak automatizatuko denaren garapena eta koordinazioa bezeroarekin inplementatzeko metodoetatik bereiztea ahalbidetzen du.

Analistaren bidearen parte da, erabilgarritasunaren atal nagusietako bat. Erabiltzailearen eszenatokiak bere mugimenduaren bide nagusiak definitzen ditu, eta horrek asko murrizten du diseinatzailearen eta bezeroaren aukeratzeko askatasuna eta diseinuaren garapenaren abiadura handitzen laguntzen du.

Oso pozik nago interakzio-urrats bakoitzaren salbuespenak identifikatzen diren deskribapeneko lekuarekin. IT sistema oso batek salbuespenen kudeaketaren bat eman behar du, batzuk eskuz, beste batzuk automatikoki (goiko adibidean bezala).

Esperientziak erakusten du gaizki pentsatutako salbuespenen kudeaketak sistema bat sistema izugarri deseroso bihur dezakeela. Gogoan dut istorioa Sobietar garaian, erabaki bat hartzeko, zerbitzu ezberdinetatik hainbat onarpen lortu behar zenituen, eta zein mingarria den azken zerbitzuak dioenean, baina zure eskaera izen okerra edo beste akatsen bat dauka. puntuazioa, dena berregin eta dena berriro koordinatu.

Salbuespenetarako pentsatua ez zen sistema baten funtzionamendu-logikak sistemaren birmoldaketa nabarmena eskatzen zuen egoerak askotan topatzen ditut. Horregatik, analistaren lanaren zati handiena salbuespenen kudeaketan gastatzen da.

Testu-notazioak, diagramen aldean, salbuespen gehiago identifikatu eta estal daitezke.

Metodoari praktikatik gehitzea

Erabilera kasua ez da adierazpenaren modu independentean lehenetsitako zati bat, erabiltzailearen istorioa ez bezala.

Goiko eszenatokian, kontuan hartu salbuespena β€œ6.a. Ez da aurkitu mezu elektroniko honekin." eta hurrengo urratsa "6.a.1 Sistemak huts-mezu bat bistaratzen du eta 2. urratsera igarotzen da". Zein gauza negatibo geratu ziren atzean? Bezeroarentzat, edozein itzulera datuak sartuz egiten zuen lan guztia zabortegi batera botatzearen parekoa da. (Ez da gidoian ikusten!) Zer egin daiteke? Berreraiki scripta hau gerta ez dadin. Posible al da hori egitea? Adibide gisa, Google-ren baimen-gidoia begiratu dezakezu.

Eszenarioen optimizazioa

Liburuak formalizazioari buruz hitz egiten du, baina ezer gutxi esaten du horrelako eszenatokiak optimizatzeko metodoei buruz.

Baina posible da metodoa indartzea eszenatokiak optimizatuz, eta erabilera kasuak formalizazio metodoak hori egiteko aukera ematen du. Zehazki, gertatzen den salbuespen bakoitzari buruz pentsatu behar duzu, kausa zehaztu eta script-a berreraiki behar duzu, salbuespena kentzeko edo bezeroaren ibilbidea minimizatzeko.

Lineako denda batetik eskaera bat egiterakoan, entrega-hiria sartu behar duzu. Gerta daiteke dendak ezin duela salgaiak entregatu bezeroak aukeratutako hirian bertan entregatzen ez duelako, tamaina murrizketak direla eta, edo dagokion biltegian salgaien faltagatik.

Erregistro-fasean elkarrekintzaren eszenatokia deskribatzen badugu, "bezeroari entrega ezinezkoa dela jakinarazi eta hiria edo gurdiaren edukia aldatzea" idatzi dezakegu (eta analista hasiberri asko hor gelditzen dira). Baina horrelako kasu asko egonez gero, eszenatokia optimizatu daiteke.

Egin behar duzun lehenengo gauza entregatu dezakegun hiria bakarrik aukeratzea da. Noiz egin hau? Webguneko produktu bat hautatu aurretik (hiriaren autodetekzioa IP bidez, argibidearekin).

Bigarrenik, bezeroari entregatu diezazkiokegun ondasunak bakarrik aukeratzea eman behar dugu. Noiz egin hau? Aukeratzeko unean - produktuaren fitxan eta produktuaren txartelean.

Bi aldaketa hauek salbuespen hori ezabatzeko bide luzea dute.

Neurketak eta metrikak egiteko baldintzak

Salbuespenen kudeaketa murrizteko zeregina kontuan hartuta, txosten-zeregin bat ezar dezakezu (erabilera kasua ez da deskribatzen). Zenbat salbuespen zeuden, zein kasutan gertatu diren, gehi zenbat agertoki iritsi diren arrakastaz.

Baina ai. Esperientziak frogatu du inprimaki honetan agertokietarako txostenak egiteko eskakizunak ez direla nahikoa; beharrezkoa da kontuan hartu behar da gehienbat erabilera-kasu moduan deskribatzen diren prozesuetarako txostenak egiteko eskakizunak.

Erabilgarritasunerako sarbidea

Gure praktikan, erabilera kasuen deskribapen inprimakia zabaldu dugu bezeroak erabakia har dezan entitateen eta datuen atributu zehatzen deskribapenarekin, eta horrek ondorengo erabilgarritasuna hobetzen du.

Erabilgarritasunaren diseinurako, sarrerako atal bat gehitu dugu: bistaratu datuak.

Baimena duen eszenatoki batean, bezeroa sisteman baimenduta dagoela da. Bezeroa aurretiaz baimenduta badago, bistaratu nabigazio-historia eta saskia kontu berrira aldatzeari buruzko abisua baimendu ondoren.

Oro har, bezeroarentzako beharrezkoa den informazioaren bistaratzea da, agertokiaren arabera bere ekintzei buruz erabaki bat har dezan (datu hori bezeroarentzat nahikoa ote den galdetu dezakezu, zer gehiago behar den, zer informazio egiten duen). bezeroak erabakiak hartu behar ditu).  
Era berean, merezi du sartutako informazioa sarrera-eremuetan banatzea, bereiz prozesatzen badira eta salbuespen desberdinak sortuz.

Bezeroaren baimena duen adibidean, sartutako informazioa saio-hasieran eta pasahitzetan bereizten baduzu, merezi du baimen-gidoia aldatzea saio-hasiera eta pasahitz bereizi bat sartzeko faseak nabarmentzeko (eta hori Yandex-en, Google-n egiten da, baina ez da online denda gehienetan egiten).

Beharrezko datu-eraldaketak iristea

Datuak bihurtzeko algoritmoen eskakizunak ere atera ditzakezu scriptetik.

Adibideak:

  • Produktu bat lineako denda batean erosteko erabakia hartzeko, bezeroak produktuaren txartelean jakin behar du produktu hau bere hirira bidaltzeko aukera, kostua eta entrega-epea (algoritmoak kalkulatzen dituen produktuaren erabilgarritasunaren arabera). biltegiak eta hornikuntza-katearen parametroak).
  • Bilaketa-lerroan esaldi bat sartzean, bezeroari algoritmoaren araberako bilaketa-iradokizunak erakusten zaizkio (algoritmoak sortzen dituenak...).

Guztira

Oro har, liburua irakurri ondoren, zoritxarrez, ez dago argi nola joan analistatik negozio arazoetara garatzaile baten zehaztapen tekniko formalizatuetara. Liburuak prozesuaren zati bat baino ez du kontatzen, sarrera-urratsak argi gabe eta hurrengo urratsak. Erabilera kasua bera ez da gehienetan garatzaileentzako adierazpen osoa.

Hala ere, oso modu ona da objektu baten eta subjektu baten arteko interakzio-eszenatokiak formalizatu eta prozesatzeko, elkarrekintzak subjektuan zerbaiten aldaketa eragiten duenean. Salbuespen bilaketa puntu esplizituekin eskakizun egiaztagarriak ahalbidetzen dituen idazketa metodo bakanetako bat da.

Liburua ezinbestekoa da analistak antzezlan probagarriak idazten hasteko.

Iturria: www.habr.com

Gehitu iruzkin berria