OK, some best practices here.
1) DO NOT USE BROUTER PORTS any more! We used brouter ports because they did not participate in spanning tree. Today we want to use a vlan and turn off spanning tree on those ports. That provides the same capabilities that brouter ports provided, but now I can MLT so I get scaling.
2) The OSPF ID MUST BE UNIQUE in your OSPF domain. Best practice is to make it your management (CLIP) address. That way when you look at the OSPF table you know immediately how to get to the associated router.
3) For vlans that are not transit (ie. there are just PC's hanging off them, no other routers), then you want to enable those as "Passive" interfaces. This reduces the CPU demand on the switch.
4) You may also need to redistribute any other routing protocol (rip/bgp) into OSPF in order for it to learn those routes.
5) Enable "ASBR" (Autonomous System Boundary Router) only on routers that connect to another AS.
6) Keep the number of areas down to avoid Dikjstra's algorithm slowing down the CPU.
Cheers, Uncle John.