Title
Component-based tailorability: Enabling highly flexible software applications
Abstract
Component technologies are perceived as an important means to keep software architectures flexible. Flexibility offered by component technologies typically addresses software developers at design time. However, the design of software which should support social systems, such as work groups or communities, also demands 'use-time', or technically spoken, 'run-time' flexibility. In this paper, we summarize a decade of research efforts on component-based approaches to flexibilize groupware applications at run-time. We address the user as a 'casual programmer' who develops and individualizes software for his work context. To deal with the challenges of run-time flexibility, we developed a design approach which covers three levels: software architecture, user interface, and collaboration support. With regard to the software architecture, a component model, called FlexiBeans, has been developed. The FreEvolve platform serves as an environment in which component-based applications can be tailored at run-time. Additionally, we have developed three different types of graphical user interfaces, enabling users to tailor their applications by recomposing components. To enable collaborative tailoring activities, we have integrated functions that allow sharing component structures among users. We also present different types of support techniques which are integrated into the user interface in order to enable users' individual and collaborative tailoring activities. We conclude by elaborating on the notion of 'software infrastructure' which offers a holistic approach to support design activities of professional and non-professional programmers.
Year
DOI
Venue
2008
10.1016/j.ijhcs.2007.08.007
Int. J. Hum.-Comput. Stud.
Keywords
Field
DocType
component-based tailorability,flexible software application,individualizes software,user interface,software developer,component structure,component technology,cscw,design activity,collaboration support,tailorability,software infrastructure,component-based systems,software architecture,component model,end user development,graphic user interface,social system,working group,software development
Software design,Software design description,Collaborative software,Computer science,Common Component Architecture,Human–computer interaction,Component-based software engineering,Software construction,Software framework,Software development
Journal
Volume
Issue
ISSN
66
1
1071-5819
Citations 
PageRank 
References 
67
2.74
49
Authors
3
Name
Order
Citations
PageRank
Volker Wulf12119219.33
Volkmar Pipek280675.64
Markus Won316713.02