I'm designing a business web application. I'm leaning towards a task based UI style, but I'm facing a challenge regarding the creation of complex entities such as orders, composed of order lines.
A CRUD approach would be a data grid: as part of the order creation you manipulate the grid of order lines, adding, editing and removing order lines, and committing the entire order (order details and list of order lines) as a single task.
I believe a Task based approach would be first to create a draft of the order with essential data (i.e.: customer and delivery address), and then manipulate the order lines with atomic tasks, either with inline edition for a single order line or with a modal for each task. My intuition tells me that this could be more tedious for the users, as instead of entering data into any input of the grid, each task would require a little more interaction:
- edit every order line in batch
- save the order
vs:
- For each new order line:
- create a new order line
- enter its data
- commit it (this action would not be required on a CRUD grid)
- For each order line that requires a correction:
- start the fix (not required in CRUD)
- correct the data
- commit the fix (not required in CRUD)
- For each order line that is no longer required:
- remove the order line
My first question is if I am understanding the Task Based UI pattern correctly for this particular case, or if are there any other approaches more friendly for the user? (maybe there is an alternative approach)
My second question is if are there any Task Based examples of scenarios like this that you can recommend me (either real world or materials, as I couldn't find any example dealing with this particular type of interactions).