[cvsnt] How to convince developers
arthur.barrett at march-hare.com
Fri May 23 14:09:35 BST 2008
> If this is the wrong list for this question please accept my apology.
I think advocacy is a reasonable topic for the list.
> How can I convince our developers (who are currently using
> SVN) to switch to CVS, which in my opinion seems to be more
> stable and reliable.
CVSNT features are geared towards fulfilling the technical requirements
of commercial developers - merge tracking, failsafe audit, support for
reserver/unreserved etc are not so relavent for a handful of open source
programmers - but are very relavent for corporate governance.
However that said, it is configuration management (the processes) and
not tools that provide the greatest benefits and switching tools can
have a significant cost.
It is not unusual for people to not account for the cost of their
software systems and the impact on their business systems. There was a
great article on the valuation of IT assets published in The Financial
Times UK Edition 36,501 on Monday October 1 2007, and I believe the
author will be releasing the complete whitepaper soon. Basically it
talks about the lack of business cases for the benefit of software and
also the business case for maintaining legacy assets.
So if I was in your position I'd look for tangible business cases that
are poorly handled by your current SCM processes and draw up a list of
what the 'new' requirements are. Don't start out trying to prove CVSNT
is the better tool - prove instead that your SCM system is not
supporting the business and leave it to us to be developing CVSNT in
directions that support the widest possible range of business processes.
Eg: Research by the Configuration Management Institute has found that
for CM to be effective it must make managing change easier and make the
interrelationships between changes clear. Firstly you need to have
metrics that show whether your SCM system is 'effective' - does it
fulfill the management objectives - eg: a company approached as a while
ago wanting to change their SCM because their customers were defecting
to a competitor because the competitor could deliver patches to the
application for each separate bug, wheras the tools the company that
approached us were using did not allow them to 'manage change' (manage
change sets). This may seem an odd thing for a company to begin losing
customers over - but the alternative is that customers get patches they
don't need in order to get the patches they do need, and every fix needs
testing/qualifying for each customer in each location - this added up to
a huge effort for their customers who felt they could get better (more
cost effective) service elsewhere.
So once you have a metric of how effective your SCM system is it may
point you towards some ways where it is not supporting your business.
You then draw up a list of tools that would support this new SCM process
(CVSNT has user defined change sets that can be merged as a 'set', as
does ClearCase, Dimensions, CM Synergy and others).
You then can present the cost benefit clearly to management.
> They tell me that if I can migrate all their SVN data into
> CVS then they will make the move. So, its basically all or
> nothing. How can I convince them and is their a documented
> procedure to move these files from one system to another?
I do not know of such a tools - however we do intend having a tool to
migrate SVN repositories to EVSCM (CVSNT 3.x).
There is some danger in trying to convince 'developers' since the
business may see enormous benefit in using a tool that is less than the
'ideal' developer tool. This is a difficult balance to strike. Whilst
it's my goal to have features in CVSNT that support the widest range of
possible SCM processes, we also aim to make them 'developer friendly'.
Supporting a 'wide range' of processes is in itself 'developer friendly'
because the alternative is that some manager decides one project needs
'strict' controls - they buy clearcase and insist the entire org uses it
for every project in 'strict' mode. It is not unisual for a single
company using CVSNT to have some projects using strict controls and some
using looser controls.
Finally: once you have some clear metrics on the cost to your
organisation of sticking with the current tools then you also have an
idea of how much it is worth to move to something else. It may then be
possible to get professional support to assist with the migration.
More information about the cvsnt