Flow environment refers to the distinct stages or setups in which a workflow is developed, tested, and deployed. Typically, these environments help ensure that automations are properly designed, tested, and validated before they go live in a production environment. In Wiresk, these stages include Development (Dev), User Acceptance Testing (UAT), and Production (Prod), and each serves a specific purpose in the Flow creation lifecycle.
Here’s a breakdown of the typical environments:
Development (Dev) Environment: Copy Link
Purpose: The development environment is where Fows are initially created and configured. This is a sandbox-like area where developers or users can build and experiment with Flows.
Characteristics:
- Flows are still in progress and may not be fully functional.
- Allows for experimentation with different automation logic, triggers, actions, and integrations.
- Errors and issues are expected, and debugging happens in this environment.
- Data used in the development environment may be test data to avoid impacting real business operations.
Goal: To build and refine Flows until they are ready for further testing.
User Acceptance Testing (UAT) Environment: Copy Link
Purpose: The UAT environment is where Flows are tested by actual users to ensure they meet business requirements. It is often the final step before moving Flows into production.
Characteristics:
- Users (typically non-developers) perform tests to validate the functionality of the Flows in a controlled environment.
- It uses near-real data but is isolated from production to prevent any impact on live business operations.
- Focuses on confirming that Flows achieve desired outcomes and user requirements are met.
- Bugs or issues identified here are fixed before moving the Fow to production.
Goal: To confirm that Flows function as expected and are ready for deployment to the live environment.
Production (Prod) Environment: Copy Link
Purpose: The production environment is where fully tested Flows are deployed and executed in real business operations. This is the live environment where automation impacts actual users and processes.
Characteristics:
- Flows interact with live data and real systems (e.g., CRM, ERP, databases, etc.).
- Automation is expected to run reliably without errors, as any issues can disrupt business operations.
- Changes to Flows in production are often minimal, and any major changes typically go back through the development and UAT environments first.
Goal: To run Flows smoothly, ensuring they provide the intended value to the business and automate tasks efficiently.
Flow Lifecycle: Copy Link
A typical Flow lifecycle in these environments might look like this:
- Development: The team creates the initial Flow, including setting up triggers, actions, and logic.
- Testing in UAT: After the Flow is built, it moves to the UAT environment, where real users test the Flow against defined requirements and edge cases.
- Deployment to Production: Once testing is successful and approved, the Flow is deployed to the production environment to begin automating tasks in the live business environment.
Benefits of Using Separate Environments: Copy Link
Risk Mitigation: Separating environments minimizes the risk of untested Flows affecting live data and business processes.
Control: Teams can control and monitor changes at each stage, ensuring Flows are robust before going live.
Flexibility: Development teams can experiment freely in the Dev environment without affecting end-users, while business users in UAT can test real scenarios without the fear of disrupting operations.
Example Use Cases: Copy Link
Developing a Sales Automation Workflow:
- In the Dev environment, a Flow is created to automate lead generation and nurturing.
- In UAT, the marketing team tests the Flow to ensure that the right emails are sent at the right time, using real (but non-critical) data.
- Once approved, the Flow is moved to Prod, where it runs live and interacts with actual customer data.
Automating Invoicing Process:
A finance team may develop an invoicing workflow in Dev, test it with mock invoices in UAT, and finally deploy it in Prod to automate invoice generation and customer communication.
Flow environments is closely linked to Flow versioning Copy Link
Flow versioning combined with environment management in Wiresk creates a robust system for developing, testing, and deploying Flows without disrupting live operations.
Refer to Flow versioning documentation for more details.