US20190363947A1 - Methods and systems for mitigating risk in deploying unvetted data handling rules - Google Patents
Methods and systems for mitigating risk in deploying unvetted data handling rules Download PDFInfo
- Publication number
- US20190363947A1 US20190363947A1 US16/199,617 US201816199617A US2019363947A1 US 20190363947 A1 US20190363947 A1 US 20190363947A1 US 201816199617 A US201816199617 A US 201816199617A US 2019363947 A1 US2019363947 A1 US 2019363947A1
- Authority
- US
- United States
- Prior art keywords
- client device
- data handling
- servers
- protocol
- governance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/046—Forward inferencing; Production systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q10/00—Administration; Management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H04L67/22—
-
- H04L67/42—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Definitions
- This disclosure relates to streamlining deployment of data handling rules that may not have been fully vetted.
- FIG. 1 illustrates an exemplary network topology of an information management system in accordance with various embodiments.
- FIG. 2 illustrates a client device in which one or more technologies may be implemented.
- FIG. 3 illustrates a server in which one or more technologies may be implemented.
- FIG. 4 illustrates depicts a display screen image of a form such as may be shown on a display of a client device.
- FIG. 5 illustrates the form of FIG. 4 in a more advanced state.
- FIG. 6 illustrates the form of FIG. 5 in a more advanced state.
- FIG. 7 illustrates the form of FIG. 6 in another state.
- FIG. 8 illustrates data storage media in which various data entities may reside.
- FIG. 9 depicts a schema by which unvetted predictive rules may be differentiated from highly established predictive rules and from tentative predictive rules undergoing evaluation.
- FIG. 10 illustrates special-purpose transistor-based circuitry in which some or all of the functional modules described below may be implemented.
- FIG. 11 illustrates a flow of a device-executable routine in accordance with some embodiments.
- FIG. 12 illustrates a particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments.
- FIG. 13 illustrates another particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments.
- FIG. 14 illustrates another particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments.
- FIG. 1 illustrates an exemplary network topology of an information management system 100 in accordance with various embodiments as further described below.
- a central information management server 300 (see FIG. 3 ) is in data communication with a plurality of client devices 200 A-C (see FIG. 2 ) via one or more networks 168 .
- network 168 may include the Internet, one or more local area networks (“LANs”), one or more wide area networks (“WANs”), cellular data networks, and/or other data networks.
- Network 168 may, at various points, be a wired and/or wireless network.
- Remote information management server 300 may be in data communication with one or more information management data stores 163 .
- any of client devices 200 A-C may be networked computing devices having form factors including general purpose computers (including “desktop,” “laptop,” “notebook,” “tablet” computers, or the like); mobile phones; watches, glasses, or other wearable computing devices.
- client device 200 A is depicted as a laptop/notebook computer
- client device 200 B is depicted as a handheld device
- client device 200 C is depicted as a computer workstation.
- remote information management server 300 may be a networked computing device generally capable of accepting requests over network 168 e.g. from any one of respondent devices 200 A-C and/or other networked computing devices (not shown), and providing responses accordingly.
- the functional components of an exemplary information management server 300 that remotely supports advanced interactions with various client devices 200 A-C are described below in reference to FIG. 3 .
- server 300 A maintains (in memory 304 , e.g.) one or more centrally maintained data tables 110 that may contain at least one record 121 co-owned among human entities depicted as users associated with respective devices 200 A-C, at least some of whom own respective dedicated zones 175 A-C of the record. If a particular human user “A” is directly editing a field 171 A within her zone 175 A of record 121 via a browser of her device 200 A, for example, another human user “B” may simultaneously edit one or more fields 171 B within his zone 175 B of record 121 via a browser of his device 200 B.
- each record 121 of table 110 includes one or more inter-zone partitions 193 A, 193 B signifying different types/degrees of ownership/access.
- One such partition 193 A signifies that an owner of a zone 175 A (user “A” or her department, e.g.) on one side of the partition is able to see and modify her zone but not that of the zone 175 B on the other side.
- Another such partition 193 B signifies that an owner of a zone 175 B (user “B” or his department, e.g.) on one side of the partition is able to see and modify his zone but is only able to see (and not modify) any field 171 C of the zone 175 C on the other side of that partition.
- either such type of partition 193 A, 193 B may be one-sided or reciprocal.
- the record 121 being edited (and other records 122 of the table) has a plurality of shared fields 165 A-B, including a “key” field 165 A that uniquely identifies the record and one or more other fields 165 B that provide reference information as exemplified below.
- the fields in zone 170 are “shared” insofar that all are viewable to co-owners of that record.
- a privileged user (using device 200 C, e.g.) may have authority to review the content of the entire record 121 (in response to data validation errors shown, e.g.). Alternatively or additionally, such a privileged user may also have authority to correct and/or finalize the content of the entire record 121 (respectively in response to data validation errors shown or lack thereof, e.g.).
- FIG. 2 illustrates a client device 200 in which one or more technologies may be implemented.
- client device 200 may be a general-purpose computer or may include special-purpose components not shown.
- exemplary client device 200 includes one or more processing units 202 in data communication with one or more memories 204 via one or more buses 216 .
- Each such memory 204 generally comprises some or all of random access memory (RAM), read-only memory (ROM), and/or a permanent mass storage device, such as a disk drive, flash memory, or the like.
- Client device 200 may also include one or more instances of network interfaces 206 , of user inputs 208 , of displays 212 , or of speakers (not shown).
- memory 204 of exemplary client device 200 may store an operating system 210 , as well as program code for a number of software applications, such as a client web browser application 214 .
- Client web browser application 214 is a software application by which, under server control, client devices can present data to users and transmit data entered by them.
- These and other software components, as well as various data files may be loaded into memory 204 via network interface (optional) 206 (or via a selectively removable computer readable storage medium 218 , such as a memory card or the like).
- operating system 210 manages the hardware and software resources of the client device 200 and provides common services for various software applications, such as client web browser application 214 .
- client web browser application 214 For hardware functions such as network communications via network interface 206 , obtaining data via user input 208 , rendering data via display 212 and/or speaker, and allocation of memory 204 to various resources, operating system 210 may act as an intermediary between software executing on client device 200 and the client device's hardware.
- operating system 210 may cause a representation of locally available software applications, such as client web browser application 214 or spreadsheet application 224 , to be rendered locally (via display 212 , e.g.). If operating system 210 obtains, e.g. via user input 208 , a selection of client web browser application 214 , operating system 210 may instantiate a client web browser application process (not shown), i.e. cause processing unit 202 to begin executing the executable instructions of client web browser application 214 and allocate a portion of memory 204 for its use.
- client web browser application process not shown
- one or more local text editors in the case of CSV-formatted spreadsheet files, e.g.
- spreadsheet applications Microsoft Excel, e.g.
- offline editing may occur “offline” in the sense that a client device is temporarily disconnected from one or more servers 300 .
- a client device 200 may be any of a great number of computing devices capable executing program code, such as the program code corresponding to client web browser application 214 or spreadsheet application.
- some such client devices 200 may include special-purpose circuitry 222 as described herein (implementing a local interface model 244 as described below, e.g.).
- FIG. 3 illustrates a server 300 in which one or more technologies may be implemented.
- exemplary server 300 includes one or more processing units 302 in data communication with one or more memories 304 via one or more buses 316 .
- Each such memory 304 generally comprises some or all of random access memory (RAM), read-only memory (ROM), and/or a permanent mass storage device, such as a disk drive, flash memory, or the like.
- Server 300 may also include one or more instances of network interfaces 306 , of user inputs 308 , of displays 312 , or of speakers (not shown).
- memory 304 of exemplary server 300 may store an operating system 310 , as well as program code for a number of software applications, such as a hosting service 314 .
- Hosting service 314 is a software application by which, under server control, client devices 200 can present data to users and transmit data from users.
- Process flow management service 320 is a software application by which one or more processes, such as those described with reference to FIGS. 11-14 , are coordinated. These and other software components, as well as various data files (not shown) may be loaded into memory 304 via network interface 306 (or via a selectively removable computer readable storage medium 318 , such as a memory card or the like).
- operating system 310 manages the hardware and software resources of the server 300 and provides common services for various software applications, such as hosting service 314 .
- operating system 310 may act as an intermediary between software executing on server 300 and the server's hardware.
- user account records are maintained in server 300 , designating which user accounts are associated with which zones 175 and what privileges each such user account has with regard to other zones, as described herein.
- user account records 324 may reside in memory 304 or in special-purpose circuitry 324 .
- operating system 310 may cause a representation of locally available software applications, such as hosting service 314 or spreadsheet application 322 , to be rendered locally (via display 312 , e.g.). If operating system 310 obtains, e.g. via user input 308 , a selection of hosting service 314 , operating system 310 may instantiate a hosting service 314 process (not shown), i.e. cause processing unit 302 to begin executing the executable instructions of hosting service 314 and allocate a portion of memory 304 for its use.
- hosting service 314 process not shown
- one or more local text editors in the case of comma-separated-value spreadsheet files, e.g.
- spreadsheet applications Microsoft® Excel, e.g.
- offline editing may occur “offline” in the sense that the server is temporarily disconnected from server 300 .
- a server 300 may be any of a great number of computing devices capable executing program code, such as the program code corresponding to a hosting service 314 or Enterprise Resource Planning (ERP) application.
- ERP Enterprise Resource Planning
- the structures described with reference to FIG. 3 may likewise be implemented by a special-purpose peer computer in a peer-to-peer network or may include special-purpose circuitry 322 as described herein (implementing a neural network node 340 as described below, e.g.).
- FIG. 4 depicts a display screen image 410 of (a portion of) a form such as may be shown on a display 212 of a client device.
- a sequence of labels 417 A-D respectively identify content 419 (values, e.g.) that have been entered by a user into the form.
- a portion of the form (field 171 D, e.g.) is in the progress of editing, as shown by a popup menu there offering a user a plurality of acceptable options (comprising “INDIRECT” and “DIRECT”).
- FIG. 5 depicts a display screen image 510 of the form in a more advanced state. “DIRECT” has been selected for the field 171 D labeled as “TYPE.” The other displayed fields 171 E-G are still empty.
- FIG. 6 depicts a display screen image 610 of the form in a more advanced state.
- Field 171 E is no longer empty but has been given a value of zero. This need not reflect a value directly entered by the user entering the data, though.
- “DIRECT” has been identified as predictive of a zero value at field 171 E
- that value could have been assigned as an autocompletion response (passing a cursor directly down from field 171 D to field 171 F in the same stroke, e.g.).
- it could have been assigned as an autocorrection response (as a predictive adjustment to a user having tried to enter an implausible value of “_0” into field 171 F, e.g.).
- FIG. 7 depicts a display screen image 710 of the form in another state.
- Field 171 F is no longer empty but has been given a value of “MIL.” This need not reflect a value directly entered by the user entering the data as illustrated above, though. Moreover machine learning technology may reveal protocols as a result of these values and others entered later that some user actions are indicative of a data validation opportunity. Users who select and stick by units of “MIL” might be discovered rarely to enter an “AMOUNT” of zero, for example. Or in some variants such a pattern may emerge as valid in one data entry context (in an industry identified as “DELIVERED GOODS” for example) and not in others.
- FIG. 8 depicts non-transitory data storage media 800 (in memory 304 , e.g.) in which one or more (digitally manifested instances of) counts 801 , thresholds 802 , rates 803 , intervals 804 , or messages 840 may reside.
- counts may comprise an exception count, for example, pertaining to an individual, a cohort, or an entire community of clients and to a particular time interval or classification.
- such messages 840 may comprise one or more (digitally manifested instances of) rule descriptions 825 (differentiating a basic protocol 821 from an enhanced protocol 822 , e.g.) or user-invokable controls 835 (an “accept” button 831 , an “invite” button, a hyperlink, or a menu option presented in message 840 , e.g.) as described below.
- each such message 840 may likewise correspond to one or more features (fields 171 , e.g.) of a sequenced query set 850 (manifested in a table 851 or other form 852 or a structured dialog 855 by which data may be elicited from a user, e.g.) that makes up a data governance model 880 by which data entry is performed (at a client device 200 assigned to a specific user, e.g.).
- each data governance model 880 will include one or more data handling protocols 860 each having multiple data handling rules 875 , a modification of which can make data entry by users much more efficient and accurate.
- a “data handling protocol,” as used herein, refers to one or more instances of autocompletion protocols 861 , autocorrection protocols 862 , validation protocols 863 , or protocol combinations that include at least one of these and that implement at least one data handling rule 875 .
- a “data handling rule,” as used herein, refers to one or more events 871 associated with one or more programmatic responses 872 thereto in regard to data entry by or otherwise attributed to one or more human users.
- the media 800 pertaining to a data governance model 880 in effect for a given client, cohort, or population may be distributed (so that some are part of a local interface model 244 , e.g.).
- FIG. 9 depicts a schema 900 by which unvetted predictive rules (implemented in data handling protocol 860 A, e.g.) may be differentiated from highly established predictive rules (implemented in data handling protocol 860 D, e.g.) and from tentative predictive rules (implemented in data handling protocols 860 B-C, e.g.) undergoing evaluation (in coordination with a cohort of users, e.g.).
- a curator or similar expert may selectively designate a data handling protocol 860 B as being available for some users to “opt into” (by distributing messages 840 of invitation as described below, e.g.).
- a data handling protocol 860 C may become more established (so that some new users will join by default and have the option of opting out, e.g.).
- One or more opt-out thresholds 802 or other opt-out criteria 922 may be defined, moreover, so that a popular opt-in data handling protocol 860 B may automatically achieve “opt-out” status or so that an unpopular opt-out data handling protocol 860 C may automatically be demoted to “opt-in” status as further described below.
- FIG. 10 illustrates special-purpose transistor-based circuitry 1000 —optionally implemented as an Application-Specific Integrated Circuit (ASIC) or in a UI governance server, e.g.—in which some or all of the functional modules described below may be implemented.
- Transistor-based circuitry 1000 is an event-sequencing structure generally as described in U.S. Pat. Pub. No. 20150094046 but configured as described herein.
- Transistor-based circuitry 1000 includes one or more instances of rule generation modules 1031 , for example, each including an electrical node set 1041 upon which informational data is represented digitally as a corresponding voltage configuration 1051 .
- Each electrical node is highly conductive, having a corresponding nominal voltage level that is spatially uniform generally throughout the node (within a device or local system as described herein, e.g.) at relevant times (at clock transitions, e.g.).
- Such nodes (lines on an integrated circuit or circuit board, e.g.) may each comprise a forked or other signal path adjacent one or more transistors.
- many Boolean values may each be manifested as either a “low” or “high” voltage, for example, according to a complementary metal-oxide-semiconductor (CMOS), emitter-coupled logic (ECL), or other common semiconductor configuration protocol.
- CMOS complementary metal-oxide-semiconductor
- ECL emitter-coupled logic
- an “electrical node set” as used herein in reference to one or more electrically conductive nodes upon which a voltage configuration (of one voltage at each node, for example, with each voltage characterized as either high or low) manifests a yes/no decision or other digital data.
- Transistor-based circuitry 1000 likewise includes one or more instances of client registration modules 1032 each including an electrical node set 1042 upon which informational data is represented digitally as a corresponding voltage configuration 1052 .
- Transistor-based circuitry 1000 likewise includes one or more instances of protocol configuration modules 1033 each including an electrical node set 1043 upon which informational data is represented digitally as a corresponding voltage configuration 1053 .
- Transistor-based circuitry 1000 likewise includes one or more instances of logging modules 1034 each including an electrical node set 1044 upon which informational data is represented digitally as a corresponding voltage configuration 1054 .
- Transistor-based circuitry 1000 likewise includes one or more instances of detection modules 1035 each including an electrical node set 1045 upon which informational data is represented digitally as a corresponding voltage configuration 1055 .
- Transistor-based circuitry 1000 likewise includes one or more instances of communication modules 1036 each including an electrical node set 1046 upon which informational data is represented digitally as a corresponding voltage configuration 1056 .
- a module implements such functionality jointly (in conjunction with other modules or processing units 302 described herein, e.g.).
- such modules (or components thereof) may be distributed (so that some are implemented in special-purpose circuitry 324 of respective servers 300 , e.g.).
- FIG. 1100 illustrates an operational flow 1100 (implemented in software as a routine executed or coordinated by one or more instances of processing unit 302 , e.g.) suitable for use with at least one embodiment, such as may be performed (in some variants) on a server 300 using special-purpose circuitry 324 via a process flow management service 320 .
- an operational flow 1100 (implemented in software as a routine executed or coordinated by one or more instances of processing unit 302 , e.g.) suitable for use with at least one embodiment, such as may be performed (in some variants) on a server 300 using special-purpose circuitry 324 via a process flow management service 320 .
- FIG. 11 illustrates an operational flow 1100 (implemented in software as a routine executed or coordinated by one or more instances of processing unit 302 , e.g.) suitable for use with at least one embodiment, such as may be performed (in some variants) on a server 300 using special-purpose circuitry 324 via a process flow management service 320
- Operation 1120 depicts auto-generating one or more predictive rules of a data handling protocol (a rule generation module 1031 generating, in an automated process, an expression of a programmatic response 872 in association with one or more specific events 871 , e.g.).
- the one or more specific events 871 include a user selecting “DIRECT” as a value for field 171 D; in which the programmatic response 872 comprises a processing unit 202 , 302 entering “0” as a value for field 171 E; in which that data handling rule 875 is a component of an autocompletion protocol 861 or an autocorrection protocol 862 (or both); and in which the data handling rule 875 is expressed as a voltage configuration 1051 on an electrical node set 1041 of the rule generation module 1031 .
- a collection of neural network nodes 340 may perform operation 1120 by generating dozens or hundreds of data handling rules 875 using live data entry (see FIG. 12-14 , e.g.) by numerous clients as training data.
- a human curator may select a few such data handling rules 875 each for use with crowd workers or other error-tolerant client cohorts as a low risk mode of vetting auto-generated rules (to determine which of the rules are effective enough to predict what data a user will enter by learning data indicative of a user manually overriding the response 872 , e.g.).
- Operation 1130 depicts receiving registrations from several client devices (a client registration module 1032 receiving user information or other credentials from several client devices 200 A-C so that each can be distinguished in future interactions, e.g.). This can occur, for example, in a context in which one or more such client devices will have privileges (access to particular fields 171 or processes, e.g.) not universally shared; in which each such device can be associated with a corresponding set of operating parameters (specifying features of a data handling protocol 860 or user preferences, e.g.) that can be changed and remembered across login sessions; in which messages 840 can be remembered and retrieved (like email messages, e.g.) even if they have not been read or used; and in which a device or client identifier is expressed as a voltage configuration 1052 on an electrical node set 1042 of the client registration module 1032 .
- Operation 1145 depicts transmitting the data handling protocol to the client devices (a protocol configuration module 1033 transmitting one or more sequenced query sets 850 , forms 852 , or other features of a default data handling protocol 860 are in effect to whichever client devices 200 signed up during operation 1130 , e.g.).
- protocol configuration module 1033 maintains one default data handling protocol 860 for each client classifier (industry identifier, e.g.) and in which client registration module 1032 is configured to request a client classifier during the client registration so as to facilitate an initial data handling protocol that is effectively adapted to the intended purpose of the client device registration.
- Operation 1160 depicts monitoring data entry from the client devices to one or more enterprise resource planning servers (a logging module 1034 monitoring one or more clients entering content 419 into fields 171 or other preconfigured storage elements via user inputs 208 of their respective devices 200 directly or indirectly into one or more enterprise resource planning servers 300 A, e.g.).
- a logging module 1034 monitoring one or more clients entering content 419 into fields 171 or other preconfigured storage elements via user inputs 208 of their respective devices 200 directly or indirectly into one or more enterprise resource planning servers 300 A, e.g.
- Operation 1170 depicts detecting an indication of too many instances of user input via a particular client device superseding a first predicted value for a particular field (a detection module 1035 detecting an indication of too many instances of user input via a particular client device superseding a first predicted value for a particular field, e.g.).
- detection module 1035 maintains a count 801 of how many times the first predicted value for the particular field is superseded as well as a threshold 802 signifying how many instances are “too many”; in which threshold 802 is expressed as a voltage configuration 1055 on an electrical node set 1045 of the detection module 1035 ; in which detecting “not too many” instances results in looping back to operation 1160 as shown; and in which detecting “too many” instances results in proceeding forward to operation 1180 as shown.
- Operation 1180 depicts transmitting a message via the particular client device that presents an option to deactivate at least one of the one or more predictive rules selectively for the particular field as an automatic and conditional response to the excessive number (a communication module 1036 transmitting a message 840 via the particular client device 200 that presents the user with a user-actionable control to deactivate at least one of the data handling rule 875 selectively for the particular field as an automatic and conditional response to detecting the indication of “too many instances” at operation 1170 , e.g.).
- the message 840 may propose a conditional deactivation of an autocompletion protocol 861 or autocorrection protocol 862 (or both).
- methods of this type may be performed by (1) by a logging module 1034 recording a first instance of user input from the particular client device 200 to the one or more ERP servers 300 B superseding the first predicted value for the particular field using the first data handling protocol 860 ; (2) by the logging module 1034 later recording one or more additional instances of user input from the particular client device 200 superseding the first predicted value; (3) by a detection module 1035 detecting one or more opt-in criteria 921 or opt-out criteria 922 signaling a predictive rule repeatedly being unsuccessful; and (4) by communication module 1036 automatically and conditionally responding by initiating a message 840 that presents a user-invokable option to deactivate the predictive rule selectively.
- such a message 840 may signal a suggestion to resequence a sequenced query set 850 .
- This can streamline data entry in response to rule generation module 1031 discovering that one or more later-encountered fields 171 F, 171 G are more effectively predictive of an earlier-encountered field 171 E than content 419 presently used as a predictive determinant, for example.
- a rate 803 of such instances may likewise constitute an appropriate and readily detected “indication of too many” instances of user input via a particular client device superseding a first predicted value for a particular field (too often superseding a predicted “AMOUNT” of zero in field 171 E with a nonzero value entered manually, e.g.).
- FIG. 12 depicts a particular scenario and progressive data flow 1200 in which one or more client devices 200 and servers 300 (operably coupled via remote linkages or via the Internet as shown in FIG. 1 , e.g.) interact.
- servers 300 include one or more enterprise resource planning (ERP) servers 300 B and one or more User Interface (UI) governance servers 300 C, either of which may comprise more than one server or function as described herein.
- ERP enterprise resource planning
- UI User Interface
- training data 1205 is received at the one or more UI governance servers 300 C (from the one or more ERP servers 300 B, e.g.) signaling comparable information from client devices like that of client device 200 A, if available.
- initial protocols 1214 A are downloaded as shown (by an instance of protocol configuration module 1033 in a UI governance server 300 C, e.g.).
- data entry 1229 A from client device 200 A proceeds and is monitored at the one or more UI governance servers 300 C.
- rule generation 1240 may then proceed. Such rule generation 1240 may result in a new data handling rule 875 suitable for use as an autocompletion rule (a machine-generated instance of an autocompletion response 872 associated with an event 871 apparently suitable in an autocompletion protocol 861 , e.g.).
- a new data handling rule 875 may be suitable for use as an autocorrection rule (a machine-generated instance of an autocorrection response 872 associated with an event 871 apparently suitable in an autocorrection protocol 862 , e g)
- a new data handling rule 875 may be suitable for use as data validation rule (a machine-generated instance of data validation response 872 associated with an event 871 apparently suitable in a data validation protocol 862 , e.g.).
- a message 840 describing what the new rule would do is automatically generated.
- the message 840 may include a rule description 825 illustrating how a basic protocol 821 currently in effect may differ from an enhanced protocol 822 that implements the new data handling rule 875 .
- the message 840 may include user-actionable controls 835 such as an “accept” button 831 that allows the rule change at the client device 200 A to proceed.
- the rule description 1241 A embodied in such a message 840 is transmitted to client device 200 A and retained for possible future acceptance (in an email message list or similar message inventory, e.g.).
- initial protocols 1214 B are again downloaded as shown.
- data entry 1229 from client device 200 B may then proceed and be monitored at the one or more UI governance servers 300 C.
- a rule description 1241 B (substantially identical to rule description 1241 A, e.g.) is also sent to client device 200 B.
- a less-established unvetted rule (as a component of data handling protocol 860 B, e.g.) may be adopted quickly and easily by at least some users who like its rule description 1241 B without any significant imposition upon those who do not.
- the one or more UI governance servers 300 C downloads a modified protocol 1215 A that incorporates the data handling rule 875 accepted.
- special purpose circuitry may implement one or more opt-in criteria 921 such that if not enough client devices (below a preset percentage, e.g.) send a rule acceptance 1242 for a given rule description 1241 (defined by a curator, e.g.), an “opt-in” data handling protocol 860 B may become a manual protocol (like protocol 860 A, e.g.).
- a curator may take this as a signal that something is amiss in the rule description 1241 or in the predictive value of the data handling rule 875 to which it pertains. In the former case an enhancement to the rule description 1241 may be made and the data handling protocol 860 may be restored to “opt-in” status.
- special purpose circuitry may likewise implement one or more opt-out criteria 921 such that if enough client devices (above a preset percentage, e.g.) send a rule acceptance 1242 for a given rule description 1241 (defined by a curator, e.g.), an “opt-in” data handling protocol 860 B may achieve “opt-out” status (like protocol 860 C, e.g.).
- a modified protocol 1215 B that incorporates all such “opt-out” data handling protocols 860 is provided automatically in the further-enhanced modified protocol 1215 B.
- a message 840 quite opposite to rule description 1241 B may be sent, optionally including an invitation to remove or otherwise deactivate rule(s) of data handling protocol 860 B.
- such data handling rules 875 may manifest a modified data entry protocol 1215 that includes a resequenced query set (wherein each query thereof is manifested as a field 171 in a form 852 or similar information element in a structured dialog 855 , e.g.) to one or more client devices 200 as an automatic and conditional response partly based on receiving a rule acceptance 1242 (manifested as an acceptance code that identifies the first rule description 1241 , e.g.) selectively corresponding to a first rule description 1241 and partly based on the first rule description 1241 having at least one element not present in the one or more first data entry protocols 1214 B.
- a rule acceptance 1242 manufactured as an acceptance code that identifies the first rule description 1241 , e.g.
- FIG. 13 likewise depicts a particular scenario and progressive data flow 1300 optionally implemented as an interleaved variant of FIG. 12 .
- processing upon that data entry gives rise to additional rule generation 1340 .
- this allows special-purpose circuitry (some variants of detection module 1035 , e.g.) to infer a client classifier 1375 (an industry identifier, e.g.) by which client device 200 B may be likened to a specific subset of client devices 200 (that gave rise to training data 1205 , e.g.).
- a client classifier 1375 may likewise be obtained or confirmed as user input (during a registration 1210 B, e.g.) via client device 200 B.
- a client classifier 1375 may be used as a basis for selecting the data handling protocol 860 (among many each associated with a corresponding client classifier 1375 , e.g.) by which client device 200 B (at the one or more UI governance servers 300 C, e.g.) will initially function during such data entry 1329 B (prior to modified protocol 1215 A or other such refinements described herein, e.g.).
- the discovery or acceptance of an appropriate client classifier 1375 may permit an identification of one or more data handling rules 875 particular to that class of client.
- this may trigger an immediate instance of rule description 1241 C arriving at client device 200 B.
- protocol configuration module 1033 may then implement the newly-attributed data handling rule(s) 875 and provide an appropriate update notification 1386 as a rule change notification message 840 (containing an opt-out-type control 835 for each discrete data handling rule 875 therein, e.g.) which is then preserved (in an email message list, e.g.). This can occur, for example, in a context in which validation of manually entered data would otherwise result in an unacceptable industry-specific development cycle, error rate, and necessity of user guessing.
- FIG. 14 likewise depicts a particular scenario and progressive data flow 1400 optionally implemented as an interleaved variant of FIG. 12 .
- a selective invitation 1441 including a rule description 1241 , e.g.
- this also allows one or more types of relayed invitations 1451 A-B to be sent (by activating an “invite” button 832 or invite-type control 835 in a message 840 thereof, e.g.).
- relayed invitation 1451 A is sent to a recipient that wants to accept an entire data handling protocol 860 (client device 200 C, e.g.)
- this may allow the relayed invitation recipient to accept by transmitting an enhanced registration 1410 and thereby receive an entire cloned protocol 1415 , one that duplicates the data handling protocol 860 (including all forms 852 and structured dialogs 855 in effect at the relaying client device 200 B.
- This can occur, for example, in a context in which he exact protocol that an established user (of client device 200 B, e.g..) has implemented incrementally, such as by a succession of selective instances of invitation acceptances, would otherwise be difficult to reproduce on a newly-configured client device 200 C.
- the invitation acceptance 1452 will trigger that selective implementation 1495 as shown (optionally implemented as a structured dialog requesting an identification of the data handling protocol parts to be implemented.
- the relayed invitation recipient may optionally receive a confirmatory message 840 that invites the recipient to reverse the update. This can occur, for example, in a context in which data governance rules would otherwise be unable to react to changes in business process and data content.
- 9,275,121 Interoperable shared query based on heterogeneous data sources”
- U.S. Pat. No. 9,224,163 Incremental computation of billing percentile values in a cloud based application acceleration as a service environment”
- U.S. Pat. No. 9,203,874 Portal multi-device session context preservation”
- U.S. Pat. No. 9,195,689 Converting structured data into database entries”
- U.S. Pat. No. 9,152,627 Automatic rule generation”
- U.S. Pat. No. 9,058,188 Transformative user interfaces”
- U.S. Pat. No. 8,983,972 Coldlection and reporting of customer survey data”
- transistor-based circuitry configured to monitor data entry 1229 A from a first client device 200 A, at the one or more user interface governance servers 300 C, to one or more enterprise resource planning (ERP) servers 300 B;
- ERP enterprise resource planning
- transistor-based circuitry configured to obtain a first predicted value (content 419 , e.g.) for a particular field 171 using one or more predictive data handling rules 875 of the first data handling protocol 860 ;
- transistor-based circuitry configured to log a first instance of user input from a second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value for the particular field using the first data handling protocol 860 ;
- transistor-based circuitry configured to transmit a message 840 from the one or more user interface (UI) governance servers 300 C via the second client device 200 B that presents an automatically generated user-invokable option to deactivate one or more predictive data handling rules 875 (an “unlearn rule” control selectable by a user of the client device, e.g.) as an automatic and conditional response to one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value, wherein the one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value for the particular field using the first data handling protocol signals an exception count 801 exceeding an exception threshold 802 (explicitly or otherwise determined as a feature of the first data handling protocol 860 , e.g.), and wherein the first predicted value is a result of the one or more predictive data handling rules 875 of the first data handling protocol 860 .
- UI user interface
- transistor-based circuitry configured to selectively transmit a validation-rule-compliant subset of the many records 122 (those which satisfy one or more validation protocols 863 in effect, e.g.) in a data table 110 to a data repository of an ERP application, wherein the data table resides in a browser and wherein the validation-rule-compliant subset of the many records 122 is established by an application of one or more validation protocols 863 of a data handling protocol 860 by which some fields 171 of the subset were populated.
- a method of operating one or more user interface (UI) governance servers 300 C comprising:
- transistor-based circuitry configured to monitor data entry 1229 A from a first client device 200 A, at the one or more user interface (UI) governance servers 300 C, to one or more ERP servers 300 B;
- UI user interface
- transistor-based circuitry configured to obtain a first predicted value (content 419 , e.g.) for a particular field 171 using one or more predictive data handling rules 875 of the first data handling protocol 860 ;
- transistor-based circuitry configured to log a first instance of user input from a second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value for the particular field using the first data handling protocol 860 ;
- invoking transistor-based circuitry configured to transmit a message 840 from the one or more user interface (UI) governance servers 300 C via the second client device 200 B that presents an automatically generated user-invokable option to deactivate one or more predictive data handling rules 875 (an “unlearn rule” control selectable by a user of the client device, e.g.) as an automatic and conditional response to one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value, wherein the one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value for the particular field using the first data handling protocol signals an exception count 801 exceeding an exception threshold 802 (explicitly or otherwise determined as a feature of the first data handling protocol 860 , e.g.), and wherein the first predicted value is a result of the one or more predictive data handling rules 875 of the first data handling protocol 860 .
- UI user interface
- a modified data entry protocol 1215 that includes a resequenced query set (wherein each query thereof is manifested as a field 171 in a form 852 or similar information element in a structured dialog 855 , e.g.) to the first client device 200 A as an automatic and conditional response partly based on receiving the rule acceptance 1242 (manifested as an acceptance code that identifies the first rule description 1241 , e.g.) selectively corresponding to a first rule description 1241 from the second client device 200 B and partly based on the first rule description 1241 having at least one element not present in the one or more first data entry protocols 1214 B.
- a first rule description 1241 (an improved data entry sequenced query set 850 or autocompletion protocol 861 , e.g.) as a component of the message 840 from the one or more user interface (UI) governance servers 300 C as the automatic and conditional response to the one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value
- the first rule description signifies a proposed change to one or more data entry protocols 1214
- the message 840 contains the automatically generated user-invokable option (implemented as a hyperlink or similar user-invokable control, e.g.) to deactivate the one or more predictive data handling rules 875
- the first data handling protocol 860 includes the one or more data entry protocols 1214 .
- the message 840 transmitting (a substantially similar version of) the message 840 to the additional client device 200 (from the one or more UI governance servers 300 C, e.g.) as an automatic and conditional response to the registration 1210 from the additional client device 200 , wherein the message 840 presents via the additional client device the automatically generated user-invokable option to deactivate the one or more predictive data handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200 to the one or more ERP servers 300 B superseding the first predicted value after the registration 1210 from the additional client device 200 is received and wherein the message 840 includes a first rule description 1241 (generated by cloud-based neural network nodes 340 or other machine learning circuitry, e.g.) that prospectively depicts an affect of deactivating the one or more predictive data handling rules 875 ; and
- the additional client device 200 transmitting the one or more first data entry protocols 1214 to the additional client device 200 (directly or via the one or more ERP servers 300 B, e.g.) as an automatic and conditional response partly based on the registration 1210 and partly based on the one or more UI governance servers 300 C having received a rule acceptance 1242 from the additional client device 200 corresponding to the first rule description 1241 .
- UI governance servers 300 C selectively in association with a data entry mode identifier (a user identifier or industry sector identifier, e.g.); and
- an autocompletion rule (a machine-generated instance of an event 871 automatically correlated with an autocompletion response 872 , e.g.) of the autocompletion protocol 861 or an autocorrection rule (a machine-generated instance of an event 871 automatically correlated with an autocorrection response 872 , e.g.) of the autocorrection protocol 862 by implementing machine learning at the one or more user interface (UI) governance servers 300 C partly based on the training data 1205 corresponding to the data entry mode identifier and partly based on data entry 1229 A from the first client device 200 A to the one or more ERP servers 300 B.
- UI user interface
- one or more data entry protocols 1214 including the first data handling protocol 860 , to the first client device 200 A (directly or via the one or more ERP servers 300 B) as an automatic and conditional response to the registration 1210 A from the first client device 200 A at the one or more UI governance servers 300 C.
- the first data handling protocol 860 transmitting the first data handling protocol 860 to the second client device 200 (from the one or more UI governance servers 300 C, e.g.) that depends upon the client classifier 1375 , wherein data entry 1229 from the second client device 200 to one or more ERP servers 300 B is thereby initially performed (prior to refinements described herein, e.g.) using the initial data handling protocol 860 .
- the first data handling protocol is an autocompletion protocol 861 by virtue of including at least one autocompletion rule (as an instance of data handling rule 875 , e.g.).
- the first data handling protocol is an autocorrection protocol 862 by virtue of including at least one autocorrection rule (as an instance of data handling rule 875 , e.g.).
- the first data handling protocol is a data validation protocol 863 by virtue of including at least one data validation rule (as an instance of data handling rule 875 , e.g.).
- a UI governance server 300 C may in effect implement an exception threshold 802 that is incremented each time a time interval 804 of 13 weeks passes without a qualifying exception.
- a UI governance server 300 C may in effect implement an exception threshold 802 for the month that is decremented each time an exception is logged from some other user.
- modifying the first data handling protocol by deactivating at least one rule (selected by a user of the second client device 200 B, e.g.) of the one or more predictive data handling rules 875 as a conditional response to a user invoking the option to deactivate (unlearn, e.g.) the at least one rule.
- an email message (as message 840 , e.g.) from the one or more user interface (UI) governance servers 300 C via the second client device 200 B that presents the automatically generated user-invokable option to deactivate the one or more predictive data handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200 B to the one or more ERP servers 300 B superseding the first predicted value.
- email message as message 840 , e.g.
- UI user interface
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Computational Linguistics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- This disclosure relates to streamlining deployment of data handling rules that may not have been fully vetted.
-
FIG. 1 illustrates an exemplary network topology of an information management system in accordance with various embodiments. -
FIG. 2 illustrates a client device in which one or more technologies may be implemented. -
FIG. 3 illustrates a server in which one or more technologies may be implemented. -
FIG. 4 illustrates depicts a display screen image of a form such as may be shown on a display of a client device. -
FIG. 5 illustrates the form ofFIG. 4 in a more advanced state. -
FIG. 6 illustrates the form ofFIG. 5 in a more advanced state. -
FIG. 7 illustrates the form ofFIG. 6 in another state. -
FIG. 8 illustrates data storage media in which various data entities may reside. -
FIG. 9 depicts a schema by which unvetted predictive rules may be differentiated from highly established predictive rules and from tentative predictive rules undergoing evaluation. -
FIG. 10 illustrates special-purpose transistor-based circuitry in which some or all of the functional modules described below may be implemented. -
FIG. 11 illustrates a flow of a device-executable routine in accordance with some embodiments. -
FIG. 12 illustrates a particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments. -
FIG. 13 illustrates another particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments. -
FIG. 14 illustrates another particular scenario and progressive data flow in which one or more client devices and servers interact in accordance with some embodiments. - The detailed description that follows is represented largely in terms of processes and symbolic representations of operations by conventional computer components, including a processor, memory storage devices for the processor, connected display devices and input devices. Furthermore, some of these processes and operations may utilize conventional computer components in a heterogeneous distributed computing environment, including remote file servers, computer servers and memory storage devices.
- The phrases “in one embodiment,” “in various embodiments,” “in some embodiments,” and the like are used repeatedly. Such phrases do not necessarily refer to the same embodiment. The terms “comprising,” “having,” and “including” are synonymous, unless the context dictates otherwise. Such terms do not generally signify a closed list.
- “Accepted,” “additional,” “automatic,” “broadcast,” “by,” “conditional,” “configured,” “deactivated,” “exceptional,” “first,” “from,” “generated,” “invoked,” “joint,” “least,” “logged,” “modified,” “more,” “numerous,” “of,” “predicted,” “predictive,” “presented,” “proposed,” “remote,” “residing,” “resequenced,” “second,” “selectively,” “sequential,” “simultaneous,” “single,” “superseded,” “to,” “transmitted,” “wherein,” or other such descriptors herein are used in their normal yes-or-no sense, not merely as terms of degree, unless context dictates otherwise. In light of the present disclosure those skilled in the art will understand from context what is meant by “remote” and by other such positional descriptors used herein. Terms like “processor,” “center,” “unit,” “computer,” or other such descriptors herein are used in their normal sense, in reference to an inanimate structure. Such terms do not include any people, irrespective of their location or employment or other association with the thing described, unless context dictates otherwise. “For” is not used to articulate a mere intended purpose in phrases like “circuitry for” or “instruction for,” moreover, but is used normally, in descriptively identifying special purpose software or structures. As used herein, the term “contemporaneous” refers to circumstances or events that are concurrent or at least roughly contemporaneous (on the same day, e.g.).
- Reference is now made in detail to the description of the embodiments as illustrated in the drawings. While embodiments are described in connection with the drawings and related descriptions, there is no intent to limit the scope to the embodiments disclosed herein. On the contrary, the intent is to cover all alternatives, modifications and equivalents. In alternate embodiments, additional devices, or combinations of illustrated devices, may be added to, or combined, without limiting the scope to the embodiments disclosed herein.
-
FIG. 1 illustrates an exemplary network topology of aninformation management system 100 in accordance with various embodiments as further described below. A central information management server 300 (seeFIG. 3 ) is in data communication with a plurality ofclient devices 200A-C (seeFIG. 2 ) via one ormore networks 168. In various embodiments,network 168 may include the Internet, one or more local area networks (“LANs”), one or more wide area networks (“WANs”), cellular data networks, and/or other data networks.Network 168 may, at various points, be a wired and/or wireless network. Remoteinformation management server 300 may be in data communication with one or more informationmanagement data stores 163. - In various embodiments, any of
client devices 200A-C may be networked computing devices having form factors including general purpose computers (including “desktop,” “laptop,” “notebook,” “tablet” computers, or the like); mobile phones; watches, glasses, or other wearable computing devices. In the example shown inFIG. 1 ,client device 200A is depicted as a laptop/notebook computer, client device 200B is depicted as a handheld device, andclient device 200C is depicted as a computer workstation. In various embodiments there may be fewer or many more respondent devices than are shown inFIG. 1 . - As is described in more detail below, in various embodiments, remote
information management server 300 may be a networked computing device generally capable of accepting requests overnetwork 168 e.g. from any one ofrespondent devices 200A-C and/or other networked computing devices (not shown), and providing responses accordingly. The functional components of an exemplaryinformation management server 300 that remotely supports advanced interactions withvarious client devices 200A-C are described below in reference toFIG. 3 . - As shown,
server 300A maintains (inmemory 304, e.g.) one or more centrally maintained data tables 110 that may contain at least onerecord 121 co-owned among human entities depicted as users associated withrespective devices 200A-C, at least some of whom own respectivededicated zones 175A-C of the record. If a particular human user “A” is directly editing afield 171A within herzone 175A ofrecord 121 via a browser of herdevice 200A, for example, another human user “B” may simultaneously edit one ormore fields 171B within hiszone 175B ofrecord 121 via a browser of his device 200B. - As shown, each
record 121 of table 110 includes one or moreinter-zone partitions such partition 193A, for example, signifies that an owner of azone 175A (user “A” or her department, e.g.) on one side of the partition is able to see and modify her zone but not that of thezone 175B on the other side. Anothersuch partition 193B, for example, signifies that an owner of azone 175B (user “B” or his department, e.g.) on one side of the partition is able to see and modify his zone but is only able to see (and not modify) anyfield 171C of thezone 175C on the other side of that partition. In respective variants, either such type ofpartition - As shown, the
record 121 being edited (andother records 122 of the table) has a plurality of sharedfields 165A-B, including a “key”field 165A that uniquely identifies the record and one or moreother fields 165B that provide reference information as exemplified below. The fields inzone 170 are “shared” insofar that all are viewable to co-owners of that record. In some variants, as described below, a privileged user (usingdevice 200C, e.g.) may have authority to review the content of the entire record 121 (in response to data validation errors shown, e.g.). Alternatively or additionally, such a privileged user may also have authority to correct and/or finalize the content of the entire record 121 (respectively in response to data validation errors shown or lack thereof, e.g.). -
FIG. 2 illustrates aclient device 200 in which one or more technologies may be implemented. In respective embodiments,client device 200 may be a general-purpose computer or may include special-purpose components not shown. As shown inFIG. 2 ,exemplary client device 200 includes one ormore processing units 202 in data communication with one ormore memories 204 via one ormore buses 216. Eachsuch memory 204 generally comprises some or all of random access memory (RAM), read-only memory (ROM), and/or a permanent mass storage device, such as a disk drive, flash memory, or the like.Client device 200 may also include one or more instances ofnetwork interfaces 206, ofuser inputs 208, ofdisplays 212, or of speakers (not shown). - As shown,
memory 204 ofexemplary client device 200 may store anoperating system 210, as well as program code for a number of software applications, such as a clientweb browser application 214. Clientweb browser application 214 is a software application by which, under server control, client devices can present data to users and transmit data entered by them. These and other software components, as well as various data files (not shown) may be loaded intomemory 204 via network interface (optional) 206 (or via a selectively removable computerreadable storage medium 218, such as a memory card or the like). - In operation,
operating system 210 manages the hardware and software resources of theclient device 200 and provides common services for various software applications, such as clientweb browser application 214. For hardware functions such as network communications vianetwork interface 206, obtaining data viauser input 208, rendering data viadisplay 212 and/or speaker, and allocation ofmemory 204 to various resources,operating system 210 may act as an intermediary between software executing onclient device 200 and the client device's hardware. - For example,
operating system 210 may cause a representation of locally available software applications, such as clientweb browser application 214 orspreadsheet application 224, to be rendered locally (viadisplay 212, e.g.). Ifoperating system 210 obtains, e.g. viauser input 208, a selection of clientweb browser application 214,operating system 210 may instantiate a client web browser application process (not shown), i.e.cause processing unit 202 to begin executing the executable instructions of clientweb browser application 214 and allocate a portion ofmemory 204 for its use. In some variants, one or more local text editors (in the case of CSV-formatted spreadsheet files, e.g.) or spreadsheet applications (Microsoft Excel, e.g.) may be configured to allow offline editing of a downloaded spreadsheet (as described below, e.g.). Alternatively or additionally, such editing may occur “offline” in the sense that a client device is temporarily disconnected from one ormore servers 300. - Although an
exemplary client device 200 has been described, aclient device 200 may be any of a great number of computing devices capable executing program code, such as the program code corresponding to clientweb browser application 214 or spreadsheet application. Alternatively or additionally, somesuch client devices 200 may include special-purpose circuitry 222 as described herein (implementing alocal interface model 244 as described below, e.g.). -
FIG. 3 illustrates aserver 300 in which one or more technologies may be implemented. As shown inFIG. 3 ,exemplary server 300 includes one ormore processing units 302 in data communication with one ormore memories 304 via one ormore buses 316. Eachsuch memory 304 generally comprises some or all of random access memory (RAM), read-only memory (ROM), and/or a permanent mass storage device, such as a disk drive, flash memory, or the like.Server 300 may also include one or more instances ofnetwork interfaces 306, ofuser inputs 308, ofdisplays 312, or of speakers (not shown). - As shown,
memory 304 ofexemplary server 300 may store anoperating system 310, as well as program code for a number of software applications, such as a hostingservice 314.Hosting service 314 is a software application by which, under server control,client devices 200 can present data to users and transmit data from users. Processflow management service 320 is a software application by which one or more processes, such as those described with reference toFIGS. 11-14 , are coordinated. These and other software components, as well as various data files (not shown) may be loaded intomemory 304 via network interface 306 (or via a selectively removable computerreadable storage medium 318, such as a memory card or the like). - In operation,
operating system 310 manages the hardware and software resources of theserver 300 and provides common services for various software applications, such as hostingservice 314. For hardware functions such as network communications vianetwork interface 306, obtaining data viauser input 308, rendering data viadisplay 312 and/orspeaker 316, allocation ofmemory 304 to various resources, and invoking one or modules of special-purpose circuitry 400,operating system 310 may act as an intermediary between software executing onserver 300 and the server's hardware. In some variants, moreover, user account records are maintained inserver 300, designating which user accounts are associated with which zones 175 and what privileges each such user account has with regard to other zones, as described herein. Alternatively, in some variants,user account records 324 may reside inmemory 304 or in special-purpose circuitry 324. - For example,
operating system 310 may cause a representation of locally available software applications, such as hostingservice 314 or spreadsheet application 322, to be rendered locally (viadisplay 312, e.g.). Ifoperating system 310 obtains, e.g. viauser input 308, a selection of hostingservice 314,operating system 310 may instantiate a hostingservice 314 process (not shown), i.e.cause processing unit 302 to begin executing the executable instructions of hostingservice 314 and allocate a portion ofmemory 304 for its use. In some variants, one or more local text editors (in the case of comma-separated-value spreadsheet files, e.g.) or spreadsheet applications (Microsoft® Excel, e.g.) may be configured to allow offline editing of a downloaded spreadsheet (as described below, e.g.). Alternatively or additionally, such editing may occur “offline” in the sense that the server is temporarily disconnected fromserver 300. - Although an
exemplary server 300 has been described, aserver 300 may be any of a great number of computing devices capable executing program code, such as the program code corresponding to a hostingservice 314 or Enterprise Resource Planning (ERP) application. Alternatively or additionally, the structures described with reference toFIG. 3 may likewise be implemented by a special-purpose peer computer in a peer-to-peer network or may include special-purpose circuitry 322 as described herein (implementing aneural network node 340 as described below, e.g.). -
FIG. 4 depicts adisplay screen image 410 of (a portion of) a form such as may be shown on adisplay 212 of a client device. A sequence oflabels 417A-D respectively identify content 419 (values, e.g.) that have been entered by a user into the form. A portion of the form (field 171D, e.g.) is in the progress of editing, as shown by a popup menu there offering a user a plurality of acceptable options (comprising “INDIRECT” and “DIRECT”). -
FIG. 5 depicts adisplay screen image 510 of the form in a more advanced state. “DIRECT” has been selected for the field 171D labeled as “TYPE.” The other displayedfields 171E-G are still empty. -
FIG. 6 depicts adisplay screen image 610 of the form in a more advanced state.Field 171E is no longer empty but has been given a value of zero. This need not reflect a value directly entered by the user entering the data, though. In a context in which “DIRECT” has been identified as predictive of a zero value atfield 171E, for example, that value could have been assigned as an autocompletion response (passing a cursor directly down from field 171D to field 171F in the same stroke, e.g.). Likewise it could have been assigned as an autocorrection response (as a predictive adjustment to a user having tried to enter an implausible value of “_0” intofield 171F, e.g.). -
FIG. 7 depicts adisplay screen image 710 of the form in another state.Field 171F is no longer empty but has been given a value of “MIL.” This need not reflect a value directly entered by the user entering the data as illustrated above, though. Moreover machine learning technology may reveal protocols as a result of these values and others entered later that some user actions are indicative of a data validation opportunity. Users who select and stick by units of “MIL” might be discovered rarely to enter an “AMOUNT” of zero, for example. Or in some variants such a pattern may emerge as valid in one data entry context (in an industry identified as “DELIVERED GOODS” for example) and not in others. -
FIG. 8 depicts non-transitory data storage media 800 (inmemory 304, e.g.) in which one or more (digitally manifested instances of) counts 801,thresholds 802,rates 803,intervals 804, ormessages 840 may reside. In some variants such counts may comprise an exception count, for example, pertaining to an individual, a cohort, or an entire community of clients and to a particular time interval or classification. In some variantssuch messages 840 may comprise one or more (digitally manifested instances of) rule descriptions 825 (differentiating abasic protocol 821 from anenhanced protocol 822, e.g.) or user-invokable controls 835 (an “accept”button 831, an “invite” button, a hyperlink, or a menu option presented inmessage 840, e.g.) as described below. Moreover eachsuch message 840 may likewise correspond to one or more features (fields 171, e.g.) of a sequenced query set 850 (manifested in a table 851 orother form 852 or astructured dialog 855 by which data may be elicited from a user, e.g.) that makes up adata governance model 880 by which data entry is performed (at aclient device 200 assigned to a specific user, e.g.). In general eachdata governance model 880 will include one or moredata handling protocols 860 each having multipledata handling rules 875, a modification of which can make data entry by users much more efficient and accurate. A “data handling protocol,” as used herein, refers to one or more instances ofautocompletion protocols 861,autocorrection protocols 862,validation protocols 863, or protocol combinations that include at least one of these and that implement at least onedata handling rule 875. A “data handling rule,” as used herein, refers to one ormore events 871 associated with one or moreprogrammatic responses 872 thereto in regard to data entry by or otherwise attributed to one or more human users. In some variants, themedia 800 pertaining to adata governance model 880 in effect for a given client, cohort, or population may be distributed (so that some are part of alocal interface model 244, e.g.). -
FIG. 9 depicts aschema 900 by which unvetted predictive rules (implemented indata handling protocol 860A, e.g.) may be differentiated from highly established predictive rules (implemented in data handling protocol 860D, e.g.) and from tentative predictive rules (implemented indata handling protocols 860B-C, e.g.) undergoing evaluation (in coordination with a cohort of users, e.g.). A curator or similar expert may selectively designate adata handling protocol 860B as being available for some users to “opt into” (by distributingmessages 840 of invitation as described below, e.g.). So long as one or more opt-inthresholds 802 or other opt-incriteria 921 are met, (client devices 200 of) additional users may join the cohort that performs the evaluation. In some variants, adata handling protocol 860C may become more established (so that some new users will join by default and have the option of opting out, e.g.). One or more opt-outthresholds 802 or other opt-outcriteria 922 may be defined, moreover, so that a popular opt-indata handling protocol 860B may automatically achieve “opt-out” status or so that an unpopular opt-outdata handling protocol 860C may automatically be demoted to “opt-in” status as further described below. -
FIG. 10 illustrates special-purpose transistor-basedcircuitry 1000—optionally implemented as an Application-Specific Integrated Circuit (ASIC) or in a UI governance server, e.g.—in which some or all of the functional modules described below may be implemented. Transistor-basedcircuitry 1000 is an event-sequencing structure generally as described in U.S. Pat. Pub. No. 20150094046 but configured as described herein. Transistor-basedcircuitry 1000 includes one or more instances ofrule generation modules 1031, for example, each including an electrical node set 1041 upon which informational data is represented digitally as acorresponding voltage configuration 1051. - In the interest of concision and according to standard usage in information management technologies, the functional attributes of modules described herein are set forth in natural language expressions. It will be understood by those skilled in the art that such expressions (functions or acts recited in English, e.g.) adequately describe structures identified below so that no undue experimentation will be required for their implementation. For example, any records or other informational data identified herein may easily be represented digitally as a voltage configuration on one or more electrical nodes (conductive pads of an integrated circuit, e.g.) of an event-sequencing structure without any undue experimentation. Each electrical node is highly conductive, having a corresponding nominal voltage level that is spatially uniform generally throughout the node (within a device or local system as described herein, e.g.) at relevant times (at clock transitions, e.g.). Such nodes (lines on an integrated circuit or circuit board, e.g.) may each comprise a forked or other signal path adjacent one or more transistors. Moreover many Boolean values (yes-or-no decisions, e.g.) may each be manifested as either a “low” or “high” voltage, for example, according to a complementary metal-oxide-semiconductor (CMOS), emitter-coupled logic (ECL), or other common semiconductor configuration protocol. In some contexts, for example, one skilled in the art will recognize an “electrical node set” as used herein in reference to one or more electrically conductive nodes upon which a voltage configuration (of one voltage at each node, for example, with each voltage characterized as either high or low) manifests a yes/no decision or other digital data.
- Transistor-based
circuitry 1000 likewise includes one or more instances ofclient registration modules 1032 each including an electrical node set 1042 upon which informational data is represented digitally as acorresponding voltage configuration 1052. Transistor-basedcircuitry 1000 likewise includes one or more instances ofprotocol configuration modules 1033 each including an electrical node set 1043 upon which informational data is represented digitally as acorresponding voltage configuration 1053. Transistor-basedcircuitry 1000 likewise includes one or more instances oflogging modules 1034 each including an electrical node set 1044 upon which informational data is represented digitally as acorresponding voltage configuration 1054. Transistor-basedcircuitry 1000 likewise includes one or more instances ofdetection modules 1035 each including an electrical node set 1045 upon which informational data is represented digitally as acorresponding voltage configuration 1055. Transistor-basedcircuitry 1000 likewise includes one or more instances ofcommunication modules 1036 each including an electrical node set 1046 upon which informational data is represented digitally as acorresponding voltage configuration 1056. In some variants, as described below in the clauses and claims, such a module implements such functionality jointly (in conjunction with other modules orprocessing units 302 described herein, e.g.). Alternatively or additionally, in some variants such modules (or components thereof) may be distributed (so that some are implemented in special-purpose circuitry 324 ofrespective servers 300, e.g.). -
FIG. 1100 illustrates an operational flow 1100 (implemented in software as a routine executed or coordinated by one or more instances ofprocessing unit 302, e.g.) suitable for use with at least one embodiment, such as may be performed (in some variants) on aserver 300 using special-purpose circuitry 324 via a processflow management service 320. As will be recognized by those having ordinary skill in the art, not all events of information management are illustrated inFIG. 11 . Rather, for clarity, only those steps reasonably relevant to describing the tabular data modification aspects offlow 1100 are shown and described. Those having ordinary skill in the art will also recognize the present embodiment is merely one exemplary embodiment and that variations on the present embodiment may be made without departing from the scope of the broader inventive concept set forth in the clauses and claims below. -
Operation 1120 depicts auto-generating one or more predictive rules of a data handling protocol (arule generation module 1031 generating, in an automated process, an expression of aprogrammatic response 872 in association with one or morespecific events 871, e.g.). This can occur, for example, in a context in which the one or morespecific events 871 include a user selecting “DIRECT” as a value for field 171D; in which theprogrammatic response 872 comprises aprocessing unit field 171E; in which thatdata handling rule 875 is a component of anautocompletion protocol 861 or an autocorrection protocol 862 (or both); and in which thedata handling rule 875 is expressed as avoltage configuration 1051 on an electrical node set 1041 of therule generation module 1031. In some variants, for example, a collection ofneural network nodes 340 may performoperation 1120 by generating dozens or hundreds ofdata handling rules 875 using live data entry (seeFIG. 12-14 , e.g.) by numerous clients as training data. In some variants a human curator may select a few suchdata handling rules 875 each for use with crowd workers or other error-tolerant client cohorts as a low risk mode of vetting auto-generated rules (to determine which of the rules are effective enough to predict what data a user will enter by learning data indicative of a user manually overriding theresponse 872, e.g.). -
Operation 1130 depicts receiving registrations from several client devices (aclient registration module 1032 receiving user information or other credentials fromseveral client devices 200A-C so that each can be distinguished in future interactions, e.g.). This can occur, for example, in a context in which one or more such client devices will have privileges (access to particular fields 171 or processes, e.g.) not universally shared; in which each such device can be associated with a corresponding set of operating parameters (specifying features of adata handling protocol 860 or user preferences, e.g.) that can be changed and remembered across login sessions; in whichmessages 840 can be remembered and retrieved (like email messages, e.g.) even if they have not been read or used; and in which a device or client identifier is expressed as avoltage configuration 1052 on an electrical node set 1042 of theclient registration module 1032. -
Operation 1145 depicts transmitting the data handling protocol to the client devices (aprotocol configuration module 1033 transmitting one or more sequenced query sets 850,forms 852, or other features of a defaultdata handling protocol 860 are in effect to whicheverclient devices 200 signed up duringoperation 1130, e.g.). This can occur, for example, in a context in whichprotocol configuration module 1033 maintains one defaultdata handling protocol 860 for each client classifier (industry identifier, e.g.) and in whichclient registration module 1032 is configured to request a client classifier during the client registration so as to facilitate an initial data handling protocol that is effectively adapted to the intended purpose of the client device registration. -
Operation 1160 depicts monitoring data entry from the client devices to one or more enterprise resource planning servers (alogging module 1034 monitoring one or moreclients entering content 419 into fields 171 or other preconfigured storage elements viauser inputs 208 of theirrespective devices 200 directly or indirectly into one or more enterpriseresource planning servers 300A, e.g.). This can occur, for example, in a context in whichlogging module 1034 tracks whichdata handling protocol 860 is in effect during such data entry as well as which fields 171 had predicted values (provided to users according to a version ofautocompletion protocol 861 or anautocorrection protocol 862 then in effect at theuser input 208, e.g.) that were apparently overwritten by the device users (by virtue of a final data entry result differing from the predictedresponse 872 of that version, e.g.). -
Operation 1170 depicts detecting an indication of too many instances of user input via a particular client device superseding a first predicted value for a particular field (adetection module 1035 detecting an indication of too many instances of user input via a particular client device superseding a first predicted value for a particular field, e.g.). This can occur, for example, in a context in whichdetection module 1035 maintains acount 801 of how many times the first predicted value for the particular field is superseded as well as athreshold 802 signifying how many instances are “too many”; in whichthreshold 802 is expressed as avoltage configuration 1055 on an electrical node set 1045 of thedetection module 1035; in which detecting “not too many” instances results in looping back tooperation 1160 as shown; and in which detecting “too many” instances results in proceeding forward tooperation 1180 as shown. -
Operation 1180 depicts transmitting a message via the particular client device that presents an option to deactivate at least one of the one or more predictive rules selectively for the particular field as an automatic and conditional response to the excessive number (acommunication module 1036 transmitting amessage 840 via theparticular client device 200 that presents the user with a user-actionable control to deactivate at least one of thedata handling rule 875 selectively for the particular field as an automatic and conditional response to detecting the indication of “too many instances” atoperation 1170, e.g.). This can occur, for example, in a context in which a human curator receives a copy of each of the outgoing messages 840 (as a “cc” by email to ensure message clarity and maintain ongoing refinements, e.g.); in which the “user-actionable control” is a hyperlink, button, or similar single-step response by which the user of theparticular client device 200 can authorize the modification described by themessage 840; and in whichcommunication module 1036 maintains a destination identifier (as an email address of a user or Internet Protocol address of the particular client device, e.g.) as avoltage configuration 1056 on an electrical node set 1046 of thecommunication module 1036. In some contexts, for example, themessage 840 may propose a conditional deactivation of anautocompletion protocol 861 or autocorrection protocol 862 (or both). - In some variants, for example, methods of this type may be performed by (1) by a
logging module 1034 recording a first instance of user input from theparticular client device 200 to the one ormore ERP servers 300B superseding the first predicted value for the particular field using the firstdata handling protocol 860; (2) by thelogging module 1034 later recording one or more additional instances of user input from theparticular client device 200 superseding the first predicted value; (3) by adetection module 1035 detecting one or more opt-incriteria 921 or opt-outcriteria 922 signaling a predictive rule repeatedly being unsuccessful; and (4) bycommunication module 1036 automatically and conditionally responding by initiating amessage 840 that presents a user-invokable option to deactivate the predictive rule selectively. This can occur, for example, in a context in which no one having enough skill to modify the rule is available and in which even easy-to-detect criteria (anexception count 801,rate 802, or similar determinant crossing athreshold 802, e.g.) signaling predictive failure would not otherwise be actionable. - In some variants such a
message 840 may signal a suggestion to resequence a sequenced query set 850. This can streamline data entry in response to rulegeneration module 1031 discovering that one or more later-encounteredfields field 171E thancontent 419 presently used as a predictive determinant, for example. Alternatively or additionally, arate 803 of such instances (counting how many happen in a month or how many days happen between successive occurrences, e.g.) crossing athreshold 802 may likewise constitute an appropriate and readily detected “indication of too many” instances of user input via a particular client device superseding a first predicted value for a particular field (too often superseding a predicted “AMOUNT” of zero infield 171E with a nonzero value entered manually, e.g.). -
FIG. 12 depicts a particular scenario andprogressive data flow 1200 in which one ormore client devices 200 and servers 300 (operably coupled via remote linkages or via the Internet as shown inFIG. 1 , e.g.) interact. As shownsuch servers 300 include one or more enterprise resource planning (ERP)servers 300B and one or more User Interface (UI)governance servers 300C, either of which may comprise more than one server or function as described herein. As shown,training data 1205 is received at the one or moreUI governance servers 300C (from the one ormore ERP servers 300B, e.g.) signaling comparable information from client devices like that ofclient device 200A, if available. Uponregistration 1210A ofclient device 200A, (digital expressions of) best availableinitial protocols 1214A are downloaded as shown (by an instance ofprotocol configuration module 1033 in aUI governance server 300C, e.g.). Using suchinitial protocols 1214A,data entry 1229A fromclient device 200A (to the one ormore ERP servers 300B, e.g.) proceeds and is monitored at the one or moreUI governance servers 300C. - Based on such data entry 1229 and
other training data 1205,rule generation 1240 may then proceed.Such rule generation 1240 may result in a newdata handling rule 875 suitable for use as an autocompletion rule (a machine-generated instance of anautocompletion response 872 associated with anevent 871 apparently suitable in anautocompletion protocol 861, e.g.). Likewise such a newdata handling rule 875 may be suitable for use as an autocorrection rule (a machine-generated instance of anautocorrection response 872 associated with anevent 871 apparently suitable in anautocorrection protocol 862, e g) Likewise such a newdata handling rule 875 may be suitable for use as data validation rule (a machine-generated instance ofdata validation response 872 associated with anevent 871 apparently suitable in adata validation protocol 862, e.g.). Before such a newdata handling rule 875 is implemented forclient device 200A, however, amessage 840 describing what the new rule would do is automatically generated. For a rule change that would add complexity, themessage 840 may include arule description 825 illustrating how abasic protocol 821 currently in effect may differ from anenhanced protocol 822 that implements the newdata handling rule 875. Alternatively or additionally, themessage 840 may include user-actionable controls 835 such as an “accept”button 831 that allows the rule change at theclient device 200A to proceed. As shown, therule description 1241A embodied in such amessage 840 is transmitted toclient device 200A and retained for possible future acceptance (in an email message list or similar message inventory, e.g.). - Upon
registration 1210B of client device 200B, best availableinitial protocols 1214B are again downloaded as shown. Using suchinitial protocols 1214B, data entry 1229 from client device 200B (to the one ormore ERP servers 300B, e.g.) may then proceed and be monitored at the one or moreUI governance servers 300C. As an automatic and conditional response tosuch registration 1210B, arule description 1241B (substantially identical to ruledescription 1241A, e.g.) is also sent to client device 200B. In this way a less-established unvetted rule (as a component ofdata handling protocol 860B, e.g.) may be adopted quickly and easily by at least some users who like itsrule description 1241B without any significant imposition upon those who do not. In response to arule acceptance 1242 sent by a client device 200B that has received arule description 1241B (containing a hyperlink or similar accept-type control in themessage 840 containing therule description 1241B, e.g.), the one or moreUI governance servers 300C downloads a modifiedprotocol 1215A that incorporates thedata handling rule 875 accepted. - In some contexts special purpose circuitry (a
protocol configuration module 1033, e.g.) may implement one or more opt-incriteria 921 such that if not enough client devices (below a preset percentage, e.g.) send arule acceptance 1242 for a given rule description 1241 (defined by a curator, e.g.), an “opt-in”data handling protocol 860B may become a manual protocol (likeprotocol 860A, e.g.). In some variants a curator may take this as a signal that something is amiss in the rule description 1241 or in the predictive value of thedata handling rule 875 to which it pertains. In the former case an enhancement to the rule description 1241 may be made and thedata handling protocol 860 may be restored to “opt-in” status. - In some contexts special purpose circuitry (a
protocol configuration module 1033, e.g.) may likewise implement one or more opt-outcriteria 921 such that if enough client devices (above a preset percentage, e.g.) send arule acceptance 1242 for a given rule description 1241 (defined by a curator, e.g.), an “opt-in”data handling protocol 860B may achieve “opt-out” status (likeprotocol 860C, e.g.). - Upon
registration 1210C of anothernew client device 200E, a modifiedprotocol 1215B that incorporates all such “opt-out”data handling protocols 860 is provided automatically in the further-enhanced modifiedprotocol 1215B. To implement an opt-out feature in relation todata handling protocol 860B, for example, amessage 840 quite opposite to ruledescription 1241B may be sent, optionally including an invitation to remove or otherwise deactivate rule(s) ofdata handling protocol 860B. - Alternatively or additionally, in some contexts such
data handling rules 875 may manifest a modified data entry protocol 1215 that includes a resequenced query set (wherein each query thereof is manifested as a field 171 in aform 852 or similar information element in a structureddialog 855, e.g.) to one ormore client devices 200 as an automatic and conditional response partly based on receiving a rule acceptance 1242 (manifested as an acceptance code that identifies the first rule description 1241, e.g.) selectively corresponding to a first rule description 1241 and partly based on the first rule description 1241 having at least one element not present in the one or more firstdata entry protocols 1214B. This can occur, for example, in a context in which the one or moreUI governance servers 300C would otherwise implement an unsuitabledata handling protocol 860A (incorporating implausible predictions or other unwanted features, e.g.) across all newly-registeredclient devices 200. -
FIG. 13 likewise depicts a particular scenario andprogressive data flow 1300 optionally implemented as an interleaved variant ofFIG. 12 . In response todata entry 1329B from client device 200B to the one ormore ERP servers 300B monitored at the one or moreUI governance servers 300C, processing upon that data entry gives rise toadditional rule generation 1340. In some contexts, this allows special-purpose circuitry (some variants ofdetection module 1035, e.g.) to infer a client classifier 1375 (an industry identifier, e.g.) by which client device 200B may be likened to a specific subset of client devices 200 (that gave rise totraining data 1205, e.g.). In some contexts aclient classifier 1375 may likewise be obtained or confirmed as user input (during aregistration 1210B, e.g.) via client device 200B. In some contexts such aclient classifier 1375 may be used as a basis for selecting the data handling protocol 860 (among many each associated with acorresponding client classifier 1375, e.g.) by which client device 200B (at the one or moreUI governance servers 300C, e.g.) will initially function duringsuch data entry 1329B (prior to modifiedprotocol 1215A or other such refinements described herein, e.g.). - In a context in which a data governance model allows industry-specific or other client-class-specific data handling 875 rules, the discovery or acceptance of an
appropriate client classifier 1375 may permit an identification of one or moredata handling rules 875 particular to that class of client. For an opt-indata handling protocol 860B that includes one or more client-class-specific data handling 875 rules, for example, this may trigger an immediate instance ofrule description 1241C arriving at client device 200B. If the user of client device 200B signals acorresponding rule acceptance 1342, (some variants of)protocol configuration module 1033 may then implement the newly-attributed data handling rule(s) 875 and provide anappropriate update notification 1386 as a rule change notification message 840 (containing an opt-out-type control 835 for each discretedata handling rule 875 therein, e.g.) which is then preserved (in an email message list, e.g.). This can occur, for example, in a context in which validation of manually entered data would otherwise result in an unacceptable industry-specific development cycle, error rate, and necessity of user guessing. - If after viewing that
update notification 1386 as a rulechange notification message 840 the user of client device 200B does not like any of the new rules, that user can then find thatmessage 840 and activate theacceptance retraction 1394. This rule change likewise triggers anappropriate update notification 1387 as a rulechange notification message 840 describing howsubsequent data entry 1329D at client device 200B will be conducted. -
FIG. 14 likewise depicts a particular scenario andprogressive data flow 1400 optionally implemented as an interleaved variant ofFIG. 12 . In response to a selective invitation 1441 (including a rule description 1241, e.g.) at client device 200B, in some variants this also allows one or more types of relayedinvitations 1451A-B to be sent (by activating an “invite”button 832 or invite-type control 835 in amessage 840 thereof, e.g.). If such a relayedinvitation 1451A is sent to a recipient that wants to accept an entire data handling protocol 860 (client device 200C, e.g.), this may allow the relayed invitation recipient to accept by transmitting anenhanced registration 1410 and thereby receive an entirecloned protocol 1415, one that duplicates the data handling protocol 860 (including allforms 852 andstructured dialogs 855 in effect at the relaying client device 200B. This can occur, for example, in a context in which he exact protocol that an established user (of client device 200B, e.g..) has implemented incrementally, such as by a succession of selective instances of invitation acceptances, would otherwise be difficult to reproduce on a newly-configuredclient device 200C. - If such a relayed
invitation 1451B is sent to a recipient that wants to accept only some of thedata handling protocol 860 in effect at the relaying client device 200B however, then theinvitation acceptance 1452 will trigger thatselective implementation 1495 as shown (optionally implemented as a structured dialog requesting an identification of the data handling protocol parts to be implemented. In either case, the relayed invitation recipient may optionally receive aconfirmatory message 840 that invites the recipient to reverse the update. This can occur, for example, in a context in which data governance rules would otherwise be unable to react to changes in business process and data content. - In light of teachings herein, numerous existing techniques may be applied for configuring special-purpose circuitry or other structures effective for managing records or for configuring other decisions and devices as described herein without undue experimentation. See, e.g., U.S. Pat. No. 9,734,526 (“System and method for providing a buy option through postings on a social network when user input is classified as having a sale intent”); U.S. Pat. No. 9,373,094 (“Dynamic web services system and method”); U.S. Pat. No. 9,305,066 (“System and method for remote data harmonization”); U.S. Pat. No. 9,300,745 (“Dynamic execution environment in network communications”); U.S. Pat. No. 9,275,121 (“Interoperable shared query based on heterogeneous data sources”); U.S. Pat. No. 9,224,163 (“Incremental computation of billing percentile values in a cloud based application acceleration as a service environment”); U.S. Pat. No. 9,203,874 (“Portal multi-device session context preservation”); U.S. Pat. No. 9,195,689 (“Converting structured data into database entries”); U.S. Pat. No. 9,152,627 (“Automatic rule generation”); U.S. Pat. No. 9,058,188 (“Transformative user interfaces”); U.S. Pat. No. 8,983,972 (“Collection and reporting of customer survey data”); U.S. Pat. No. 8,938,726 (“Integrating native application into web portal”); U.S. Pat. No. 8,924,269 (“Consistent set of interfaces derived from a business object model”); U.S. Pat. No. 8,898,442 (“Scenario-based process modeling for business processes including exception flow to handle an error in a task of the series of tasks”); U.S. Pat. No. 8,719,074 (“Editor and method for editing formulae for calculating the price of a service and a system for automatic costing of a service”); U.S. Pat. No. 8,621,549 (“Enforcing control policies in an information management system”); U.S. Pat. No. 8,413,045 (“Rich browser-based word processor”); U.S. Pat. Pub. No. 20150094046 (“Mobile device sharing facilitation methods and systems operable in network equipment”), and U.S. patent application Ser. No. 15/154,871 (“Facilitating offline or other contemporaneous editing of tabular data”).
- All of the patents and other publications referred to above are incorporated herein by reference generally—including those identified in relation to particular new applications of existing techniques—to the extent not inconsistent herewith. While various system, method, article of manufacture, or other embodiments or aspects have been disclosed above, also, other combinations of embodiments or aspects will be apparent to those skilled in the art in view of the above disclosure. The various embodiments and aspects disclosed above are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated in the final claim set that follows.
- In the numbered clauses below, specific combinations of aspects and embodiments are articulated in a shorthand form such that (1) according to respective embodiments, for each instance in which a “component” or other such identifiers appear to be introduced (with “a” or “an,” e.g.) more than once in a given chain of clauses, such designations may either identify the same entity or distinct entities; and (2) what might be called “dependent” clauses below may or may not incorporate, in respective embodiments, the features of “independent” clauses to which they refer or other features described above.
- 1. A system of operating one or more user interface (UI)
governance servers 300C, the system comprising: - transistor-based circuitry configured to monitor
data entry 1229A from afirst client device 200A, at the one or more userinterface governance servers 300C, to one or more enterprise resource planning (ERP)servers 300B; - transistor-based circuitry configured to obtain a first predicted value (
content 419, e.g.) for a particular field 171 using one or more predictivedata handling rules 875 of the firstdata handling protocol 860; - transistor-based circuitry configured to log a first instance of user input from a second client device 200B to the one or
more ERP servers 300B superseding the first predicted value for the particular field using the firstdata handling protocol 860; and - transistor-based circuitry configured to transmit a
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents an automatically generated user-invokable option to deactivate one or more predictive data handling rules 875 (an “unlearn rule” control selectable by a user of the client device, e.g.) as an automatic and conditional response to one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value, wherein the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value for the particular field using the first data handling protocol signals anexception count 801 exceeding an exception threshold 802 (explicitly or otherwise determined as a feature of the firstdata handling protocol 860, e.g.), and wherein the first predicted value is a result of the one or more predictivedata handling rules 875 of the firstdata handling protocol 860. - 2. The system of System Clause 1, wherein all of the transistor-based circuitry is implemented on a single application-specific integrated circuit (ASIC).
- 3. The system of System Clause 1, wherein the transistor-based circuitry is distributed across two or more mutually remote facilities.
- 4. The system of ANY of the above System Clauses, further comprising:
- transistor-based circuitry configured to selectively transmit a validation-rule-compliant subset of the many records 122 (those which satisfy one or
more validation protocols 863 in effect, e.g.) in a data table 110 to a data repository of an ERP application, wherein the data table resides in a browser and wherein the validation-rule-compliant subset of themany records 122 is established by an application of one ormore validation protocols 863 of adata handling protocol 860 by which some fields 171 of the subset were populated. - 5. A method of operating one or more user interface (UI)
governance servers 300C, the method comprising: - invoking transistor-based circuitry configured to monitor
data entry 1229A from afirst client device 200A, at the one or more user interface (UI)governance servers 300C, to one ormore ERP servers 300B; - invoking transistor-based circuitry configured to obtain a first predicted value (
content 419, e.g.) for a particular field 171 using one or more predictivedata handling rules 875 of the firstdata handling protocol 860; - invoking transistor-based circuitry configured to log a first instance of user input from a second client device 200B to the one or
more ERP servers 300B superseding the first predicted value for the particular field using the firstdata handling protocol 860; and - invoking transistor-based circuitry configured to transmit a
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents an automatically generated user-invokable option to deactivate one or more predictive data handling rules 875 (an “unlearn rule” control selectable by a user of the client device, e.g.) as an automatic and conditional response to one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value, wherein the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value for the particular field using the first data handling protocol signals anexception count 801 exceeding an exception threshold 802 (explicitly or otherwise determined as a feature of the firstdata handling protocol 860, e.g.), and wherein the first predicted value is a result of the one or more predictivedata handling rules 875 of the firstdata handling protocol 860. - 6. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - generating a first rule of the one or more predictive
data handling rules 875 via machine learning; and - transmitting a modified data entry protocol 1215 that includes a resequenced query set (wherein each query thereof is manifested as a field 171 in a
form 852 or similar information element in a structureddialog 855, e.g.) to thefirst client device 200A as an automatic and conditional response partly based on receiving the rule acceptance 1242 (manifested as an acceptance code that identifies the first rule description 1241, e.g.) selectively corresponding to a first rule description 1241 from the second client device 200B and partly based on the first rule description 1241 having at least one element not present in the one or more firstdata entry protocols 1214B. - 7. The method of ANY of the above method clauses, further comprising:
- auto-generating the one or more predictive
data handling rules 875 of a first data handling protocol 860 (via an aggregation ofneural network nodes 340 spanningmultiple servers - receiving registrations 1210 from (at least) first, second, and
third client devices 200A-C; and - transmitting the data handling protocol 865 to the
client devices 200 in response to the registrations. - 8. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - generating a first rule description 1241 (an improved data entry sequenced query set 850 or
autocompletion protocol 861, e.g.) as a component of themessage 840 from the one or more user interface (UI)governance servers 300C as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value, wherein the first rule description signifies a proposed change to one or more data entry protocols 1214, wherein themessage 840 contains the automatically generated user-invokable option (implemented as a hyperlink or similar user-invokable control, e.g.) to deactivate the one or more predictivedata handling rules 875, and wherein the firstdata handling protocol 860 includes the one or more data entry protocols 1214. - 9. The method of ANY of the above method clauses, further comprising:
- receiving a registration 1210 from an
additional client device 200 at the one or moreUI governance servers 300C; - transmitting (a substantially similar version of) the
message 840 to the additional client device 200 (from the one or moreUI governance servers 300C, e.g.) as an automatic and conditional response to the registration 1210 from theadditional client device 200, wherein themessage 840 presents via the additional client device the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from thesecond client device 200 to the one ormore ERP servers 300B superseding the first predicted value after the registration 1210 from theadditional client device 200 is received and wherein themessage 840 includes a first rule description 1241 (generated by cloud-basedneural network nodes 340 or other machine learning circuitry, e.g.) that prospectively depicts an affect of deactivating the one or more predictivedata handling rules 875; and - transmitting the one or more first data entry protocols 1214 to the additional client device 200 (directly or via the one or
more ERP servers 300B, e.g.) as an automatic and conditional response partly based on the registration 1210 and partly based on the one or moreUI governance servers 300C having received arule acceptance 1242 from theadditional client device 200 corresponding to the first rule description 1241. - 10. The method of ANY of the above method clauses, further comprising:
- receiving
training data 1205 at the one or more user interface (UI)governance servers 300C selectively in association with a data entry mode identifier (a user identifier or industry sector identifier, e.g.); and - generating at least one of an autocompletion rule (a machine-generated instance of an
event 871 automatically correlated with anautocompletion response 872, e.g.) of theautocompletion protocol 861 or an autocorrection rule (a machine-generated instance of anevent 871 automatically correlated with anautocorrection response 872, e.g.) of theautocorrection protocol 862 by implementing machine learning at the one or more user interface (UI)governance servers 300C partly based on thetraining data 1205 corresponding to the data entry mode identifier and partly based ondata entry 1229A from thefirst client device 200A to the one ormore ERP servers 300B. - 11. The method of ANY of the above method clauses, further comprising:
- receiving a
registration 1210A from thefirst client device 200A at the one or moreUI governance servers 300C; and - transmitting one or more data entry protocols 1214, including the first
data handling protocol 860, to thefirst client device 200A (directly or via the one ormore ERP servers 300B) as an automatic and conditional response to theregistration 1210A from thefirst client device 200A at the one or moreUI governance servers 300C. - 12. The method of ANY of the above method clauses, further comprising:
- obtaining a
client classifier 1375 describing thesecond client device 200 during a device registration of the second client device; and - transmitting the first
data handling protocol 860 to the second client device 200 (from the one or moreUI governance servers 300C, e.g.) that depends upon theclient classifier 1375, wherein data entry 1229 from thesecond client device 200 to one ormore ERP servers 300B is thereby initially performed (prior to refinements described herein, e.g.) using the initialdata handling protocol 860. - 13. The method of ANY of the above method clauses, further comprising:
- auto-generating numerous predictive data handling rules 875 (i.e. more than 50) in association with a data entry mode identifier (a user identifier or data entry template identifier, e.g.) as a user selection provided via the
first client device 200A; and - allowing a human user to select a single one of the predictive
data handling rules 875 from among the numerous predictivedata handling rules 875 auto-generated as the one or more predictivedata handling rules 875 of the firstdata handling protocol 860. - 14. The method of ANY of the above method clauses, wherein the first data handling protocol is an
autocompletion protocol 861 by virtue of including at least one autocompletion rule (as an instance ofdata handling rule 875, e.g.). - 15. The method of ANY of the above method clauses, wherein the first data handling protocol is an
autocorrection protocol 862 by virtue of including at least one autocorrection rule (as an instance ofdata handling rule 875, e.g.). - 16. The method of ANY of the above method clauses, wherein the first data handling protocol is a
data validation protocol 863 by virtue of including at least one data validation rule (as an instance ofdata handling rule 875, e.g.). - 17. The method of ANY of the above method clauses, wherein the first data handling protocol is an autocompletion protocol and an autocorrection protocol.
- 18. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - obtaining an initial value of the
exception threshold 802 as user input. - 19. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - incrementing the
exception threshold 802 as an automatic and conditional response to atime interval 804 longer than a week elapsing, wherein thetime interval 804 is a function of apermissible exception rate 803 provided (by a system designer, e.g.) in association with the particular field as a component of the firstdata handling protocol 860. In a context in which a system designer specifies that arate 803 of four exceptions per year are permissible, for example, aUI governance server 300C may in effect implement anexception threshold 802 that is incremented each time atime interval 804 of 13 weeks passes without a qualifying exception. - 20. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - decrementing the
exception threshold 802 as an automatic and conditional response to user input from anotherclient device 200 to the one ormore ERP servers 300B superseding the first predicted value for the particular field using the firstdata handling protocol 860. In a context in which a system designer specifies that a population-wide rate 803 of ten exceptions per month are permissible, for example, aUI governance server 300C may in effect implement anexception threshold 802 for the month that is decremented each time an exception is logged from some other user. - 21. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - broadcasting the
message 840 that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value to all client devices for which the one or more predictive data handling rules are active including the second client device 200B as an automatic and conditional response to a collective exception count exceeding a collective exception threshold. - 22. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - broadcasting the
message 840 that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value to all client devices for which the one or more predictive data handling rules are active including the second client device 200B as an automatic and conditional response to a collective exception count exceeding a collective exception threshold, wherein theexception count 801 is the collective exception count, and wherein theexception threshold 802 is the collective exception threshold. - 23. The method of ANY of the above method clauses, wherein the one or more additional instances of user input from the second client device 200B to the one or
more ERP servers 300B superseding the first predicted value for the particular field 171 using thedata handling protocol 860 signals anexception count 801 exceeding anexception threshold 802 and wherein thedata handling protocol 860 is both anautocompletion protocol 861 and anautocorrection protocol 862. - 24. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - modifying the first data handling protocol by deactivating at least one rule (selected by a user of the second client device 200B, e.g.) of the one or more predictive
data handling rules 875 as a conditional response to a user invoking the option to deactivate (unlearn, e.g.) the at least one rule. - 25. The method of ANY of the above method clauses, wherein the invoking transistor-based circuitry configured to transmit the
message 840 from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value comprises: - transmitting an email message (as
message 840, e.g.) from the one or more user interface (UI)governance servers 300C via the second client device 200B that presents the automatically generated user-invokable option to deactivate the one or more predictivedata handling rules 875 as the automatic and conditional response to the one or more additional instances of user input from the second client device 200B to the one ormore ERP servers 300B superseding the first predicted value. - With respect to the numbered claims expressed below, those skilled in the art will appreciate that recited operations therein may generally be performed in any order. Also, although various operational flows are presented in sequence(s), it should be understood that the various operations may be performed in other orders than those which are illustrated, or may be performed concurrently. Examples of such alternate orderings may include overlapping, interleaved, interrupted, reordered, incremental, preparatory, supplemental, simultaneous, reverse, or other variant orderings, unless context dictates otherwise. Furthermore, terms like “responsive to,” “related to,” or other past-tense adjectives are generally not intended to exclude such variants, unless context dictates otherwise.
Claims (19)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/199,617 US20190363947A1 (en) | 2018-04-13 | 2018-11-26 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/953,223 US10148525B1 (en) | 2018-04-13 | 2018-04-13 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
US16/199,617 US20190363947A1 (en) | 2018-04-13 | 2018-11-26 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/953,223 Continuation US10148525B1 (en) | 2018-04-13 | 2018-04-13 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
Publications (1)
Publication Number | Publication Date |
---|---|
US20190363947A1 true US20190363947A1 (en) | 2019-11-28 |
Family
ID=64452191
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/953,223 Active US10148525B1 (en) | 2018-04-13 | 2018-04-13 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
US16/199,617 Abandoned US20190363947A1 (en) | 2018-04-13 | 2018-11-26 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/953,223 Active US10148525B1 (en) | 2018-04-13 | 2018-04-13 | Methods and systems for mitigating risk in deploying unvetted data handling rules |
Country Status (1)
Country | Link |
---|---|
US (2) | US10148525B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112308437B (en) * | 2020-11-04 | 2024-07-19 | 国网北京市电力公司 | Line loss management method, system, device and storage medium based on big data analysis |
Family Cites Families (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7065500B2 (en) | 1999-05-28 | 2006-06-20 | Overture Services, Inc. | Automatic advertiser notification for a system for providing place and price protection in a search result list generated by a computer network search engine |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
AU2001275967A1 (en) | 2000-07-18 | 2002-01-30 | Julie A. Lerner | System and method for physicals commodity trading |
US8112529B2 (en) * | 2001-08-20 | 2012-02-07 | Masterobjects, Inc. | System and method for asynchronous client server session communication |
US8689096B2 (en) | 2001-11-19 | 2014-04-01 | Hewlett-Packard Development Company, L.P. | Computer-based method, software module and computer program product for processing information in transaction-tax related applications |
US7519589B2 (en) | 2003-02-04 | 2009-04-14 | Cataphora, Inc. | Method and apparatus for sociological data analysis |
US8328610B2 (en) | 2006-08-16 | 2012-12-11 | Nintendo Co., Ltd. | Intelligent game editing system and method with autocomplete and other functions that facilitate game authoring by non-expert end users |
US7672915B2 (en) * | 2006-08-25 | 2010-03-02 | Research In Motion Limited | Method and system for labelling unlabeled data records in nodes of a self-organizing map for use in training a classifier for data classification in customer relationship management systems |
CA2726336A1 (en) | 2008-06-03 | 2009-12-10 | Just Parts Online Inc. | System and method for listing items online |
US9053474B2 (en) | 2008-08-04 | 2015-06-09 | At&T Mobility Ii Llc | Systems and methods for handling point-of-sale transactions using a mobile device |
US8949136B2 (en) | 2008-11-14 | 2015-02-03 | Lee Jared Heyman | Method for on-line prediction of medical diagnosis |
US9449281B2 (en) | 2008-12-31 | 2016-09-20 | Sap Se | Statistical machine learning |
US20110193795A1 (en) | 2010-02-09 | 2011-08-11 | Yahoo! Inc. | Haptic search feature for touch screens |
US8819052B2 (en) | 2010-03-29 | 2014-08-26 | Ebay Inc. | Traffic driver for suggesting stores |
US9189566B2 (en) | 2010-12-07 | 2015-11-17 | Sap Se | Facilitating extraction and discovery of enterprise services |
US9659600B2 (en) | 2014-07-10 | 2017-05-23 | Sap Se | Filter customization for search facilitation |
US9519726B2 (en) | 2011-06-16 | 2016-12-13 | Amit Kumar | Surfacing applications based on browsing activity |
US9361273B2 (en) | 2011-07-21 | 2016-06-07 | Sap Se | Context-aware parameter estimation for forecast models |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US9069844B2 (en) | 2011-11-02 | 2015-06-30 | Sap Se | Facilitating extraction and discovery of enterprise services |
CN103092683B (en) | 2011-11-07 | 2017-12-26 | Sap欧洲公司 | For data analysis based on didactic scheduling |
US8719299B2 (en) | 2011-12-02 | 2014-05-06 | Sap Ag | Systems and methods for extraction of concepts for reuse-based schema matching |
US8788443B2 (en) | 2011-12-23 | 2014-07-22 | Sap Ag | Automated observational decision tree classifier |
US9501567B2 (en) | 2012-02-08 | 2016-11-22 | Sap Se | User-guided multi-schema integration |
US9348811B2 (en) | 2012-04-20 | 2016-05-24 | Sap Se | Obtaining data from electronic documents |
US9177289B2 (en) | 2012-05-03 | 2015-11-03 | Sap Se | Enhancing enterprise service design knowledge using ontology-based clustering |
US9569413B2 (en) | 2012-05-07 | 2017-02-14 | Sap Se | Document text processing using edge detection |
US8538965B1 (en) | 2012-05-22 | 2013-09-17 | Sap Ag | Determining a relevance score of an item in a hierarchy of sub collections of items |
CN103455908A (en) | 2012-05-30 | 2013-12-18 | Sap股份公司 | Brainstorming service in cloud environment |
US9256412B2 (en) | 2012-07-04 | 2016-02-09 | Sap Se | Scheduled and quarantined software deployment based on dependency analysis |
US20140040741A1 (en) | 2012-08-02 | 2014-02-06 | Apple, Inc. | Smart Auto-Completion |
US9047737B2 (en) | 2012-08-31 | 2015-06-02 | Race Tech Llc | Web based methods and apparatus for parimutual historical gaming |
US9787540B2 (en) | 2012-09-10 | 2017-10-10 | Sap Se | System and method for predictive network congestion control |
US9152627B2 (en) * | 2012-09-20 | 2015-10-06 | Business Objects Software Ltd | Automatic rule generation |
US9021380B2 (en) | 2012-10-05 | 2015-04-28 | Google Inc. | Incremental multi-touch gesture recognition |
US8843845B2 (en) | 2012-10-16 | 2014-09-23 | Google Inc. | Multi-gesture text input prediction |
US9454677B1 (en) | 2012-10-16 | 2016-09-27 | Truedata Systems, Inc. | Secure communication architecture including video sniffer |
US8996555B2 (en) | 2012-11-26 | 2015-03-31 | Sap Se | Question answering framework for structured query languages |
US9098803B1 (en) | 2012-12-21 | 2015-08-04 | Emc Corporation | Hypotheses aggregation in data analytics |
US9667740B2 (en) | 2013-01-25 | 2017-05-30 | Sap Se | System and method of formatting data |
US20140229912A1 (en) | 2013-02-08 | 2014-08-14 | Microsoft Corporation | Micro documentation environments |
US9165049B2 (en) | 2013-03-01 | 2015-10-20 | Sap Se | Translating business scenario definitions into corresponding database artifacts |
US20140358816A1 (en) | 2013-03-16 | 2014-12-04 | Curtis Kinsey | Unified Digitization of Company Essentials with Remote Accessibility |
US9119056B2 (en) | 2013-05-06 | 2015-08-25 | Sap Se | Context-driven application information access and knowledge sharing |
US9606530B2 (en) | 2013-05-17 | 2017-03-28 | International Business Machines Corporation | Decision support system for order prioritization |
US9025834B2 (en) | 2013-05-29 | 2015-05-05 | Sap Se | Input validation, user and data authentication on potentially compromised mobile devices |
CN104216913B (en) | 2013-06-04 | 2019-01-04 | Sap欧洲公司 | Question answering method, system and computer-readable medium |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
US9063710B2 (en) | 2013-06-21 | 2015-06-23 | Sap Se | Parallel programming of in memory database utilizing extensible skeletons |
US9087091B2 (en) | 2013-08-07 | 2015-07-21 | Sap Se | Determination of differences in hierarchical data |
US9639818B2 (en) | 2013-08-30 | 2017-05-02 | Sap Se | Creation of event types for news mining for enterprise resource planning |
US9443214B2 (en) | 2013-08-30 | 2016-09-13 | Sap Se | News mining for enterprise resource planning |
US20150112770A1 (en) | 2013-10-21 | 2015-04-23 | Mark Phillips | Method for evaluating and managing project performance using communication |
US9721002B2 (en) | 2013-11-29 | 2017-08-01 | Sap Se | Aggregating results from named entity recognition services |
US9601109B2 (en) | 2013-12-06 | 2017-03-21 | International Business Machines Corporation | Systems and methods for accelerating hessian-free optimization for deep neural networks by implicit preconditioning and sampling |
US9800689B2 (en) | 2013-12-19 | 2017-10-24 | Sap Se | Distributed application integration auto-adjustment |
US9652148B2 (en) | 2014-01-06 | 2017-05-16 | Sap Se | Soft keyboard with keypress markers |
US9535960B2 (en) | 2014-04-14 | 2017-01-03 | Microsoft Corporation | Context-sensitive search using a deep learning model |
US9436906B2 (en) | 2014-05-09 | 2016-09-06 | Sap Se | Discovering user-behavior from trajectory-as-polygon (TaP) |
US9779174B2 (en) | 2014-05-11 | 2017-10-03 | Sap Se | Framework for anonymous reporting of social incidents |
US9454571B2 (en) | 2014-06-26 | 2016-09-27 | Sap Se | Optimization of parallelization of user-defined functions with flexible partitioning |
WO2016003594A1 (en) | 2014-07-03 | 2016-01-07 | Counterfy Llc | Detecting websites associated with counterfeit goods |
US9355020B2 (en) | 2014-07-22 | 2016-05-31 | Sap Se | Resolving nondeterminism in application behavior models |
US9552549B1 (en) | 2014-07-28 | 2017-01-24 | Google Inc. | Ranking approach to train deep neural nets for multilabel image annotation |
US9767410B1 (en) | 2014-10-03 | 2017-09-19 | Google Inc. | Rank-constrained neural networks |
US9043894B1 (en) * | 2014-11-06 | 2015-05-26 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US9569700B1 (en) | 2014-12-17 | 2017-02-14 | Amazon Technologies, Inc. | Identification of item attributes using artificial intelligence |
US9576383B2 (en) | 2014-12-30 | 2017-02-21 | Sap Se | Interactive chart authoring through chart merging |
US9652740B2 (en) | 2014-12-30 | 2017-05-16 | Sap Se | Fan identity data integration and unification |
US9767409B1 (en) | 2015-03-30 | 2017-09-19 | Amazon Technologies, Inc. | Latent feature based tag routing |
US20160323224A1 (en) | 2015-04-28 | 2016-11-03 | SmartSheet.com, Inc. | Systems and methods for providing an email client interface with an integrated tabular data management interface |
US9671237B1 (en) | 2015-11-16 | 2017-06-06 | Sap Se | Optimized generation of navigation instructions based on computed parking probability values |
WO2017112686A1 (en) | 2015-12-20 | 2017-06-29 | Prophecy Sensors, Llc | Method, system and apparatus using field learning to upgrade trending sensor curves into fuel gauge based visualization of predictive maintenance by user driven feedback mechanism |
US20170185670A1 (en) | 2015-12-28 | 2017-06-29 | Google Inc. | Generating labels for images associated with a user |
US9858336B2 (en) | 2016-01-05 | 2018-01-02 | International Business Machines Corporation | Readability awareness in natural language processing systems |
US9659248B1 (en) | 2016-01-19 | 2017-05-23 | International Business Machines Corporation | Machine learning and training a computer-implemented neural network to retrieve semantically equivalent questions using hybrid in-memory representations |
US10936945B2 (en) * | 2016-06-06 | 2021-03-02 | Microsoft Technology Licensing, Llc | Query classification for appropriateness |
US20180188823A1 (en) * | 2017-01-04 | 2018-07-05 | International Business Machines Corporation | Autocorrect with weighted group vocabulary |
-
2018
- 2018-04-13 US US15/953,223 patent/US10148525B1/en active Active
- 2018-11-26 US US16/199,617 patent/US20190363947A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US10148525B1 (en) | 2018-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12062019B2 (en) | Chat and email messaging integration | |
US10559042B2 (en) | Capturing information regarding an interaction to a database | |
US10346459B1 (en) | Capture and annotation of segmented content representing insights | |
US11270215B2 (en) | Intelligent recommendations | |
US8972869B1 (en) | Method and system for managing a virtual meeting | |
US20160021038A1 (en) | Chat-based support of communications and related functions | |
KR102166254B1 (en) | Method and system to share, synchronize contents in cross platform environments | |
US20160021039A1 (en) | Message control functions within communication systems | |
US20140089418A1 (en) | Structuring notifications of events to users in a social networking system | |
US20170223069A1 (en) | Meetings Conducted Via A Network | |
US11438282B2 (en) | Synchronicity of electronic messages via a transferred secure messaging channel among a system of various networked computing devices | |
US20230155853A1 (en) | Collaborative posts | |
US20190188320A1 (en) | Systems and methods for providing ephemeral content items created from live stream videos | |
US20230156156A1 (en) | Methods and systems for facilitating communication in a collaborative work environment | |
US20210385177A1 (en) | Information processing apparatus and non-transitory computer readable medium | |
US10148525B1 (en) | Methods and systems for mitigating risk in deploying unvetted data handling rules | |
US20190121910A1 (en) | Systems and methods for social content discovery and consumption | |
US20240087052A1 (en) | Community profiles | |
US20240281853A1 (en) | Collaborative fundraisers | |
US20210065015A1 (en) | Computerized platform for facilitating group based decision making | |
WO2019164470A1 (en) | Intelligent recommendations | |
US12052255B2 (en) | Collective user accounts | |
US12099770B1 (en) | Displaying predicted tasks based on changing devices | |
US11916862B1 (en) | Mentions processor configured to process mention identifiers | |
US12050565B2 (en) | Managing system operations with a schema management system and methods therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: WINSHUTTLE, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CHALANA, VIKRAM;REEL/FRAME:047966/0532 Effective date: 20180413 |
|
AS | Assignment |
Owner name: WINSHUTTLE, LLC, WASHINGTON Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE 2ND INVENTOR ADDED PREVIOUSLY RECORDED AT REEL: 47966 FRAME: 532. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNORS:CHALANA, VIKRAM;DHILLON, DEEP;REEL/FRAME:049544/0901 Effective date: 20180413 |
|
AS | Assignment |
Owner name: OBSIDIAN AGENCY SERVICES, INC., AS COLLATERAL AGEN Free format text: SECURITY INTEREST;ASSIGNOR:WINSHUTTLE, LLC;REEL/FRAME:050009/0537 Effective date: 20190809 |
|
AS | Assignment |
Owner name: WINSHUTTLE, LLC, WASHINGTON Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:PNC BANK, NATIONAL ASSOCIATION;REEL/FRAME:050028/0566 Effective date: 20190809 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: WINSHUTTLE, LLC, WASHINGTON Free format text: RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 50009/0537;ASSIGNOR:OBSIDIAN AGENCY SERVICES, INC.;REEL/FRAME:057106/0836 Effective date: 20210713 |