Applied Pervasive Computing Presentation 3: Prototyping.

21
Applied Pervasive Computing Presentation 3: Prototyping

Transcript of Applied Pervasive Computing Presentation 3: Prototyping.

Page 1: Applied Pervasive Computing Presentation 3: Prototyping.

Applied Pervasive Computing

Presentation 3:

Prototyping

Page 2: Applied Pervasive Computing Presentation 3: Prototyping.

2

Outline

• Motivation?• Ubicomp methodology• Prototyping• Lo-fi• Hi-fi• Longitudinal• Prototyping in hardware

Page 3: Applied Pervasive Computing Presentation 3: Prototyping.

Motivation

• Ubicomp field is novel and uncharted• Break the conventions => no conventions• No “final solution“ – no “one shot”?• Proof-of-concept prototypes useful• Iterative research approach useful

3

Page 4: Applied Pervasive Computing Presentation 3: Prototyping.

UbiComp Methodology

• Main research approach used in early ubiquitous computing projects:

• “the construction of working prototypes of the necessary infrastructure in sufficient quality to debug the viability of the system in daily use; ourselves and a few colleagues serving as guinea pigs” [Weiser]

• Used today in pervasive computing research

4

Page 5: Applied Pervasive Computing Presentation 3: Prototyping.

5

Origins: civil engineering

Bridge building

Need to secure delivery

Specify everything!

Does not always work well- In a software development perspective

- Especially so in a pervasive computing perspective

- Promotes building the product right – not the right product

“The Waterfall Model”

Requirementsspecification

Requirementsspecification

Architecturaldesign

Architecturaldesign

Detaileddesign

Detaileddesign

Coding andunit testingCoding andunit testing

Integrationand testingIntegrationand testing

Operation andmaintenance

Operation andmaintenance

Page 6: Applied Pervasive Computing Presentation 3: Prototyping.

6

Design Fallbacks- Design fallbacks are one solution

- Problems with interactive systems

- Very expensive with long fallbacks

- Users do not understand Use Cases

or Class Diagrams and similar

lots of feedback!

Requirementsspecification

Requirementsspecification

Architecturaldesign

Architecturaldesign

Detaileddesign

Detaileddesign

Coding andunit testingCoding andunit testing

Integrationand testingIntegrationand testing

Operation andmaintenance

Operation andmaintenance

Page 7: Applied Pervasive Computing Presentation 3: Prototyping.

7

Iterative Rapid Development Proces

Spiralmodel

End target

Start

ROPES

Iterations helps significantly on usability problems (Bohm 1988)But if not verified – then useless

Page 8: Applied Pervasive Computing Presentation 3: Prototyping.

8

XP Project model

Page 9: Applied Pervasive Computing Presentation 3: Prototyping.

9

Not for all system engineering

• Requirement specifications & legal contracts are relevant!• Need to control ”loose cannon” developers: gold platers• Software design gone bad is very expensive• Hardware design is very, very expensive• Protyping is relevant in all types of project – but most often

BEFORE requirement specifications are formulated

Page 10: Applied Pervasive Computing Presentation 3: Prototyping.

10

Techniques for prototyping

Storyboards / mock-ups / sketchesprototypes with low fidelity (= precision)need not be computer-based – paper mock-upsAKA paper prototypes

Limited func simulations = scenariosOne part of functionality provided by designersRAD tools may be used for these (Visual Studio)Most often mock-ups are okWizard of Oz techniqueVideo prototypes

Horisontal / Vertical advanced prototypesDepending on what needs to be testedRAD tools are common for these Throw-away, incremental, evolutionary

Page 11: Applied Pervasive Computing Presentation 3: Prototyping.

Methods, methods, methods

11

Page 12: Applied Pervasive Computing Presentation 3: Prototyping.

12

Nokia UsesPaper PrototypingExtensively

Page 13: Applied Pervasive Computing Presentation 3: Prototyping.

13

Director or Visual Studio?

• Prototyping tools • Director, Hypercard, PowerPoint, Frontpage• prototyping tools produce slow programs• Use HTML, images, sketches• May evolve to a certain degree – then throw

away

• IDE tools with UI Builders • Visual Studio, Delphi• Uses the standard Widgets available• May eventually evolve to full product• May take a longer time to get started with• Better for developers – not good for designers

Page 14: Applied Pervasive Computing Presentation 3: Prototyping.

Longitudinal prototyping

Page 15: Applied Pervasive Computing Presentation 3: Prototyping.

Longitudinal prototyping

• Traditional prototyping often within confined timespan• Sometimes more feasible to test concepts over time• Wizard of oz and video prototypes not feasible• Higher demands:

• Must be easy to install and activate

• Must be sufficiently easy to use

• Must be sufficiently robust

• Must be able to store or forward test data

• Must have sufficient power supply

15

Page 16: Applied Pervasive Computing Presentation 3: Prototyping.

Prototyping in hardware

Page 17: Applied Pervasive Computing Presentation 3: Prototyping.

Prototyping in hardware

• Wizard of oz and video prototyping:• Simulates hardware functionality

• Good for initial evaluation of concepts

• Not good for evaluating feasibility of HW sensors

• Cannot be used in longitudinal prototype evaluation

• Building “real” hardware prototypes is expensive• Use hardware prototype toolkits instead

17

Page 18: Applied Pervasive Computing Presentation 3: Prototyping.

Prototyping hardware toolkits

• Phidgets• Sun SPOT• Ardunio• Netdunio• FEZ• Intel Shimmer• More …

Page 19: Applied Pervasive Computing Presentation 3: Prototyping.
Page 20: Applied Pervasive Computing Presentation 3: Prototyping.
Page 21: Applied Pervasive Computing Presentation 3: Prototyping.

Protoype tools used

• 2x Phidgets InterfaceKit • RFID LF sensor• FlexiForce strain gauges• Visual Studio 2010• .NET 4.0 / C#• SMS Gateway