Descoperiți ambiguitățile sau omisiunile în următoarea declarație de cerințe
pentru o parte a sistemelor de emitere a biletelor:
Un sistem automat de eliberare a biletelor vinde bilete de tren.
Utilizatorii își selectează destinația și introduc un card de credit și un număr personal de identificare. Biletul de tren este emis și contul cardului de credit este debitat. Când utilizatorul apasă butonul de pornire, este activat un meniu de afișare a destinațiilor potențiale, împreună cu un mesaj către utilizator pentru a selecta o destinație. Odată ce o destinație a fost selectată, utilizatorii sunt rugați să introducă cardul de credit. Se verifică validitatea acestuia și apoi utilizatorului i se cere să introducă un identificator personal. Când tranzacția de credit a fost validată, biletul este emis. Răspuns: Ambiguitățile și omisiunile includ:
A) Un client poate cumpăra împreună mai multe bilete pentru aceeași
destinație sau trebuie să fie cumpărate pe rând? b) Pot clienții să anuleze o cerere dacă a fost făcută o greșeală? c) Cum ar trebui să răspundă sistemul dacă este introdus un card nevalid? d) Ce se întâmplă dacă clienții încearcă să-și introducă cardul înainte de a selecta o destinație (cum ar fi în cazul bancomatelor)? e) Trebuie ca utilizatorul să apese din nou butonul de pornire dacă dorește să cumpere alt bilet către o altă destinație? f) Sistemul ar trebui să vândă doar bilete între stația în care se află aparatul și conexiunile directe sau ar trebui să includă toate destinațiile posibile?
4.3. Rescrieți descrierea de mai sus folosind abordarea structurată descrisă
în capitolul 4 al manualului. Rezolvați ambiguitățile identificate într-un mod adecvat. Ans.
Funcție – Oferiți clientului un bilet de tren și percepeți contul de credit în
consecință
Descriere – Determinați destinația clientului, calculați taxa pentru călătorie
și percepeți clientului suma corespunzătoare. Dacă taxa este completă, tipăriți biletul, în caz contrar, nu imprimați niciun bilet și raportați eroarea clientului. Intrări – Destinație, număr card de credit, număr personal de identificare
Ieșiri – Bilete, mesaje de eroare
Acțiune – Solicitați clientului destinația, atunci când este introdus, calculați
totalul și solicitați glisarea unui card de credit, solicitați clientului codul PIN, solicitați clientului că tranzacția are loc, dacă aveți succes, imprimați biletul și reveniți la starea de pornire, dacă nu reușește, cereți clientului să-și gliseze din nou cardul și să introducă din nou PIN-ul. Dacă nu reușește din nou, solicitați că tranzacția a eșuat și reveniți la starea de pornire.
Necesită – Destinație, număr card de credit și PIN
Condiție preliminară – Niciuna
Post-condiție – Niciuna
Efecte secundare – Debitare în contul de credit al clientului