Hey guys,
Here's how I'd do it.
Assumption: Only logged-in users can start the UW funnel
Schemas:
UploadWizardStep
Stored when the user loads a new step of the Upload Wizard
- user_id : int -- The user's identifier
- flow_initialized : str -- The timestamp at which the current flow through the funnel began (will need to be stored in a cookie and reset at loads of step 1)
- step : int -- 1 - 4 of the UW process
UploadWizardRightsSelection
Stored when the user selects a "rights" option.
-
user_id : int -- The user's identifier
- flow_initialized : str -- The timestamp at which the current flow through the funnel began (will need to be stored in a cookie and reset at loads of step 1)
- rights_selected : enum("own", "other) -- The rights that a user selected (note that multiple selections actions can take place for a single flow)
I'd make a pass over the DB, to identify the last RightsSelection for each flow_initialization (if any) to figure out what an uploading user settled on during a particular flow. I'd also look at how many selections a user makes per flow to see evidence of confusion & indecisiveness or maybe just exploration of the UI.
Make sense?
-Aaron