Application Manager

What is it?

It is a bundle which offers a GUI to perform management operations and to interact with RepositoryManager, TagManagerBackEnd and TagManagerNode. It follows a MVC pattern, so it can be easily extended.

Design

Connection with other bundles

ApplicationManager makes use of the services offered by the following bundles:

The following diagram shows graphically the relationship between the ApplicationManager and the rest of components through its interfaces: ApplicationManagerComponentsDiagram

Class diagram

ApplicationManager implements a MVC pattern. Therefore the class definition is based on the structural organization defined for this pattern which we can summarized:

The following diagram shows the most important classes (click to zoom):

/wiki/http%3A//astra.perseum.com/img/diagrams?action=AttachFile&do=get&target=http%3A//astra.perseum.com/img/diagrams/ApplicationManagerClassDiagramSmall.png

Current functionalities:

User interaction

In this section we will explain some of the main functionalities from the point of view of the user by showing di fferent screenshots. We will focus on 3 actions: "tagging and sharing an application", "locating an application" and "retrieving and adapting and application from the repository".

Tagging and sharing

Once the user has successfully logged in the system, he can browse the tree to see all the information related to his applications in the tab "My applications" as is shown in the next figure.

ui-my-applications

In order to distinguish quickly between a focus and a nimbus application, the applications are presented with a diff erent icon (cloud for nimbus, glasses for focus) depending on the type.

He can manage the tags associated to every application, deleting them or adding new ones. To make the GUI more intuitive, they are represented with a di fferent icon depending on the scope as is shown in the previous figure. There is also a tool tip for every of them, where the user can see the scope and the community which belongs to in the case of a community tag.

When the user decides to add a tag, a new window where the user can customize the scope appears, as is shown in the next figure.

ui-adding-tags

When the user desires to share an application by pressing the button "Share",another window is displayed. Here he can select the communities where the application is going to be visible, the rules he wants to share, change the description, etc. The next figure shows an screenshot with that window.

ui-sharing

Locating an application in the repository

There are three diff erent ways to locate an application in the repository. The first one is off ered in the tab "Repository", where the user can browse the repository and see the main information (description, associated visible tags, etc) of the application which under within his scope. The next figure shows the interaction through this tab.

ui-repository

The second one is by performing a query, clicking on the tab "Search". Here the user has to select the criteria (any, by description, by tags or by type), type a query (in natural language, using keywords, etc.) and press the button "Go!". Then the results appear in the list below sorted by score, and the user can see the information related to that results by clicking on them. The next figure shows an screenshot of the interaction through this tab.

ui-searching-criteria

The last option to locate an application is off ered in the tab "Search by similarity". Here the user selects one of his applications, and similar applications sorted by similarity are loaded on the list on the right. Selecting one of these applications, the user can see the information related to it. The next figure shows the interaction through this tab.

ui-searching-similarity

Retrieving and adapting an application from the repository

Once the user has located an application by one of the several ways explained in and he decides to get it, a new window where the user can adapt the application is displayed. He can change the description and choose the rules he wants to retrieve. The next figure shows an screenshot with the interaction through this window after having performed a search by similarity.

ui-retrieving

Other functionalities:

Other "common" functionalities like login/logout process and access to remote help through the menu bar have been added:

Ex.: User login/logout:

login

logout

Ex.: User viewing the online help (currently stored at: http://astra.perseum.com/help/am-help.html):

help

New functionalities:

+Info, contact, etc.:

AstraWiki: ApplicationManager (last edited 2009-08-12 12:59:48 by david.rozas)