馃帹 Design: Organization creation flow
Problem
For the Organization MVC, we want to enable users to create their own Organization(s).
The goal of this issue is to define the Organization creation flow to set a baseline for which designs are still needed. As an outcome, follow-up issues will be created to tackle the identified gaps.
There are several use cases we will need to be able to manage to make Organizations available:
- New customers are joining and need to establish an Organization from scratch. Here a top-down workflow is probably best where a customer would start with setting up an Organization and then creates top-level groups from there. The flow could lean on the existing flow to create projects or subgroups in a group. Addressed in this issue.
- Existing customers need to migrate one or more top-level groups into an Organization. Here, the easiest way would probably be to start from a top-level group, allow users to build an Organization on top of that, so that the link to the top-level group is already established, and let them add additional top-level groups to that established Organization --> Addressed in 馃帹 Design: Transfer groups to organizations (#396723 - closed)
Another thing to keep in mind is that we would break links that refer to different top-level groups once we start moving them out of the default Organization into a separate one. Because we want to make sure that these links remain intact if a user brings separate top-level groups together under one new Organization, we need to consider in the designs what this workflow will look like. We probably need a step to inform the user of the impact of moving a top-level group into an Organization, and give them the option to maintain links between top-level groups by moving these groups at the same time.
Proposal
For the new organization creation flow (item 1 above), we can lean on the work already completed in 馃帹 Design: Transfer groups to organizations (#396723 - closed), and re-utilize many of those screens. In addition, we can add an empty state and a "new organization" button to the organization list page in "my work" to complete the flow, and allow people to create new organizations, from scratch, in the UI:
Empty state | Populated list page | New organization form | New organization form dropdown | Warning message | Loading state | Created/populated |
---|---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Click through prototype of these screens
Additional success and error messaging mock-ups:
Loading tip message | Success toast | Failure toast | Failure to create organization alert |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Of these messages, probably only the "failure to create organization" alert is strictly necessary for the MVC. How necessary the tip and toast messages are will depend on how long it ends up taking to create organizations, and whether or not processes will be queued in the background. We can make that call when we implement but, at least this way we have designs in place, for reference, if/as needed.
Illustration link (Final illustration been refined from the design shown in the mock-ups)
Additional details
In terms of who can create an organization - we're suggesting following the existing patterns for top-level groups, which means the following:
- Who gets to create an Organization? -- Anyone who can create a top-level group currently
- Should Users of an Organization be able to create a separate Organization? I believe today there is nothing in place to prevent a member of a top-level group to create their own (free) top-level group. This might be different for Enterprise Users. We could follow the existing pattern here. -- Yes, they should
- Will anyone who creates an Organization automatically become its Owner? Should ownership be transferrable? -- Yes, the person creating the organization would become its owner.