Improved rollout creation workflow
Problem statement:
The Existing Hawkbit workflow to create Rollout involves many individual processes. This leads to lot of complexities to perform rollout operations.
Most of the users are unaware of the sequences involved in creating following steps and also the inter-dependencies between them:
- Software Module
- Distribution set
- Target Filters
Proposed Solution : There is a need of abstraction to create and perform rollout operations which saves lot of effort to the user. Since the process is same, the abstraction will take care of creating necessary intermediate steps which are required for every rollout.
Please find the detailed proposal in the attached document.
Hawkbit_Rollout_UI_Proposal.pdf
Regards, Anbazhakan S
Thanks a lot for sharing your very detailed thoughts on how to improve the creation of a rollout. Indeed, setting up a rollout from scratch involves multiple steps from different views in particular order. Hence users need some experience in how to set this up. So I totally agree that some kind of workflow approach would ease the creation flow. Since you already provided a very detailed suggestion (incl. wireframes) I ask directly: Are you considering a code contribution?
I guess working on this topic will require quite some effort and discussions so I put @laverman in the loop. Any thoughts on this @laverman?
@schabdo thanks for accepting the proposal. Yes, I would like to contribute code. As you mentioned , this topic requires some effort and discussions to finalize proposal. So, we shall also discuss this proposal in detail if required.
@schabdo As you mentioned a workflow is really useful for new users like myself. I would like also to contribute code towards the implementation here. @AnbazhakanSubramaniam Thank you for the proposal!
@schabdo As @ajaybalakumar mentioned this will be very much useful for new users like me. I am also interested in contributing. Thank you..
Awesome, sounds good! Please don't get me wrong, I just said that I think a workflow would be a good improvement here. So please don't start with the implementation right away. Let's wait for @laverman first to share his view ...
Ping @laverman. I think without your support we won't be able to continue here
Dear @AnbazhakanSubramaniam, first of all, sorry for the delay!
Thanks for providing such a well prepared idea for improving the onboarding of new users to hawkBit. I had a thorough look at it, followed by some discussions with @stefbehl. We totally agree, that for new users it hard to understand which prerequisites need to met in order to roll-out an update to a device.
Now, some food for thought and for further discussions / refinement:
Guided Workflows -- I definitely like to notion of a guided workflow for the different process flows within hawkBit. Such as: i) Creating an Update (incl. distributionSet, and softwareModule creation, plus upload), ii) performing single assignment, or iii) creating a rollout campaign.
However, IMHO a "guided tour" for the different processes would be best, to onboard new folks instead of adding yet another path in the UI making it harder to understand for a user what the intended flow is in general. When thinking about a guided tour, I'm thinking of something like https://vaadin.com/directory/component/product-tour-add-on <- knowing that this one is in beta, but there might be others.
Rollout Creation Wizard -- what definitely could use some re-work would be the rollouts creation dialog. Splitting it up in different steps, would help the user to understand what information is exactly required and how it all plays together. However, creating a distributionSet on the fly is out of scope here. For targetFilters I'm up for discussion, whether we should allow to provide a FIQL query as well.
Let me know what you think about that! 🙂
Dear @laverman Thanks a lot for the feedback.
Definitely "Guided Tour" would help the new users to some extend. But IMHO, this is an extension to the existing help guide.
On the other hand, the "Guided workflow" or "Wizard" would provide the following additional benefits to all the users.
- Better UX - Creating rollouts with minimum steps by reducing the Navigation to different UI widgets
- Brings Abstraction by automating intermediate steps
I totally agree that we should not create an another path in the UI. As you rightly mentioned, reusing the existing widgets and splitting up in different steps (in a wizard) will really bring abstraction and help the users.
We shall discuss in detail if required 🙂