Designing the online workflow
As you'll recall, this is the offline workflow that we designed in Chapter 2, Building a To-do App:
This workflow is the offline nucleus of our app. We may add additional functionalities but it is not allowed to impinge on the offline integrity of this basic workflow. We will visualize this nucleus as follows in the next few diagrams, with the offline functionalities shaded in grey:
The existing screens are available for us to extend in the online mode but the core workflow remains unchanged. What additional functionalities should we enable while online?
Let's review the user stories from Chapter 1, The Pain of Being Offline:
Items should display while offline.
Keep all my devices in sync.
Don't keep me waiting.
Sharing with friends should be bulletproof.
Safeguard my data.
Of these user stories, 2, 4, and 5 have requirements that are not currently satisfied by our offline-only experience. Let's see how we can extend the current workflow to accommodate...