What are some of the building blocks foundational to enterprise business applications? I'm thinking about re-usable components multiple applications share to:
Some examples of concepts I've seen success with centralizing/standardizing:
I'd add GUI widgets that allow teams to maintain the same look and feel across the application(s).
As well, in a large project where multiple teams must work on sub-systems that are going to plug together at some point a set of design patterns for similar sub-systems is invaluable.
Additionally, creating a common set of libraries (or better yet in C++ adopting Boost) which are the place to go when a common utility is required has worked well.
I would also create the testing framework with samples early on. I have found that if you have a template for testing the sub-systems then people will use it. Without any testing framework early on you are bound to get all extremes of developer testing.