Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
SENG%403%–%Software%Development%in%Teams%&%Organizations
PrototypingSoftware%Development%in%Teams%&%Organizations
154 SENG%403%–%Software%Development%in%Teams%&%Organizations
Order%of%Matters
Envisioning%the%project Release%Planning Iteration%Planning Kick%starting:-Now-that-we-have-a-plan,-where-do-we-start? Prototyping Architecture%envisioning%&%modeling
155
SENG%403%–%Software%Development%in%Teams%&%Organizations
Prototyping
Building%an%artifact%that%resembles%a%specific%part%of%a%software%system.
Why%do%we%prototype?% Learn%more%about%the%requirements Get%quick%feedback%from%the%customer Experiment%with%alternative%designs%and%solutions Clarify%vagueness%and%uncertainties%before%code%is%written
156 SENG%403%–%Software%Development%in%Teams%&%Organizations
%Prototype%Example
http://tfcallaghan.com/yahoo_site_admin/assets/docs/hr_lowfi_1.66162647.bmp
157
SENG%403%–%Software%Development%in%Teams%&%Organizations
User%Interface%Prototyping
UIs%are%hard%to%design/specify Interactive%nature,%graphical%layout Difficult%for%users%to%think%abstractly
Mock_ups Provide%direct%experience%with%interface Make%it%easier%to%identify%good%and%bad%characteristics Observe%look%and%feel% Work%through%usage%scenarios See%if%all%information,%options%are%accounted%for
Jonathan%Aldrich,%http://www.cs.cmu.edu/~aldrich/courses/413/slides/10_proto.pdf
158 SENG%403%–%Software%Development%in%Teams%&%Organizations
Logic%Prototyping
Prototyping%is%not%used%only%for%UI. You%can%prototype%a%vertical%slice%of%the%system.
For%uncertain%requirements.%
UI
Logic
Feature-A
Feature-B
Feature-C
Feature-D
Feature-E
159
SENG%403%–%Software%Development%in%Teams%&%Organizations
Low_Fidelity%Prototypes
Paper%sketches%of%the%interface%look_and_feel,%and%interactive%behavior.%%
Quick%and%cheap%to%prepare,%change,%and%throw%away.%
You%can%iterate%as%many%times%as%needed%–%because%it%is%cheap%and%fast.
160 SENG%403%–%Software%Development%in%Teams%&%Organizations
Low_Fidelity%Prototype%Example
http://www.sapdesignguild.org/editions/edition7/images/sketch.jpg
161
SENG%403%–%Software%Development%in%Teams%&%Organizations
Technique:%Storyboards
Sketches%that%capture%snapshots%of%the%interface%at%key%points%during%an%interaction.
Characteristics%of%a%good%sketch:% Quick%to%make Disposable% Rough% Suggests%&%explores%rather%than%confirms%
http://ase.cpsc.ucalgary.ca/ase/uploads/SENG515615F2010/ASEReleasePlanning.pdf
162 SENG%403%–%Software%Development%in%Teams%&%Organizations
Example
http://farm1.static.flickr.com/106/309576865_22e0e9cd12_o.jpg
163
SENG%403%–%Software%Development%in%Teams%&%Organizations
Excercise
Pick%one%story%in%your%system. Identify%the%major%steps%(key%snapshots)%of%the%story.%
Develop%a%storyboard.
164 SENG%403%–%Software%Development%in%Teams%&%Organizations
High_Fidelity%Prototypes
Looks%like%the%real%system%and%has%more%details. Useful%when:
More%details%are%needed%to%understand%what%the%customer%wants.
We%need%to%evaluate%the%interface%in%a%close_to_real%setting.
Disadvantages: Takes%more%time%than%low_fi. More%difficult%to%throw_away.% Customer%may%think%it%is%the%final%product.
165
SENG%403%–%Software%Development%in%Teams%&%Organizations
Example
Low_fidelity%(left)%vs.%High_fidelity%(right)
http://www.infoq.com/resource/articles/guest_simon_sketchflow/en/resources/image2.png
166 SENG%403%–%Software%Development%in%Teams%&%Organizations
Technique:%Wizard%of%Oz
Simulating%(faking)%the%functionality%of%an%interface%using%a%script%or%a%human.%
Done%before%the%functionality%is%actually%implemented%as%follows: A%user%is%asked%to%interact%with%a%prototype. The%prototype%is%controlled%by%a%“wizard”%that%is%invisible%to%the%user.
The%wizard%observes%the%actions%of%the%user%and%reacts%with%different%responses.
167
SENG%403%–%Software%Development%in%Teams%&%Organizations
Example:%ATM%
The%user%is%provided%with%an%ATM%interface%and%asked%to%use%the%interface%to%deposit%a%check.
When%the%user%selects%the%Deposit%option,%somebody%behind%the%scenes%(or%a%script)%brings%up%a%new%interface.%
When%the%user%makes%a%mistake%(e.g.%exceeds%a%certain%limit,%inputs%an%invalid%number),%the%“wizard”%may%suggest%corrections%in%a%form%of%error%messages.
168 SENG%403%–%Software%Development%in%Teams%&%Organizations
Example:%ATM
http://www.physicalinterface.com/view/that_design_is_money
169