If you put third party software in a different vob than your application code, then wouldn't it affect the performance of build operation?
Disclaimer: performance is a hard issue, and I am not an expert in that. I am typically more concerned by getting things right first (usual claim :-)
The build might be more expensive, as it has to access across two vobs, compared to accessing under one vob but under different branches.
I don't know about your configuration but I doubt this makes sense under ours.
Also is it easier to backup up and build the release under one vob?
Not at ours: we backup the vobstorage, not the individual vobs. We currently backup from snapshots, which means that even the locking is minimal.
In short my question is which of the two configurations is better?
I stick to my belief that it is better to split, mainly for multisiting reasons, which are overwhelming in my mind. The more it'll go, the more we'll collaborate, and once multisite is there, there is no excuse not to use it!
In case you decide to put it under SCM which config is better?
config1: vob1/project1/src vob1/project1/include vob1/iona vob1/3rd part software config2: vob1/project1/src vob1/project1/include vob2/iona - Different vob2 vob2/3rd part software - Different vob2
I prefer option 2, as explained above.
Furthermore: beware projects. Be optimistic and hope that the code
they produce will overlive them.
Reuse and even plain sharing will break the interproject
barriers!