UseCases Usability Discussion v2ab

download UseCases Usability Discussion v2ab

of 27

Transcript of UseCases Usability Discussion v2ab

  • 7/24/2019 UseCases Usability Discussion v2ab

    1/27

    Net Objectives, 11/06/15 NetObjectivesNetObjectives1

    Agile Use Cases

    (Driving Development)

    [email protected]

    eB J E C T I V E S

  • 7/24/2019 UseCases Usability Discussion v2ab

    2/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 2

    My Goals

    Enlighten Teach

    Inspire

  • 7/24/2019 UseCases Usability Discussion v2ab

    3/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 3

    The Purpose of Software

    Development is

    To provide a suitable solution for users

    That consists of ualit! code

    "nd doesn#t cost too $uch

    here Use Cases !ive

    Suita"le # Useful $Usa"le

  • 7/24/2019 UseCases Usability Discussion v2ab

    4/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 %

    hat is a Use Case%

    &ro$ an "nal!tic 'erspective, a use case is (a!to discuss (ith users ho( the s!ste$ (ill enablea user to )et so$ethin) done

    *o(ever, fro$ a +evelop$ent 'erspective, a

    use case is a collection of scenarios that haveto be coded up

    uccess scenarios

    "lternative scenarios

    &ailure scenarios -)raceful de)radation.

    u)s -ne( failure scenarios.

    e se cenarios as the asis for our or

  • 7/24/2019 UseCases Usability Discussion v2ab

    5/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 5

    The Purpose of Use Case Analysis

    To develop scenarios that drive develop$ente (ant a s!ste$ that (ors

    hose scenarios )et the job done4

    sable (ould be nice

    This tal is about ")ile +evelop$ent, socenarios are developed as the! are produced andprioritied

    +eveloped scenarios are validated as the! are

    producedcenarios are developed as soon as possible, so that(e can have so$ethin) to sho( our custo$ers andusers

  • 7/24/2019 UseCases Usability Discussion v2ab

    6/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 6

    e &ali'ate a Senario our ays

    "efore we Atually *o'e it up+

    s it useful7+id it satisf! its post8conditions7

    s it usable7

    9a! reuire stor!boards and (irefra$es to validates it buildable7

    9ust verif! (ith developers that fits (ithin

    architectural sche$e, etc

    s it testable7:an (e envision the test scenarios (e need to test

    it7

  • 7/24/2019 UseCases Usability Discussion v2ab

    7/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 ;

    *goo'+ Team Philosophies, lea'ing to

    Agility

    -ne .ite at a Time< re$inds us to do thin)s a little at a ti$e,(ith plannin), validation, and $ana)e$ent of the pieces=

    &ali'ation Centriity< re$inds us that the activities ofvalidation, verification and test are $ore i$portant4 thanthose of anal!sis, desi)n, and construction> and that (e $ust

    activel! loo for thin)s that cause us to chan)e=Don/t Do hat you Don/t 0ee'< (or on those thin)s (iththe $ost value> avoid anal!sis paral!sis, and eep $ovin)

    1uality Can/t "e the &aria"le< hen balancin) the three$ain variables -scope, ti$e, ualit!., ualit! can#t be the one

    that slips!et the Pro'ut !ea'< decisions $ust be based on theproduct, not docu$ented plans, anal!ses, reuire$ents, ordesi)ns=

  • 7/24/2019 UseCases Usability Discussion v2ab

    8/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 ?

    Managing the .uil'ing of Pro'ut

    or2 .a2log< an evolvin), prioritied ueue ofbusiness and technical functionalit! that needs

    to be developed into a s!ste$ -ource< cru$.

    Story< +escribes so$e ite$ of value to a useror product o(ner -ource< @', :ohn.

    Tas2< ell8defined unit of (or in the process

    that provides $ana)e$ent (ith visible

    checpoints into the status of the project= Tasshave readiness criteria and co$pletion criteria=

    ABones 8 9C -ource< D

  • 7/24/2019 UseCases Usability Discussion v2ab

    9/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 E

    34ample Stories

    +escription< hop for Found Trip &li)htsie< i)

    Galidation< &unctional test each cenario

    +escription< Found Trip, sin)le passen)er, no lu))a)e,no seat selection, one le)

    ie< Har)eGalidation< &unctional Testin)

    +escription< "dd the :elloie< $all

    Galidation< &unctional Testin)

    +escription< *elp 9aretin) 'repare $aterials for thetrade sho(

    ie< Har)e

    Galidation< nspection b! 9aretin)

  • 7/24/2019 UseCases Usability Discussion v2ab

    10/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 10

    34ample Tas2s

    +escription< Ne( build scriptDsti$ate< 6 hr

    O(ner< ue

    DIit :riteria/Gerification< uild succeeds, Boe (ill inspect results

    +escription< "dd the $ulti8passen)er4 chec8boI to the

    Dntr!creenDsti$ate< % hr

    O(ner< Boe

    DIit :riteria/Gerification< nit tests (ritten and passed

    +escription< JH Trainin)Dsti$ate< 2 da!s

    O(ner< ue/Boe

    DIit :riteria/Gerification< trainin) co$pleted

  • 7/24/2019 UseCases Usability Discussion v2ab

    11/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 11

    The .asi Development !oop

    &or Dach teration !ou

  • 7/24/2019 UseCases Usability Discussion v2ab

    12/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 12

    0ee's, Use Cases, Stories, Tas2s 5

    Creates or2 e 0ee' to Manage

    *ere#s (hat reco$$end for the $ajor steps in$ovin) fro$ a ser#s need to a collection of

    +eveloper Tass

    Business Level

    Product Level

    Development LevelTaskTask

    TaskTaskTaskTask

    TaskTaskTaskTask

    TaskTask

    Need

    User StoryUser StoryUser Story

    Scenario/

    Story6teration Planning Game

    Use CaseDetail a Use Case

    3ver7Unfol'ing Story

  • 7/24/2019 UseCases Usability Discussion v2ab

    13/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 13

    Use Cases aren/t the *only+ thing going on

    ATM Projec

    Team BusinessProduc

    !uncion SrucureManagemen

    Team

    Training

    "e#$SCM$TesEn#ironmens

    "e#Process

    %

    App!rame&or'

    Tools

    Mainenance"ocs

    Sales Sp

    Mar'eing

    Suppor

    serTraining

    ser "ocs

    %

    Con#ersions

    e&ries

    e*acorings

    %

    +ogin

    ,i-dra&Cas-

    "eposiC-ec'

    %

    Trans*er!unds

    e*res- Cas-"ra&er

    T-e seCasesPopulae -e.!uncion/+eg

    Business!rame&or'

    AdapProcesses

  • 7/24/2019 UseCases Usability Discussion v2ab

    14/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 1%

    Generating Senarios for the System

    hat 'ieces +o

    e Need7

    +esi)n and

    +evelop$ent

    hat :ould e

    +ifferent7'arallel cenarios

    hat Dlse 9i)ht t

    +o7DIt cenario

    hat :ould Mo

    ron)7"lt cenario

    *o( +o e 9ae

    t +o That7asic cenario

    hat hould This

    se :ase +o7're/'ost8:onditions

    hat hould The

    !ste$ +o7se :ase Hist

    hat s The

    !ste$ &or7Gision

    sa0ili1 Concerns

    Cone2ualSudiesTas'Anal1sis

    (sa0

    ili1C

    once

    rns

    I "esign3"e#elopmen3e*acoring

  • 7/24/2019 UseCases Usability Discussion v2ab

    15/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 15

    A''ing .usiness &alue for a Use Case

    Business Value

    Time

    $E4

    or

    .good enoug-/

    anal1sis

    design$de#elop$re*acor

    de#eloped scenariosS

    S

    S

  • 7/24/2019 UseCases Usability Discussion v2ab

    16/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 16

    My Assumptions A"out Usa"ility

    That it can be done incre$entall!That $ini$al up8front anal!sis needs to be done

    This doesn#t $ean none4, thou)h, 9*O

    That interfaces can be refactored to)ether as(e )o

    That $iddle tier4 can be separated fro$

    la!er in order to separate lo)ic fro$ interface in

    such a (a! that lo)ic persists even if chan)es

  • 7/24/2019 UseCases Usability Discussion v2ab

    17/27Net Objectives, 11/06/15 NetObjectivesNetObjectives1;

    !et the Games .egin

  • 7/24/2019 UseCases Usability Discussion v2ab

    18/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 1?

  • 7/24/2019 UseCases Usability Discussion v2ab

    19/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 1E

  • 7/24/2019 UseCases Usability Discussion v2ab

    20/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 20

  • 7/24/2019 UseCases Usability Discussion v2ab

    21/27NetObjectivesNetObjectivesNet Objectives, 11/06/15 21

    The importane of up front stu'ies an'

    soping

    ABonC These are of para$ount i$portance K the$ore ti$e !ou spend on these the better=

    A+anC +o just enou)h to feel co$fortable, then

    di) in= Fefine as !ou )o, no(in) that !ou

    probabl! didn#t )et it ri)ht, but hopin) that !ou

    )ot close enou)h

  • 7/24/2019 UseCases Usability Discussion v2ab

    22/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 22

    Analysis paralysis 5 how muh is

    enough

    ABonC "nal!sis paral!sis is a boo)ie $an thatpro)ra$$ers constantl! raise because the!

    don#t feel the project is started until !ou be)in

    codin)=

    A+anC "nal!sis 'aral!sis is a trap for ever!one=

    Lou defeat b! constant validation and $ovin)

    for(ard once !ou have enou)h4= Not (hat !ou

    thin is enou)h, but (hat the tea$ thins isenou)h=

  • 7/24/2019 UseCases Usability Discussion v2ab

    23/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 23

    User interfae integrity 8 onsisteny

    ABonC These are critical factors that affectusabilit! K the! depend on adeuate scopin),

    develop$ent of a conceptual $odel -the $odel

    offered to the user to help the$ for$ their

    $ental $odel., a that covers $ost of thescope, and a t!le Muide=

    A+anC t (ould be nice, but it is $ore i$portant

    that the s!ste$ acco$plishes its $ission,$ain) is usable is different than $ain) it

    nice4 to use

  • 7/24/2019 UseCases Usability Discussion v2ab

    24/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 2%

    Coneptual mo'el 'evelopment

    ABonC &e( )ood s can depend on $etaphors K(hat !ou reall! need is a )ood understandin) of

    the $ajor objects and processes that the user

    interacts (ith and (hat the! $ean to the user=

    A+anC ")reed= "nd this can be done best b!

    eIplorin) the objects as the! co$e up in

    anal!sis and develop$ent throu)hout the a)ile

    process> doin) it up front leads to hast! -andprobabl! incorrect. conclusions=

  • 7/24/2019 UseCases Usability Discussion v2ab

    25/27

    NetObjectivesNetObjectivesNet Objectives, 11/06/15 25

    Style Gui'e 'evelopment

    ABonC There are several levels of t!le Muidereuired< corporate brandin), product fa$il!,

    and product specific=

    A+anC No doubt= The uestions are ho( soon

    do !ou need it74 and hen does it )et

    developed74

  • 7/24/2019 UseCases Usability Discussion v2ab

    26/27

  • 7/24/2019 UseCases Usability Discussion v2ab

    27/27

    N tObj tiN tObj ti

    Usa"ility testing 'uring agile

    inrements

    ABonC Feal usabilit! testin) is reuired K de$osto users don#t (or=

    A+anC +epends on the iteration= Felease

    iterations reuire eItensive usabilit! testin), just

    as the! reuire eItensive J"= +evelop$ent

    iterations onl! reuire de$os and testin) to

    $ae sure that riss are bein) properl!

    $iti)ated=