COMPONENT-BASED WEB ENGINEERING USING SHARED COMPONENTS AND CONNECTORS
Today, web development platforms often follow a modular architecture that enables platform extension. Popular web development frameworks such as Ruby on Rails and Symfony, as well as content management systems (CMS) such as WordPress and Drupal oer extension mechanisms that allow the platform core to be extended with additional functionality. However, such extensions are typically isolated units dening their own data structures, application logic and user interfaces, and are dicult to combine. We address the fact that applications need to be congured more freely through the com- position of such extensions. We present an approach and model for component-based web engineering based on the concept of components and connectors between them, supporting composition at the level of the schema and data, the application logic and the user interface. We have realised our approach in two popular web development set- tings. First, we demonstrate how our approach can be integrated into web development frameworks, thus bringing component-based web engineering to the developer. Second, we present, based on the example of WordPress, how advanced end-users can be sup- ported in component-based web engineering by integrating our approach into CMS. The applicability of our approach in both settings demonstrates its generality.
O. Chudnovskyy, T. Nestler, M. Gaedke, F. Daniel, J. Fernandez-Villamor, V. I. Chepegin,
J. A. Fornas, S. Wilson, C. Kogler, and H. Chang (2012), End-user-oriented Telco Mashups:
The OMELETTE Approach, Proc. World Wide Web Conf. (WWW'12)(Companion Volume).
P. C. Clements. (1996), A Survey of Architecture Description Languages, Proc. Intl. Workshop on
Software Speci cation and Design (IWSSD 1996).
F. Daniel, F. Casati, B. Benatallah, and M.-C. Shan (2009), Hosted Universal Composition: Mod-
els, Languages and Infrastructure in mashArt, Proc. Intl. Conf. on Conceptual Modeling (ER'09).
R. Ennals, E. Brewer, M. Garofalakis, M. Shadle, and P. Gandhi (2007), Intel Mash Maker: Join
the Web, ACM SIGMOD Record, Vol.36(4) pp.27-33.
T. Erl (2005),Service-Oriented Architecture: Concepts, Technology, and Design, Prentice Hall
H.-W. Gellersen, R. Wicke, and M. Gaedke (1997), Webcomposition: An object-oriented support
system for the web engineering lifecycle, Computer Networks, Vol.29(8-13) pp.1429-1437.
M. Imran, S. Soi, F. Kling, F. Daniel, F. Casati, and Ma. Marchese (2012), On the Systematic De-
velopment of Domain-Speci c Mashup Tools for End Users, Proc. Intl. Conf. on Web Engineering
R. Kazman and H.-M. Chen (2009), The Metropolis Model a New Logic for Development of Crowd-
sourced Systems, Commun. ACM, Vol.52(7), pp.76-84.
Kung-Kiu Lau and Zheng Wang (2007), Software Component Models, IEEE Trans. Softw. Eng.,
Vol. 33, pp. 709-724.
S. Leone, A. de Spindler, and D. McLeod (2013), Model-driven Composition of Information Sys-
tems from Shared Components & Connectors, Proc. Intl. Conf. on Cooperative Information Systems
S. Leone, A. de Spindler, and M. C. Norrie (2012), A Meta-Plugin for Bespoke Data Management
in WordPress, Proc. Intl. Conf. on Web Information Systems Engineering (WISE'12).
S. Leone, A. de Spindler, M. C. Norrie, and D. McLeod (2013), Integrating Component-based Web
Engineering into Content Management Systems, Proc. Intl. Conf. onWeb Engineering (ICWE'13).
S. Leone and M. C. Norrie (2011), Building eCommerce Systems from Shared Micro-Schemas,
Proc. Intl. Conf. on Cooperative Information Systems (CoopIS'11).
H. Lieberman, F. Paterno, and V.r Wulf (Eds.) (2006), End User Development (Human-Computer
Interaction Series), Springer.
N. Medvidovic and R. N. Taylor (2000), A Classi cation and Comparison Framework for Software
Architecture Description Languages, IEEE Trans. Softw. Eng., Vol. 26(1) pp. 70-93.
S. Murthy, D. Maier, and L. Delcambre (2006), Mash-o-Matic, Proc. ACM Symposium on Document
M. Shaw (2011), Modularity for the Modern World: Summary of Invited Keynote, Proc. Intl.
Conf. on Aspect-Oriented Software Development (AOSD'11).