Kicking Down Silos: Co-Designing Software & Hardware to Create Great Products
Transcript of Kicking Down Silos: Co-Designing Software & Hardware to Create Great Products
Waterfall
Verification
Maintenance
Requirements Product requirements document
Design Software architecture
Implementation Software
User-Centered Iterative Design
DESIGN PROTOTYPE TESTITERATE
Concept
Paper/“Wizard of Oz”
Low Fidelity
High Fidelity
(Near) Production
DESIGN PROTOTYPE TESTITERATE
DESIGN PROTOTYPE TESTITERATE
DESIGN PROTOTYPE TESTITERATE
DESIGN PROTOTYPE TESTITERATE
Stages
1. Concept testing 2. Paper/“Wizard of Oz” 3. Software Simulation 4. Simulated Hardware 5. Prototyping Hardware 6. Custom hardware
Process Goals• Preserve progress between prototypes – Application code – I/O libraries – Look and feel
Process Goals• Preserve progress between prototypes – Application code – I/O libraries – Look and feel
• Make user tests as authentic as possible
Process Goals• Preserve progress between prototypes – Application code – I/O libraries – Look and feel
• Make user tests as authentic as possible• Small jumps between prototype generations – Cost – Time
Software SimulationSoftware
Kinoma Platform Runtime (KPR)
Native
Interpreted
HTML
Mobile appframework
Android
iOS
Hardware SimulationSoftware
Simulated Hardware
Kinoma Platform Runtime (KPR)
Native
Interpreted
HTML
Mobile appframework
Android
iOS
Kinoma simulator
Simulatorfor Arduino
CPU emulator (e.g. QEMU)
Android simulator
iOS simulator
Off-the-Shelf Prototyping HardwareSoftware
Simulated Hardware
Prototyping Hardware
Kinoma Platform Runtime (KPR)
Native
Interpreted
HTML
Mobile appframework
Android
iOS
Kinoma simulator
Simulatorfor Arduino
CPU emulator (e.g. QEMU)
Android simulator
iOS simulator
Kinoma Create
Arduino
Galileo
PIC Dev
Raspberry Pi
BeagleBone
Android + IOIO× ×
(Affordable) Custom HardwareSoftware
Simulated Hardware
Prototyping Hardware
Custom Hardware
Kinoma Platform Runtime (KPR)
Native
Interpreted
HTML
Mobile appframework
Android
iOS
Kinoma simulator
Simulatorfor Arduino
CPU emulator (e.g. QEMU)
Android simulator
iOS simulator
Kinoma Create
Arduino
Galileo
PIC Dev
Raspberry Pi
BeagleBone
Android + IOIO
Marvell ARM
x86
MIPS
ARM× × ×
×
××××
×
• Saving time allows you to focus on
• Industrial design
• Companion app
• User testing
• Community building
• Crowdfunding campaign management
• Investor relations
• Building a brand
Don’t Re-engineer: Expand Priorities
• “Grain Storage Silos” photo from flickr.com/katsrcool, used under CC Attribution 2.0 Generic license
• “Inclinometer on Arduino” photo from flickr.com/27164521@N00, used under CC Attribution 2.0 Generic license
• “BeagleBone” photo from flickr.com/embecosm, used under CC Attribution-ShareAlike 2.0 Generic license
Credits