Popis: |
Portability of web applications between web servers of different organizations can be challenging and can complicate sharing and collaborative use of such tools. Given the distributed nature of the web, this lack of portability is usually not a concern because a user in one organization can link to and use a web application hosted by another organization. However, access control or differentiation may be needed by an organization in terms of area of interest, input data, analytical techniques, access control, presentation, branding, and language. This is true for many government organizations, and their associated web sites, and servers. In such cases, there are compelling political, branding, security, and privacy motivations that require each organization or agency to host and manage web applications on their own servers rather than using third party web sites over which they have little or no control. Also, web applications are classically developed by setting up a local software development and testing environment which can be challenging for new developers, be restricted by the software and hardware availability, cost significantly to obtain software development licenses and compatible hardware and is prone to code and data loss due to hardware damage or software corruptions. To simplify the discovery, deployment of web-based applications, I present the design, development, and testing of a system for discovering, installing, and configuring environmental analysis web applications on localized web servers. The system works with applications developed using Tethys Platform, which is an open-source software stack for creating geospatially enabled web-based applications. The developed Tethys App Store includes a Tethys application user interface that allows a server manager to retrieve applications from the central repository and install them on a local server with relatively simplicity, similar to the installation of a mobile application to a mobile device from a mobile application store. Next, I present the design concept of a cloud-based web application development platform, Tethys App Nursery, that attempts to overcome the above hurdles associated with localized development environments. A prototype of this system is developed and presented which is tightly integrated with Tethys platform and various cloud technologies provided by Amazon Web Services. The developed app nursery allows users to register for new Tethys portal instances in the cloud, develop new applications and test existing applications, without installing any local dependencies or development tools. Various cloud components used in this service's development as well as their associated costs are described. These systems were developed to support development of water and environmental analysis web apps for the international Group on Earth Observations (GEO) Global Water Sustainability (GEOGloWS) initiative of the National Aeronautics and Space Administration (NASA) and several partner organizations. |