Currently if you have a birthright role comprised of several technical roles and/or individual entitlements each entitlement must complete the approval workflow steps before any of the fulfillment steps begin. This delays the user setup process. I believe it is due to the data base design. If you had a grand parent that was comprised of parent segments (one for each technical role/entitlement) and then children segments comprised of the entitlements associate with the technical roles the following would be possible:
Grandparent Ticket tracks and manages the stages/status of the entire request (in approval, in fulfillment, completed, etc.)
Parent Ticket(s) would be associated to the grandparent and would track the state of the Technical role(s) requested and the same stages/status
Child Ticket(s) would be associated to the Parent if there were individual entitlements (Local Entitlements).
Then once the Parent Ticket was approved it could go to Fulfillment instead of waiting for approval on every technical role requested.
Very frequently, I find that a request is being held up because of one approval not being done while the other 20 approvals are completed but nothing goes to fulfillment and therefore the end user has no access setup because we're waiting on a single approval for an application owner...