Information-technology workflow using tiles that declaratively specify datatypes

US10732947B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10732947-B2
Application numberUS-201715458520-A
CountryUS
Kind codeB2
Filing dateMar 14, 2017
Priority dateDec 9, 2016
Publication dateAug 4, 2020
Grant dateAug 4, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A workflow is expressed as an arrangement of a set of executable tile. In some embodiments, the tiles include operations expressed in different programming languages. A tile can include a declarative specification of datatypes so that external agents, e.g., workflow services, can identify the datatypes and schemas required as arguments and produced as result; this simplifies the defining of a workflow, e.g., by a workflow coder. A tile can have zero, one, or plural user interfaces; selection of a user interface from plural user interfaces can be based on a user selection, on user roles, or on tile lifecycle stage. Workflow services can communicate with each other so that workflows can be distributed and shifted among processor nodes.

First claim

Opening claim text (preview).

We claimed: 1. A process comprising: Installing a bundle set of one or more tile bundles, each tile bundle including tile-operation executables, user interfaces, datatype definitions, and metadata, the tile-operation executables, user interfaces, datatype definitions, and metadata being separate from each other, the metadata associating the user interfaces and datatype definitions with the tile-operation executables to define tiles with datatypes defined for arguments to be received and for results to be produced by each tile, each tile declaratively specifying datatypes, each of the tiles having a respective Application Program Interface (API), wherein said user interfaces are provided to a user based upon criteria selected from the group consisting of: permissions assigned to said user; and a lifecycle stage of a tile corresponding to said user interface; arranging tiles selected from the bundle set into a first workflow; triggering, by workflow services, a first tile in a set of tiles arranged in the first workflow, the workflow services being separate from the first workflow; executing a first operation of the first tile so as to yield a first result; triggering, by the workflow services, a second tile in the set of tiles arranged in the first workflow; transferring, via property binding, the first result of the first operation for use as a first argument for a second operation associated with the second tile using a workflow definition which specifies argument data to be populated from a data rack associated with a datatype, the second tile declaratively specifying a first datatype for the first argument; executing, by the second tile, the second operation to yield a second result that is, at least in part, a function of the first result; performing a user authentication outside of said first workflow, wherein said permissions assigned to said user being used to allow/prevent access to said user interfaces and other aspects of said first workflow; and determining a selected user interface as a function of said permissions assigned to said user wherein said selected user interface is provided to said user. 2. The process of claim 1 wherein the first result conforms to the first datatype as specified by the first tile, the transferring not involving moving or copying the first result. 3. The process of claim 1 wherein the transferring further comprises transferring data from a source other than the first tile to the second tile to serve as a second argument to the second operation, the second argument conforming to a second datatype declaratively specified by the second tile. 4. The process of claim 3 wherein the data other than the first result is transferred from a data rack, the data being written to the data rack via a utility tile not included in the set of tiles arranged in a workflow. 5. The process of claim 1 wherein the transferring includes translating the first result of the first tile into the first argument of the second tile using definitions of datatypes declaratively specified by the first and second tiles. 6. The process of claim 1 wherein each datatype is a combination of one or more properties, each property having a respective data format. 7. A system comprising non-transitory media encoded with code that, when executed using hardware, implements a process including: Installing a bundle set of one or more tile bundles, each tile bundle including tile-operation executables, user interfaces, datatype definitions, and metadata, the tile-operation executables, user interfaces, datatype definitions, and metadata being separate from each other, the metadata associating the user interfaces and datatype definitions with the tile-operation executables to define tiles with datatypes defined for arguments to be received and for results to be produced by each tile, each tile declaratively specifying datatypes, each of the tiles having a respective Application Program Interface (API), wherein said user interfaces are provided to a user based upon criteria selected from the group consisting of: permissions assigned to said user; and a lifecycle stage of a tile corresponding to said user interface; arranging tiles selected from the bundle set into a first workflow; triggering, by workflow services, a first tile in a set of tiles arranged in a first workflow, the workflow services being separate from the first workflow; executing a first operation of the first tile so as to yield a first result; triggering, by the workflow services, a second tile in the set of tiles arranged in the first workflow; transferring, via property binding, the first result of the first operation for use as a first argument for a second operation associated with the second tile using a workflow definition which specifies argument data to be populated from a data rack associated with a datatype, the second tile declaratively specifying a first datatype for the first argument; executing, by the second tile, the second operation to yield a second result that is, at least in part, a function of the first result; performing a user authentication outside of said first workflow, wherein said permissions assigned to said user being used to allow/prevent access to said user interfaces and other aspects of said first workflow; and determining a selected user interface as a function of said permissions assigned to said user wherein said selected user interface is provided to said user. 8. The system of claim 7 wherein the first result conforms to the first datatype as specified by the first tile, the transferring not involving moving or copying the first result. 9. The system of claim 7 wherein the transferring further comprises transferring data from a source other than the first tile to the second tile to serve as a second argument to the second operation, the second argument conforming to a second datatype declaratively specified by the second tile. 10. The system of claim 9 wherein the data other than the first result is transferred from a data rack, the data being written to the data rack via a utility tile not included in the set of tiles arranged in a workflow. 11. The system of claim 10 wherein the transferring includes translating the first result of the first tile into the first argument of the second tile using definitions of datatypes declaratively specified by the first and second tiles. 12. The system of claim 7 wherein each datatype is a combination of one or more properties, each property having a respective data format. 13. The system of claim 7 further comprising the hardware.

Assignees

Inventors

Classifications

  • G06Q10/103Primary

    Workflow collaboration or project management · CPC title

  • G06F8/60Primary

    Software deployment · CPC title

  • Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title

  • Interaction with lists of selectable items, e.g. menus · CPC title

  • Programming languages or programming paradigms · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10732947B2 cover?
A workflow is expressed as an arrangement of a set of executable tile. In some embodiments, the tiles include operations expressed in different programming languages. A tile can include a declarative specification of datatypes so that external agents, e.g., workflow services, can identify the datatypes and schemas required as arguments and produced as result; this simplifies the defining of a w…
Who is the assignee on this patent?
Vmware Inc, Wmware Inc
What technology area does this patent fall under?
Primary CPC classification G06Q10/103. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 04 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).