Browse Prior Art Database

Enabling and controlling common area contributions in dynamic distributed Web applications

IP.com Disclosure Number: IPCOM000237612D
Publication Date: 2014-Jun-27
Document File: 3 page(s) / 119K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed are a method and algorithm to control the flow during bottom-up contribution in the development of web applications. The method combines top-down control, still enables bottom-up extensibility, and can prevent a common area from being overrun with numerous contributions.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 01 of 3

Enabling and controlling common area contributions in dynamic distributed Web applications

Desktop applications can extend user interface (UI) common areas such as menu bars, tool bars, pop-up menus, etc. A plug-in, add-in, or component can use a published Application Programming Interface (API) to contribute to the common area. The need to provide UI extensibility is even more prevalent with the advent of modern distributed web systems. The new common areas are

web application(app) headers, side navigation bars, drop-down menus in web pages, etc. Even the mobile web apps can use a means to extend common areas such as off-screen menus, action lists, etc.

Bottom-up contribution is a mechanism used by developers to contribute new features into an existing system in an extensible and flexible manner. UI contributions automatically appear in UI common areas and provide additional UI affordances in order to manipulate the underlying feature. Maintaining control is one of the key problems of 'bottom-up' contribution. The simplest way to control the order of these contributions is lexicographical sorting. This approach is weak, however, because it groups unrelated actions (e.g., 'Sort' and 'Save'). A better system is to partition the common area into smaller named slots and allow contributions to target these slots. [*] This turns one large order control problem into several smaller ones. However, the possibility exists for a rogue extension to 'overrun' the common area with too many contributions, and precise 'top down' control (i.e. to the organizational effort (e.g., sorting) exerted by the web application on the aggregated UI contributions within the UI common areas it manages) of the common areas is still not achieved.

In addition to the common area control, distributed systems add further challenges. Modern distributed systems consist of a number of independently running services. One solution to managing extensions of these independent services is to introduce another dedicated service that is responsible for collecting contributions, instituting control management policies and uniformly applying contributions in a predictable manner.

The novel contribution is an improved method for control flow. The process flow is:

1. As new apps(services) come online, each contributesto UI common areas by serving a special web resource that adheres to the contribution protocol, which is formatted using JavaScript* Object Notation (JSON)

2. A dedicated 'composition service' discoversthis web resource and storesthe contribution in a database for subsequent access


3. The 'composition service' applies an ordering algorithm on all discovered contributions


4. When invoked, the composition service servesthe ordered content of the common area for all the services that share the

common area to co...