1. Field of the Invention
This invention relates generally to visual mapping systems, and, more particularly, to configuring an application via a visual map interface.
2. Description of the Background Art
Applications used by enterprises often have to be configured for the particular needs of that enterprise. For example, the data that appears in a particular dialog box in an application, or the choices available in a drop-down menu in the application, may be configured to the specific needs of the enterprise.
Configuring an application often requires an application administrator, or other IT personal, to enter configuration data for the application (e.g., entering the data that will appear in a dialog box, or the choices that appear in a drop-down menu). The configuration data defines the specifics of how the application will appear and interact with a user. This configuration data is a type of “metadata” used by the application.
Conventionally, configuration data is stored in a relational database, text-based configuration file, or other custom method. Entering configuration data usually requires the assistance of an IT professional who is familiar with database languages, such as SQL, or other programming languages. This can be a hassle for an application administrator who must coordinate with an enterprise's IT group in order to make a change to an application's configuration. Consequently, it is desirable to provide a simpler way for an application administrator to configure an application that does not require the administrator to be familiar with a database language or programming techniques.
The present invention provides a system and method for configuring an application via a visual map interface. The method comprises providing a visual map into which a user can enter configuration data for the application. The visual map includes predefined topics that correspond to configurable portions of the application, and the user enters the configuration data as subtopics to the predefined topics. The predefined topics may be defined by a programmer or system administrator for the configurable application.
After the user enters the configuration data into the visual map and saves the map, a visual mapping application stores the map data, including the configuration data. The map data is stored in a way such that hierarchical relationships in the map are preserved. (i.e., relationships between parent topics and subtopics are preserved).
In one embodiment, when a configured application needs the configuration data, the configured application makes a call for configuration data corresponding to one or more of the predefined topics in the visual map. In response, the visual mapping application retrieves the configuration data corresponding to the predefined topic(s). Specifically, it retrieves the subtopic data entered by the user and associated with the predefined topic(s). The visual mapping application then sends the retrieved configuration data to the configured application.
The present invention provides a system and method for configuring an application via a visual map interface. A visual map is a diagram that represents ideas and/or information in topics. Examples of visual maps are mind maps, topic maps, semantic networks, and concept maps. Visual maps are used to help people generate, classify, and/or organize ideas and information and to see such ideas and information in a hierarchical, visual layout.
There are software programs that enable people to easily create visual maps. MINDJET LLC's MINDMANAGER® software is an example of such software.
The method comprises identifying configurable parts of a configurable application (step 210) and creating a visual map with topics that correspond to configurable parts of the configurable application (the “predefined topics”) (step 220). The predefined topics may be defined by a programmer or system administrator for the configurable application.
When a user desires to configure the configurable application, the user opens, in the visual mapping application, the visual map with the predefined topics (step 230). The visual mapping application enables the user to enter configuration data for the configurable application as subtopics to the predefined topics (step 240).
As discussed above, data for configuring an application is conventionally entered into a database table. In one embodiment, the predefined topics in the present invention would correspond to column names in a database table, and the sub-topics in which configuration data is entered would correspond to the values in the tables.
After the user enters the configuration data into subtopics, the visual mapping application saves the map data (step 250). When the configured application launches, or otherwise needs the configuration data, it sends a request for the configuration data to the visual mapping application (step 260). In response, the visual mapping application retrieves the visual map data and sends the configured application the requested configuration data entered into the visual map (step 270).
In one embodiment, when a configured application needs the configuration data, it makes a call to the visual mapping application in a similar way it would make a call to a database. The call may be made via a communication API for the visual mapping application.
In one embodiment, the configurable applicable loads the configuration data in an in-memory object model so that the data can be quickly accessed via programmatic means. Hierarchical relationships in the map are preserved in the object model. In other words, the data relationship between a parent topic and a child topic (i.e., subtopic) is preserved in the object model. In one embodiment, the object model is implemented in XML.
In system 700, a user can enter configuration data into a visual map from a visual mapping desktop client 710 or a visual mapping web client 720. These visual mapping clients 710, 720 are served by a visual mapping server 730. MINDJET's MINDJET CONNECT is an example of a visual mapping server application. After a user enters configuration data into a visual map, the visual mapping client (710 or 720) sends the map data to the visual mapping server, which stores the data in a file system or a database 740. A visual map can be stored as a file, or it the topics in a map can be stored in individually in a database, as described in U.S. patent application Ser. No. 12/001,533 titled “System and Method for Enabling a User to Search and Retrieve Individual Topics in a Visual Mapping System,” which was filed on Dec. 12, 2007 and which is incorporated by reference as if fully disclosed herein.
Configured client application 760 represents an application that has been configured via a visual map, and is served by an application server 770. An application server 770 and the visual mapping server 730 communicate with each other via a communications API. When the configured client application 760 launches or otherwise needs the configuration data, the application server 770 requests the configuration data from the visual mapping server 730.
The visual mapping server 730 retrieves the map with the configuration data from the database 740 and sends the configuration data to the application server 770, which then provides the configuration data to the configured client application 760. In one embodiment, the visual mapping server 730 provides the configuration data to the application server 770 in the form of an XML file that is organized hierarchically in the same manner as the visual map with the configuration data.
In this example, an application administrator uses a visual map (referred to herein as the “configuration data map”) to configure the “map parts” in
When a user creates a “People” or “Solution” map part, a dialog box (e.g.,
The configuration data map for this example is illustrated in
In the configuration data map illustrated in
An application administrator (or other user) is able to configure these aforementioned fields by creating subtopics to these predefined topics. These subtopics correspond to values associated with these fields in the dialog boxes. In the present example, an application administrator has entered “Solution 1,” “Solution 2,” and “Solution 3” as subtopics to the predefined topic “Our Solution” 440 in
As will be understood by those familiar with the art, the invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the above disclosure of the present invention is intended to be illustrative and not limiting of the invention.
This application claims the benefit of U.S. Provisional Application No. 61/192,541 filed on Sep. 18, 2008 with inventors William J. Creekbaum and Charles L. Guerin and titled “System and Method for Configuring an Application via a Visual Map Interface,” the contents of which are incorporated by reference as if fully disclosed herein
Number | Date | Country | |
---|---|---|---|
61192541 | Sep 2008 | US |