IP Library › Granted Patent US 9,141,341
Granted Patent B2
US 9,141,341 · App. 13/550,310 · Granted Sep 22, 2015

Inversion of control for executable extensions in a run-time environment

Inventors: Dmitry Rassin (Ashdod, IL); Amir Kibbar (Petah Tiqwa, IL)
Assignee: Hewlett-Packard Development Company, L.P.
G06F8/20G06F8/30G06F9/44526G06Q10/06
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 9,141,341
App. No.
13/550,310
Filed
Jul 16, 2012
Granted
Sep 22, 2015
Kind
B2
Examiner
ZHAO, BING
Art Unit
2195
USPC
718/102
Abstract

A system method and non-transitory computer readable medium implemented as programming on a suitable computing device, the system for inversion of control of executable extensions including a run-time environment configured to push data to one or a plurality of extensions, wherein said one or plurality of extensions are configured to comprise one or a plurality of signatures. Wherein said one or a plurality of extensions are compilable, designable and testable outside of the run-time environment, and wherein the run-time environment may be configured to accept an extension and to push data to that extension as per said one or a plurality of signatures.

Claims (49)

1. A system for inversion of control of executable extensions, implemented as a workflow engine, the system comprising a run-time environment including:

a processor to execute the run-time environment; and

an executable extension, comprising a first component of a workflow, wherein the extension was designed, compiled, and tested with dependency on the run-time environment,

wherein the run-time environment is configured to:

read a signature within the extension, wherein the signature describes first data to be used by the extension;

push the first data from a database to the extension; and

accept a new extension, comprising a second component of the workflow,

wherein the new extension was designed, compiled, and tested independently of the run-time environment using a mock data-file or stub to provide the data described in the new signature, wherein the new extension includes a new signature,

wherein the new extension is pluggable into the workflow without specific coding to define dependencies of the new extension, and

wherein the dependencies of the new extension include at least another operation within the workflow;

read the new signature, wherein the new signature describes second data to be used by the new extension; and

push the second data from the database to the new extension.

2. The system of claim 1 , wherein the run-time environment is configured to push one or a plurality of inputs to the extension and/or the new extension.

3. The system of claim 1 , wherein the run-time environment is configured to take one or a plurality of outputs from the extension and/or the new extension.

4. The system of claim 1 , wherein said run-time environment comprises a workflow.

5. The system of claim 1 , wherein said run-time environment comprises an integrated development environment.

6. A method for inversion of control of executable extensions, implemented a workflow engine, the system comprising:

reading a signature within an extension,

wherein the extension comprises a first component of a workflow, that was designed, compiled, and tested with dependency on a run-time environment, and

wherein the signature describes first data to be used by the extension; pushing the first data from a database to the extension accepting a new extension,

wherein the new extension comprises a second component of the workflow that was designed, compiled, and tested independently of the run-time environment using a mock data-file or stub to provide the data described in the new signature,

wherein the new extension is pluggable into the workflow without specific coding to define dependencies of the new extension, and

wherein the dependencies of the new extension include at least a result of a previous operation;

read the new signature, wherein the new signature describes second data to be used by the new extension; and

pushing the second data from the database to the new extension.

7. The method of claim 6 , including pushing one or a plurality of inputs to the extension and/or the new extension.

8. The method of claim 6 , including taking one or a plurality of outputs from the extension and/or the new extension.

9. The method of claim 6 , wherein the run-time environment comprises a workflow.

10. The method of claim 6 , wherein said run-time environment comprises an integrated development environment.

11. A non-transitory computer readable medium comprising instructions, which when executed in a run-time environment cause a processor to:

read a signature within an extension,

wherein the extension comprises a first component of a workflow that was designed, compiled, and tested with dependency on the run-time environment, and

wherein the signature describes first data to be used by the extension; push the first data from a database to the extension;

accept a new extension,

wherein the new extension comprises a second component of the workflow that was designed, compiled, and tested independently of the run-time environment,

wherein the new extension is pluggable into the workflow without specific coding to define dependencies of the new extension,

wherein the new extension is configurable from outside of the new extension rather than being configurable from inside the new extension via code, and

wherein the dependencies of the new extension include at least another operation within the workflow;

read the new signature, wherein the new signature describes second data to be used by the new extension; and

push the second data from the database to the new extension.

12. The non-transitory computer readable medium of claim 11 , wherein the run-time environment is configured to push one or a plurality of inputs to the extension and/or the new extension.

13. The non-transitory computer readable medium of claim 11 , wherein the run-time environment is configured to take one or a plurality of outputs from the extension and/or the new extension.

14. The non-transitory computer readable medium of claim 11 , wherein the run-time environment comprises a workflow.

15. The non-transitory computer readable medium of claim 11 , wherein said run-time environment comprises an integrated development environment.

16. The medium of claim 11 , wherein the new extension was designed, compiled, and tested independently of the run-time environment using a mock data-file or stub to provide the data described in the new signature.

17. The system of claim 1 , wherein the dependencies of the new extension include at least the database.

18. The system of claim 1 , wherein the dependencies of the new extension further include at least a result of a previous operation.

19. The system of claim 1 , wherein the dependencies of the new extension further include at least a file object.

20. The system of claim 1 , wherein the new extension is configurable from outside of the new extension rather than being configurable from inside the new extension via code.

Assignments (8)
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2012
From: RASSIN, DMITRY; KIBBAR, AMIR
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 028559/0857 →
Continuity (1)
Related Publication 20140019983A1 · Jan 16, 2014