L'uso dei personaggi in Agile ha qualche valore durante l'implementazione?

2

Si tratta dell'uso dei personaggi, principalmente nel regno dello sviluppo agile.

Quale valore, se ce ne sono, le persone danno durante l'implementazione?
Nella modellazione agile , la discussione sui personaggi rimane nel contesto dell'indagine sui requisiti.
Su wikipedia , i benefici sono descritti come "ausilio al brainstorming, uso della specifica del caso e definizione delle caratteristiche ".

Ho familiarità con le persone in uso durante la scrittura di storie utente come la seguente:

As Willow, I want ordering a combo meal to give me the option to select alternate sides.
As Xander, I want the default side to be selected when I order a combo meal.

In questi esempi, Willow è l'utente attento e nutrizionista del software di ordinazione dei pasti e Xander è l'utente affamato e impaziente che pensa che "il fast food dovrebbe essere veloce ."

Quando si presentavano questi requisiti, potrebbe essere stato utile avere in mente le persone. Immagino una possibile discussione:

Person 1: Willow needs to have more options than fries for the combo meal, otherwise she would never order a combo.
Person 2: But Xander doesn't want to have to sift through different options when ordering a combo! He just wants fries and he'll probably always want fries.

Questa discussione potrebbe aver creato i due requisiti sopra, ma una volta creati i requisiti, perché contrassegniamo ogni requisito con una persona? Non codificherei il requisito del "default side" in modo diverso sapendo che è per Xander. Quale valore mantiene i requisiti "As Willow" e "As Xander" quando vengono scritti i requisiti? Quale valore attribuisce la persona a colui che implementa il requisito?

    
posta ken.ganong 08.01.2013 - 23:04
fonte

3 risposte

6

Può farlo, in particolare se stai usando un framework BDD / specifiche, come Cucumber.

In questi casi, è necessario scrivere i casi di test utilizzando il formato Given (And) When (And) Then (And). Questo può essere un po 'ingombrante quando inizi a scrivere

Given a user is logged in
And the user has administration rights
And the user is based in the US
And the user has brown hair
And the user is French-speaking
And there is a product available costing less than $80
And the product is less than 5 cubic feet
And the product is less than 15kg
And the user has paged to that product
When the user clicks Add to Basket
Then the product should be added to the user's basket

E forse devi scrivere 40 casi di test che sono tutti simili. In questo caso, è molto più semplice avere un utente conosciuto Xander, che si adatta alla descrizione precedente, e il prodotto "Buffy the Vampire Slayer Season 7 box set", che si adatta anche alla descrizione di cui sopra, e scrivere il test

Given that Xander is logged in
And has paged to the Buffy the Vampire Slayer Season 7 box set
When the user clicks Add to Basket
Then the product should be added to the user's basket
    
risposta data 08.01.2013 - 23:23
fonte
1

Tutto ciò che facciamo nel software dovrebbe riguardare l'utente. Progettazione, codifica, test, documentazione ... Tutto ciò che serve per consentire all'utente finale di portare a termine il proprio compito.

Conoscere i tuoi utenti e sapere per quali utenti è destinata una funzione, è fondamentale per prendere buone decisioni. La tua scheda storia di solito non è una specifica dettagliata. Dovrebbe essere emulativo per avviare una conversazione con il proprietario del prodotto, ma ci sono ancora decisioni da prendere durante lo sviluppo. Conoscere i tuoi utenti ti aiuta a prendere queste decisioni.

    
risposta data 09.01.2013 - 01:02
fonte
0

Probabilmente il più semplice esempio di persona che è importante nella codifica attuale è la storia "Come amministratore, devo essere in grado di assegnare ruoli di sicurezza ad altri utenti". Il requisito non detto qui è che altro che gli amministratori devono non essere in grado di fare la stessa cosa.

Personas, dove differenziati, sono quindi molto importanti nella codifica, se non altro per il fatto che identificano la persona che può o non può usare il sistema per eseguire una determinata azione.

    
risposta data 09.01.2013 - 02:01
fonte

Leggi altre domande sui tag