I am a beginner developer and am working with team that uses SourceSafe. We also use third-party SourceOffSite to make our code accessible via the Internet. We seem to be having lots off issues with our development process/system. As a beginner, I cannot say with certainty what these issues are, what causes them, and what really needs to be changed to improve our development process, although I think much of this has to do with SourceSafe and/or SourceOffSite.
My goal is to convince the team leads that we can do some things to greatly increase our productivity. However, I do acknowledge my inexperience which is why I am here to get help diagnosing our system for weaknesses.
Here are some of my concerns:
1) Our build process takes the better part of an eight hour day, and involves removing the development code from my system, re-getting the code from sourcesafe for a test build, making a copy of the development code for production, getting the production code on the build machine, and building the code. So each solution has to be downloaded from source control into Visual Studio twice and there can be 9 solutions involved, depending on which clients we are building for. The "get" or "open from source control" process for a solution in Visual Studio can take 30 minutes to an hour, and I'm not sure why (processing time on server? processing time on client? network bandwidth? etc). I am doing a get right now on a solution that consists of roughly 1000 files occupying 100 MB, and it took about 15 minutes. Other solutions are larger and take longer.
2) Our source control sometimes gets "messed up" on a development machine, where functions like "get latest" seem to work but don't result in having the latest code on the development machine for example. This requires deleting the configuration files for SourceOffSite and often deleting the source code as well. Re-getting this code in Visual Studio again can take hours.
3) We have code files that are shared between solutions. This means that if a file is changed in one solution and checked in, that solution may compile with that code but another solution may not. Therefore, we have broken code in SourceSafe. Is it okay to share files between solutions?
I have read and heard from a few sources that SourceSafe has some real issues and from Microsoft sources that switching to Team Foundation Server as soon as possible is highly recommended.
Please ask me questions if you need clarification of how things are done currently. I would like to gather the information needed for management to allow me to get Team Foundation Server up and running.
Thanks for your input.