Ubiquitous computing, transparent interfaces, context-aware computing, automated capture, toolkit design, software structure, component integration