software%development%in%teams%&%organizations...
TRANSCRIPT
SENG%403%–%Software%Development%in%Teams%&%Organizations
Software%UsabilitySoftware%Development%in%Teams%&%Organizations
442 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability
! A%quality%attribute%that%assesses%how%easy%user%interfaces%are%to%use.%
! Defined%by%five%components:! Learnability:%ease%of%finishing%tasks%for%the%1st%time.! Efficiency:%how%quickly%users%can%perform%tasks! Memorability:%how%easily%users%are%able%to%reestablish%proficiency%in%using%the%system.%
! Errors:%quantity%of%errors,%severity,%and%recovery! Satisfaction:%how%pleasant%it%is%to%use%the%design.
443
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability
1 Message
2 Receiver:%?
444 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability
1 Receiver:%John%Smith
2 Message
445
SENG%403%–%Software%Development%in%Teams%&%Organizations
Significance
! What%is%useful%software?! It%does%what%users%need%(utility).! The%user%can%make%it%do%what%it%says%it%can%do%(usability).%
! One%aspect%without%the%other%may%well%render%the%software%useless.%
! Users%always%gravitate%towards%the%easier%solution.%Example?
446 SENG%403%–%Software%Development%in%Teams%&%Organizations
Significance
! For%the%web,%usability%is%a%necessary%condition%for%survival.! The%first%law%of%eZcommerce%is%that%if%users%cannot%find%the%product,%they%cannot%buy%it%either.
! For%internal%systems,%usability%is%a%matter%of%employee%productivity.! Time%users%waste%dealing%with%unusable%software%is%money%you%waste%by%paying%them%to%be%at%work%without%getting%work%done.
447
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Testing
! Usability6Testing6(evaluation):6methods%to%evaluate%and%improve%easeZofZuse%during%the%design%process.
! Is%it%free?! Absolutely%not.%
448 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Testing
! Management:%Great%idea!%How%much?
Focus%%group%%(2%sets%%of%%3%$6285) $12,570%
Product%%mockup $3,760
User%%survey%%(3%@%$7,200)% $21,600
Lab%%construction $17,600
Initial%%design $6,400%
Design%%change%%(20%%@%%$320)% $6,400
UIMS%%system $16,080
User%%study%%(6%%@%%$7,320) $43,920
Total $128,330
%%
Mantei,%M.%M.,%and%Teorey,%T.J.%(1988).%Cost/benefit%analysis%for%incorporating%human%factors%in%the%software%lifecycle,%Communications%of%the%ACM%31,%4%(April),%428Z439.
449
SENG%403%–%Software%Development%in%Teams%&%Organizations
Economic%Justification
! Do%discount%methods%still%cost%money?! Yes.
! How%can%we%justify%the%investment?! For%a%corridor%talk%with%the%manager,%stress%obvious%advantages.%Like%what?
! When%numbers%are%needed,%use%a%benefit/cost%analysis.%How?
450 SENG%403%–%Software%Development%in%Teams%&%Organizations
Discount%Usability
! MiniZversion%of%usability%methods! Cheap,%timely%&%easily%accessible
! $thousands,%hours,%a%handful%of%people! Coined%by%Nielsen%and%others! Values:
! observation%over%complex%statistics.%! flexibility%over%expensive%labs.
451
SENG%403%–%Software%Development%in%Teams%&%Organizations
Discount%Usability%Methods
! Heuristic%Evaluation! Card%Sorting! Think%Aloud! Walkthroughs
452 SENG%403%–%Software%Development%in%Teams%&%Organizations
Heuristic%Evaluation
The%system
Usability%Heuristics
Evaluators
Usability%Evaluation
453
SENG%403%–%Software%Development%in%Teams%&%Organizations
How%it%works%Z%Procedure1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
454 SENG%403%–%Software%Development%in%Teams%&%Organizations
Get%the%heuristics
! Heuristics%are%system%dependent.! Nielsen’s%heuristics%proved%reliable%&%representative.
! Feel%free%to%add%more%heuristics%but%not%many.%! Feel%free%to%drop%irrelevant%ones.%
455
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Visibility%of%system%status
456 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Match%between%system%and%the%real%world%
457
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! User%control%and%freedom
458 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Consistency%and%standards
Greenberg,%S.,%Overview%of%Heuristic%Evaluation,%http://pages.cpsc.ucalgary.ca/~saul/%wiki/uploads/CPSC681/Heuristic.ppt,%accessed%October%10,%2007.
459
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Error%prevention
460 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Help%users%recognize,%diagnose,%and%recover%from%errors%
461
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Recognition%rather%than%recall
462 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Flexibility%and%efficiency%of%use! Shortcuts:%
! Normal%mode%vs.%Advanced%mode! Don’t%make%it%the%only%way.
Ctrl C Copy
463
SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Aesthetic%and%minimalist%design%
464 SENG%403%–%Software%Development%in%Teams%&%Organizations
Usability%Heuristics
! Help! Help%should%be%concise,%easy%to%reach,%and%taskZcentered.
! Help%documents%should%be%supported%with%examples.
! People%do%not%read%long%documents.
465
SENG%403%–%Software%Development%in%Teams%&%Organizations
! Procedure
466
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Get%the%system%ready! Prototype:%novel%application%or%interface
! No%redesign%required! Less%maintenance%later
! Working%system:%replacement%study%or%competition
! Prepare%typical%scenarios:%task%analysis
467
SENG%403%–%Software%Development%in%Teams%&%Organizations
How%it%works%Z%Procedure! Procedure
468
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Get%the%evaluators! Heuristic%evaluation%is%a%group%effort.
Nielsen,%J.,%and%Mack,%R.L.%(Eds.),Usability%Inspection%Methods,%p25Z62.%John%Wiley%&%Sons,%New%York,%NY%(1994).
469
SENG%403%–%Software%Development%in%Teams%&%Organizations
Get%the%evaluators! The%more%the%better?%Not%necessarily! Rule%of%thumb:%3%to%5%evaluators
Nielsen,%J.,%and%Mack,%R.L.%(Eds.),Usability%Inspection%Methods,%p25Z62.%John%Wiley%&%Sons,%New%York,%NY%(1994).
470 SENG%403%–%Software%Development%in%Teams%&%Organizations
Get%the%evaluators! Evaluators’%expertise
! Novices:%better%be%potential%users%of%the%system! Usability%experts:%more%effective! Double%experts%(both%in%usability%and%the%domain):%the%best%to%get%but%very%expensive
! Session%manager:%facilitates%the%evaluation%session%&%aggregates%reports%
! Observers:%provide%help%to%evaluators
471
SENG%403%–%Software%Development%in%Teams%&%Organizations
How%it%works%Z%Procedure! Procedure
472
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Do%the%evaluation
! Evaluators%get%the%heuristics%&%scenarios.%! Navigate%through%the%system%twice.%! Inspect%screens,%dialogues,%forms,%messages%and%menus%in%the%system.
! Categorize%any%problem%under%one%of%the%heuristics:%should%give%specific%explanation.
! Can%make%comments%beyond%the%heuristics.%! Report%in%writing%or%verbally%to%the%observer.
473
SENG%403%–%Software%Development%in%Teams%&%Organizations
Do%the%evaluation
! Observers%answer%evaluators’%questions.%! especially%domainZspecific%questions.! but,%without%influencing%judgments.
! IMPORTANT:! Inspection%should%be%done%individually.! Evaluators%are%not%allowed%to%communicate.
! Session%takes%1%to%2%hours.
474 SENG%403%–%Software%Development%in%Teams%&%Organizations
How%it%works%Z! Procedure
475
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Compile%the%results! Aggregate%evaluators’%reports.
! Eliminate%duplicate%entries.! Merge%different%problems.
! Output:%One%report%of%all%usability%problems%found%by%the%evaluators.
476 SENG%403%–%Software%Development%in%Teams%&%Organizations
! Procedure
477
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Conduct%severity%rating! Evaluators%are%aware%of%all%usability%problems.! Severity%determined%by:
! frequency%of%occurrence! impact%on%user! persistence
0: Not a problem at all
1: Cosmetic problem
2: Minor problem
3: Major Problem
4: Catastrophic problem
478 SENG%403%–%Software%Development%in%Teams%&%Organizations
How%it%works%Z%Procedure! Procedure
479
1%Get%the%heuristics
2%Get%the%system%ready
3%Get%the%evaluators
4%Do%the%evaluation
5%Compile%the%results
6%Conduct%severity%rating
7%Develop%an%action%plan
SENG%403%–%Software%Development%in%Teams%&%Organizations
Develop%an%action%plan! Evaluators,%facilitator%&%the%design%team%meet.
! Discuss%problems%.! Suggest%solutions.
! Consider%organization’s%priorities.! Take%decisions:%fix%major%not%minor%problems,%change%the%release%plan,%replace%interface%…%etc.
480 SENG%403%–%Software%Development%in%Teams%&%Organizations
Exercise
481
SENG%403%–%Software%Development%in%Teams%&%Organizations
ExerciseUsability)HeuristicsUsability)Heuristics
1.%Visibility%of%system%status 6.%Recognition%rather%than%recall
2.%Match%between%system%and%the%real%world 7.%Flexibility%and%efficiency%of%use
3.%User%control%and%freedom 8.%Aesthetic%and%minimalist%design
4.%Consistency%and%standards 9.%Help%users%recognize,%diagnose,%and%recover%from%errors
5.%Error%prevention 10.%Help%and%documentation
Severity)RatingsSeverity)Ratings
0 this%is%not%a%usability%problem%at%all.%
1 cosmetic%problem%only%Z%should%be%fixed%only%if%extra%time%is%available.%
2 minor%usability%problem%Z%fixing%this%should%be%given%low%priority.%
3 major%usability%problem%Z%important%to%fix,%so%should%be%given%high%priority.
4 usability%catastrophe%Z%imperative%to%fix%this%before%product%can%be%released.%
482 SENG%403%–%Software%Development%in%Teams%&%Organizations
Card%Sorting
! Especially%effective%for:! Information%distribution! Feature/command%grouping
! Every%entry%on%an%index%card.! Participants%group%entries.! Participants%put%groups%into%larger%piles.
483
SENG%403%–%Software%Development%in%Teams%&%Organizations
Card%Sorting%Z%Sun%Website
! Brainstorming%or%release%planning%Z>%40%titles.! Target:%Group%40%titles%into%4%to%6%categories%! Write%the%40%titles%you%have%on%index%cards
http://www.dcc.unicamp.br/~hans/mc750/uidesign/cardsort.html484 SENG%403%–%Software%Development%in%Teams%&%Organizations
Card%Sorting%Z%Sun%Website
! Participant:! groups%these%titles%into%piles.! gives%each%pile%a%descriptive%name.! keeps%grouping%until%he%can%go%no%further.
! Usability%Tester:! Finds%commonalities%between%users.! Comes%up%with%a%final%set%of%categories.
Products%(11),%Downloads%(11),%Services%(8),%Support%(6),%Training%(4)
http://www.infodesign.com.au/usabilityresources/design/cardsorting.asp
485
SENG%403%–%Software%Development%in%Teams%&%Organizations
Card%Sorting%Z%Comments
! One%line%description%may%be%added%on%the%index%card.
! Tester%should%not%specify:! Group%size! Number%of%groups
! Sorting%takes%about%30%minutes/user! Proactively%%enhances%usability
486 SENG%403%–%Software%Development%in%Teams%&%Organizations
Think%Aloud
! Participants%operate%on%a%real%system%(or%a%prototype).
! Participants%speak%out%their%minds:! What%to%do?%How%to%do%it?%Why%this%way?
! Example:
IBM's6RealPhone,6http://homepage.mac.com/bradster/iarchitect/phone.htm
487
SENG%403%–%Software%Development%in%Teams%&%Organizations
Think%Aloud
! If%the%same%behavior%is%repeated%with%a%number%of%participants,%then%a%change%may%be%necessary.
! Conclusion:! It%is%more%intuitive%to%dial%the%number%first%and%then%issue%a%command%to%make%the%call.%
! Notice:%! User%may%not%say%why%(too%intuitive%to%explain).%! An%observer%needs%to%be%there%–%video%taping%may%help.! Only%few%minutes%to%perform%&%analyze%a%task.! What%do%you%do%with%silent%participants?
488 SENG%403%–%Software%Development%in%Teams%&%Organizations
Walkthroughs
! Focused%evaluation! Use%taskZcentered%walkthroughs%
1.%Define%the%targeted%audience
2.%Prepare%tasks%for%the%targeted%audience
3.%Specify%the%amount%of%knowledge%needed
489
SENG%403%–%Software%Development%in%Teams%&%Organizations
Walkthroughs%Z%Example
1. Define%the%targeted%audience! People%migrating%from%MS%Word%2003%to%2007
2. Prepare%tasks%for%the%targeted%audience! Finding%the%word%count%! Making%the%background%of%an%image%transparent
3. Specify%the%amount%of%knowledge%needed! Participants%need%to%know%what%word%count%&%
transparent%background%mean,%and%they%need%to%know%how%to%do%these%tasks%using%Word%2003.
490 SENG%403%–%Software%Development%in%Teams%&%Organizations
Walkthroughs%Z%Procedure
! SELECT%one%of%the%defined%tasks%and%a%potential%user! FOR6EACH%user’s%action%WHILE%performing%the%task:! IF%the%user:
! Cannot%anticipate%what%is%to%be%done%nextOR
! Does%not%seem%to%have%sufficient%knowledge%to%do%it%! THEN
! There%is%a%problem%in%the%interface%at%this%point! Note%the%problem%and%any%comments%or%solutions%! Tag%the%problem%as%repaired
! PROCEED%to%the%next%step%in%the%task
Lewis%&%Reiman%(1993)%Task%Centered%User%Interface%Design:%A%Practical%Introduction.%University%of%Colorado,%Boulder.%Shareware%book%available%from%ftp.cs.colorado.edu/pub/cs/distribs/clewis/HCIDesignZBook/
491
SENG%403%–%Software%Development%in%Teams%&%Organizations
Requirements%features%1Z15
Designfeatures%1Z15
Implementation
features%1Z15
Quality%Assurance
features%1Z15
Usability%Evaluation Usability%Evaluation
Traditional%Usability%Evaluation
492 SENG%403%–%Software%Development%in%Teams%&%Organizations
Agile%Usability%Evaluation
Designfeatures%
1Z5
Quality%Assurancefeatures
1Z5
Designfeatures%%6Z10
Quality%Assurance
features%%6Z10
Designfeatures%%11Z15
Quality%Assurance
features%%11Z15
Usability%Evaluation Usability%Evaluation
493
SENG%403%–%Software%Development%in%Teams%&%Organizations
Possible%Approach
Sy,?D.?Adapting?usability?investigations?for?agile?userCcentered?design.?Journal?of?Usability?Studies,?Vol.?2,?No.?3,?May?2007
494 SENG%403%–%Software%Development%in%Teams%&%Organizations
Advantages%of%Discount%Methods! Easy%to%teach%&%easy%to%comprehend! Fast%to%conduct%! Cheap:%no%laboratories%or%expensive%equipment! Don’t%necessarily%require%usability%experts! Don’t%necessarily%require%a%working%system%! Can%be%used%in%early%design.! High%benefit%to%cost%ratio:
! In%a%case%study:%a%ratio%of%48%(conservatively)
495
SENG%403%–%Software%Development%in%Teams%&%Organizations
Shortcomings%of%Discount%Methods! Oversimplification%or%distortion
! Example:%reduced%set%of%heuristics%is%very%broad%and%general
! May%not%involve%endZusers! Finds%many%minor%problems%causing%a%“false%alarm”%sometimes.%
! Limitation:%not%suitable%for%inZdepth%usability%testing%or%for%evaluating%critical%systems.
496 SENG%403%–%Software%Development%in%Teams%&%Organizations
Keep%in%mind! Usability%may%be%a%necessity%NOT%a%luxury.
! “Launching%a%site%that%is%difficult%to%use%means%that%you%not%only%lose%your%best%customers%but%they%will%also%warn%others%not%to%visit%the%site."%(Nielsen).
! Usability%does%NOT%have%to%be%expensive%&%timeZconsuming%to%be%effective.
! Variety%of%methods:%card%sorting,%thinkZaloud,%walkthroughs,%scenarios%&%heuristic%evaluation.
497
SENG%403%–%Software%Development%in%Teams%&%Organizations
References%&%Readings
! Curtis,%B.,%Nielsen,%J.%(1995).%Applying%Discount%Usability%Engineering.%IEEE?Software,%vol.%12,%%no.%1,%%pp.%98Z100.
! Nielsen,%J.,%Guerrilla%HCI:%Using%Discount%Usability%Engineering%to%Penetrate%the%Intimidation%Barrier,%http://www.useit.com/papers/guerrilla_hci.html,%accessed%18%Oct,%2007.
! Nielsen,%J.,%and%Molich,%R.%(1990).%Heuristic%evaluation%of%user%interfaces,%Proc.?ACM?CHI'90?Conf.?(Seattle,%WA,%1Z5%April),%249Z256.
! Nielsen,%J.,%and%Mack,%R.L.%(Eds.),%Usability%Inspection%Methods,%p25Z62.%John%Wiley%&%Sons,%New%York,%NY%(1994).
! Sy,%D.%Adapting%usability%investigations%for%agile%userZcentered%design.%Journal?of?Usability?Studies,%Vol.%2,%No.%3,%May%2007.
498