Scenario-driven prototyping for ubiquitous computing