It is purely controlled by the program (ABAP OO class).
Yes I always did a customized table because it is very usefull for :
- Reporting purpose (who approved, time between full approval of all approvers... and so on).
- Keeping a link with workflow if I need one (workitem id in the table).