IP Library Granted Patent US 10,171,584
Granted Patent B2
US 10,171,584 · App. 14/954,348 · Granted Jan 1, 2019

Systems, methods, and devices for providing process code to remote devices

Inventors: Douglas Bellinger (Ottawa, CA); William Kuker (Fair Haven, VT); Eugene Lee (Nepean, CA)
Assignee: MARTELLO TECHNOLOGIES CORPORATION
H04L67/1097
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,171,584
App. No.
14/954,348
Granted
Jan 1, 2019
Kind
B2
Abstract

A data processing device, such as a monitoring agent, runs process code to process input data captured from a data source of a production environment, such as managed network devices. The process code can be created on or modified at a terminal of a development environment remote from the data processing device. The input data can be routed to the development environment to test the process code with actual data. The development environment can also provide test data to the process code to test edge cases and other situations. The output of the process code running in the development environment can be routed to the data processing device for output to downstream systems as if generated by the data processing device. Once the process code is operating satisfactorily at the development environment, the process code can be transmitted to the data processing device for execution in the production environment.

Claims (28)

1. A system for providing executable code to a remote data processing device, the system comprising:

a remote data processing device storing process code and configured to receive input data from a data source of a production environment, the remote data processing device further configured to execute the process code with the input data to generate processed data in the production environment; and

a terminal connected to the remote data processing device via a network, the terminal configured to obtain the process code executing at the remote data processing device, the terminal further configured to provide a development environment to allow creation of process code and modification of the process code obtained from the remote data processing device to generate new process code, the terminal further configured to transmit the new process code over the network to the remote data processing device for execution by the remote data processing device;

the terminal configured to receive the input data from the data source of the production environment and to execute the new process code on the input data to generate processed data at the development environment, wherein the terminal is further configured to selectably route the processed data generated at the development environment to the remote data processing device for output by the remote data processing device as if generated by the remote data processing device and wherein the terminal is further configured to control selective suppression of output of processed data generated by the remote data processing device.

2. The system of claim 1 , wherein the terminal is further configured to selectably control routing of input data to the new process code as being from the data source of the production environment or from a data source of the development environment.

3. The system of claim 2 , wherein the data source of the development environment includes one or more of a user interface for entering and modifying input data and storage for storing input data.

4. The system of claim 1 , further comprising a server configured to transmit the process code to the terminal, the server further configured to receive the new process code from the terminal and transmit the new process code to the remote data processing device.

5. The system of claim 1 , wherein the terminal is further configured to display at a user interface of the terminal the processed data generated at the development environment.

6. The system of claim 1 , wherein the terminal is further configured to store the processed data generated at the development environment in association with the input data.

7. The system of claim 1 , wherein the remote data processing device comprises a monitoring agent for monitoring operation of at least one network device.

8. A monitoring agent device comprising:

a memory configured to store base executable code and process code;

and

a processor configured to execute the base executable code, the processor further configured to execute the process code via the base executable code with input data received via a network from one or more managed network devices to generate processed data in a production environment;

the processor further configured to output the processed data generated by the process code to a monitoring manager; and

the base executable code configured to selectably transmit the input data to a remote terminal for execution in a development environment provided by the remote terminal, the base executable code further configured to receive processed data from the remote terminal and to selectably output the processed data received from the remote terminal to the monitoring manager, wherein the base executable code is further configured to output processed data generated at the development environment and selectably routed to the monitoring agent device by the remote terminal as if generated by the monitoring agent device, and wherein the base executable code is further configured to selectively suppress output of processed data generated by the monitoring agent device as controlled by the remote terminal.

9. A process for providing executable code to a remote data processing device, the process comprising:

receiving process code at a development environment;

selecting a source of input data from at least a development data source in the development environment and a remote data processing device in a production environment remote from the development environment;

executing the process code in the development environment with the input data to generate processed data;

selectably outputting the processed data at one or more of the development environment and the production environment, including transmitting the processed data from the development environment to the remote data processing device for output by the remote data processing device as if generated by the remote data processing device, and suppressing output of processed data generated by the remote data processing device; and

transmitting the process code to the remote data processing device for execution in the production.

10. The process of claim 9 , wherein receiving process code at the development environment comprises receiving the process code from the remote data processing device.

11. The process of claim 10 , wherein transmitting the process code to the remote data processing device and receiving the process code from the remote data processing device are performed through a server that stores the process code.

12. The process of claim 9 , herein receiving process code at the development environment comprises receiving entry of process code or modification to process code at a user interface of the development environment.

13. The process of claim 9 , wherein receiving process code at the development environment comprises receiving process code from storage at the development environment.

14. The process of claim 9 , further comprising receiving modification to the process code at the development environment and executing the process code as modified in the development environment with the input data to generate the processed data.

15. The process of claim 9 , further comprising storing the input data and the processed data in association at the development environment.

Assignments (6)
SECURITY INTEREST Recorded Aug 10, 2023
From: MARTELLO TECHNOLOGIES CORPORATION
To: WESLEY CLOVER INTERNATIONAL CORPORATION
Reel/Frame 064550/0044 →
SECURITY INTEREST Recorded Jun 2, 2020
From: MARTELLO TECHNOLOGIES CORPORATION
To: NATIONAL BANK OF CANADA
Reel/Frame 052812/0171 →
SECURITY INTEREST Recorded Jun 2, 2020
From: MARTELLO TECHNOLOGIES CORPORATION
To: VISTARA TECHNOLOGY GROWTH FUND III LIMITED PARTNERSHIP
Reel/Frame 052812/0240 →
CONFIRMATION AND ASSIGNMENT Recorded May 19, 2019
From: BELLINGER, DOUGLAS; KUKER, WILLIAM; LEE, EUGENE
To: MARTELLO TECHNOLOGIES CORPORATION
Reel/Frame 049221/0521 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2016
From: BELLINGER, DOUGLAS; LEE, EUGENE
To: MARTELLO TECHNOLOGIES CORPORATION
Reel/Frame 038343/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2016
From: KUKER, WILLIAM
To: MARTELLO TECHNOLOGIES CORPORATION
Reel/Frame 038343/0371 →
Continuity (1)
Related Publication 20170155718A1 · Jun 1, 2017