Transformation of componentized and extensible workflow to a declarative format
First Claim
Patent Images
1. A computer-implemented method to be executed on a computing device for modeling a workflow, said workflow including activities, said method comprising:
- presenting a plurality of activities via an interface, said plurality of activities comprising a structured set of steps including an ordered sequence of events, a set of asynchronous events, or both, each of the plurality of activities including metadata for a step in the workflow;
receiving, via an input interface, a selection of the presented activities by a user;
serializing the received activities to create a declarative and persistent representation of the workflow to model a business logic, said serializing comprising binding metadata to objects associated with the received activities and transferring the included metadata of the received activities into the declarative and persistent representation of the workflow such that the computing device can process the workflow based on the declarative representation, said declarative and persistent representation being based on a serialization format, said serialization format defining the following rules;
an object is serialized as an XML element, a property of an object is categorized as simple property or complex property, and a child object of an object is serialized as a child element, wherein the serialized is in the form of code statement collection in the declarative and persistent representation of the workflow;
wherein the serialized activities are mapped to an extensible schema definition namespace for validation;
compiling the serialized workflow representation and the received selection into a single assembly containing an executable representation of the workflow, wherein the compiling is not tied to a particular programming language and the declarative representation of the workflow does not need a translation to the particular programming language for the compiling; and
executing the executable representation of the workflow created by the compiling.
2 Assignments
0 Petitions
Accused Products
Abstract
Building a componentized workflow model. Each step of the workflow is modeled as an activity that has metadata to describe design time aspects, compile time aspects, and runtime aspects of the workflow step. A user selects and arranges the activities to create the workflow via user interfaces or application programming interfaces. The metadata associated with each of the activities in the workflow is collected to create a persistent representation of the workflow. Users extend the workflow model by authoring custom activities. The workflow may be compiled and executed.
228 Citations
19 Claims
-
1. A computer-implemented method to be executed on a computing device for modeling a workflow, said workflow including activities, said method comprising:
-
presenting a plurality of activities via an interface, said plurality of activities comprising a structured set of steps including an ordered sequence of events, a set of asynchronous events, or both, each of the plurality of activities including metadata for a step in the workflow; receiving, via an input interface, a selection of the presented activities by a user; serializing the received activities to create a declarative and persistent representation of the workflow to model a business logic, said serializing comprising binding metadata to objects associated with the received activities and transferring the included metadata of the received activities into the declarative and persistent representation of the workflow such that the computing device can process the workflow based on the declarative representation, said declarative and persistent representation being based on a serialization format, said serialization format defining the following rules;
an object is serialized as an XML element, a property of an object is categorized as simple property or complex property, and a child object of an object is serialized as a child element, wherein the serialized is in the form of code statement collection in the declarative and persistent representation of the workflow;wherein the serialized activities are mapped to an extensible schema definition namespace for validation; compiling the serialized workflow representation and the received selection into a single assembly containing an executable representation of the workflow, wherein the compiling is not tied to a particular programming language and the declarative representation of the workflow does not need a translation to the particular programming language for the compiling; and executing the executable representation of the workflow created by the compiling. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. One or more computer-readable storage media having computer-executable components for modeling a workflow, said workflow including activities, said workflow modeling a business logic, said components comprising:
-
a palette component for visually presenting a plurality of activities, said plurality of activities comprising an ordered sequence or a set of asynchronous events, or both, each of the plurality of activities including metadata for a step in the workflow; an interface component for receiving, from a user, a selection and hierarchical organization of the activities presented by the palette component; a declarative component for serializing the activities received by the interface component to create a declarative and persistent representation of the workflow, said serializing comprising binding metadata to objects associated with the received activities and transferring the included metadata of the received activities into the declarative and persistent representation of the workflow based on a serialization format, said serialization format defining the following rules;
an object is serialized as an XML element, a property of an object is categorized as simple property or complex property, and a child object of an object is serialized as a child element, wherein the serialized is in the form of code statement collection in the declarative and persistent representation of the workflow;wherein the declarative component farther maps the serialized activities to an extensible schema definition namespace for validation; and a runtime component for compiling the workflow representation serialized by the declarative component and the selection received by the interface component into a single assembly containing an executable representation of the workflow, wherein the compiling is not tied to a particular programming language and the declarative representation of the workflow does not need a translation to the particular programming language for the compiling, wherein the runtime component executes the executable representation of the workflow. - View Dependent Claims (12, 13)
-
-
14. A computer-implemented system for modeling a workflow, said workflow including activities, said workflow modeling a business logic, said computer-implemented system comprising:
-
a memory area for storing a package identifying a plurality of activities, said plurality of activities comprising an ordered sequence or a set of asynchronous events, or both, each of the plurality of activities including metadata for a step in the workflow; an interface for selecting and interrelating one or more of the activities from the package to create a workflow; and a processor configured to execute computer-executable instructions embodied in the following; a serializer for serializing the received activities to create a declarative and persistent representation of the workflow, said serializing comprising binding metadata to objects associated with the received activities and transferring the included metadata of the received activities into the declarative and persistent representation of the workflow, said declarative and persistent representation being based on a serialization format, said serialization format defining the following rules;
an object is serialized as an XML element, a property of an object is categorized as simple property or complex property, and a child object of an object is serialized as a child element, wherein the serialized is in the form of code statement collection in the declarative and persistent representation of the workflow;a validator for mapping the serialized activities to an extensible schema definition namespace; a compiler for compiling the serialized workflow representation and the received selection into a single assembly containing an executable representation of the workflow, wherein the compiler is not tied to a particular programming language and the declarative representation of the workflow does not need a translation to the particular programming language for the compiling; and a runtime engine for executing the executable representation of the workflow created by the compiler. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification