Advances in Web Technologies and Engineering - Frameworks, Methodologies, and Tools for Developing Rich Internet Applications
Latest Publications


TOTAL DOCUMENTS

15
(FIVE YEARS 0)

H-INDEX

0
(FIVE YEARS 0)

Published By IGI Global

9781466664371, 9781466664388

Chapter 5 discusses the capabilities of RIA frameworks in the context of multimedia content support. For this purpose, several alternatives for implementing video playback functionality are presented by using both JavaScript-based RIA frameworks to and non-JavaScript-based RIA frameworks. Examples of JavaScript-based RIA frameworks having multimedia content support are Dojo, jQuery, Prototype, and Mootools. Examples of non-JavaScript-based RIA frameworks are Adobe Flex™, JavaFX™, Silverlight™, and OpenLaszlo. For each case study the mandatory files are mentioned. The chapter also shows a screenshot where video player is displayed and code snippets that were used are presented. Finally, a comparative analysis of video playback support for each framework is presented in terms of video container formats and encoding types.


Rich Internet Applications (RIAs) are considered one kind of Web 2.0 application; however, they have demonstrated to have the potential to transcend throughout the steps in the Web evolution, from Web 2.0 to Web 4.0. In some cases, RIAs can be leveraged to overcome the challenges in developing other kinds of Web-based applications. In other cases, the challenges in the development of RIAs can be overcome by using additional technologies from the Web technology stack. From this perspective, the new trends in the development of RIAs can be identified by analyzing the steps in the Web evolution. This chapter presents these trends, including cloud-based RIAs development and mashups-rich User Interfaces (UIs) development as two easily visible trends related to Web 2.0. Similarly, semantic RIAs, RMAs (Rich Mobile Applications), and context-aware RIAs are some of the academic proposals related to Web 3.0 and Web 4.0 that are discussed in this chapter.


Model-Driven Development (MDD) tools for Rich Internet Applications (RIAs) development are focused on software modeling, and they leave automatic code generation in a second term. On the other hand, Rapid Application Development (RAD) tools for RIAs development enable developers to save development time and effort by leveraging reusable software components. AlexandRIA is a RAD tool that allows developers to automatically generate both source and native code of multi-device RIAs from a set of preferences selected throughout a wizard following the phases of a User Interface (UI) pattern-based code generation approach for multi-device RIAs. In this chapter, the use of the UI design process behind AlexandRIA is demonstrated by means of a sample development scenario addressing the development of a cloud services Application Programming Interfaces (APIs)-based cross-platform mobile RIA. This scenario is further revisited in a case study that addresses the automatic generation of an equivalent application using AlexandRIA.


Web 2.0 applications are becoming ubiquitous applications (i.e., applications that can be accessed by anyone, anywhere, anytime, using any device). A key element of these ubiquitous applications is mobile devices. In fact, the involvement of mobile devices such as smartphones and tablet computers in the development of Web 2.0 applications has resulted in a new kind of Rich Internet Application (RIA) that can run on a variety of devices starting from the same code base, and it is known as multi-device RIA. The term multi-device RIA embraces not only mobile applications but also other kinds of out-of-browser applications such as cross-platform desktop applications as well as the traditional cross-browser Web applications. This chapter formalizes the concept of multi-device RIA, and then it presents an overview of the capabilities of several multi-device development frameworks. This review is finally summarized in a comparative analysis.


JavaFX™ 2.0 is the evolution of the Java programming language as a rich client platform. JavaFX™ platform provides multiple advantages to Java developers and companies that are part of the Java ecosystem, including the ability to leverage existing Java skills and development tools, as well as extending Swing applications, thus providing a migration path towards more modern and flexible User Interface (UI) technologies. This chapter first goes in depth on the JavaFX architecture and describes the benefits of using JavaFX to develop highly interactive Web applications; then, it presents four case studies on the development of JavaFX™-based Rich Internet Applications (RIAs) built on top of popular social networking services. For each case study, reviews of some similar real world implementations publicly available on the Internet are provided.


REpresentational State Transfer (REST) is an architectural style that has recently emerged as a new approach to develop and deliver Web services. In fact, a great number of companies, such as eBay™, Twitter™, and Amazon.com™, have adopted REST to deliver Web services and Web feeds. This chapter offers a review of the support for consuming RESTful Web services in Adobe™ Flex™; then, it presents two case studies about the development of third-party RESTful Web services-based Rich Internet Applications (RIAs) using Adobe Flex™ along with HyperText Markup Languages (HTML) and JavaScript. The case studies presented in this chapter are intended to explain the common prerequisites for using RESTful Web services Application Programming Interfaces (APIs) as well as the particular implementation details, including the challenges and alternatives facing the capabilities and limitations of the target technologies. In addition, they exemplify the use of some User Interface (UI) patterns.


Chapter 3 presents a review of the state-of-the-art on methodologies for RIAs development. For this purpose, methodologies for traditional Web applications development are firstly presented, since, in some cases, methodologies for RIAs development are either extensions of existing Web (and hypermedia) methodologies or new UI design methods used on top of already existing Web methodologies. New approaches covering the RIAs features without relying on legacy Web models are also discussed. Some examples of Web development are UWE (UML-Based Web Engineering), which became UWE-R (UWE for RIAs), and WebML Extension, which is an extension of WebML (Web Modeling Language). These methodologies had to be modified in order to add new features to support the needs of RIAs development. Some other methodologies for RIAs development are RUX Method, OOH4RIA, OOHDM Extension, and PPRD.


Chapter 2 describes the most popular options for RIAs development. For practical purposes, these options are classified into two categories: 1) JavaScript-based frameworks and 2) non-JavaScript-based frameworks; even though there are other classifications reported in the literature, this classification is used in this chapter and throughout the book. In fact, this classification allows for a quick understanding of the technologies for RIAs development by abstracting technical details about intended software architectures. In the case of JavaScript-based framework, some frameworks were selected and analyzed such as Dojo, jQuery, Mootools, and Prototype. In the case of non-JavaScript-based frameworks, frameworks selected and analyzed were Adobe Flex™, JavaFX™, Silverlight™, and OpenLaszlo™. For each framework, the architecture, functionality, and properties are described.


In Chapter 8, a review of UI patterns supported by using non-JavaScript-based frameworks and JavaScript-based frameworks for RIAs development is presented. For this purpose, the UI Patterns are classified in Transitional Patterns, Lookup Patterns, and Feedback Patterns. Additionally, this chapter presents a series of applications samples depicting the use of not only UI controls but also non-visual functions or classes (as applicable) for implementing the supported UI patterns. These applications are intended to clarify the differences and similarities between UI controls and UI patterns. Finally, the chapter presents a comparative analysis that summarizes the review of the capabilities of the RIA frameworks in the context of rich UI design both for JavaScript-based frameworks and non-JavaScript-based frameworks.


Chapter 4 discusses some software quality metrics such as usability, scalability, and reusability of RIAs development. The chapter describes the importance of using multimedia content and UI (User Interface) patterns not only for improving the appearance of RIAs but also for delivering rich user experiences. Likewise, this chapter depicts the importance of leveraging AOP (Aspect-Oriented Programming) capabilities and implementing design patterns to ease the RIAs maintenance and enable RIAs reusability. In this chapter, four concepts about Web development and RIAs development were selected. These concepts are Multimedia Support, AOP Support, Design Patterns Support, and UI Pattern Support and are described in detail in this chapter.


Sign in / Sign up

Export Citation Format

Share Document