IP Library Granted Patent US 8,595,236
Granted Patent B2
US 8,595,236 · App. 12/613,179 · Granted Nov 26, 2013

Searching existing user interfaces to enable design, development and provisioning of user interfaces

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,595,236
App. No.
12/613,179
Granted
Nov 26, 2013
Kind
B2
Abstract

Techniques for searching for a user interface (UI) are provided. The techniques include receiving a desired user interface as a query, determining meta-data for the desired user interface, wherein determining the meta-data for the desired user interface comprises converting the desired user interface query to a meta-data query, and using the meta-data query to search for the desired user interface, wherein searching for the desired user interface comprises querying meta-data of one or more existing user interfaces and selecting one or more similar user interfaces.

Claims (34)

1. A method for searching for a user interface (UI), wherein the method comprises:

extracting one or more items of meta-data from multiple existing user interfaces, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the corresponding user interface;

forming a searchable index by indexing the one or more items of meta-data of the multiple existing user interfaces;

receiving a desired user interface as a query;

determining one or more items of meta-data for the desired user interface, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the desired user interface, and wherein determining the one or more items meta-data for the desired user interface comprises analyzing the desired user interface query to extract the one or more items of meta-data, and using the one or more items of meta-data to construct a meta-data query, and wherein determining meta-data for the desired user interface is carried out via a query builder module executing on a hardware processor; and

using the meta-data query to search for the desired user interface, wherein searching for the desired user interface comprises searching the meta-data query against the searchable index of meta-data of the multiple existing user interfaces and selecting one or more existing user interfaces ranked based on a degree of matching of the page graph corresponding to the desired user interface to one or more page graphs corresponding to one or more of the multiple existing user interfaces in the index, and wherein using the meta-data query to search for the desired user interface is carried out via a search engine module executing on a hardware processor.

2. The method of claim 1 , further comprising indexing one or more existing user interfaces based on one or more qualitative descriptions.

3. The method of claim 1 , wherein querying meta-data of one or more existing user interfaces and selecting one or more similar user interfaces comprises using the index to query for a user interface based on the determined metadata of the desired user interface.

4. The method of claim 1 , further comprising using the index to create a searchable repository of common user interface patterns.

5. The method of claim 4 , further comprising searching the searchable repository of common user interface patterns based on a low fidelity design mockup to determine a corresponding high fidelity implementation code.

6. The method of claim 4 , further comprising searching the searchable repository of common user interface patterns by specifying at least one of faulty and standard interface queries to enable filtering out of faulty interfaces and those that do not adhere to a set of standards, enabling testing and verification of one or more user interfaces.

7. The method of claim 1 , further comprising using the index to build a catalog of one or more reusable user interface components in one or more user interface implementation tools.

8. The method of claim 1 , further comprising providing a mechanism to construct the query visually, wherein constructing the query visually comprises using the meta-data query to construct the desired user interface using a graphical user interface editor.

9. The method of claim 1 , further comprising providing a system, wherein the system comprises one or more distinct software modules, each of the one or more distinct software modules being embodied on a tangible computer-readable recordable storage medium, and wherein the one or more distinct software modules comprise a user interface query translator module, a user interface index engine module, a graphical user interface editor module and a meta-data extractor module executing on a hardware processor.

10. A computer program product comprising a tangible computer readable recordable storage medium including computer useable program code for searching for a user interface (UI), the computer program product including:

computer useable program code for extracting one or more items of meta-data from multiple existing user interfaces, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the corresponding user interface;

computer useable program code for forming a searchable index by indexing the one or more items of meta-data of the multiple existing user interfaces;

computer useable program code for receiving a desired user interface as a query;

computer useable program code for determining one or more items of meta-data for the desired user interface, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the desired user interface, and wherein determining the one or more items meta-data for the desired user interface comprises analyzing the desired user interface query to extract the one or more items of meta-data, and using the one or more items of meta-data to construct a meta-data query; and

computer useable program code for using the meta-data query to search for the desired user interface, wherein searching for the desired user interface comprises searching the meta-data query against the searchable index of meta-data of the multiple existing user interfaces and selecting one or more existing user interfaces ranked based on a degree of matching of the page graph corresponding to the desired user interface to one or more page graphs corresponding to one or more of the multiple existing user interfaces in the index.

11. The computer program product of claim 10 , wherein the computer useable program code for querying meta-data of one or more existing user interfaces and selecting one or more similar user interfaces comprises computer useable program code for using the index to query for a user interface based on the determined metadata of the desired user interface.

12. The computer program product of claim 10 , further comprising computer useable program code for using the index to create a searchable repository of common user interface patterns.

13. The computer program product of claim 10 , wherein the computer useable program code comprises one or more distinct software modules, and wherein the one or more distinct software modules comprise a user interface query translator module, a user interface index engine module, a graphical user interface editor module and a meta-data extractor module executing on a hardware processor.

14. A system for searching for a user interface (UI), comprising:

a memory; and

at least one processor coupled to the memory and operative to:

extract one or more items of meta-data from multiple existing user interfaces, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the corresponding user interface;

form a searchable index by indexing the one or more items of meta-data of the multiple existing user interfaces;

receive a desired user interface as a query;

determine one or more items of meta-data for the desired user interface, wherein each of said items of meta-data comprises a page graph comprising one or more nodes representing one or more attributes of the desired user interface, and wherein determining the one or more items meta-data for the desired user interface comprises analyzing the desired user interface query to extract the one or more items of meta-data, and using the one or more items of meta-data to construct a meta-data query; and

use the meta-data query to search for the desired user interface, wherein searching for the desired user interface comprises searching the meta-data query against the searchable index of meta-data of the multiple existing user interfaces and selecting one or more existing user interfaces ranked based on a degree of matching of the page graph corresponding to the desired user interface to one or more page graphs corresponding to one or more of the multiple existing user interfaces in the index.

15. The system of claim 14 , wherein the at least one processor coupled to the memory operative to query meta-data of one or more existing user interfaces and selecting one or more similar user interfaces is further operative to use the index to query for a user interface based on the determined metadata of the desired user interface.

16. The system of claim 14 , wherein the at least one processor coupled to the memory is further operative to use the index to create a searchable repository of common user interface patterns.

17. The system of claim 14 , further comprising a tangible computer-readable recordable storage medium having one or more distinct software modules embodied thereon, wherein the one or more distinct software modules comprise a user interface query translator module, a user interface index engine module, a graphical user interface editor module and a meta-data extractor module executing on a hardware processor.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2024
From: BEIJING PIANRUOJINGHONG TECHNOLOGY CO., LTD.
To: BEIJING ZITIAO NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 066565/0952 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2023
From: AWEMANE LTD.
To: BEIJING PIANRUOJINGHONG TECHNOLOGY CO., LTD.
Reel/Frame 064501/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AWEMANE LTD.
Reel/Frame 057991/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2009
From: JAIN, ANSHU N.; MANI, SENTHIL; SINHA, VIBHA S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023478/0065 →