I am designing a new application for a client that is going to be largely based on workflow. The major areas of data entry are going to be concerned with Persons, Organizations, Relationships and Contact Information.
What I want is to build a workflow for the high-level process the drive the user through the major areas of data capture but each of those stages could have a sub workflow. Something like
Person stage captures personal information and then that top workflow moves to the Contact Info stage which itself has multiple steps.
There are going to be multiple types of users of the system and not all roles will follow the same workflow. Some will not need to capture Contact Info at all so we don't want to force them through those views.
Here is the piece I am not sure how to do. I'd like to encapsulate all the major areas into modules
PersonInfoModule, ContactInfoModule, OrganizationInfoModule, etc. Yet, the workflow will need to access routes from all of these - and be smart enough to not die if a specific route is not found.
The idea is that IF the workflow transitions to an unknown route then we have to nicely tell the user and give them the option to "skip" that step. Thsi is because workflows are going to be rather volatile.
We are trying to validate if Orchard is going to work for this project so, there are more questions coming in separate threads.