Expert system for generating user interfaces
AssigneeMicrosoft Corporation
InventorJan Thomas Miksovsky
Life of this patent
Estimating the term…
Abstract
An expert system for generating user interfaces is provided. The expert system includes one or more components for realizing one or more intentions of a user interface designer. Each intention, when received by the expert system, identifies and activates a corresponding component for realizing the received intention. Each component programmatically contains a set of rules extracted from guidelines, conventions, and principles of user interface design. A set of parameters is also supplied with each received intention to aid the corresponding component to choose and execute a rule from the set of rules. Each rule produces a user interface from a template different from other templates used by other rules.
Claims19
A method of producing a user interface for an application running on a computer having an associated display, said method comprising:
- a) in response to user interface designer inputs, said application producing at least one intention, said at least one intention having an associated set of parameters;
- b) supplying said at least one intention and its associated set of parameters to an expert system;
- c) in response to receiving said at least one intention and its associated set of parameters, the expert system:
- i) selecting a code module from a multitude of code modules;
- ii) selecting a rule from a set of rules within the selected code module;
- and
- iii) generating user interface instructions from a template associated with the selected rule;
- d) supplying said user interface instructions to said application;
- and
- e) in response to receiving said user interface instructions, said application producing a user interface on said display.
A system for generating user interfaces so that a user may interact with a computer system, the system comprising:
- an application including an incomplete user interface and being adapted to store multiple intentions of a user interface designer of the application, each intention including a set of parameters and at least one of posing a question to the user, presenting a piece of information to the user, and defining a task for the user to perform, the incomplete user interface of the application being completed when the one or more intentions are realized;
- and
- an expert system including one or more components for realizing the multiple intentions, the expert system receiving one of the multiple intentions and each received intention identifying and activating a corresponding component for realizing the received intention, each corresponding component programmatically comprising a set of rules extracted from guidelines, conventions, and principles of user interface design, the set of parameters supplied with each received intention aiding the corresponding component to choose and execute a rule from the set of rules, each rule producing a user interface from a template different from other templates used by other rules.
A method for generating user interfaces by an expert system for a user to interact with a computer system, comprising:
- receiving a user interface goal by the expert system, the user interface goal including at least one of a question to be posed to the user, a piece of information to be communicated to the user, and a task to be performed by the user;
- receiving a set of parameters by the expert system, each parameter including at least one of information for presenting to the user, information for the task to be performed by the user, and information for constraining the generated user interface;
- and
- generating a user interface by selecting a code module from a set of code modules, each code module being designed to generate user interfaces from multiple templates, the act of selecting a code module including selecting a rule from a set of rules extracted from guidelines, conventions, and principles of user interface design, the act of selecting a rule being aided by the set of parameters, the user interface being produced from a template when the selected rule is executed.
For use in a computer system, a computer-readable medium having computer-executable instructions for performing a method for generating user interfaces by an expert system for a user to interact with the computer system, comprising:
- receiving a user interface goal by the expert system, the user interface goal including at least one of a question to be posed to the user, a piece of information to be communicated to the user, and a task to be performed by the user;
- receiving a set of parameters by the expert system, each parameter including at least one of information for presenting to the user, information for the task to be performed by the user, and information for constraining the generated user interface;
- and
- generating a user interface by selecting a code module from a set of code modules, each code module being designed to generate user interfaces from multiple templates, the act of selecting a code module including selecting a rule from a set of rules extracted from guidelines, conventions, and principles of user interface design, the act of selecting a rule being aided by the set of parameters, the user interface being produced from a template when the selected rule is executed.
For use in a computer system, a computer-readable medium having computer-executable instructions for performing a method of producing a user interface for an application running on a computer having an associated display, said method comprising:
- a) in response to user interface designer inputs, said application producing at least one intention, said at least one intention having an associated set of parameters;
- b) supplying said at least one intention and its associated set of parameters to an expert system;
- c) in response to receiving said at least one intention and its associated set of parameters, the expert system:
- i) selecting a code module from a multitude of code modules;
- ii) selecting a rule from a set of rules within the selected code module;
- and
- iii) generating user interface instructions from a template associated with the selected rule;
- d) supplying said user interface instructions to said application;
- and
- e) in response to receiving said user interface instructions, said application producing a user interface on said display.
Dependencies are inferred from the claim text.