I'm compiling best practices in developing workflows in TEO/CPO, and accepting inputs. The result will be made available for the community to make use of it, and continuously improve the content. If you have any sort of best practices, please let me know.
1) good use of functional or procedural programming design
2) Use Extended Target Properties whenever you can versus Global Variables
3) Make good use of categories
4) Make good use of CPO Tasks (alerts) in error handling
5) Make good *descriptive* names on all activities, conditional branches, loops, etc
6) Sometime I like to do with variables local to a process: If it's an input variable called username, i would call it "InputUsername". If it's an output variable called username, then "OutputUsername". If it's purely local, then call it "Username". If it's a definition variable called username, then "DefUsername". Give some context to your local variables.
Just a few off the top of my head.
Oh and please use automation packs.
CIAC Adoption Pilot Engineering Lead