# US 10,310,835 B2 · Modernization of legacy applications using dynamic icons

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,310,835 B2
- Document ID: US10310835B2
- Status: Granted
- Kind: B2
- Application number: 15/069,869
- Filed: 2016-03-14
- Published: 2016-07-07
- Granted: 2019-06-04
- Earliest claimed: 2009-10-28
- Assignees: Advanced BusinessLink Corporation
- Applicants: Advanced BusinessLink Corporation
- Inventors: Christopher F. Lategan
- Web page: https://patentgrep.com/patent/US10310835B2

## CPC

- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06F 3/04817: using icons (graphical or visual programming using iconic symbols G06F8/34)
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 3/04847: Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
- G06F 8/70: Software maintenance or management
- G06F 9/451: Execution arrangements for user interfaces
- G06F 21/31: User authentication
- G06F 21/629: {to features or functions of an application}
- H04L 41/0803: Configuration setting
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 47/70: Admission control; Resource allocation
- H04L 63/102: {Entity profiles}
- H04L 63/104: {Grouping of entities}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/306: User profiles
- H04L 67/52: specially adapted for the location of the user terminal
- G06F 8/51: Source to source
- G06F 8/52: Binary to binary
- G06F 8/654: using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
- G06F 8/656: while running
- G06F 8/66: {of program code stored in read-only memory [ROM]}
- G06F 8/72: Code refactoring
- G06F 8/74: Reverse engineering; Extracting design information from source code
- G06F 8/76: Adapting program code to run in a different environment; Porting
- G06F 9/448: Execution paradigms, e.g. implementations of programming paradigms
- G06Q 10/06: Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q 30/02: Marketing; Price estimation or determination; Fundraising
- H04L 67/561: Adding application-functional data or data for application control, e.g. adding metadata
- H04L 67/565: Conversion or adaptation of application format or content (adding application control or application functional data H04L67/561)
- H04L 69/329: in the application layer [OSI layer 7]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Methods, systems, and techniques for automatically allocating and dynamically determining icons for placement on legacy task output as part of modernizing such tasks are provided. These enhanced modernization techniques may be used for many different applications to automatically provide graphical enhancement to legacy applications in ways heretofore not pragmatically possible because of the sheer volume of menus in typical enterprise scenarios running legacy applications. Example embodiments provide a Role-Based Modernization System (“RBMS”), which uses these enhanced modernization techniques to provide role-based modernization of menu-based legacy applications.

## Claims

### Claim 1

A method in a client computing system for modernizing an existing menu-based legacy application, the menu-based legacy application having a hierarchy of menus, at least some of which require a plurality of menu selections to access a given task, the existing menu-based legacy application comprising:
receiving a reorganization of the existing menu-based legacy application into a plurality of roles, wherein each role is configured to allow direct access to the menu-based legacy application through one or more tasks without invoking the menu structure of the existing menu based legacy application;
receiving from a host computing system a data stream representing output from a task of the existing menu-based legacy application executing on a host computing system;
filtering the received data stream output to identify entities to be output in a display on the client computing system of the received data stream, wherein the identified entities include multiple user interface controls to be displayed on a role desktop, wherein the role desktop displays an indicator of a current role that is associated with the one or more tasks of the existing menu-based legacy application configured for the current role, such that a user of the role is authorized to conduct the associated one or more tasks without invoking the menu structure of the existing menu based legacy application;
associating each identified entity with an associated icon that most nearly matches the identified entity by matching each entity name, in whole or in part, to an icon descriptor of the associated icon; and
outputting the received data stream in the display on the client computing system, such that each identified entity is displayed along with its associated icon on the current role of the role desktop.

### Claim 2 (depends on 1)

The method of claim 1 wherein the identified entities include user interface controls configured to cause, upon selection, the execution of tasks of the existing menu-based legacy application.

### Claim 3 (depends on 1)

The method of claim 1 wherein the identified entities include indicators of running tasks of the existing menu-based legacy application.

### Claim 4 (depends on 1)

The method of claim 1 wherein the identified entities include indicators of tasks of the existing menu-based legacy application that are able to be run.

### Claim 5 (depends on 1)

The method of claim 1 wherein the identified entities include menu items.

### Claim 6 (depends on 1)

The method of claim 1 wherein the multiple user interface controls on the role desktop include a task list that includes indicators of the associated one or more tasks along with one or more of the associated icons.

### Claim 7

A non-transitory computer-readable memory medium whose contents are instructions configured to enable a computing system to modernize an existing menu-based legacy application, by performing a method comprising:
receiving a reorganization of the existing menu-based legacy application into a plurality of roles, wherein each role is configured to allow direct access to the menu-based legacy application through one or more tasks without invoking the menu structure of the existing menu based legacy application;
receiving from a host computing system a data stream representing output from a task of the existing menu-based legacy application executing on a host computing system;
filtering the received data stream output to identify entities to be output in a display on the client computing system of the received data stream, wherein the identified entities include multiple user interface controls on a role desktop, wherein the role desktop displays an indicator of a current role that is associated with one or more tasks of the existing menu-based legacy application configured for the current role, such that a user of the role is authorized to conduct the associated one or more tasks without invoking the menu structure of the existing menu based legacy application;
associating each identified entity with an associated icon that most nearly matches the identified entity by matching each entity name, in whole or in part, to an icon descriptor of the associated icon; and
outputting the received data stream in the display on the client computing system, such that each identified entity is displayed along with its associated icon on the current role of the role desktop.

### Claim 8 (depends on 7)

The non-transitory computer-readable memory medium of claim 7 wherein the identified entities include user interface controls configured to cause, upon selection, the execution of tasks of the existing menu-based legacy application.

### Claim 9 (depends on 7)

The non-transitory computer-readable memory medium of claim 7 wherein the identified entities include indicators of running tasks of the existing menu-based legacy application.

### Claim 10 (depends on 7)

The non-transitory computer-readable memory medium of claim 7 wherein the identified entities include indicators of tasks of the existing menu-based legacy application that are able to be run.

### Claim 11 (depends on 7)

The non-transitory computer-readable memory medium of claim 7 wherein the identified entities include menu items.

### Claim 12 (depends on 7)

The non-transitory computer-readable memory medium of claim 7 wherein the multiple user interface controls on the role desktop include a task list that includes indicators of the associated one or more tasks along with one or more of the associated icons.

### Claim 13

A client computing system, comprising:
a memory;
a processor; and
a client-side host interface code module stored in the memory, communicatively coupled to a host computing system, and configured, when executed on the processor, to receive screen output from at least one task of an existing menu-based legacy application running on the host computing system, wherein the legacy application accesses tasks uses a hierarchy of menus, and to modernize the received screen output by adding icons to a plurality of entities received in the screen output when the received output is displayed on a display of the client computing system on a role desktop, wherein the client-side host interface code module is further configured to:
receive from the host computing system a data stream representing the screen output from the at least one task of the existing menu-based legacy application running on the host computing system;
filter the received data stream output to identify the plurality of entities received in the screen output, wherein the identified entities include multiple user interface controls on the role desktop, wherein the role desktop displays an indicator of a current role that is associated with one or more tasks of the existing menu-based legacy application configured for the current role, such that a user of the role is authorized to conduct the associated one or more tasks without invoking the hierarchy of menus of the existing menu based legacy application;
associate each identified entity with an associated icon that most nearly matches the identified entity by matching each entity name, in whole or in part, to an icon descriptor of the associated icon; and
output the received data stream in the display of the client computing system, such that each entity is displayed along with its associated icon on the current role of the role desktop.

### Claim 14 (depends on 13)

The client computing system of claim 13 wherein the identified entities include all of user interface controls, indicators of running tasks, indicators of tasks that are able to be run, menu items, and multiple user interface controls on the role desktop.

### Claim 15 (depends on 13)

The client computing system of claim 13, further configured to associate each identified entity with an associated icon by determining an at least partial match between an entity description and an icon description.

### Claim 16 (depends on 13)

The client computing system of claim 13 wherein the module includes instructions for execution in the memory of the client computing system.
