The total cost of ownership of any SCM product needs to be
balanced against the benefits in order to make an informed
purchasing decision.
While it is usual to consider only the software costs, doing so
can lead to an inaccurate view, resulting in unpleasant surprises
down the road.
The real cost of ownership is the sum of:
-
Licensing costs
-
Hardware costs
-
Human costs
All of these need to be assessed in order to see the true cost of
any system.
For some products, it turns out that the people and hardware costs
dwarf the cost of the software.
The following chart quickly illustrates hidden costs of other SCM
products.
| COSTS |
OTHER SCM |
BITKEEPER |
| Software licenses |
$-$$$$ |
$$$ |
| Setup |
$$-$$$$$ |
$ |
| Hardware |
$$$-$$$$$ |
$ |
| Administration |
$$-$$$$$ |
$ |
| Third party databases (if needed) |
$$$$ |
0 |
Licensing costs.
Paid BitKeeper licenses are needed for each person who uses the
software to make changes of any kind.
Read-only users (people browsing the source, tracking progress,
doing builds, etc.) still need a license but there is no charge
for that license.
In general, our software delivers productivity increases and time
savings far in excess of the annual lease investment.
Hardware costs.
Software requires hardware, and SCM software has traditionally
required a great deal of hardware.
Consider that virtually all other SCM systems have a centralized
design where the SCM system runs on a single server.
The performance of that server is a function of the server itself
and the number of concurrent users.
If there is only one user, a modest server will perform quite
well, but as the number of users increases, the hardware must also
be improved or performance becomes unacceptable.
Unfortunately, the cost of performance is not linear.
A system which is twice as fast is rarely only twice as costly,
and a system which is ten times as fast is always much more than
ten times as much.
The problem is obvious, a centralized SCM system will add hardware
costs at what can be an exponential rate as the number of users
increases.
This translates into reasonable costs for 5-10 users and
unreasonable costs for 100-1000 users.
BitKeeper does not have this problem because of its distributed
model.
The main repository is rarely used, work takes place in the child
or grandchild repositories and then fans into the main repository.
This model means that the hardware costs can be spread over a set
of
inexpensive PCs
rather than a $300,000 SMP machine.
BitMover hosts repositories used by thousands of developers on a
single inexpensive server.
Human costs.
Many SCM systems have traditionally required an administrator for
every 10-20 users.
These administrators are critical when the SCM is a centralized
single point of failure.
If an administrator costs $200,000 (salary, benefits, and other
overhead) and one is needed for every 20 users, that is a
not-so-hidden additional cost of $10,000/user/year.
One may argue that a well run installation could do better,
perhaps one administrator per 100 users, but that is still an
additional $2,000/user/year.
BitKeeper eliminates the need for an administrator, it has no
single point of failure.
The savings realized by not needing an administrator to nursemaid
the SCM server will easily cover 100% of the cost of BitKeeper.
Note that an administrator is not the same as a project lead who
defines and controls policy in the repositories;
all development efforts of any size will need people in that role
and no SCM system can remove that requirement.
An administrator is the person who makes sure that the hardware
and the software is working, the repositories are backed up, etc.
The distributed nature of BitKeeper removes the need for such a
person.