Utilizzare i casi correlati in sequenza, come affrontarli?

2

Esprimo il mio dubbio con un esempio. Supponiamo che abbia il seguente requisito:

The customer needs a page in his website that displays all the products he has with a quantity field on the side of each product. The visitor of the website must be able to fill in the quantities desired, select one location and ask for the budgeting. After asking for the budgeting, the visitor must be taken to a page with the summary of the products asked, together with the prices and fields to fill in contact informations to proceed the negotiation if desired

Per organizzarlo ho deciso di creare due casi d'uso: "Richiedi budget" e "Richiedi prodotti". Il primo è:

Title: Require budgeting

Actor: Website visitor

Scenario:

  • The visitor selects to see the products

  • While the visitor want to add products to the budgeting

    • The visitor fills the desired quantity of a product in the corresponding field
  • The visitor selects his location to estimate shipping price

  • The visitor sends the requirement

Successivamente, il visitatore verrà reindirizzato alla pagina con le informazioni su ciò che chiede e sui campi per richiedere i prodotti. Questo è un altro caso d'uso, ma c'è una stretta connessione con il primo, perché è in sequnce. Non sapevo esattamente come comportarmi. Quindi ho pensato di usare la precondizione:

Title: Ask for products

Actor: Website visitor

Precondition: the visitor has asked for a budgeting

Scenario:

  • The visitor reviews the products and prices

  • If he wants to ask for the products

    • The visitor fills his contact information and sends to the sales department
  • If not, he exits the page

Ma non sono sicuro che questo sia il modo giusto per farlo, penso che "l'estensione" fosse il modo giusto per esprimerlo, ma penso di non averlo ancora capito.

Come dovremmo procedere quando casi d'uso sono strettamente correlati in questo modo?

    
posta user1620696 18.11.2013 - 17:24
fonte

1 risposta

1

Per come la vedo io, puoi argomentare due modi "giusti" per farlo: A) l'intera faccenda è un caso d'uso di grandi dimensioni (soprattutto considerando che il caso 'chiedi prodotti' è quello dominante che stai scrivendo for), o B) il modo in cui ti sei impostato, dove hai una breve causa per ogni azione atomica (che richiede il budget, chiedi i prodotti) e specifica una precondizione dove necessario (chiedere prodotti richiede che il budget esista già, che richiede altre cose, ecc.)

Se dovessi implementarlo usando qualcosa come SpecFlow, tenerlo come hai postato è utile perché posso fare qualcosa del genere:

Given the user has added budgeting
And the user views Review Products & Pricing
When the user enters their contact information
Then a request is sent to the sales department

... Il primo passo dato sarebbe probabilmente una macro di call-forward per quella prima storia, che sarebbe probabilmente scritta come tale:

Given the user views Manage Budgeting
When the user requests Item [X] in Quantity [Y]
Then the requirement is saved

La capacità di farlo in questo modo a mio parere convalida il modo in cui hai organizzato questi due casi di test correlati.

    
risposta data 18.11.2013 - 18:09
fonte

Leggi altre domande sui tag