
As individuals and corporations continue to take advantage of Rich Internet Applications for their ability to engage more customers and attract more business, new projects with larger and more intense requirements are beginning to surface. Most developers would prefer an environment where features and specifications are well documented initially and never change throughout the development cycle. However, the reality of the marketplace dictates that, while a developer should always strive for these ideals, shortened development cycles combined with growing feature sets often result in a staged rollout of new applications, adding new features and fixing unintentional ones as they become identified.
A Rich Internet Application (RIA) developer has limited control over the copies of their application that are executed on a client machine or exist in a browser cache. This can prove particularly problematic when adding a new feature or attempting to fix a problematic bug.
This article stems from my team's recent experience developing a client application with an aggressive schedule, a staged rollout approach, and a requirement for extremely high availability—where it was likely that a user may have the application open for days or weeks without refreshing their browser.
Rich Internet Applications continue to move into traditional application environments and, with this new reach, RIAs can not rely on a user closing or refreshing a web browser to retrieve the latest version. You must keep an RIA that provides functionality to a public kiosk, targets a user desktop, or that provides the interface to a high availability production system up to date or it can quickly become a maintenance nightmare.
In this article, you will develop a simple method and component for dealing with version control and synchronization in deployed client applications.
To complete this tutorial you will need to install the following software and files:
Michael Labriola is a founding partner and senior consultant at Digital Primates IT Consulting Group. He has been developing Internet applications since 1995 and has been working with Flex since its 1.0 beta program. He specializes in developing applications with high business impact using emerging technologies.