Abstract:The fast growth and diversity of technological devices currently being produced is benefiting areas such as "ambient intelligence". This area attempts to integrate information technology in any personal environment. However, to construct service/application software that adapts to different environments, there must be techniques available that favor this type of development. Component-based software Engineering (CBSE) is a discipline of the software engineering that integrates (previously constructed) components to build new software systems. This paper presents a CBSE approach to build Graphical User Interfaces (GUI) at run-time. Both a component-based perspective of the user interface and a set of component relationships are presented in the paper. As a case study, this paper also describes an application built for an emerging computation environment, Smart TV. A running example is also presented through the paper putting some Web-based solutions to build User Interfaces together (e.g., Wookie, W3C Widgets, Node.js).