This is a process map made with Ver Dura Complexity (https://complexity.verdura.cc). It shows a multistep process as steps joined by what flows between them. nodes: the steps of the process. Each has a name, a description, a class, tags, a lane ("layer" in the data), and maybe a group. objects: the things that flow between steps, such as a document, a decision or a product. A node "requires" objects (its inputs) and "produces" objects (its outputs). connections: each joins one output of a node ("from") to one input of another node ("to"). Both ends carry the same object. Follow connections to follow the process. A connection back to an earlier step is a loop. if: an output with "if" is produced only on that condition. Several outputs of one node with different conditions are a branch. classes: kinds of step (for example a person, a machine, a source). They may carry a description. tags: free marks on nodes. The tag "Problem" marks a step that has an issue. layers: the lanes of the map: places or stages of the process, in order. Every node and group is on one lane. groups: bundles of steps on one lane. A group may sit inside another group ("parent"). notes: stage notes. Each is an observation about one or more steps ("nodes"): what works well there, what goes wrong, an idea. It has a heading, a text ("body"), maybe a type, and maybe tags. Read them to judge the steps they are on. noteTypes: the kinds of stage note, in the order the map owner ranks them (for example Good and Bad). A note with no type has none of them. place: "start" on the step the map owner marked as where the process begins, "finish" on the step where it ends. Other steps with no inputs or no outputs are further starting or end points. An input with nothing connected to it comes from outside the map; an output with nothing connected leaves the map or is not used yet. The same map as JSON: https://complexity.verdura.cc/view/68xGLozpOdl4iYzwZdWlUSzs/map.json # Process demo A process map with 23 steps, 22 connections and 0 stage notes. The process starts at "Place the order on the site". The process finishes at "Receive the parcel", "Leave at a pickup point". ## Lanes (in order) 1. Customer 2. Shop system 3. Customer service 4. Warehouse 5. Carrier ## Groups - Checkout (lane: Customer) - Shipping (lane: Shop system) - Picking (lane: Warehouse) - Packing (lane: Warehouse) ## Objects (what flows between steps) - Order - Authorised order - Declined payment - Payment failed email - Order to fulfil - Short order - Confirmation email - Order released to warehouse - Question to customer - Agreed change - Cancellation - Released payment - Cancellation email - Pick list - Picked items - Missing item report - Checked items - Packed parcel - Labelled parcel - Tracking number - Captured payment - Shipping email with tracking - Parcel in transit - Delivered parcel - Failed delivery - Order received - Parcel at pickup point ## Classes (kinds of step) - Step ## Steps ### Place the order on the site class: Step; lane: Customer; marked as the start of the process The customer fills the basket, enters the delivery address and pays by card or PayPal at checkout. - produces Order to "Authorise the payment" ### Authorise the payment class: Step; lane: Customer; group: Checkout The payment provider holds the amount on the card. The money is taken only when the parcel ships. - requires Order from "Place the order on the site" - produces Authorised order if payment approved to "Check stock for every item" - produces Declined payment if payment declined to "Email: payment did not go through" ### Email: payment did not go through class: Step; lane: Customer; group: Checkout - requires Declined payment from "Authorise the payment" - produces Payment failed email to "Read the payment failed email" ### Read the payment failed email class: Step; lane: Customer; tags: No data About a third of these customers come back and order again. Nobody follows up the rest. - requires Payment failed email from "Email: payment did not go through" ### Check stock for every item class: Step; lane: Customer; group: Checkout; tags: Problem Stock in the shop system is updated from the warehouse once an hour, so it can be out of date. - requires Authorised order from "Authorise the payment" - produces Order to fulfil if all items in stock to "Send the order confirmation" - produces Short order if an item is missing to "Ask the customer what to do" ### Send the order confirmation class: Step; lane: Customer; group: Checkout - requires Order to fulfil from "Check stock for every item" - produces Confirmation email to "Get the confirmation" - produces Order released to warehouse to "Print the pick list" ### Get the confirmation class: Step; lane: Customer - requires Confirmation email from "Send the order confirmation" ### Ask the customer what to do class: Step; lane: Customer By email, within one working day. Phone if the order is over 200 €. - requires Short order from "Check stock for every item" - produces Question to customer to "Choose: wait, swap or cancel" ### Choose: wait, swap or cancel class: Step; lane: Customer - requires Question to customer from "Ask the customer what to do" - produces Agreed change if wait or swap to "Change the order" - produces Cancellation if cancel to "Cancel and release the payment" ### Change the order class: Step; lane: Customer; tags: For improvement Done by hand in the shop admin. - requires Agreed change from "Choose: wait, swap or cancel" - produces Order to fulfil (nothing connected) ### Cancel and release the payment class: Step; lane: Customer - requires Cancellation from "Choose: wait, swap or cancel" - produces Released payment (nothing connected) - produces Cancellation email to "Get the cancellation" ### Get the cancellation class: Step; lane: Customer - requires Cancellation email from "Cancel and release the payment" ### Print the pick list class: Step; lane: Customer Pick lists are printed in two waves: 9:00 and 13:00. - requires Order released to warehouse from "Send the order confirmation" - produces Pick list to "Pick the items from the shelves" ### Pick the items from the shelves class: Step; lane: Customer; tags: Problem About 2 orders in 100 have a wrong item or size. - requires Pick list from "Print the pick list" - produces Picked items if all found to "Check items against the order" - produces Missing item report if item not on the shelf (nothing connected) ### Check items against the order class: Step; lane: Customer - requires Picked items from "Pick the items from the shelves" - produces Checked items to "Pack the parcel" ### Pack the parcel class: Step; lane: Customer; tags: For improvement Box size is chosen by eye. Too many parcels ship half empty. - requires Checked items from "Check items against the order" - produces Packed parcel to "Print the shipping label" ### Print the shipping label class: Step; lane: Customer - requires Packed parcel from "Pack the parcel" - produces Labelled parcel to "Collect the parcels" - produces Tracking number to "Take the payment" ### Take the payment class: Step; lane: Customer - requires Tracking number from "Print the shipping label" - produces Captured payment (nothing connected) - produces Shipping email with tracking to "Get the shipping email" ### Get the shipping email class: Step; lane: Customer - requires Shipping email with tracking from "Take the payment" ### Collect the parcels class: Step; lane: Customer; tags: Constraint One pickup a day at 15:00. Parcels packed later wait until tomorrow. - requires Labelled parcel from "Print the shipping label" - produces Parcel in transit to "Deliver the parcel" ### Deliver the parcel class: Step; lane: Customer - requires Parcel in transit from "Collect the parcels" - produces Delivered parcel if someone at home to "Receive the parcel" - produces Failed delivery if nobody at home to "Leave at a pickup point" ### Receive the parcel class: Step; lane: Customer; marked as the finish of the process - requires Delivered parcel from "Deliver the parcel" ### Leave at a pickup point class: Step; lane: Customer; marked as the finish of the process; tags: No data After 7 days the parcel goes back to the shop. What happens then is not settled. - requires Failed delivery from "Deliver the parcel"