A component- and push-based architectural style for AJAX applications

被引:118
作者
Mesbah, Ali [1 ]
van Deursen, Arie [1 ]
机构
[1] Delft Univ Technol, Software Engn Res Grp, NL-2628 Delft, Netherlands
关键词
AJAX; Web architectural style; Web engineering; Single page interface; Rich internet application;
D O I
10.1016/j.jss.2008.04.005
中图分类号
TP31 [计算机软件];
学科分类号
081202 [计算机软件与理论]; 0835 [软件工程];
摘要
A new breed of web application, dubbed AJAX, is emerging in response to a limited degree of interactivity in large-grain stateless Web interactions. At the heart of this new approach lies a single page interaction model that facilitates rich interactivity. Also push-based solutions from the distributed systems are being adopted on the web for AJAX applications. The field is, however, characterized by the lack of a coherent and precisely described set of architectural concepts. As a consequence, it is rather difficult to understand, assess, and compare the existing approaches. We have studied and experimented with several AJAX frameworks trying to understand their architectural properties. In this paper, we summarize four of these frameworks and examine their properties and introduce the SPIAR architectural style which captures the essence of AJAX applications. We describe the guiding software engineering principles and the constraints chosen to induce the desired properties. The style emphasizes user interface component development, intermediary delta-communication between client/server components, and push-based event notification of state changes through the components, to improve a number of properties such as user interactivity, user-perceived latency, data coherence, and ease of development. In addition, we use the concepts and principles to discuss various open issues in AJAX frameworks and application development. (C) 2008 Elsevier Inc. All rights reserved.
引用
收藏
页码:2194 / 2209
页数:16
相关论文
共 53 条
[1]
[Anonymous], 2006, COMET LOW LATENCY DA
[2]
ASLESON R, 2005, FDN AJAX APRESS
[3]
Basic concepts and taxonomy of dependable and secure computing [J].
Avizienis, A ;
Laprie, JC ;
Randell, B ;
Landwehr, C .
IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2004, 1 (01) :11-33
[4]
Barrett D. J., 1996, ACM Transactions on Software Engineering and Methodology, V5, P378, DOI 10.1145/235321.235324
[5]
Bass L, 2021, Software Architecture in Practice
[6]
BERNERSLEE T, 1984, 1738 RFC URL
[7]
Bhattacharya S., 2007, P 6 WORK IEEE IFIP C, P44
[8]
Adaptive push-pull: Disseminating dynamic web data [J].
Bhide, M ;
Deolasee, P ;
Katkar, A ;
Panchbudhe, A ;
Ramamritham, K ;
Shenoy, P .
IEEE TRANSACTIONS ON COMPUTERS, 2002, 51 (06) :652-668
[9]
Estimating and eliminating redundant data transfers over the Web: a fragment based approach [J].
Bouras, C ;
Konidaris, A .
INTERNATIONAL JOURNAL OF COMMUNICATION SYSTEMS, 2005, 18 (02) :119-142
[10]
BOZDAG E, 2008, TUDSERG2008009 DELFT