You can do this but it is a little complex.
You have initiators, checkers, and approvers. You have 7 change types. There will be unique (either now or in the future) initiators, checkers and approvers for each change type. You will need to create groups for checkers and approvers for each type, ie. Change Type 1 Checker, Change Type 3 Approver, etc. You don't need more than just one group for the initiators though.
Create a variable for Change Type and add it to the data card using either a list or a drop down indicating the types.
Create a Ready for Checking transition between Design state and Checking state. Give Change Type 1 Checkers permission. Add a condition that Change Type = 1. Create another Ready for Checking transition between those two states but give the Change Type 2 checkers permission with the condition of Change Type = 2. Do this for the other Ready for Checking transitions.
The initiator will select the change type and when he changes state he will see only Ready for Checking. Since the condition is = to a specific type then changing state will automatically go down only the correct one of the transitions.
Set up the same type of transitions for Approvers. You can add unique notifications as needed.
This set up works as I have similar situations in a couple of my workflows.
Another thing you can do if you don't want the same person to check and then approve the file there is a setting to disallow sequential state transitions for the same person. So, if Jim was the checker it would not allow him to do the approver transition.
I think the hardest part of Stephen's scenario is going to be getting people to put in the correct change type. The initiator will have to set the change type and then transition the file to the next state. During the initiation transition the checkers could be notified that the file is ready for checking. When they transition from Checking to Approving the approvers would be notified.
You can set the transition to allow the person doing the transition to select which approver they want to have receive the email or you can send it to all the approvers.
Definitely work out how you want it to work on a test vault so that you don't end up with a bunch of trash in the production vault. Even if you are just setting it up for the first time you don't want to end up with states that are hard to delete because some files you want to keep went through it at some point.
Depending on the people you work with, hopefully picking the correct Change Type shouldn't be too much of a challenge. I would also put a blank into the drop down selection and have it default to that. This would require the initiator to make a selection since none of the conditions include a blank. It should only take a couple of times of forgetting to select a type before they remember.
Thanks Stephen and Paul for your valuable inputs!
As suggested in your post, I am able to setup transitions using Change Type variables. But the problem comes when there are multiple change types occurring at the same time. In that case approval is required from multiple people. Depending on combination of change types, number of approving people will change. Is this a scenario which will require customisation?
Without customisation, customer will be required to manage the internal approvals on own and then a single user will set the next state transition. Is there any other way to handle this without customisation?