Visually representing concepts and relationships on an electronic interface for delivered content

A computer distinguishes relationships among concepts of conveyance contained within delivered content. The computer receives several of concepts of conveyance and determines a first visual identification indicia for a first of the concepts, with the first visual identification indicia being characterized by a first combination of appearance style elements selected from a group of visual attribute categories. The appearance style elements have sufficient visual contrast relative to one another to represent distinguishable relationships among individual concepts of conveyance, pairs of concepts of conveyance and multiple concepts of conveyance that are overlapping. The computer iteratively determines a visual identification indicia for each concepts of conveyance. The visual identification indicia are characterized by a unique corresponding combination of appearance style elements selected from the visual attribute categories. The computer presents a visualization of concepts of conveyance in a manner that distinguishes relationships among the concepts of conveyance.

BACKGROUND

The present invention relates generally to the field of visually representing diagnostic concepts in computer generated output, and more specifically, to computerized user interface systems that portray relationships among conveyed concepts in a discernable and visually-accessible manner.

Computer generated output can be used to accomplish a wide variety of tasks. Diagnostic content, for example, may contain information useful when determining appropriate courses of action for assessed conditions. Computer augmentation can make diagnostic output especially useful by showing relationships among complex topics that may be otherwise difficult to discern. Computerized user interfaces may indicate patterns and interrelated concepts that can allow for sophisticated diagnosis and specialized treatment.

SUMMARY

According to one embodiment, a computer-implemented method to distinguish relationships among concepts of conveyance contained within delivered content includes receiving, by the computer, a group of concepts of conveyance. The computer determines a first visual identification indicia for the first concept, with the first visual identification indicia being characterized by a first combination of appearance style elements selected from a group of visual attribute categories. The appearance style elements have sufficient visual contrast relative to one another to represent distinguishable relationships among individual concepts of conveyance, pairs of concepts of conveyance and multiple concepts of conveyance that are overlapping. The computer iteratively determines a visual identification indicia for each of the concepts of conveyance, and each visual identification indicia is characterized by a unique combination of appearance style elements selected from visual attribute categories. The computer presents a visualization of the concepts of conveyance, with the visualization distinguishing relationships among the concepts of conveyance. According to aspects of the invention, the appearance style elements are selected, at least in part, in accordance with visual accessibility consideration factors. According to aspects of the invention, the visual identification indicia are line segments; and the appearance style elements are selected from a list consisting of indicia endmarks, indicia line style, indicia line thickness, and indicia line color. According to aspects of the invention, one of the selected appearance style elements includes a first indicia endmark and a second indicia endmark, and first and second endmarks are different. According to aspects of the invention, the selected appearance style elements include a plurality of line styles. According to aspects of the invention, one of the selected appearance style elements includes a plurality of line thicknesses. According to aspects of the invention, the visual identification indicia have at least one attribute in common. According to aspects of the invention, at least two of the concepts of conveyance share a common characteristic and the visual identification indicia are selected, at least in part, in accordance with the shared characteristic.

According to another embodiment, a system to optimize input component enablement to distinguish relationships among concepts of conveyance contained within delivered content, which comprises: a computer system comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to: receive a plurality of concepts of conveyance; responsive to receiving said plurality of concepts of conveyance, determine a first visual identification indicia for a first of said plurality of concepts of conveyance, said first visual identification indicia being characterized by a first combination of appearance style elements selected from a plurality of visual attribute categories, wherein said appearance style elements have sufficient visual contrast relative to one another to represent distinguishable relationships among individual concepts of conveyance, pairs of concepts of conveyance and multiple concepts of conveyance that are overlapping; responsive to determining said first visual identification indicia, iteratively determine a corresponding visual identification indicia for each of said remaining plurality of concepts of conveyance, each of said visual identification indicia being characterized by a unique corresponding combination of appearance style elements selected from said plurality of visual attribute categories; responsive to determining said visual identification indicia for each concept of conveyance, present a visualization of said plurality of concepts of conveyance, said visualization distinguishing relationships among said plurality of concepts of conveyance.

According to another embodiment, a computer program product to distinguish relationships among concepts of conveyance contained within delivered content, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to: receive, using said computer, a plurality of concepts of conveyance; responsive to receiving said plurality of concepts of conveyance, determine, using said computer, a first visual identification indicia for a first of said plurality of concepts of conveyance, said first visual identification indicia being characterized by a first combination of appearance style elements selected from a plurality of visual attribute categories, wherein said appearance style elements have sufficient visual contrast relative to one another to represent distinguishable relationships among individual concepts of conveyance, pairs of concepts of conveyance and multiple concepts of conveyance that are overlapping; responsive to determining said first visual identification indicia, iteratively determine, using said computer, a corresponding visual identification indicia for each of said remaining plurality of concepts of conveyance, each of said visual identification indicia being characterized by a unique corresponding combination of appearance style elements selected from said plurality of visual attribute categories; responsive to determining said visual identification indicia for each concept of conveyance, present, using said computer, a visualization of said plurality of concepts of conveyance, said visualization distinguishing relationships among said plurality of concepts of conveyance.

The present disclosure recognizes the shortcomings and problems associated with processing assessment documents. Aspects of the embodiment generate processed assessment documents (including, for example, situational descriptions, conditional reports, professional diagnoses in a variety of fields, and other similar content) that visually identify distinct concepts of conveyance (COCs) and relationships among the COCs (including, for example, diagnostic themes) in a clear manner. According to aspects of the invention, the processed assessment documents will improve the usefulness of the document as a diagnostic tool, by ensuring that complex concept data is communicated clearly and accessible to a wide audience. Aspects of this invention graphically identify relationships among individual concepts, pairs of concepts and multiple concepts that are overlapping with the use of rule decoration, symbols, shapes and/or patterns, and color and without the need to use background colors. Other aspects of the invention make identifying relationships in processed versions of delivered content easier, allowing a recipient of the processed content to connect concepts quickly at a glance. As used herein, the term “visually-accessible” means useable in a functional manner for audience members who have limited sight capacity (e.g., people who are visually impaired, people who have color blindness, and people who use assistive reading technologies, including legally blind audience members). The term is used to indicate readiness for access by screen readers and other assistive technology that may help identify and interpret content for audience members who need or desire such assistance.

In embodiments according to the present invention, a computer implemented method to optimize input component enablement for several participants in an electronic group meeting includes a computer that identifies a group of communication devices (e.g., computers, telephones, etc.) joined together for use by a group of meeting participants. Each of the communication devices has a microphone, each of the participants is associated with one of the microphones, and some of the participants are characterized by identification attributes (for example, participant name or subject matter expertise). The computer receives audio input from the participants via the microphones and measures certain quality-based attributes of the audio input to provide associated quality metrics. The audio input can include any audio throughput received by the computer, which can include background noise, a participant's voice, and meeting content, as well as audio signal quality assessments. The computer uses these metrics to determine whether any of the input exceeds a quality threshold and places microphones providing quality threshold-exceeding input into an active speaking mode. The computer also evaluates content of participant audio input and identifies a current concept of focus. The computer then places into an active speaking mode any microphones that are associated with participant having identification attributes that correspond to the current concept of focus.

In another embodiment of the invention, a system to optimize input component enablement for a plurality of communication devices each having an input component associated with at least one participant in an electronic group meeting, which comprises:

a computer system comprising a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a computer to cause the computer to: identify a plurality of communication devices, each having an audio input component, said audio input components each being associated with at least one of a plurality of a group of participants, wherein at least one of said participants is characterized by an identification attribute; receive an audio input from a first of said audio input components; measure preselected qualitative attributes of said audio input to provide a set of quality metrics; determine whether said set of quality metrics exceeds a threshold for quality; place into an active speaking mode said first audio input component when said set of quality metrics exceeds said threshold for quality; evaluate content of said audio input to identify a concept of focus; place into an active speaking mode any audio input component associated with one of said participants characterized by said identification attribute when said identification attribute corresponds to said identified concept of focus.

In another embodiment of the invention, a computer program product optimizes input component enablement for a plurality of participants in an electronic group meeting. The computer program product comprises a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a computer to cause the computer to: identify a plurality of communication devices, each having an audio input component, said audio input components each being associated with at least one of a plurality of group participants, wherein at least one of said participants is characterized by an identification attribute; receive an audio input from one of said audio input components; measure content and preselected qualitative attributes of said audio input to provide, respectively, a topic of focus and a set of quality metrics; determine whether said set of quality metrics exceeds a threshold for quality; and place into an active speaking mode any audio input component that is associated with one of said participants having an identification attribute corresponding to said topic of focus or for which said set of quality metrics exceeds said threshold for quality.

Assessment documents can be processed to visually identify individual concepts and to highlight relationships among them. Such processing can make a given assessment document more useful. For example, processing to provide visual indicia showing how concepts are connected can improve diagnosis accuracy and overall assessment efficacy. Processing a document to include visual indications of overlapping concepts can also improve diagnosis speed and make treatment plan generation more efficient. It is important when processing assessment documents to present distinct concepts and information about concept relationships to include consider presentation approaches that are effective for a broad audience.

Assessment documents (e.g., such as situational descriptions, conditional reports, professional diagnoses, and other similar delivered content) often contain detailed information with complex meanings. The information can include interrelated concepts, and many times, even concepts that are presented individually throughout a given document are connected in ways that, if properly presented, can reveal complex themes.

DETAILED DESCRIPTION

It is to be understood that the singular forms “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to “a participant” includes reference to one or more of such participants unless the context clearly dictates otherwise.

Now with combined reference to the Figures generally and with particular reference toFIG.1andFIG.2, an overview of system100in which a method200for computer-implemented processing of delivered content106(such as a medical diagnosis or other similar assessment document) may be applied is shown. According to aspects of the invention, the method identifies distinct concepts of conveyance (COCs)110in the delivered content106, as well as relationships among the COCs. The method200is usable within a system100carried out by a server computer102having optionally shared storage104and aspects that portray the COCs110and relationships in a clear and visually-accessible manner.

The server computer102receives delivered content106(e.g., an assessment document, such as a medical diagnosis, a situational assessment, a conditional description, a professional analysis, and the like), and the content is passed along to a Content Parsing and Processing Module (CPPM)108, where the content106is parsed and COCs110contained in the content are identified. The server computer102collects the COCs110generated by the CPPM108into a COC data set, for further processing. Although delivered content106is described herein as including assessment documents, it is noted that the delivered content106need not be limited to documents and could arrive in many formats (e.g., including text, audio, and video recordings, lab notes and reports of various type, etc.).

The ASEs112are used to define Visual Identification Indicia (VIIs)114for each of the identified COCs110. Examples of VIIs are shown inFIG.5and will be discussed more fully below. Each VII112is characterized by a unique set of ASEs112, with certain (but not entire sets of) ASEs possibly being repeated and used in to show relationships among related COCs110. Partial reuse of ASEs allows aspects of the present invention to clearly identify which COCs are related or otherwise have attributes in common.

To ensure that each of the VIIs114includes ASEs that accurately portray whether a given COC110is related to other COCs, the server computer102stores the ASEs assigned to each COC in a reference table116. The server computer102indexes the reference table116by COC and uses the table contents when generating the VIIs114.

When each COC110has been assigned a distinct VII, the server computer102presents a processed version118of the delivered content106. According to aspects of the present invention, the processed version118of the delivered content106shows each distinct COC110, as well as associated relationships between and among the COCs in a visually-accessible manner. These relationships are shown in particular through the use of line segments with different appearance qualities, including line styles and thicknesses (e.g., including variations of single line thickness and quantities of lines stacked or bundled) and through the use of distinctive endmarks. As used herein, the term “endmark” means various endpoints, endmarks, point symbols, shapes, patterns, and other indicia selected by one skilled in this field (e.g., including colors chosen as visually-distinct without the need to use background colors) to indicate line segment termination).

Now with continued reference toFIG.1, and with particular reference toFIG.2, the method200of processing delivered content and portraying relationships among conveyed concepts110in a discernable and visually-accessible manner according to the present invention is discussed in further detail. The server computer102receives delivered content106, such as an assessment document (e.g., a medical diagnosis, situational description, conditional report, professional assessment, etc.), at block202.

According to aspects of the invention, delivered content106often includes mixtures of various kinds of information, some of which is easy to understand and some of which is more complex. Within this mix, the delivered content typically includes multiple COCs110, that may each stand alone, or which may belong to a group of overlapping, or otherwise related COCs. In a medical setting, typical COCs110include body parts or organs affected, illness classification, clinical attributes, general patient findings, temporal concepts, spatial concepts, and qualitative concepts, and other diagnostic themes known to and used by medical professionals to assess patient condition and to recommend treatment. In general, according to aspects of the present invention, the audience for the delivered content106may rely on the content106to make recommendations or other informed decisions, and having the COCs and associated relationships presented effectively makes the content easier to use and provides more-accurate decisions.

To ensure clear presentation of the information contained in the delivered content106, the server computer102parses, at block204, the delivered content to identify individual COCs110and, in block206, determines whether and how the COCs are related. This parsing (and subsequent relationship identification) is preferably done through known artificial intelligence (AI) techniques, such as sentiment analysis, aspect mining, topic modeling, or other typical natural language processing (NLP) approaches. Other suitable approaches may be selected in accordance with the judgment of one skilled in field.

The server computer102, in a Visual Identification Indicia Generation Module (VIIGM)208, iteratively generates and assigns a unique VII114for each COC108. As will be described more fully below, the VIIs114each have a unique combinations of ASEs112that, when presented as a group, show distinct COCs110, as well as associated relationships among and between them. According to aspects of the invention, the VIIGM208uses the reference table116, aspects of entries for which are shown atFIG.5, to ensure individual concepts110and associated relationships identified in blocks204and206are represented in a clear and visually-accessible manner to help the information contained in the delivered content106reach a broad audience.

The server computer102presents at block210, after iteratively assigning unique VIIs114to each COC110in the VIIGM208, a modified version of the delivered content106that has been processed to clearly show each COC110and associated relationships. According to aspects of the invention, this presentation210delivers processed content106using unique combinations of ASEs that are visually accessible and easily discernable. This allows the present invention to effectively and efficiently present individual the concepts110and complex themes contained within overlapping and otherwise-related concepts in processed assessment documents and other delivered content106to a broad audience.

Now with continued reference toFIG.2and with additional reference toFIG.3andFIG.4, ASE selection and VII generation using the VIIGM208of the present invention will be described in more detail. The VIIGM208generates a unique VII for each COC110, and the server computer102will, using information from the COC-indexed reference table116, share ASEs across COCs to show when COCs are related. Since each VII is characterized by multiple style elements112, the VIIs are complex, yet distinct and easy to identify.

A schematic overview of the selection process conducted by the server computer102in the VIIGM208is shown with additional reference toFIG.3andFIG.4. In particular,FIG.4shows, at a conceptual level that the server computer102selects a unique combination of ASEs112for each COC. The server computer102, for example selects a line segment quantity or thickness (e.g., single, double stack, triple stack, etc.) at block402, with the line quantity being selected (and possibly repeated) to correctly represent related concepts110if appropriate and desired. The line quantity402selected for VIIs114can vary from a single line, to double line, triple line, and so on. Next, the server computer102selects a line style (e.g., solid, dashed, dotted, wave, zig zag, etc.) is selected at block404, with the line style chosen (and possibly repeated) to correctly represent related concepts if appropriate and desired. The server computer102selects an endmark shape (e.g., circle, square, triangle, diamond, etc.) at block406, with the endmark shape being selected (and possibly repeated) to correctly represent related concepts if appropriate and desired. At block408, the server computer102selects an endmark style (e.g., hollow, filled, etc.) at block408, with the endmark style being selected (and possibly repeated) to correctly represent related concepts if appropriate and desired.

According to one embodiment, VIIs114are generated by selecting one ASE112from each of four categories, including line quality402, line style404, endmark shape406, and endmark style408. Although these four style element categories are preferred, ASEs112may be selected from other categories in accordance with the judgement of one skilled in this field. Conceptually, the server computer selects one full set of ASEs112for each COC110, iteratively looping from block402through to block410to until each COC is assigned a unique VII114. For each iteration, the server computer102preferably moves from top to bottom (e.g., blocks402,404,406, and408) and from left to right among the options available for each ASE112when generating VIIs, but other selection arrangements can be selected by one skilled in this field. It is also noted that in addition to line quantity options shown in block402, line thickness for a single line segment can also be selected as an ASE112for heightened visual impact. Additionally, broken lines of the type represented in block404may be shown with a variety of line and space proportions, with line and space being equally proportioned or with either line or space being larger than the other to provide line segment variety and heightened visual impact.

The VII generation flow logic will now be discussed in detail, with particular reference toFIG.3. The server computer102receives, at block209, a data set listing each of the COCs110contained in delivered content106. The server computer102determines, at block211, a first combination of ASEs112(as shown inFIG.4and discussed above) for the first COC identified in the COC data set110. The server computer102assigns the first ASEs112to the first COC at block213. The server computer records, at block215, the current combination of ASEs112is recorded in the reference table as a COC-indexed entry for use in generating additional VIIs. Since, according to aspects of the invention, generation of VIIs114is preferably iterative, the server computer102consults the reference table116, at block217, to determine whether all identified COCs110have been assigned VIIs. If COCs in the data set110still need VIIs, the server computer102iterates, at block219, to the next concept in the COC data set.

The server computer102, at block221, consults information received in block209to determine whether the now-current COC110is related to a previous COC. If the current COC110is related to a previous COC (or multiple COCs), the server computer102will use reference table116to assign ASEs112that indicate the current COC is related to other COCs. For example, if the current COC is related to a COC with a VII208characterized by circular endmarks (as shown in block506), the current COC may also be assigned the circular endmark ASE. If, for example, the current COC110is also related to another COC characterized by a dotted line segment style (as shown in block502), the current COC may be assigned the dotted line segment style, as well. According to aspects of the invention, several ASEs may be used more than once (e.g., line segment quantity or thickness, endmark shape, or line quality may be repeatedly selected and associated with several COCs110), and such ASE reuse is preferably done to show related concepts. It is noted, however, that ASE re-use may be merely for the sake of simplicity, if showing relationships among concepts is not of importance to the intended audience. It is noted that if the intended audience for particular kind of delivered content is only interested in having COCs110identified, without additional information about COC relationships, the coordinated reuse of ASEs112described above is not required.

The server computer102collects, at block225, determines a unique set of ASEs112for the current COC, with the ASE set including any ASEs identified for strategic reuse in block223if the current COC is related to previous COCs and indication of such relationship is desired. If no ASE reuse is appropriate or desired, a unique full set of ASEs is determined for the current COC, and a VII characterized by the current set of ASEs112is assigned to the current COC. The server computer102logic flow returns to block215, where the current set of ASEs112is entered in the reference table as a COC-indexed entry. The server computer102then returns to block217to iteration generate a VII114for the next COC110, unless all COCs in the data set have been assigned a VII. Once VIIs114have been assigned to all COCs in the data set110, logic flow leaves the VIIGM208and moves to block210, where the server computer102present the processed version of the delivered content106, including the VIIs generated for each COC.

With particular reference toFIG.5, examples of various VIIs114for COCs110are shown. For example, a first VII502having a single dotted line segment, with hollow, diamond endmarks is shown. A second VII504is shown with a single hashed line segment having filled, square endmarks. A third VII506is shown with a single dotted line segment, with solid, round endmarks is shown. A fourth VII508is shown with a dashed/solid/dashed, triple-thickness line segment, having solid, round endmarks. A fifth VII510is shown with a dotted/solid, double-thickness line segment, having hollow, triangle-shaped endmarks. A sixth VII512is shown, with a single zig zag line segment having hollow, star-shaped endmarks. Other and additional combinations a possible, and the server computer102records the ASEs for each COC allow in the reference table to ensure that unique permutations are generated to identify distinct COCs and that style elements can be shared where needed to show relationships among concepts.

With reference toFIG.6, a modified (e.g., parsed and processed) portion of delivered content106that includes the phrase “pancreatic cancer”602is shown. Once parsed and processed, the phrase is shown to include two distinct concepts of conveyance, “pancreatic” and “cancer”, as well as the compound or overlapping concept, “pancreatic cancer” formed from these two complementary concepts. The VIIGM208of the server computer102has generated three VIIs for COCs identified at block204as COCs. In particular, the VIIGM has generated VIIs for the distinct concepts “pancreatic”604and “cancer”606, as well as for the compound concept “pancreatic cancer”608, and the VIIs for these concepts are shown graphically inFIG.6. The pancreatic VII604is characterized by a double line quantity style element402. The pancreatic VII604is further characterized by a line style element404, with one solid line segment and one dashed-style line segment. The pancreatic VII604is further characterized by endmark shapes406that are rounded. The pancreatic VII604is further characterized by endmark style element406of outlined shapes. The cancer VII606is characterized by a single line quantity style element402. The cancer VII606is characterized by a single line quantity style element402. The cancer VII606is further characterized by a line style element404having a dashed line segment. The cancer VII606is further characterized by endmark shapes406that are parenthetical. The pancreatic VII606is further characterized by endmark style element406of curved shapes. The pancreatic cancer VII608is characterized by a single line quantity style element402, and the single line segment spans two words. The pancreatic cancer VII608is further characterized by a line style element404having a solid line segment. The pancreatic cancer VII608is further characterized by endmark shapes406that are square. The pancreatic cancer VII608is further characterized by endmark style element406of outlined shapes.

Referring toFIG.7, a system or computer environment1000includes a computer diagram1010shown in the form of a generic computing device. The method100, for example, may be embodied in a program1060, including program instructions, embodied on a computer readable storage device, or computer readable storage medium, for example, generally referred to as memory1030and more specifically, computer readable storage medium1050. Such memory and/or computer readable storage media includes non-volatile memory or non-volatile storage. For example, memory1030can include storage media1034such as RAM (Random Access Memory) or ROM (Read Only Memory), and cache memory1038. The program1060is executable by the processor1020of the computer system1010(to execute program steps, code, or program code). Additional data storage may also be embodied as a database1110which includes data1114. The computer system1010and the program1060are generic representations of a computer and program that may be local to a user, or provided as a remote service (for example, as a cloud based service), and may be provided in further examples, using a website accessible using the communications network1200(e.g., interacting with a network, the Internet, or cloud services). It is understood that the computer system1010also generically represents herein a computer device or a computer included in a device, such as a laptop or desktop computer, etc., or one or more servers, alone or as part of a datacenter. The computer system can include a network adapter/interface1026, and an input/output (I/O) interface(s)1022. The I/O interface1022allows for input and output of data with an external device1074that may be connected to the computer system. The network adapter/interface1026may provide communications between the computer system a network generically shown as the communications network1200.

The computer1010may be described in the general context of computer system-executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. The method steps and system components and techniques may be embodied in modules of the program1060for performing the tasks of each of the steps of the method and system. The modules are generically represented in the figure as program modules1064. The program1060and program modules1064can execute specific steps, routines, sub-routines, instructions or code, of the program.

The method of the present disclosure can be run locally on a device such as a mobile device, or can be run a service, for instance, on the server1100which may be remote and can be accessed using the communications network1200. The program or executable instructions may also be offered as a service by a provider. The computer1010may be practiced in a distributed cloud computing environment where tasks are performed by remote processing devices that are linked through a communications network1200. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.

The computer1010can include a variety of computer readable media. Such media may be any available media that is accessible by the computer1010(e.g., computer system, or server), and can include both volatile and non-volatile media, as well as, removable and non-removable media. Computer memory1030can include additional computer readable media in the form of volatile memory, such as random access memory (RAM)1034, and/or cache memory1038. The computer1010may further include other removable/non-removable, volatile/non-volatile computer storage media, in one example, portable computer readable storage media1072. In one embodiment, the computer readable storage medium1050can be provided for reading from and writing to a non-removable, non-volatile magnetic media. The computer readable storage medium1050can be embodied, for example, as a hard drive. Additional memory and data storage can be provided, for example, as the storage system1110(e.g., a database) for storing data1114and communicating with the processing unit1020. The database can be stored on or be part of a server1100. Although not shown, a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e.g., a “floppy disk”), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM or other optical media can be provided. In such instances, each can be connected to bus1014by one or more data media interfaces. As will be further depicted and described below, memory1030may include at least one program product which can include one or more program modules that are configured to carry out the functions of embodiments of the present invention.

The method(s) described in the present disclosure, for example, may be embodied in one or more computer programs, generically referred to as a program1060and can be stored in memory1030in the computer readable storage medium1050. The program1060can include program modules1064. The program modules1064can generally carry out functions and/or methodologies of embodiments of the invention as described herein. The one or more programs1060are stored in memory1030and are executable by the processing unit1020. By way of example, the memory1030may store an operating system1052, one or more application programs1054, other program modules, and program data on the computer readable storage medium1050. It is understood that the program1060, and the operating system1052and the application program(s)1054stored on the computer readable storage medium1050are similarly executable by the processing unit1020. It is also understood that the application1054and program(s)1060are shown generically, and can include all of, or be part of, one or more applications and program discussed in the present disclosure, or vice versa, that is, the application1054and program1060can be all or part of one or more applications or programs which are discussed in the present disclosure. It is also understood that the control system70(shown inFIG.5) can include all or part of the computer system1010and its components, and/or the control system can communicate with all or part of the computer system1010and its components as a remote computer system, to achieve the control system functions described in the present disclosure. It is also understood that the one or more communication devices110shown inFIG.1similarly can include all or part of the computer system1010and its components, and/or the communication devices can communicate with all or part of the computer system1010and its components as a remote computer system, to achieve the computer functions described in the present disclosure.

One or more programs can be stored in one or more computer readable storage media such that a program is embodied and/or encoded in a computer readable storage medium. In one example, the stored program can include program instructions for execution by a processor, or a computer system having a processor, to perform a method or cause the computer system to perform one or more functions.

The computer1010may also communicate with one or more external devices1074such as a keyboard, a pointing device, a display1080, etc.; one or more devices that enable a user to interact with the computer1010; and/or any devices (e.g., network card, modem, etc.) that enables the computer1010to communicate with one or more other computing devices. Such communication can occur via the Input/Output (I/O) interfaces1022. Still yet, the computer1010can communicate with one or more networks1200such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet) via network adapter/interface1026. As depicted, network adapter1026communicates with the other components of the computer1010via bus1014. It should be understood that although not shown, other hardware and/or software components could be used in conjunction with the computer1010. Examples, include, but are not limited to: microcode, device drivers1024, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

It is understood that a computer or a program running on the computer1010may communicate with a server, embodied as the server1100, via one or more communications networks, embodied as the communications network1200. The communications network1200may include transmission media and network links which include, for example, wireless, wired, or optical fiber, and routers, firewalls, switches, and gateway computers. The communications network may include connections, such as wire, wireless communication links, or fiber optic cables. A communications network may represent a worldwide collection of networks and gateways, such as the Internet, that use various protocols to communicate with one another, such as Lightweight Directory Access Protocol (LDAP), Transport Control Protocol/Internet Protocol (TCP/IP), Hypertext Transport Protocol (HTTP), Wireless Application Protocol (WAP), etc. A network may also include a number of different types of networks, such as, for example, an intranet, a local area network (LAN), or a wide area network (WAN).

In one example, a computer can use a network which may access a website on the Web (World Wide Web) using the Internet. In one embodiment, a computer1010, including a mobile device, can use a communications system or network1200which can include the Internet, or a public switched telephone network (PSTN) for example, a cellular network. The PSTN may include telephone lines, fiber optic cables, transmission links, cellular networks, and communications satellites. The Internet may facilitate numerous searching and texting techniques, for example, using a cell phone or laptop computer to send queries to search engines via text messages (SMS), Multimedia Messaging Service (MMS) (related to SMS), email, or a web browser. The search engine can retrieve search results, that is, links to websites, documents, or other downloadable data that correspond to the query, and similarly, provide the search results to the user via the device as, for example, a web page of search results.

Characteristics are as follows:

Service Models are as follows:

Deployment Models are as follows:

Referring now toFIG.8, illustrative cloud computing environment2050is depicted. As shown, cloud computing environment2050includes one or more cloud computing nodes2010with which local computing devices used by cloud consumers, such as, for example, personal digital assistant (PDA) or cellular telephone2054A, desktop computer2054B, laptop computer2054C, and/or automobile computer system2054N may communicate. Nodes2010may communicate with one another. They may be grouped (not shown) physically or virtually, in one or more networks, such as Private, Community, Public, or Hybrid clouds as described hereinabove, or a combination thereof. This allows cloud computing environment2050to offer infrastructure, platforms and/or software as services for which a cloud consumer does not need to maintain resources on a local computing device. It is understood that the types of computing devices2054A-N shown inFIG.5are intended to be illustrative only and that computing nodes2010and cloud computing environment2050can communicate with any type of computerized device over any type of network and/or network addressable connection (e.g., using a web browser).

Referring now toFIG.9, a set of functional abstraction layers provided by cloud computing environment2050(FIG.8) is shown. It should be understood in advance that the components, layers, and functions shown inFIG.9are intended to be illustrative only and embodiments of the invention are not limited thereto. As depicted, the following layers and corresponding functions are provided:

Hardware and software layer2060includes hardware and software components. Examples of hardware components include: mainframes2061; RISC (Reduced Instruction Set Computer) architecture based servers2062; servers2063; blade servers2064; storage devices2065; and networks and networking components2066. In some embodiments, software components include network application server software2067and database software2068.

Virtualization layer2070provides an abstraction layer from which the following examples of virtual entities may be provided: virtual servers2071; virtual storage2072; virtual networks2073, including virtual private networks; virtual applications and operating systems2074; and virtual clients2075.

In one example, management layer2080may provide the functions described below. Resource provisioning2081provides dynamic procurement of computing resources and other resources that are utilized to perform tasks within the cloud computing environment. Metering and Pricing2082provide cost tracking as resources are utilized within the cloud computing environment, and billing or invoicing for consumption of these resources. In one example, these resources may include application software licenses. Security provides identity verification for cloud consumers and tasks, as well as protection for data and other resources. User portal2083provides access to the cloud computing environment for consumers and system administrators. Service level management2084provides cloud computing resource allocation and management such that required service levels are met. Service Level Agreement (SLA) planning and fulfillment2085provide pre-arrangement for, and procurement of, cloud computing resources for which a future requirement is anticipated in accordance with an SLA.

Workloads layer2090provides examples of functionality for which the cloud computing environment may be utilized. Examples of workloads and functions which may be provided from this layer include: mapping and navigation2091; software development and lifecycle management2092; virtual classroom education delivery2093; data analytics processing2094; transaction processing2095; and visually representing concepts conveyed in delivered content and relationships among them in a manner that is discernable and visually-accessible.2096.

The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Likewise, examples of features or functionality of the embodiments of the disclosure described herein, whether used in the description of a particular embodiment, or listed as examples, are not intended to limit the embodiments of the disclosure described herein, or limit the disclosure to the examples described herein. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.