InfoQ Homepage Workflow / BPM Content on InfoQ
-
Building Workflows with AWS Step Functions
AWS Step Functions use a state machine to represent the workflow. A workflow consists of a set of tasks, each of which represents a discrete activity to be performed. Each task is defined by a state of the state machine. In this article, we will learn about the main concepts of AWS Step Functions and apply those to build a workflow for a sample business process: Order Fulfillment.
-
The Implication of Feedback Loops for Value Streams
Lead time and throughput are dynamic variables which impact flow in a value stream. Capacity, processing time and feedback loops (such as error conditions) have a significant impact on WIP and flow and need to be mapped and measured when building value stream maps.
-
How Development Teams Can Orchestrate Their Workflow with Pipelines as Code
Infrastructure as Code was just the beginning. Configuration as Code followed shortly after – again becoming extremely commonplace and enabling organisations to scale their engineering capacity by a number of times. And in order to continuously increase the value development teams generate, Pipelines as Code is the natural consequence.
-
Waste Not, Want Not: A Simplified Value Stream Map for Uncovering Waste
This article describes a simplified form of Value Stream Maps that makes it easy to visualize bottlenecks and inefficient processes in the software delivery lifecycle. It focuses on the two forms of Lean waste defined as Inventory and Waiting.
-
The Many Flavors of “Low-Code”
While the low-code hype often tells how "citizen developers" can create enterprise applications without the need to code, these platforms can serve an important role for professional developers.
-
Monitoring and Managing Workflows across Collaborating Microservices
This article argues that you need to balance orchestration and choreography in a microservices architecture in order to be able to understand, manage and change the system.
-
Ballerina Tutorial: A Programming Language for Integration
Ballerina is a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina’s design principles focus on baking integration concepts into a language, including a network-aware type system, sequence diagrammatic syntax, concurrency workers, being “DevOps ready”, and environment awareness.
-
Ballerina Microservices Programming Language: Introducing the Latest Release and "Ballerina Central"
The tutorial demonstrates Ballerina, a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina uses compile time abstractions for distributed system primitives that enable the compiler to generate artifacts like API gateways for deployment to Docker and Kubernetes.
-
Events, Flows and Long-Running Services: A Modern Approach to Workflow Automation
Recent discussions around the microservice architectural style has promoted the idea that “to effectively decouple your services you have to create an event-driven-architecture”. Although events can decrease coupling, we must avoid the mistakes of traditional SOA: centralised control should to be avoided, and workflow engines must be less painful to use and operate.
-
Know the Flow! Microservices and Event Choreographies
This article explores ways to implement services which are long running and stretch across the boundary of individual microservices using event based architectures.
-
The Misaligned Middle and Getting off the Hamster Wheel Using Kanban
At the Agile 2016 conference, Dominica DeGrandis and Julia Wester of Leankit gave talks on helping middle managers adapt to change and how Kanban can be used to identify problems in workflows, which people need to address.
-
Purpose Case Management
Article “Purpose Case Management” describes a Case Management method that overarches BPM and Adaptive Case Management. Author reviews several modern movements such as Unstructured BPM, Social BPM, Dynamic BPM, and ACM. The article concludes with a generic method that allows switching between BPM and ACM depending on which one of them is more efficient in an execution context at certain moment.