This application claims priority to Indian Patent Application to Ganesan et al., serial number 3582/MUM/2010, filed Dec. 30, 2010, the disclosure of which is hereby incorporated entirely herein by reference.
This invention relates to data management systems, and more particularly to a user defined dynamic catalog creation mechanisms in data management systems.
Information and data management systems have been employed in large organizations to effectively maintain data within an organization. Further, data is an asset for organizations and hence it is very important that maintained data is well organized and secured. Presently, organizations manage various kinds of information. Most of the information is primarily related to core businesses and are stored and managed in Enterprise systems, ERPs like SAP, Oracle Apps or Peoplesoft. However, there is a large set of information maintained in adhoc or semi-structured manner that cannot be stored in enterprise systems. Information like Application Inventory, Open Source Software Inventory, Software Asset Inventory, Process Inventory, Known Error Inventory etc., are not stored in any enterprise system.
Existing approach of solving the problem is to only create a custom repository for storing such information.
Present day organizations are distributed in nature. The organizations usually operate out of multiple departments and offices that are geographically distributed. Further, the data that is maintained within such an organization is also distributed across various departments, business units and facilities. The data management systems employed in such organizations manage information that is present locally within the departments, business units and so on within the organization. Further, existing systems do not provide any means to configure the data that is maintained within the organization. Due to this drawback, every time a user wants some information from the system he needs to build a custom solution each time for his requirement as there is no provision for configuring the data. The organizations are is compelled to create a central repository to store the information from different departments, business units and so on at one of the locations so as to suit its operational requirements. This process of customizing the solution is time consuming and cumbersome.
The search mechanisms offered by these systems are not precise due to unorganized and unrelated state of information, hence cumbersome and increases search time of users. Moreover, these systems generally follow directory based approach and do not facilitate the keyword based search to retrieve the relevant data required by the user. Further, there are no analytics in the data captured by such legacy search tools. As a result, there may be a lot of repeated work and wastage of effort of the user in conducting the search. Further, these systems have poor reporting features wherein the searched data cannot be exported to a user desired format. Also, existing search mechanisms do not provide options to the user to drill down or browse through the search results. Due to the aforementioned drawbacks, the data access process becomes time consuming and cumbersome.
Systems that can create data catalogs do not provide the feature to configure the created data catalogs and customize the same as per the requirements of the user. Customization of data catalogs, in absence of ready to use feature, consumes a lot of time and resources. In addition, the Metadata associated with the catalog cannot be customized to create custom attributes for the entity to be stored in the catalog. Moreover, it is practically not possible to create multiple catalogs for different entities and subsequently to establish multiple associations there between the entities across the organization.
Further, the existing cataloguing systems do not offer a flexibility to slice and dice the data as per the requirements of the user. In addition, these systems do not provide the option of clustering and segmenting the data in order to perform data analysis in a strategic manner. The existing cataloguing systems lack the ability to incorporate new attributes of applications, which are required for carrying out detailed portfolio analysis of the data and are unable to adapt to the updates made on the data structure of the catalog. Also, addition of new attributes by the architects and service managers at any point of time is not possible in the existing systems. Hence, when a new application is to be developed, the user cannot employ the stored data and modify the same to suit his/her requirements. In absence of a feature for data analysis and exploitation, the user needs to write codes and develop tool from the scratch for gaining a limited configurability of the system. Thus, existing cataloguing systems, seldom encourages users to use pre-available features to exploit data and instead necessitate user to develop personalized tools which is monetarily taxing and time consuming.
Due to the aforementioned drawbacks it is evident that existing data management systems and catalog builder tools are not effective due to high cost, lack of user friendliness and flexibility of operations.
The principal object of this invention is to devise a catalog builder offering complete configuration capabilities to the user for customizing the system to suit variety of scenarios, operational demand and exigencies in an organization.
Another object of the invention is to provide a system with ability to configure Metadata with attribute creation feature.
Yet another object of the invention is to provide a system with keyword based searchability, reporting and analytical capabilities to the catalog.
Accordingly, the invention provides a system for creating catalog applications. The system is comprising means adapted for enabling plurality of users to configure a catalog builder to create plurality of catalogs for their applications by employing a user terminal, storing the user configured details on a central repository, configuring plurality of entities as per the user requirements in the catalog on receiving a request from the user and sending the configured entities from the catalog to the user in user desired format.
Also provided is a configuration console in a catalog builder. The console is adapted with a means for enabling plurality of users to configure at least one catalog according to the requirements of their applications through a user terminal, the console sending the configured information to a central repository for storing the information.
There is also provided a method for creating catalog applications. The method is comprising steps of enabling plurality of users to configure a catalog builder to create plurality of catalogs for their applications by employing a user terminal, storing the user configured details on a central repository by the catalog builder, configuring plurality of entities as per the user requirements in the catalog on receiving a request from the user and sending the configured entities from the catalog to the user in user desired format.
These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating preferred embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.
This invention is illustrated in the accompanying drawings, throughout which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
The embodiments herein achieve a configurable catalog builder system by providing a method for creating and maintaining a catalog for the data. Referring now to the drawings, and more particularly to
A configurable catalog builder system is disclosed. The catalog builder may be employed to configure an online central repository on the fly and build a catalog. The catalog builder creates a catalog for any type of data that is employed within an organization. The data may include program codes, software's, inventory data, vendor data, process data, sales data, project data, known error data, employee data, activity log, product details, item data and any other information that is stored in an organization.
The catalog builder is equipped with a central repository, which enables the catalog builder in order to store and configure data available at different locations and different fields on the fly. Further, the catalog builder is also provided with advanced search features and analytical capabilities in order to search for the data specified by the user and fetch the data from the central repository.
Some example usages include the catalog builder being configured as a process repository, software or hardware repository or vendor repository. As a process repository, the catalog builder may store and fetch the details of different fields on the processes carried out within an organization. As a repository for both software and hardware, details on the software developed for different applications may be stored and obtained when required. In addition, any hardware design and implementation details may also be stored. As a vendor repository, details on products developed for every vendor, codes written for the development of those products and the like may be stored. All this information is stored and maintained on the central repository. The catalog builder is further provided with the capability to customize the data stored on different entities across different departments within the central repository and fetch data required from the central repository as per the user's requirements.
On the central repository, the data is maintained in a well organized format in the form of data structures. Further, the catalog builder is designed to provide the user the capability to configure one or more custom catalogs and associated metadata. The work flow process and security rules for the catalog builder may also be configured by the user. The catalog builder is also provided with data comparing and reporting features. The data comparison compares the data and fetches the data from the central repository as per the requirements of the user. The reporting feature helps to create reports on the configured catalogs. The catalog builder also allows the user to obtain the data in a format preferred by the user. As a result, the user is able to access any information or data available across different entities within the organization at any instance of time.
The catalog administrators 108 employ the configuration console to create multiple catalogs, to configure reports, configure search parameters and so on. The catalog administrators 108 also perform settings on the catalog builder tool. The settings include defining if a created entity is to show up in the search results, the fields within an entity that is to show up in the search results and so on. In addition, the catalog administrators 108 may also restrict the users who access the data from the catalog builder, may define the fields that may be accessed by the users.
Users 109 may include any person who accesses the catalog builder to update or insert data in any form. Users 109 employ the catalog builder to maintain the data and centrally manage information. The users 109 may also search through the created catalogs and use the information from the catalog whenever required to manage their operations. The users 109 perform operations such as search, upload and the like on the catalog builder 100 in order to extract desired data.
Analysts 110 may employ the catalog builder system 100 in order to make reports. Analysts 110 may use the analytical features on the catalog builder system 100 to analyze information and take critical decisions. In addition to the above mentioned actions, the analysts 110 may also perform segmentation and clustering on the data when required in order to get desired information.
The catalog administrators 108, users 109 and analysts 110 may access the catalog builder system 100 using a suitable user terminal like a computer, a hand held device and so on.
When the user 109 employs the catalog builder system 100, he is directed towards a configuration console 107. On the configuration console 107 the user 109 may be provided options in order to configure the catalog builder system 100 as per his requirements. On configuration, the details may be stored on the central repository 105. When desired the user 109 may enter his search query on a search submit form that is presented to him. The search query is then sent to the Solr search engine 106, where the data is analyzed. Then the data requested by the query is fetched from the central repository 105. The fetched data is then presented to the user in a format as configured by the user.
The managers centrally manage the information with the help of catalog builder features. The users 109 also employ features such as upload, online/batch download, search and the like that is offered by the catalog builder to manage the information centrally.
The faceted search module 102 enables the user to easily access the data that he is looking for in the central repository 105 by enabling the user to perform a faceted search on the catalog builder 100. The faceted search module 102 analyzes the text entered by the user for any data that is required by the user. The faceted search module 102 employs entity extraction techniques which comprises of keyword based search combined with navigational capabilities to extract the data requested by the user. In another embodiment, the faceted search module 102 may also use pre-existing fields configured in the central repository 105 for example author, descriptor, language, and format in order to extract the data requested by the user. This approach also permits existing web-pages, to have some metadata/fields extracted and presented as a navigation facet to the user to enable them navigate through or drill down results. For example, once extracted results based on author are presented—Language as a Facet is shown showing 3 results in English and 2 results in Spanish, on clicking the “English” value in the Language facet, the results will be drilled down to show only results from English language.
The segmentation and clustering analysis module 103 performs segmentation of the data requested by the user if required. There may be instances where a user may request or search for a part of the data that is used for an application for example, the user may want modules of a code written for an application; for example, macros, primary keys, global variables. In such cases, there may be a need to segment the data stored on the central repository 105 and fetch the appropriate portions of the content requested by the user. The data may be fetched from different fields stored within the entities on the central repository 105. In addition, module 103 also performs clustering of data. The user's request may require clustering the data for example, for a database of employees, the user may require a cluster that comprises of dept_manager and so on. Or in another instance, the user may wish to cluster parts of data available on the central repository 105 and use the clustered data on the fly. The functions as described above may be performed by the segmentation and clustering analysis module 103.
The reporting and data compare module 104 provides reporting and data compare features to the catalog builder 100. The reporting and data compare module 104 aids in clustering and segmentation analysis on the created data catalog. The reporting component has an integrated reporting engine that enables users to create reports on the configured catalogs. The data compare component performs data comparison. The data compare enables the user in order to perform a comparison to the lowest level that aids in better data analysis.
The central repository 105 maintains all the data and information related to the organization on it. By storing the data on a central location, the central repository 105 makes management of data and information easy and the data visibility to the user becomes easy. Any metadata, attribute required by the user may be fetched easily across different entities from the central repository 105 by performing a simple search.
The Solr search engine 106 is an open source search engine that is employed within the catalog builder 100 in order to aid the user for performing searches. The search engine 106 provides keyword based search along with navigation search features to the user. By employing the Solr search engine, the user may customize his search requirements. For example, the user may specify that a search be conducted in a particular metadata in the catalogs. Further, the user may also choose to define multiple metadata in which the search keyword has to be looked for and the like. In addition, the user may also define a priority order for the search. For example, on creation of an Application Catalog with application details like application name, description and so on, the user may define to conduct the search on application name. The user may also specify the application name as highest priority. In that case, the search will be conducted and results with matching application names are assigned highest priority.
The configuration console 107 may be employed in order to configure the catalog builder as per the user's requirements. Using the configuration console 107, the user may configure core entities and attributes of the data structure, define process flows and manage faceted search feature. In addition, the configuration console 107 may also provide security to the system by providing authenticated access to the data on the central repository 105.
Employing the core entity and attributes configuration module 201, the user may configure the entities of the metadata, attributes that is required by his application, name of the entity, if the entity is mandatory, unique, primary key and the like. Further, the configurations may be defined by the user through a user interface. The configuration may be performed on the fly. Also, no additional codes need to be written. Configuration is generally performed by the catalog administrators 108. If required, the user 109 may also configure the catalog details as per his requirements.
Once the data is configured, the user may employ process flow module 202 in order to define the sequence of the work flow involved in a process. The process flow module 202 may be employed by the user to define the transactions that are to be carried out on the configured data. The process may be any flow the submitted data should take. For example, once data is submitted, if it has to be taken through a 2-3 step review process before it moves to the “published” state, this process flow can be configured into the system.
The faceted search module 203 may be configured by the user in order to simplify the searching process. Faceted search module 203 may be configured to analyze the text entered by the user for any data that is required by the user. Faceted search helps to narrow down the search results, browse through the search results using the facets. In an example, when looking for a specific application in the catalog the user is provided with a faceted view of the applications on the search page. Using this user may just click on the specific application of interest from one geography. This feature helps to narrow down the search.
Security module 204 of the catalog builder 100 may also be configured by the user. The user may at the time of configuration define the authorized persons who access the data.
Also, restrictions may be imposed in terms of the content that is allowed to be viewed. For example, to achieve high levels of security ‘submit’, ‘edit’ and ‘view’ options may be provided restricted access. In this way only authorized persons will be able to use the password and access the secured data. In addition, the user may also define some security rules if required to achieve high levels of security to any confidential data stored on the central repository 105.
The reporting engine 205 helps the user to configure the reports as desired by him to assist in the analysis of the data. Reporting engine 205 enables the user to configure reporting solution on top of the data existing in the repository with option to build standard types of reports like bar charts, pie charts, stacked pie charts, line graphs. The reports also have charts built in with option to download to excel and PDF.
The reporting engine 205 helps the user to configure the reports as desired by him to assist in the analysis of the data. Reporting engine 205 enables the user to configure reporting solutions on top of the data existing in the repository with option to build standard types of reports like bar charts, pie charts, stacked pie charts, line graphs. The reports also have charts built in with option to download to excel and PDF. The details configured by the user are employed to build a configuration model repository. The built model repository is then verified. On approval, a user configured model 305 is built. The user configured model 306 comprises of different sub modules that store the configuration details specified by the user and accordingly build a model for the user. Different attributes of the data may be configured dynamically by the user.
The faceted search/navigation module 102 is employed by the user in order to configure search features on the catalog builder 100. The user may prefer to conduct a faceted search on the data and hence he may choose to configure the faceted search module 102. The faceted search module 102 may also provides navigation options to the user in the search display page. The navigation tool bar may direct the user to the desired section. Faceted search helps to narrow down the search results, browse through the search results using the facets. In an example, when looking for a specific application in the catalog the user is provided with a faceted view of the applications on the search page. Using this user may just click on the specific application of interest from one geography. This feature helps to narrow down the search. The advanced search module 301 may provide options to the user in order to perform advanced searches and extract results as per his requirements. In an example, the user may choose to restrict fields in the search such as search may be limited to the contents of the application name or application technology. In that case, the catalog builder's search engine 106 will look for the search keyword in the fields (i.e., application name and application technology) of the catalog.
The reporting and data compare module 104 performs data comparison and reporting functions. The system is provided with an integrated reporting engine that enables the users in order to create reports on the configured catalogs.
Online submission module 302 provides a generic form designer capability, to the catalog builder by designing a ‘Submit’ form to capture the real-time information of the entities to be stored. While creating entities and attributes a form is designed to collect the data. This form created during run time will be used for online submission for data input.
The batch submission 303 enables the user in order to submit data in batches. The submitted batch may include updated data in the repository. The catalog builder 100 also allows the user in order to update his data on to the central repository 105.
The batch export and table view 304 enables the user in order to extract the requested data from the central repository 105. The data may be extracted batch wise into an excel sheet. In an embodiment, the data may be extracted in any other form such as a word, PDF and the like.
The central repository 105 is the final repository that stores all the data as per the requirements of the user. In an embodiment, at any point of time the central repository 105 may be modified as per the changes made by the user.
The tool provides complete configurability by enabling users configure a custom entity, and its meta-data to create an on-line repository of the defined entity. Examples of entities could be Application, Project Portfolio, Process Maps, Best Practice, Case-Studies, Software/Hardware assets etc, which could be defined along with its associated meta-data
The tool provides a generic form designer features that enables the user to design a ‘Submit’ form to capture the real-time information of the entity.
The tool provides a Batch Import facility which enables the user to import the entity details existing in varied sources as a batch via excel sheets.
Security in the tool is configurable by enabling one to define the ‘Submit’, ‘Edit’ and ‘View’ permissions for various roles.
The tool provides a Faceted Search and Navigation feature that enables one to quickly retrieve details from the repository. The faceting capability also helps in performing a clustering and segmentation analysis.
The tool provides a configurable workflow definition capability to facilitate review/authorization processes around the stored data.
The tool enables various types of reports that can be configured to help in the analysis of the data.
The tool enables the data comparison to the lowest level aiding in better analysis. This tool in many cases has been configured as an Application Inventory/Cataloger by defining the ‘Application’ as the core-entity along with its meta-data.
Using the catalog builder's Attribute Management feature, it is possible to configure and manage the Views (Attribute Categories) and the Attributes with their values to be captured for the 600 odd applications globally.
The Views created were as follows:
This tool enables capture of application details like what the application does (description), the documentation details and the current status of the application (if it's active or retired).
This module captures which Service category and services under that service category this application addresses.
This tool captures the details like what's the scope of the application (if it's an Global, regional or local), the region which drives it, the sub region, countries this is used in, the application support details like the vendor, their contract details, SLA's, the Business Functions the application supports, the End to End Processes the application addresses, the Application Service manager and the application owner (if it's IT, Business).
This tool captures the various cost elements for the application.
This tool captures which platform, application server, web server, which technologies, which Database and if the application is a client/server or desktop application.
This tool captures details which will help in facilitating the application portfolio analysis like the importance of the application to today's and tomorrow's business, the stability, criticality and the size of the application.
This tool captures details which will help in defining the rationalization and consolidation roadmap for application catalog like defining if the application is going to be a target architecture element or a replacement candidate, the replacement date if it is a replacement candidate and mapping each application to the initiatives for future execution roadmap.
An excel dump on the application data is received from the legacy tool. The data is scrubbed, massaged and mapped the data to the configured attribute and its values as requested by the user.
Using the Batch Import functionality in the application, 600 odd applications with over 50 attributes each are uploaded into the tool within an hour's time.
In an embodiment, this feature offers the exact error detail and points to the cell number in the uploaded excel sheet, which helps in quick correction if any issues in data validation before loading.
The application is single sign on and enables features including testing and deployment and may be rolled out to 150 odd users globally with access to view, edit or submit applications. The design is such that any new user accessing the application will have a default View access only and then the Admin can change his access as required using the Manage Roles features in the application.
Configurable reporting solution is provided with option to build reports. Reporting engine 205 enables the user to configure reporting solutions on top of the data existing in the repository with option to build standard types of reports—Bar Charts, Pie Charts, Stacked Pie Charts, Line Graphs. The reports may include charts built in with option to download to excel and PDF. The analytics helped in having a clear view of the application portfolio and allowed to slice and dice the information to help facilitate the Architects and the Service Managers take an informed decision in defining the Application and the overall Enterprise's roadmap. The comparison feature of n number of selected applications helps the service managers and Architects take a rational decision for an application.
The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the embodiments as described herein.
Furthermore, the embodiments herein can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
Number | Date | Country | Kind |
---|---|---|---|
3582/MUM/2010 | Dec 2010 | IN | national |
Number | Name | Date | Kind |
---|---|---|---|
5880720 | Iwafune et al. | Mar 1999 | A |
5940769 | Nakajima et al. | Aug 1999 | A |
6012053 | Pant et al. | Jan 2000 | A |
7904348 | Johnson et al. | Mar 2011 | B2 |
8161044 | Blackwell et al. | Apr 2012 | B2 |
20010044837 | Talib et al. | Nov 2001 | A1 |
20030028451 | Ananian | Feb 2003 | A1 |
20060236216 | Blackwell | Oct 2006 | A1 |
20090172773 | Moore | Jul 2009 | A1 |
20100251151 | Alsbury et al. | Sep 2010 | A1 |
Number | Date | Country | |
---|---|---|---|
20120173501 A1 | Jul 2012 | US |