Professional Documents
Culture Documents
This reprint may differ from the original in pagination and typographic detail.
In reference to IEEE copyrighted material which is used with permission in this dissertation, the IEEE does
not endorse any of [university/educational entity's name goes here]'s products or services. Internal or
personal use of this material is permitted. If interested in reprinting/republishing IEEE copyrighted material for
advertising or promotional purposes or for creating new collective works for resale or redistribution, please
go to http://www.ieee.org/publications_standards/publications/rights/rights_link.html to learn how to obtain a
License from RightsLink.
All material supplied via Aaltodoc is protected by copyright and other intellectual property rights, and
duplication or sale of all or part of any of the repository collections is not permitted, except that material may
be duplicated by you for your research use or educational purposes in electronic or print form. You must
obtain permission for any other use. Electronic or print copies may not be offered, whether for sale or
otherwise to anyone who is not an authorised user.
Toward Unified
Web Application
Development
Markku Laine, Denis Shestakov, Evgenia Litvinova, and Petri Vuorimaa,
Aalto University School of Science
T
raditional Web application develop- Classification of Programming
ment requires a good understanding Languages
of heterogeneous systems, program- Numerous programming languages have been
ming languages, concepts, and frame- developed over the years. One way of better un-
works. For example, in a Web application based derstanding their similarities and differences is
on the conventional three-tier architecture,1 the to classify them into a hierarchy of paradigms
presentation (user interface), logic (server), and based on their computation model. Typically,
data (data management) tiers are all authored top-level classification comprises two paradigms—
using conceptually different programming imperative (such as C, Java, and JavaScript) and
languages.2 declarative (such as CSS, HTML, and SQL)—
Novel Web application architectures have which we can further divide into subparadigms,
emerged that aim to reduce this complexity as shown in Figure 1.3
by expanding the concepts used on a single The main difference between the two top-level
tier to cover all three tiers. In addition to re- paradigms is that declarative languages specify
ducing the amount of required knowledge and what a program should do (the desired results),
simplifying the development process, these ar- rather than how to do it (the algorithms needed
chitectural approaches also allow tier-specific to achieve the results). This higher abstrac-
experts to author an entire Web application on tion level makes declarative languages easier
their own. to reason about and raises their semantic level.
30 IT Pro September/October 2011 Published by the IEEE Computer Society 1520-9202/11/$26.00 © 2011 IEEE
Programming language
paradigms
computer.org/ITPro 31
THE FUTURE OF WEB APPS
XHTML+
Presentation XML
XForms
XForms
Presentation Data XML
(XPath)
(b)
XHTML+ XML+
Presentation
JavaScript JSON
XHTML+ Presentation Object-
Java oriented
Java Object-
Data
(ORM) oriented
SQL/ORM Data Relational
(c)
(a)
Data
XHTML+ Presentation XML
XQuery
(d)
Figure 2. Presentation, logic, and data-centric approaches for expanding (a) the conventional three-tier Web
application architecture. Different Web application frameworks exist for each tier: (b) XFormsDB expands the
presentation tier, (c) the Google Web Toolkit is for the logic tier, and (d) Sausalito expands the data tier. For
each architecture, technologies appear on the left and data models are on the right.
computer.org/ITPro 33
THE FUTURE OF WEB APPS
O functional and mature and originate in a three-tier application structure. The XML- and XQuery-
provided better support. Yet based frameworks are typically declarative, logic-centric GWT and
declarative XFormsDB and Sausalito presentation-centric Helma are imperative, while Angular is a hybrid
are sufficiently mature to let experts framework.
from a corresponding tier author highly
interactive Web applications. All of the evaluated 6. M. Laine, “XFormsDB—An XForms-Based Frame-
approaches offer compelling alternatives to conven- work for Simplifying Web Application Development,”
tional three-tier Web development. With the ongo- master’s thesis, Dept. Media Technology, Aalto Univ.
ing trend in deploying Web applications on cloud School of Science, 2010.
platforms—where developers have little or no con- 7. M. Honkala, O. Koskimies, and M. Laine, “Con-
trol over the resources the applications are using— necting XForms to Databases,” W3C Workshop on
the declarative style of Web application develop- Declarative Models of Distributed Web Applica-
ment becomes particularly promising. We thus tions, 2007; www.w3.org/2007/02/dmdwa-ws/Papers/
argue that declarative Web application frameworks oskari-koskimies.pdf.
will play much larger role in the coming years. 8. W. Meier, “eXist: An Open Source Native XML
Database,” Web, Web-Services, and Database Systems,
References LNCS 2593, Springer, 2003, pp. 169–183.
1. G. Alonso et al., Web Services: Concepts, Architectures 9. ISO/IEC 25010:2011: Systems and Software Engineering—
and Applications (Data-Centric Systems and Applications), Systems and Software Quality Requirements and Evalu-
Springer, 2003. ation (SQuaRE)—System and Software Quality Models,
2. T. Mikkonen and A. Taivalsaari, Web Applications— Int’l Standards Organization/Int’l Electrotechnical
Spaghetti Code for the 21st Century, tech. report TR- Commission, 2011.
2007-166, Sun Microsystems, June 2007. 10. J. Offutt, “Quality Attributes of Web Software Applica-
3. D. Appleby and J. VandeKopple, Programming Lang- tions,” IEEE Software, vol. 19, no. 2, 2002, pp. 25–32.
uages: Paradigm and Practice, Computer Science Series, 11. M. Åkerberg, “Evaluation of XFormsDB-Based Ap-
McGraw-Hill, 1997. plication Development—A Case Study,” master’s
4. M. Honkala, “Web User Interaction—A Declarative thesis, Dept. Media Technology, Aalto Univ. School
Approach Based on XForms,” doctoral dissertation, of Science, 2010.
Dept. Computer Science and Eng., Helsinki Univ. of 12. M. Hevery and A. Abrons, “Declarative Web-
Technology, 2006. Applications without Server: Demonstration of How
5. J. Kuuskeri and T. Mikkonen, “Partitioning Web Ap- a Fully Functional Web-Application can be Built in
plications between the Server and the Client,” J. Web an Hour with only HTML, CSS & <angular/> Java-
Eng., vol. 9, no. 3, 2010, pp. 207–226. Script Library,” Proc. Object-Oriented Programming,
computer.org/ITPro 35
THE FUTURE OF WEB APPS
Systems, Languages & Applications (OOPSLA 09), ACM from the Aalto University. Contact him at markku.laine@
Press, 2009, pp. 801–802. aalto.fi.
13. G. Toffetti et al., “State-of-the-Art and Trends in the
Systematic Development of Rich Internet Applica- Denis Shestakov is a postdoctoral researcher in the Depart-
tions,” J. Web Eng., vol. 10, no. 1, 2011, pp. 70–86. ment of Media Technology at the Aalto University, Finland.
14. M. Linaje, J.C. Preciado, and F. Sanchez-Figueroa, His research interests span Web data management and massive
“Engineering Rich Internet Application User Inter- data processing, with a focus on scalable Web agents. Shesta-
faces over Legacy Web Models,” IEEE Internet Comput- kov received his PhD in computer science from the University
ing, vol. 11, no. 6, 2007, pp. 53–59. of Turku, Finland. Contact him at denis.shestakov@aalto.fi.
15. C. Kroiss, N. Koch, and A. Knapp, “UWE4JSF: A
Model-Driven Generation Approach for Web Ap- Evgenia Litvinova is a research assistant in the De-
plications,” Proc. 9th Int’l Conf. Web Eng. (ICWE 09), partment of Media Technology at the Aalto University,
LNCS 5648, Springer, 2009, pp. 493–496. Finland. Her research interests include end-user Web
16. S. Meliá et al., “A Model-Driven Development development and Web usability. Litvinova received her
for GWT-Based Rich Internet Applications with MSc in computer science from the University of Eastern
OOH4RIA,” Proc. 8th Int’l Conf. Web Eng. (ICWE 08), Finland. Contact her at evgenia.samochadina@aalto.fi.
IEEE Press, 2008, pp. 13–23.
Petri Vuorimaa is a full professor in the Department of
Markku Laine is a doctoral student in the Department Media Technology at the Aalto University, Finland. His
of Media Technology at the Aalto University, Finland. research interests include Web-based services, smart spaces,
His research interests include declarative Web applica- and mobile media applications. Vuorimaa received his DSc
tion development and Web performance optimization. in computer science from the Tampere University of Tech-
Laine received his MSc in communications engineering nology, Finland. Contact him at petri.vuorimaa@aalto.fi.
EXECUTIVE STAFF
Executive Director: Angela R. Burgess; Associate Executive Director,
Director, Governance: Anne Marie Kelly; Director, Finance &
PURPOSE: The IEEE Computer Society is the world’s largest Accounting: John Miller; Director, Information Technology & Services:
association of computing professionals and is the leading provider Ray Kahn; Director, Membership Development: Violet S. Doan; Director,
of technical information in the field. Products & Services: Evan Butterfield
MEMBERSHIP: Members receive the monthly magazine Computer,
discounts, and opportunities to serve (all activities are led by COMPUTER SOCIETY OFFICES
Washington, D.C.: 2001 L St., Ste. 700, Washington, D.C. 20036-4928
volunteer members). Membership is open to all IEEE members,
Phone: tFax: +1 202 728 9614
affiliate society members, and others interested in the computer field.
Email: hq.ofc@computer.org
COMPUTER SOCIETY WEBSITE: www.computer.org
Los Alamitos: 10662 Los Vaqueros Circle, Los Alamitos, CA 90720-1314
Next Board Meeting: 13–14 Nov., New Brunswick, NJ, USA Phone: tEmail: help@computer.org