Namespaces
Namespaces are an Unmeshed mechanism that allows users to group related Processes together. They provide a structured way to organize, manage, and secure Processes, especially as the scale and complexity of your usage grow.
When to Use Namespaces
While simple, single-user usage of Unmeshed may work well with only the default Namespace, Namespaces become invaluable as your usage expands and more teams begin to onboard into the system. Here are key scenarios where utilizing Namespaces is beneficial:
1. Organizing Resources by Team or Project
- Team Segmentation: Separate Processes based on different teams or projects to maintain clear boundaries and responsibilities.
- Resource Allocation: Allocate specific resources to each Namespace, ensuring that teams have access only to their relevant Processes.
2. Separating Development and Production Environments
One common use case for Namespaces is to distinguish between Processes that are under development and those that are already in production. This separation offers several advantages:
- Isolation of Development Processes: Allow Process Authors to develop and test Processes in isolation without affecting the production environment.
- Access Control: Restrict access to the development Namespace to prevent unauthorized usage of in-progress Processes.
- Seamless Transition: Easily move Processes from the development Namespace to the production Namespace once they are ready for deployment.
3. Enhancing Security and Compliance
- Access Restrictions: Implement fine-grained access controls to ensure that only authorized users can interact with specific Namespaces.
- Audit and Monitoring: Track and monitor activities within each Namespace to maintain compliance with organizational policies and regulations.
4. Scalability and Manageability
- Managing Growth: As the number of Processes increases, Namespaces help in managing them efficiently by categorizing related Processes.
- Simplified Maintenance: Easier to maintain and update Processes within organized groups, reducing complexity and potential errors.
How to Use Namespaces
Creating a Namespace
-
Navigate to the Unmeshed Dashboard:
- Log in to your Unmeshed account and access the main dashboard.
-
Access Namespaces
-
Create a New Namespace:
- Provide a meaningful name and description for the Namespace.
- Define access permissions and assign relevant teams or users (Coming soon)
Assigning Processes to a Namespace
-
During Process Creation:
- When creating a new Process, select the appropriate Namespace from the dropdown menu.
-
Existing Processes:
- For existing Processes, you can use Copy or Move functions to move them into a new namespace.
Managing Access and Permissions
-
Define Roles:
- Assign roles to users or teams within each Namespace to control access levels.
-
Set Permissions:
- Specify what actions each role can perform, such as viewing, editing, or executing Processes within the Namespace (Coming soon)
Usage Examples
Example 1: Separating Development and Production
Scenario: Your team is developing new Processes that are not yet ready for production. To prevent disruptions, you want to keep these Processes isolated.
Steps:
-
Create Namespaces:
Development
Production
-
Assign Processes:
- Assign all in-development Processes to the
Development
Namespace. - Existing, stable Processes remain in the
Production
Namespace.
- Assign all in-development Processes to the
-
Control Access:
- Restrict access to the
Development
Namespace to only Process Authors and developers. - Allow broader access to the
Production
Namespace for end-users and other stakeholders.
- Restrict access to the
Example 2: Team-Based Organization
Scenario: Multiple teams are using Unmeshed for different projects. Each team needs to manage their own set of Processes without interference.
Steps:
-
Create Namespaces for Each Team:
FinanceTeam
HRTeam
SalesTeam
-
Assign Processes:
- Each team assigns their respective Processes to their designated Namespace.
-
Manage Permissions:
- Ensure that only members of
FinanceTeam
can accessFinanceTeam
Namespace, and similarly for other teams.
- Ensure that only members of
Use Descriptive Namespace Names: Choose clear and descriptive names for Namespaces to easily identify their purpose or the team they belong to.
Avoid Over-Categorization: While organizing Processes is important, avoid creating too many Namespaces, which can lead to unnecessary complexity