Source Safe for Class Library? Need help.

B

Brett P

Hello,
I am a C# developer working for a state agency. We
are currently trying to come up with a standard approach
for using Visual Source Safe (VSS). I have read the team
development articles on MSDN for Microsoft's
recommendation, which I agree with. But, there is some
resistance at my organization. Many of the developers
are not for source controlling solution files, which
means the developer would maintain his own solution on
his machine. The different applications would be source
controlled by namespace and class name only. No top
level folder denoting an application. I am assuming they
like this approach because it will be easy to see all of
the classes within our organization promoting better code
reuse. My questions are: Is this a valid approach for
using VSS? Are there any other tools we may use to
publish our classes as they are tested and completed?
How are other people using VSS?

Lastly, it was brought up to use file references instead
of project references within .NET projects. I can't
imagine why you would want to use file references, can
anyone give me some reasons why this would be a good idea?

Thanks for your help,
-brett
 
M

mia lanui

We use integrated VSS in .net 2003, everyone uses the same solution files.

We have about 50 projects, with only 4 solutions (including the master
containing all projects).

Everyone is aware of how their code impacts others' code.

Everyone knows about the namespaces, and what goes where.

Likewise, we all use the same database, for the most part.

I don't agree that classes should live in more than one assembly. What is
the supposed benefit?

We name all projects after the portion of the namespace which they
represent. This is a functional grouping.

There is no ambiguity about where a class is defined and why.

A developer can use that assembly, or not. Extensive use of interfaces
eliminates project dependency cycles.

Inter-project dependency reduction is an issue? If so, then use finer grain
of projects, i.e., fewer classes per project.

Hope this stimulates some thoughts.

-KJ
 
B

Brett P.

Thanks for your response. So what does your folder
structure look like within VSS? I am assuming you are
source controlling your solution files? Which would mean
you must have some logical grouping of your projects, ie.
server solution, client solution, database solution or
something along those lines? Each solution would have
its own folder within Source Safe?

thanks,
-brett
 
M

mia lanui

The folder structure matches the namespace hierarchy, as does the VSS
hierarchy. For example:

(namespace)
CompanyName.ProductName.ClientOrServer.MainFunctionalArea.SubFunctionalArea

(folder)
CompanyName\ProductName\ClientOrServer\MainFunctionalArea\SubFunctionalArea

(VSS)
$\CompanyName\ProductName\ClientOrServer\MainFunctionalArea\SubFunctionalAre
a

And yes, you are right, they are broken up into client/server, as well as
utilities, data access, etc..

And we do source-control the solutions; there is also a single database
project in that solution.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top