skip to main content
10.1145/2048147.2048219acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Improving user experience by infusing web technologies into desktops

Published: 22 October 2011 Publication History

Abstract

Modern applications are able to adapt their architecture dynamically in order to tackle requirements, correctives and context changes. Such dynamism is often an echo of complexity and is not well supported by traditional client and user software stacks making complex the design, implementation and maintenance of the end user interface. Meanwhile, the web has seen the emergence of user interface technologies (e.g. HTML5, CSS3, JavaScript) widely adopted by developers to create highly flexible user interfaces. However, such clients are intrinsically bound to run on a web browser which is out of the control of the application.
In this paper, we present ChameRIA, an application framework where a browser engine is reified as a component within the framework, thus allowing for better control over the rendering engine. We describe how we preserve a clear separation of concerns between the user interface and the application logic while maintaining coherence between them. We discuss how ChameRIA has been successfully used in two projects: a DRM document reader and a valve control application.

References

[1]
O. Alliance. Osgi service platform core specification release 4, May 2007. http://www.osgi.org/Specifications/HomePage.
[2]
C. Anderson and M. Wolff. The web is dead. long live the internet. Wired, August 2010. http://www.wired.com/magazine/2010/08/ff_webrip.
[3]
G. R. Andrews. Paradigms for process interaction in distributed programs. ACM Comput. Surv., 23: 49--90, March 1991. ISSN 0360-0300.
[4]
J. Bardin, P. Lalanda, and C. Escoffier. Towards an automatic integration of heterogeneous services and devices. Asia-Pacific Conference on Services Computing, 0: 171--178, 2010.
[5]
L. Baresi and C. Ghezzi. The disappearing boundary between development-time and run-time. In FoSER'10, pages 17--22, 2010.
[6]
H. Cervantes and R. Hall. A Framework for Constructing Adaptive Component-based Applications: Concepts and Experiences. In CBSE, pages 130--137. Springer, May 2004. ISBN 3-540-21998-6.
[7]
C. Cornu. Viewing html pages with swt browser widget, August 2004. http://www.eclipse.org/articles/Article-SWT-browser-widget/browser.html
[8]
P. Deutsch and J. Gosling. The eight fallacies of distributed computing. James Gosling: on the Java Road, 1997. http://blogs.oracle.com/jag/resource/Fallacies.html.
[9]
C. Escoffier and R. Hall. Dynamically Adaptable Applications with iPOJO Service Components. In Software Composition, pages 113--128. Springer, March 2007. ISBN 978-3-540-77350-4.
[10]
E. Foundation. Component oriented development and assembly (coda) with equinox, March 2008. http://www.eclipse.org/eclipsert/whitepaper/20080310_equinox.pdf.
[11]
M. Foundation. Electrolysis. Mozilla Wiki, April 2011. https://wiki.mozilla.org/Electrolysis.
[12]
W. Foundation. Standard widget toolkit, 2011. http://en.wikipedia.org/wiki/Standard_Widget_Toolkit.
[13]
K. Gama and D. Donsez. A survey on approaches for addressing dependability attributes in the osgi service platform. SIGSOFT Softw. Eng. Notes, 35: 1--8, May 2010. ISSN 0163-5948.
[14]
M. Hicks, J. T. Moore, and S. Nettles. Dynamic software updating. SIGPLAN Not., 36: 13--23, May 2001. ISSN 0362-1340.
[15]
ISO/IEC. Information technology - open distributed processing - reference model: Overview, December 1998. International Standard ISO/IEC 10746--1.
[16]
J. Kramer and J. Magee. Dynamic configuration for distributed systems. IEEE Trans. Softw. Eng., 11: 424--436, April 1985. ISSN 0098-5589.
[17]
P. Kriens. Scala components vs osgi. OSGi Alliance Blog, July 2010. http://www.osgi.org/blog/2010/07/scala-components-vs-osgi.html.
[18]
G. Lawton. New ways to build rich internet applications. Computer, 41: 10--12, August 2008. ISSN 0018-9162.
[19]
M. Léger, T. Ledoux, and T. Coupaye. Reliable dynamic reconfigurations in the fractal component model. In Proceedings of the 6th international workshop on Adaptive and reflective middleware., ARM '07, pages 3:1--3:6, New York, NY, USA, 2007. ACM. ISBN 978-1-59593-931-9.
[20]
M. Lehman and L. Belady. Program Evolution: Processes of Software Change. Academic Press, 1985. ISBN 0-12-442440-6.
[21]
K. Makris and R. A. Bazzi. Immediate multi-threaded dynamic software updates using stack reconstruction. In Proceedings of the 2009 conference on USENIX Annual technical conference, USENIX'09, pages 31--31, Berkeley, CA, USA, 2009. USENIX Association.
[22]
J. B. Meyer and B. Moschel. Javascriptmvc 3.0, 2010. http://javascriptmvc.com/.
[23]
I. Neamtiu, M. Hicks, G. Stoyle, and M. Oriol. Practical dynamic software updating for c. SIGPLAN Not., 41: 72--83, June 2006. ISSN 0362-1340.
[24]
M. Odersky and M. Zenger. Scalable component abstractions. In OOPSLA, 2005.
[25]
P. Oreizy, N. Medvidovic, and R. N. Taylor. Architecture-based runtime software evolution. In Proceedings of the 20th international conference on Software engineering, ICSE '98, pages 177--186, Washington, DC, USA, 1998. IEEE Computer Society. ISBN 0-8186-8368-6.
[26]
A. Orso, A. Rao, and M. Harrold. A technique for dynamic updating of java software. Software Maintenance, IEEE International Conference on, 0: 0649, 2002.
[27]
G. Prasad, R. Taneja, and T. Vikrant. Life above the service tier, October 2007.
[28]
W. Pree. Design Patterns for Object-Oriented Software Development. Addison Wesley Longman, 1st edition, 1995. ISBN 0201422948.
[29]
T. Reenskaug and A. Goldberg. Models-views-controllers. Xerox PARC report, December 1979. http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html.
[30]
C. Reis and S. D. Gribble. Isolating web programs in modern browser architectures. In Proceedings of the 4th ACM European conference on Computer systems, EuroSys '09, pages 219--232, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-482-9.
[31]
J. S. Rellermeyer, M. Duller, and G. Alonso. Consistently applying updates to compositions of distributed osgi modules. In Proceedings of the 1st International Workshop on Hot Topics in Software Upgrades, HotSWUp '08, pages 9:1--9:5, New York, NY, USA, 2008. ACM. ISBN 978-1-60558-304-4.
[32]
S. Subramanian, M. Hicks, and K. S. McKinley. Dynamic software updates: a vm-centric approach. SIGPLAN Not., 44: 1--12, June 2009. ISSN 0362-1340.
[33]
A. S. Tanenbaum and M. v. Steen. Distributed Systems: Principles and Paradigms (2nd Edition). Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 2006. ISBN 0132392275.
[34]
R. N. Taylor, N. Medvidovic, K. M. Anderson, E. J. Whitehead, Jr., and J. E. Robbins. A component and message-based architectural style for gui software. In Proceedings of the 17th international conference on Software engineering, ICSE '95, pages 295--304, New York, NY, USA, 1995. ACM. ISBN 0-89791-708-1.
[35]
W. Team. The webkit open source project, 2011. https://www.webkit.org.
[36]
J. Waldo, W. Geoff, A. Wollrath, and S. C. Kendall. A note on distributed computing. Sun Microsystems, Inc, 1994.

Cited By

View all
  • (2015)The contextual nature of innovation – An empirical investigation of three software intensive productsInformation and Software Technology10.1016/j.infsof.2014.06.01057(595-613)Online publication date: Jan-2015
  • (2012)The Effect of User Experience Factors of Tablet Devices on Behavioral Intention to Purchase in the Experience ZoneHuman Centric Technology and Service in Smart Space10.1007/978-94-007-5086-9_4(25-36)Online publication date: 2012

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
OOPSLA '11: Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
October 2011
360 pages
ISBN:9781450309424
DOI:10.1145/2048147
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 October 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. components
  2. javascript
  3. osgi
  4. runtime software evolution
  5. service

Qualifiers

  • Research-article

Conference

SPLASH '11
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2015)The contextual nature of innovation – An empirical investigation of three software intensive productsInformation and Software Technology10.1016/j.infsof.2014.06.01057(595-613)Online publication date: Jan-2015
  • (2012)The Effect of User Experience Factors of Tablet Devices on Behavioral Intention to Purchase in the Experience ZoneHuman Centric Technology and Service in Smart Space10.1007/978-94-007-5086-9_4(25-36)Online publication date: 2012

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media