De basis voor de aanpak volgens VVMM (Verhalen Vertellen Met Modellen) is dat in de informatieanalyse de userstories worden opgenomen. Je kunt dat op een van de volgende manieren doen:
De userstory aanmaken met het sleutelwoord '@userstory:'
De userstory genereren met de instructie '{userstory}' in de omschrijving van een element.
Hoe je de userstory ook maakt uiteindelijk bevat de beschrijving van een userstory de volgende elementen:
persona wie in welke rol gaat de het resultaat gebruiken
feature bij welke feature hoort de userstory
acceptatie voorwaarde(n) wanneer is het resultaat geslaagd
omstandigheden onder welke omstandigheden is het resultaat nodig
resultaat wat wordt uiteindelijk geleverd
relaties
met andere elementen die worden gebruikt
Voorbeeld userstory in het model
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
Het diagram toont een aantal van deze elementen.
persona = de Secretaris van de vereniging
feature = de Ledenadministratie voeren
acceptatie voorwaarde = Lid invoeren is mogelijk
omstandigheden = De vereniging heeft leden
resultaat = Ledenbestand
relaties
met andere elementen niet getoond in het diagram
Voorbeeld userstory als webpage
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
De webpage die voor deze userstory wordt gegenereerd gebruikt het principe van de 3C's.
In de 'Card' is de beschrijving opgenomen. De generator voegt de relaties naar elementen in het model toe.
Bij de 'Conversation' is opgenomen bij welke 'feature' de userstory hoort.
Bij de 'Confirmation' zijn de acceptatie criteria vermeld.
Voorbeeld calculatie storypoints
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
De storypoints geven een indicatie van de inspanning om deze userstory te realiseren.
Deze calculatie is gebaseerd op de definitie dat het mogelijk moet zijn om gegevens van een lid in te voeren.
Alle overige functionaliteit zoals het opzoeken van een lid wanneer een wijziging wordt doorgegeven en het vastleggen van gegevens in het register zijn niet meegenomen.
Je kunt je voorstellen dat voor deze functie een invoerscherm nodig is en dat moet worden toegevoegd aan deze userstory.
Voorbeeld userstory invoerscherm toevoegen
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
Inmiddels is het duidelijk dat een 'Lid invoeren' een invoerscherm nodig heeft.
Het element 'Lid invoeren' moet je uitbreiden met een instructie om een scherm aan te maken.
Het moxen bestand hiernaast toont hoe je dat kan doen. Je kunt natuurlijk ook de omschrijving in het oorspronkelijke moxen bestand aanpassen. De instructie '{hasform}' toe te voegen.
Voorbeeld userstory met scherm als webpage
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
De toevoeging van een invoerscherm zal in de oorspronkelijke userstory niet veel veranderen. Wel wordt vermeld dat er een invoerscherm wordt gebruikt. Voor het invoerscherm is een extra userstory aangemaakt.
In de 'Card' is de beschrijving opgenomen. De generator voegt de relaties naar elementen in het model toe. Hier is vermeld dat een scherm wordt gebruikt.
Bij de 'Conversation' is opgenomen bij welke 'feature' de userstory hoort.
Bij de 'Confirmation' zijn de acceptatie criteria vermeld.
Voorbeeld calculatie storypoints van scherm
De casus 'Oprichten vereniging' bevat de userstory 'Lid invoeren'.
Aan deze userstory is het gebruiken van een scherm toegevoegd. Voor het realiseren van het scherm wordt een extra userstory aangemaakt. Dit is gedaan vanwege de instructie {hasform}
in de beschrijving van 'Lid invoeren'.
Uit de calculatie blijkt dat dit scherm complex is. De userstory 'Lid invoeren' is via de elementen 'Invoerformulier' en 'Ledenregister' gekoppeld aan meerdere activiteiten.
Voor al deze zaken moet iets in dit scherm worden gedaan.
Ook wordt informatie gebruikt over de gegevensvelden die zijn opgenomen in het 'Invoerformulier' en het 'Ledenregister'. Hiervoor moet in het invoerscherm functionaliteit worden gerealiseerd en dus inspanning worden geleverd.
Storypoints wat zit in het model
Storypoints wat zit in het model
Idee
Het idee realiseren door het helder te maken en te valideren met eenvoudige zinnen.
Ontwerp
Het idee omzetten in een model gekoppeld aan wat je moet kunnen als het idee is gerealiseerd.
Nauwkeurigheid
Door een model als basis te gebruiken is aanpassen mogelijk zonder het zicht op het geheel kwijt te raken.
Doeltreffendheid
Het uitgangspunt blijft bij wat het idee moet opleveren en dat bewaken is mogelijk door het model
We zijn al jaren bezig met het vereenvoudigen van analyses en ontwerpen voor informatiesystemen