What you’re asking is easy. You can do it with simple queries with SQL*Plus, or by using a tool such as OEM, etc. Here are a few thoughts:
1)Changing user’s tablespaces. Select from dba_users to determine the current assignments. Use “alter user …” to change assignments. Consider any quotas.
2)Moving indexes – Select from dba_indexes to determine current tablespaces. Use dba_tablespaces to find out about ts defaults. Use “alter index rebuild” to accomplish the move. Consider the schema owner’s quotas, the allocation methods, tablespace definitions.
4) Constraint naming – Use DBA_Constraints to get the constraint types and names, DBA_Cons_Columns to get more details, and “alter table rename constraint” to make the changes. You can pick the names manually, or build them in the select statement using your standards.
You only need to be concerned about PL/SQL, etc. code if that code is sensitive to constraint names in errors (SQLERRM), manages space, etc. This is unlikely, but it has been done!
You could use a C++ disassembler for a shot at getting the source, but you need to think about legal issues re: ownership of the source.
Tracing normal execution would give you an exhaustive list of everything the app is doing.
You would definitely want to do a full test before changing production.
Making a few changes at a time would uncover smaller quantities of issues which you could recover from more easily.
Prepare backout scripts for everything before impelemnting. It takes more time overall, but if you need to recover, its so much more convenient.
In summary, this is the sort of thing that could be very simple, but having an experienced DBA/Developer look at it would be good insurance.