Daniel, Florian and Yu, Jin and Benatallah, Boualem and Casati, Fabio and Matera, Maristella and Saint-Paul, Regis (2006) Understanding UI Integration: A survey of problems, technologies, and opportunities. UNSPECIFIED. (Unpublished)
The problem of facilitating the creation of applications from components has been one of the biggest areas of investigation in software engineering and data management over the past 30 years. It has led to a large body of research and development in such areas as component-based software engineering, middleware, and service composition. While results from these efforts simplify integration at the data or application level, little work has been done to facilitate integration at the presentation level. Everybody who has developed graphical applications is aware that the development of user interfaces (UIs) is one of the most time-consuming parts of application development, testing, and maintenance . This would suggest that reuse is essential also in UI. However, while UI development today is facilitated by frameworks (such as Java Swing) providing pre-packaged classes with UI functionality such as buttons, menus, and the likes, the integration of coarse-grained and possibly stand-alone applications at the UI level has received little attention. In this work we investigate the problem of graphical UIs (GUIs) integration; that is, integration of components by combining their presentation front-ends, rather than their application logic or data. The granularity of components is that of stand-alone modules or applications, and the goal is to build composite applications that leverage the components’ individual UIs to produce richer, composite UI applications. The need for such integration is manifest, and examples are numerous: applications overlaying real estate information over Google maps, aggregated dashboards showing consoles monitoring different aspects of a computer’s performance , or “web” operating systems that allow coordinated interactions with multiple applications on the same web page . All these examples require coordination among application UIs (e.g., zooming out on a map means that overlaid information on houses for sale must change as well). The objective of this paper is to identify the basic characteristics of UI integration as a research discipline, discuss its main issues, and present the different approaches that can be taken to address them. Specifically, we describe and exemplify the characteristics, challenges and opportunities of UI integration in comparison with the two main other kinds of integration, namely data and application integration. This is important not only to understand why UI integration differs from other integration problems and hence why it requires unique technologies and methodologies, but also to understand the similarities, as there are many lessons that can be learned from these other types of integration. Then, we characterize the main dimensions of the UI integration problem, which gives us a framework under which to analyze existing approaches to UI integration and discuss their characteristics. Finally, we discuss what is missing in current approaches and how we believe that the field should or will evolve to facilitate UI integration.
Actions (login required)